301 Commits

Author SHA1 Message Date
Anthony Minessale
c15d7892c0 indent again
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4799 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-30 00:15:25 +00:00
Anthony Minessale
debdfb1aab indent
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4798 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-30 00:13:31 +00:00
Anthony Minessale
3a54126261 spring cleaning
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4795 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-29 22:31:56 +00:00
Michael Jerris
6258af952e bsd make tweak
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4643 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-18 17:15:00 +00:00
Michael Jerris
d59122379c remove gmakeisms from sofia, portaudio and cepstral makefiles. simplify the module template makefiles
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4635 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-18 01:52:23 +00:00
Michael Jerris
940bf73b72 Do a better job at tracking dependencies into the libs, so libs are re-built when they need to.
Eliminate some more gmakeisms in the modules makefiles




git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4629 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-17 08:40:10 +00:00
Michael Jerris
70a70aa922 Remove the requirement to define MODNAME in the module makefiles.
Remove gmakeisms from the modmake.rules module makefile include
Remove the MODNAME def from all the in tree Makefiles



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4628 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-17 05:49:57 +00:00
Michael Jerris
18b47de4b2 do a better job with dependency tracking so the the mods don't keep trying to build or install when they don't need to. This should start to help with the speed of the build.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4602 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-15 04:32:09 +00:00
Brian West
ffde2ff0af update2
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4600 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-15 01:58:41 +00:00
Anthony Minessale
d69cde6367 update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4598 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-15 00:36:14 +00:00
Michael Jerris
b196ff7205 add support for doing make from the module directory of the in tree modules.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4586 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-13 18:23:49 +00:00
Anthony Minessale
82be2101db change hangup method
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4574 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-12 20:16:44 +00:00
Brian West
08d15071a4 fix spelling, Everyone do not forget to thank Mike for all his hard work.. he need sleep now. ;) ./applications/mod_enum/Makefile
./asr_tts/mod_cepstral/Makefile
./asr_tts/mod_lumenvox/Makefile
./codecs/mod_amr/Makefile
./codecs/mod_g711/Makefile
./codecs/mod_g722/Makefile
./codecs/mod_g723_1/Makefile
./codecs/mod_g726/Makefile
./codecs/mod_g729/Makefile
./codecs/mod_gsm/Makefile
./codecs/mod_ilbc/Makefile
./codecs/mod_lpc10/Makefile
./codecs/mod_speex/Makefile
./directories/mod_ldap/Makefile
./endpoints/mod_dingaling/Makefile
./endpoints/mod_iax/Makefile
./endpoints/mod_portaudio/Makefile
./endpoints/mod_sofia/Makefile
./endpoints/mod_wanpipe/Makefile
./event_handlers/mod_cdr/Makefile
./event_handlers/mod_xmpp_event/Makefile
./event_handlers/mod_zeroconf/Makefile
./formats/mod_shout/Makefile
./formats/mod_sndfile/Makefile
./languages/mod_mono/Makefile
./languages/mod_perl/Makefile
./languages/mod_python/Makefile
./languages/mod_spidermonkey/Makefile
./languages/mod_spidermonkey_core_db/Makefile
./languages/mod_spidermonkey_etpan/Makefile
./languages/mod_spidermonkey_odbc/Makefile
./languages/mod_spidermonkey_skel/Makefile
./languages/mod_spidermonkey_teletone/Makefile
./xml_int/mod_xml_curl/Makefile
./xml_int/mod_xml_rpc/Makefile

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4564 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-12 05:17:17 +00:00
Brian West
d60866b9bc OSARCH isn't set right but this will build now.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4563 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-12 05:13:43 +00:00
Michael Jerris
514bde18c7 an attempt to simplify the module make files. More changes to come on the modules building soon
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4562 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-12 04:21:54 +00:00
Michael Jerris
ee3fc89f69 move all the in tree libs to use subst of the core configure, move all module builds to link with libtool to the .la, static when possible
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4548 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-11 14:03:58 +00:00
Anthony Minessale
2df583650f cleanup some stuff
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4498 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-09 23:51:52 +00:00
Anthony Minessale
5e2d7dfc12 update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4477 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-08 01:30:52 +00:00
Michael Jerris
ec3fcde87d change switch_core_timer_next to return switch_status_t, update all users to new usage, add some error checking to mod_conference so that it bails out of the loops more gracefully on shutdown.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4454 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-05 23:18:29 +00:00
Brian West
bd6720df94 Please besure to do "make sure" this should fix the assert people were getting on ALL channel drivers.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4438 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-03 21:02:02 +00:00
Anthony Minessale
ed76b25241 cleanup
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4419 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-01 17:23:02 +00:00
Anthony Minessale
4ddc9e1681 add some commands to portaudio
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4297 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-16 16:19:39 +00:00
Michael Jerris
41d2d43e99 warning: ISO C does not allow extra ; outside of a function
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4269 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-14 19:45:56 +00:00
Anthony Minessale
a62d9fd951 lord of the rings
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4230 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-13 15:47:15 +00:00
Michael Jerris
62a44e621f some more protection from passing around and printing null values, we are now initializing null's passed to switch_caller_profile_new as blank strings in the caller profile, if your using any caller profile values in if's, please use !switch_strlen_zero() in your check.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4203 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-12 18:13:14 +00:00
Anthony Minessale
f03226debb update core
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4181 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-09 20:03:07 +00:00
Michael Jerris
f359f847f7 fix magic emacs and vi formatting comments in the bottom of our source files to use tabs instead of spaces
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4176 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-09 02:36:03 +00:00
Michael Jerris
ea3e61f3d8 tweak the defines for memory barriers. This should fix the freebsd build, and adds proper memory barrier defines for msvc build.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4175 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-09 02:05:46 +00:00
Anthony Minessale
8deaa6743b only 1 call can control the ring device
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4101 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-31 17:12:42 +00:00
Michael Jerris
618d1ef698 who thought tolower should return int??
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4047 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-23 22:40:01 +00:00
Anthony Minessale
23e5477ab4 add via hack for portaudio
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4038 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-23 18:00:37 +00:00
Anthony Minessale
d00baf0d09 add flags command to control mute and deaf operations
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4032 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-23 16:06:25 +00:00
Michael Jerris
788279608b "pa_dtmf" -> "pa dtmf" in api help text.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4007 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-20 00:22:43 +00:00
Michael Jerris
680ef8d169 indications are that we can use mfence, lfence, sfence on x86_64, we will need to test and confirm this, but this should fix the build on 64 bit linux gcc at least. need testers to confirm this.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3998 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-19 12:49:10 +00:00
Michael Jerris
23a744ad9d Initial windows build for new portaudio module, so far completely untested, it will NOT work on 64 bit and potentially problematic on SMP boxes still as I am building right now. This build currently uses only winmme, will follow up with better support for optionally building against direct sound, asio, and wasapi.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3993 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-19 01:45:58 +00:00
Anthony Minessale
41541428fc minor tweaks on new portaudio stuff
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3990 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-19 01:23:27 +00:00
Anthony Minessale
39a9e94305 New mod_portaudio (sponspred by eWorldCom http://www.eworldcom.hu/)
This updates mod_portaudio to use the new v19 api and also contains
major behavioural changes.  This initial check-in should be tested to find
any obscure use cases that lead to crashes etc...

All of the old api interface commands are now depricated and any attempt to
use them should cause a polite warning asking you to try the new single "pa" command.

New Features:
*) Mulitiple calls with hold/call switching.
*) Inbound calls can play a ring file on specified device. (global and per call)
*) Optional hold music for backgrounded calls. (global and per call)


