Commit Graph

258 Commits

Author SHA1 Message Date
Anthony Minessale 9626393ef8 add export app (set + adding to export_vars) in 1
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4299 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-16 20:07:35 +00:00
Anthony Minessale b154ea7e2b update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4279 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-14 23:08:10 +00:00
Anthony Minessale e96f7a118c add resets to a few places
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4277 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-14 22:41:03 +00:00
Michael Jerris 2b507706c9 switch_core_session_strdup now takes const char * arg.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4264 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-14 19:14:53 +00:00
Michael Jerris 251723ba41 fix missing strdup in switch_ivr_menu_bind_function
change most char * values in ivr_menu functions to const char *
change switch_core_strdup to get passed const char * instead of char *
change switch_xml_find_child to get passed const char * instead of char *
change the ivr dialplan application to free the xml config as soon as it is done building the xml menu and not hold it until the menu is done being run, so that you can do a reloadxml while someone is in a menu without blocking.

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4260 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-14 17:28:42 +00:00
Michael Jerris 258e28dd11 constification for switch_core_hash_find and switch_event_create_subclass
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4251 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-14 03:22:43 +00:00
Michael Jerris ceafc84ca0 constify some arguments to switch_console_printf and switch_cut_path and remove improper casts for the consumers of those functions.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4241 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-13 21:03:06 +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
Anthony Minessale 9a870c5fb6 update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4229 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-13 14:58:06 +00:00
Michael Jerris 07d6f12018 use "%s" format specifier for uses of switch_event_add_header that just pass a string to avoid potential issues/exploits"
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4226 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-13 04:43:49 +00:00
Michael Jerris 489354037d indirection misdirection?
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4222 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-13 02:48:50 +00:00
Michael Jerris db5557983a use const for switch_core_permanent_strdup var.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4220 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-13 02:31:26 +00:00
Michael Jerris edbc5594af be more safe about compiler qwirkyness in initialization.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4196 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-10 23:26:53 +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
Anthony Minessale ed41805c17 improve core and basic flow
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4174 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-09 01:34:01 +00:00
Anthony Minessale 5327a156ee fix bug/race in core
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4170 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-08 20:47:46 +00:00
Anthony Minessale cb587626ea timer mojo (cont)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4151 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-07 19:18:15 +00:00
Anthony Minessale 66feec2da5 timer mojo
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4149 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-07 18:44:00 +00:00
Michael Jerris 608fac923a pass and decrement max_forwards across the bridge for sip
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4135 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-06 18:11:25 +00:00
Michael Jerris cfdd586224 add -conf, -db, and -log params to the binary to allow for running multiple copies of freeswitch concurrently on the same box. Please note that these params may change in the future. Patch from Bret McDanel.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4133 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-06 17:05:14 +00:00
Anthony Minessale 96e32a8d4c tweak
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4123 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-05 17:56:09 +00:00
Anthony Minessale 6f9be6bf5a bug in the bugs
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4109 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-02 21:01:13 +00:00
Anthony Minessale 59ed99a9a8 core framework for reverse media bugs
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4105 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-31 23:09:33 +00:00
Anthony Minessale 2d4d6ea756 make send_dtmf parse w and W for 500 and 1000 ms pause
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4086 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-29 20:11:26 +00:00
Anthony Minessale db70ef2a37 codec tweaks (do a make sure)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4077 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-29 15:43:41 +00:00
Anthony Minessale 0ed9ebe492 CODEC TWEAK
mod_sofia will now examine a variable in the channel to
see what the channel's originator was using for a codec and 
try to put that to the top of the list in the sdp.

if this new sofia profile param is set:
<param name="disable-transcoding" value="true"/>

All outbound calls will use *only* the codec that thier originator 
is using to ensure no transcoding.
(of course that could lead to a failed call where there is no way to do this, so use sparingly)



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4073 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-28 17:37:51 +00:00
Anthony Minessale 85dab893d9 A few changes:
1) The xml_curl now has a more enterprise config where it can have more than 1
   url configured so you could have failover. (*note the syntax change*)

2) dialplan modules now take an extra arguement making it possible to pass runtime params to
   them.  This is now used in mod_dialplan_xml to allow an alternate file path to be specified.

   dialplans were already stackable meaning you can configure a sofia profile, for example,
   to use enum followed by the default XML dialplan.

   e.g. <param name="dialplan" value="enum,XML"/>

   From now on, you can also specify :param after each dialplan name to allow param
   to be passed to the module.  mod_dialplan_xml uses this param as a way to override
   where it looks for the dialplan making it possible to stack mutiple calls to the XML dialplan.

   e.g. <param name="dialplan" value="XML:/some/xml/file.xml,XML"/>

   With this you can search the local file file.xml first and if there is still no match
   the hunt will move on to the standard XML using the onboard XML registry and or the external
   gateways.

   *NOTE* this alternate path does not use the external bindings but it does parse the #includes etc.



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4066 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-27 16:23:33 +00:00
Michael Jerris bb2bbf827e void functions shouldn't return values.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4030 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-23 12:50:20 +00:00
Anthony Minessale d3e1f400e5 tweak core for build err and add core_get_var
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4021 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-22 21:59:07 +00:00
Michael Jerris 4457fe7596 rearrange a bit
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4016 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-22 17:16:25 +00:00
Anthony Minessale c4717f9077 fix locking and add lock debugging as a define
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3870 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-12-29 16:39:56 +00:00
Anthony Minessale 3b998f7c91 tweak locks
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3869 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-12-29 06:21:04 +00:00
Anthony Minessale 968f4fccc3 fix sofia (part 2) you'd better 'make sure'
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3860 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-12-28 19:38:35 +00:00
Anthony Minessale 905a48c85f fix sofia (part 1)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3856 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-12-28 01:08:06 +00:00
Anthony Minessale ae2aed9dff fix dialplan stack
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3746 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-12-20 02:49:26 +00:00
Michael Jerris 855c7b9a77 char * -> const char *
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3691 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-12-18 04:32:50 +00:00
Anthony Minessale 44cc7d5cfe build progress break everything
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3682 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-12-17 01:01:09 +00:00
Anthony Minessale 9914dd71f5 tweak
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3558 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-12-06 17:19:07 +00:00
Anthony Minessale d20870e121 fix obscure bs, remove CR from dptools, add info app
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3463 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-28 02:23:26 +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 b2bc13dc7e Add signal handlers for SIGIO and SIGPOLL
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3423 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-20 21:43:44 +00:00
Anthony Minessale 9f9abf2ea1 stackable dialplans
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3412 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-19 01:21:41 +00:00
Anthony Minessale d7baa16132 Ringback (sponsored by Front Logic)
This addition lets you set artifical ringback on a channel
that is waiting for an originated call to be answered.