Example dialplan usage:

<extension name="2000">
  <condition field="destination_number" expression="^2000$">
    <!--if the next 3 lines are omitted the defaults will be used from portaudio.conf-->
    <action application="set" data="pa_ring_file=/sounds/myring.wav"/>
    <action application="set" data="pa_hold_file=/sounds/myhold.wav"/>
    <action application="set" data="export_vars=pa_ring_file,pa_hold_file"/>
    <action application="bridge" data="portaudio"/>
  </condition>
</extension>


Example API interface usage:

call extension 1000
> pa call 1000

call extension 1001 putting the other call on hold
> pa call 1001

swap the calls between hold and active
> pa switch

view the current calls
> pa list

forground the call with id 1 
> pa switch 1

background all calls
> pa switch none

send a dtmf string (1234) to the current call
> pa dtmf 1234

answer the oldest unanswered inbound call
> pa answer

answer the call with id 1
> pa answer 1

hangup the active call
> pa hangup

hangup the call with id 1
> pa hangup 1

get device info
> pa dump

print usage summary
> pa help


USAGE:
--------------------------------------------------------------------------------
pa help
pa dump
pa call <dest> [<dialplan> <cid_name> <cid_num> <rate>]
pa answer [<call_id>]
pa hangup [<call_id>]
pa list
pa switch [<call_id>|none]
pa_dtmf <digit string>
--------------------------------------------------------------------------------

The source of the portaudio v19 library will also be checked in for the 
sake of the build system.




git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3981 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-17 19:10:03 +00:00
Michael Jerris
63d89577d6 switch all libs and mods to use the dynamic instead of the static runtime so everything in freeswitch runs in a single instance of the runtime.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3925 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-07 04:35:16 +00:00
Anthony Minessale
90440eaf1d add case for kill sigs
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3778 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-12-21 16:46:11 +00:00
Anthony Minessale
7ba8a350af doh
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3604 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-12-11 17:52:53 +00:00
Michael Jerris
44649c70b4 Add magic comments for emacs and vi in source and header files to properly format and display tabs vs. spaces in those editors:
/* For Emacs:
 * Local Variables:
 * mode:c
 * indent-tabs-mode:nil
 * tab-width:4
 * c-basic-offset:4
 * End:
 * For VIM:
 * vim:set softtabstop=4 shiftwidth=4 tabstop=4 expandtab:
 */


git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3462 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-27 22:30:48 +00:00
Anthony Minessale
da76d9327b update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3212 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-26 16:13:48 +00:00
Anthony Minessale
a3839376f7 update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3210 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-26 15:00:46 +00:00
Anthony Minessale
6a96670267 refine code
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3006 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-09 02:24:43 +00:00
Michael Jerris
c822f94125 add syntax to api structures, use them for usage returns, do more checking on valid usage and cleanup some output of api commands.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3001 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-08 07:11:42 +00:00
Michael Jerris
2b53e80e34 add syntax field to the api interface struct.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3000 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-08 05:04:34 +00:00
Michael Jerris
1003a4d404 Cleanups from update to new build system for windows.
More to come.


git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2325 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-18 07:22:18 +00:00
Michael Jerris
ae380d58ec Update to new build system for windows.
This fixes several issues when debugging code in the ide, and does better dependency tracking.

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2317 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-17 19:58:55 +00:00
Anthony Minessale
5c5bd833d7 fix potential crash
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2235 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-07 20:04:12 +00:00
Anthony Minessale
c4d890e0a4 Modify XML Dialplan
BTW, forget what I said yesterday RE: the strftime app I was at McDonalds, how can I concentrate there eh? 
see below....


The Definitive Guide To XML Dialplan:

The "dialplan" section of the freeswitch.xml meta document may contain several contexts

<?xml version="1.0"?>
<document type="freeswitch/xml">
  <section name="dialplan" description="Regex/XML Dialplan">
    <!-- the default context is a safe start -->
    <context name="default">

    <!-- one or more extension tags -->

    </context>
    
    <!-- more optional contexts -->
  </section>
</document>

The important thing to remember is that the dialplan is parsed once when the call
hits the dialplan parser in the RING state.  With one pass across the XML the result
will be a complete list of instructions installed into the channel based on
 parsed <action> or <anti-action> tags.

Those accustomed to Asterisk may expect the call to follow the dialplan by executing the 
applications as it parses them allowing data obtained from one action to influence the next action.
This not the case with the exception being the %{api func} {api arg} field type where an pluggable api call from
a module may be executed as the parsing occurs but this is meant to be used to draw realtime info such as
date and time or other quickly accessible information and shold *not* be abused.


The anatomy of an <extension> tag.

Legend: 
Text wrapped in [] indicates optional and is not part of the actual code.
a '|' inside [] indicates mutiple possible values and also is not part of the code.
Text wrapped in {} indicates it's a description of the parameter in place of the param itself.

<extension name="{exten_name}" [continue="[true|false]"]> 

continue=true means even if an extension executes to continue
parsing the next extension too

The {exten_name} above may anything but if it's 
an exact match with the destination number the parser will leap to this extension
to begin the searching that does not mean it will execute the extension.

Searching will either begin at the first extension in the context or at the point
the the parser has jumped to in the case described above.

Each condition is parsed in turn first taking the 'field' param.
The parser will apply the perl regular expression to each 'field' param encountered.

If the expression matches, it will parse each existing <action> tag in turn and add 
the data from the <application> tags to the channels todo list.	

If a matched expression contains any data wrapped in () the variables
$1,$2..$N will be valid and expanded in any of 'data' params from the subsequent action tags.

If the expression does NOT match, it will parse each <anti-action> tag in turn and add 
the data from the <application> tags to the channels todo list.
*NOTE* since there was no match the () feature is not availabe in anti-actions

The 'break' param indicates how to behave in relation to matching:
*) 'on-true'  - stop searching conditions after the first successful match.
*) 'on-false' - stop searching after the first unsuccessful match.
*) 'always'   - stop at this conditon regardless of a match or non-match.
*) 'never'    - continue searching regardless of a match or non-match.

<condition field="[{field name}|${variable name}|%{api func} {api arg}]" expression="{expression}" break="[on-true|on-false|always|never]">
  <action application="{app name}" data="{app arg}"/>
  <anti-action application="{app name}" data="{app arg}"/>
</condition>

  <!-- any number of condition tags may follow where the same rules apply -->
</extension>




git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2167 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-07-26 20:12:49 +00:00