the syntax is 

<action application="set" data="ringback=[data]"/>

where data is either the full path to an audio file
or a teletone generation script..


syntax of teletone scripts

LEGEND:

0-9,a-d,*,# (standard dtmf tones)

variables: c,r,d,v,>,<,+,w,l,L,%

c (channels)        - Sets the number of channels.
r (rate)            - Sets the sample rate.
d (duration)        - Sets the default tone duration.
v (volume)          - Sets the default volume.
> (decrease vol)    - factor to decrease volume by per frame (0 for even decrease across duration).
< (increase vol)    - factor to increase volume by per frame (0 for even increase across duration).
+ (step)            - factor to step by used by < and >.
w (wait)            - default silence after each tone.
l (loops)           - number of times to repeat each tone in the script.
L (LOOPS)           - number of times to repeat the the whole script.
% (manual tone)     - a generic tone specified by a duration, a wait and a list of frequencies.

standard tones can have custom duration per use with the () modifier
7(1000, 500) to generate DTMF 7 for 1 second then pause .5 seconds

EXAMPLES

UK Ring Tone [400+450 hz on for 400ms off for 200ms then 400+450 hz on for 400ms off for 2200ms]
%(400,200,400,450);%(400,2200,400,450)

US Ring Tone [440+480 hz on for 2000ms off for 4000ms]
%(2000,4000,440,480)

ATT BONG [volume level 4000, even decay, step by 2, # key for 60ms with no wait, volume level 2000, 350+440hz {us dialtone} for 940ms
v=4000;>=0;+=2;#(60,0);v=2000;%(940,0,350,440)

SIT Tone 913.8 hz for 274 ms with no wait, 1370.6 hz for 274 ms with no wait, 1776.7 hz for 380ms with no wait
%(274,0,913.8);%(274,0,1370.6);%(380,0,1776.7)

ATTN TONE (phone's off the hook!) 1400+2060+2450+2600 hz for 100ms with 100ms wait
%(100,100,1400,2060,2450,2600)



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3408 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-19 01:05:06 +00:00
Anthony Minessale 89989bc34f vg mode
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3388 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-16 19:43:25 +00:00
Anthony Minessale 68bab16e37 make event_serialize dynamic
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3314 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-11 19:32:45 +00:00
Anthony Minessale 44fc26f7d4 Finalization of speech detect interface and API
This changes the core to have the necessary tools to create
a speech detection interface.

It also changes the code in javascript (mod_spidermonkey)
there are a few api changes in how it handles callbacks

It also adds grammars as a system dir to store asr grammars




git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3291 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-09 05:39:04 +00:00
Anthony Minessale 9ab2b1db57 Media Management (Sponsored By Front Logic)
This modification makes it possible to change the media path of session in the switch on-the-fly and from the dialplan.
It adds some API interface calls usable from a remote client such as mod_event_socket or the test console.

1) media [off] <uuid>

   Turns on/off the media on the call described by <uuid>
   The media will be redirected as desiered either into the switch or point to point.

2) hold [off] <uuid>

   Turns on/off endpoint specific hold state on the session described by <uuid>

3) broadcast <uuid> "<path>[ <timer_name>]" or "speak:<tts_engine>|<tts_voice>|<text>[|<timer_name>]" [both]

   A message will be sent to the call described by uuid instructing it to play the file or speak the text indicated.

   If the 'both' option is specified both ends of the call will hear the message otherwise just the uuid specified
   will hear the message.

   During playback when only one side is hearing the message the other end will hear silence.

   If media is not flowing across the switch when the message is broadcasted, the media will be directed to the
   switch for the duration of the call and then returned to it's previous state.


Also the no_media=true option in the dialplan before a bridge makes it possible to place a call while proxying the session
description from one endpoint to the other and establishing an immidiate point-to-point media connection with no media
on the switch.

<action application="set" data="no_media=true"/>
<action application="bridge" data="sofia/mydomain.com/myid@myhost.com"/>


*NOTE* when connecting two outbound legs by using the "originate" api command with an extension that has no_media=true enabled,
the media for the first leg will be engaged with the switch until the second leg has answered and the other session description
is available to establish a point to point connection at which time point-to-point mode will be enabled.

*NOTE* it is reccommended you rebuild FreeSWITCH with "make sure" as there have been some changes to the core.



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3245 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-31 21:38:06 +00:00
Anthony Minessale 1f29ce2749 add some more nifty stuff and fix a bug or 2
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3134 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-21 04:58:15 +00:00
Michael Jerris c1f346b99e change to switch_mprintf
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3107 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-19 16:42:41 +00:00