371 Commits

Author SHA1 Message Date
Anthony Minessale
6013035a6c update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3380 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-15 20:21:29 +00:00
Anthony Minessale
f8d3093f5c hack to fix udp sockets
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3377 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-15 03:17:28 +00:00
Michael Jerris
04cec4b4e8 dox
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3345 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-13 17:41:45 +00:00
Michael Jerris
28c875cfa9 add switch_ivr_digit_stream functions and switch_ivr_build_xml_menu_stack to switch ivr, merged from knhor branch. thanks neal!
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3341 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-13 16:29:16 +00:00
Michael Jerris
4619302f8f don't user "new" as a variable name, so we can keep compatible with C++
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3336 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-12 21:16:46 +00:00
Anthony Minessale
a5f16da175 update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3332 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-12 20:50:18 +00:00
Anthony Minessale
372c160c3f menu stuff: work in progress, look for bugs\!\!\!
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3331 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-12 20:34:04 +00:00
Anthony Minessale
ddcb03c042 dox
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3321 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-12 00:40:00 +00:00
Anthony Minessale
c8733f2b8a update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3320 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-12 00:38:31 +00:00
Anthony Minessale
8f8396d741 add ivr api not sure it works yet
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3319 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-12 00:32:18 +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
eb1bafe567 dox
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3313 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-11 17:36:44 +00:00
Anthony Minessale
8dc1556b95 fix gremlins in code that worked before then changed it's mind
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3300 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-10 08:13:01 +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
0ce3f5b08b tweak
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3286 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-09 05:13:59 +00:00
Anthony Minessale
278a69a0e4 someone said 240k was a cool stack size
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3248 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-31 21:57:59 +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
Michael Jerris
6b457ddce3 Add new higher level ivr functions from Paul Tinsley. Thanks Paul.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3223 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-28 04:40:59 +00:00
Anthony Minessale
305bc19458 update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3199 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-25 17:00:23 +00:00
Anthony Minessale
08442ff2c4 signalling refactoring for media etc
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3192 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-25 04:28:49 +00:00
Michael Jerris
1f2d19e28e update more sip cause code to qsig cause code mappings from rfc 4497 sections 8.4.1 and 8.4.4
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3190 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-25 03:45:20 +00:00
Anthony Minessale
252afb823f add some sanity code to originate and conference
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3189 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-25 01:00:26 +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
Anthony Minessale
343fd5cea5 refactor the presence stuff and add it to mod_conference
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3124 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-20 22:11:26 +00:00
Anthony Minessale
12243c194e tidy up, note yesterday's propagate_vars was changed to export_vars
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3106 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-19 16:33:54 +00:00
Anthony Minessale
99e22d69bd refactor earlier junk from this eve and add ken's propagate variable thing
set this sometime before an origination (bridge etc).

<action application="set" data="propagate_vars=my_cool_var1,my_cool_var2,foo,bar"/>

and they should be cloned over to the new channel when it's substantiated



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3101 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-19 07:13:34 +00:00
Michael Jerris
f64ae18ac6 add endian defines on MSVC
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3088 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-19 01:21:17 +00:00
Anthony Minessale
70bfba5b63 Christmas Presence
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3083 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-18 22:57:35 +00:00
Brian West
614010db63 Rename ani2 to aniii and ANI2 to ANI-II where appropriate. Because its not ANI2 its ANI II (eye eye)
What is ANI II ?

Refer to:

http://en.wikipedia.org/wiki/Automatic_number_identification

Thanks,
/b



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3073 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-17 23:33:32 +00:00
Anthony Minessale
438cf0327e rpid for sofia
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3058 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-16 04:39:00 +00:00
Anthony Minessale
a2b11dd93d in the name of interop
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3043 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-12 20:37:08 +00:00
Anthony Minessale
ba46200539 refactoring and general improvement (do a make sure)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3035 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-12 00:59:09 +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
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
Anthony Minessale
bc7a378c4e Modify Originate input syntax
This adds the | to the originate syntax 
making it possible to put a list of urls to call and attempt
to call them one at a time until one of them is successful or there
are none of them left

The original & delimited list is valid for each step in the | separated
list

Example
sofia/test-int/3920@10.3.3.104|sofia/test-int/3910@10.3.3.104&sofia/test-int/3920@10.3.3.104

first call 1 location and if that results in a failure, try 2 at once on the next go



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2996 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-07 22:19:24 +00:00
Anthony Minessale
741b8329b9 Modifying the behaviour of the dialplan engine
the 'data' field in action tags may now refer to variables and api functions
to be expanded at runtime.

Syntax:

$varname
${varname}
&func_name(func args)


Exception:
variables that are numeric are still expanded at dialplan compile time based on the regex eg $1 $2 etc

Example:

<extension name="1000">
  <condition field="destination_number" expression="^(1000)$">
    <action appplication="my_route_app" data="$1"/>
    <action appplication="bridge" data="$destination"/>
  </condition>
</extension>

Here the $1 is ecaluated before the call begins setting it to 1000 based on the regex ^(1000)$
$destination is evaluated on the fly in execution once the my_route_app has run and has had a 
chance to set the variable 'destination' to the correct value.



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2994 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-07 19:54:04 +00:00
Anthony Minessale
0d23976f2a Insane amounts of yucky satanic code to make transfer and that kind of thing work.
Transfers work better when both legs of the call live in thier own channel eg bridged calls
A -> B where you want a to make B -> C

when you route a call to an IVR or playback app you are not really bridging you have
A all alone executing the script so it's hard to transfer that.

I do have it aparently working but it's goofy and you are better off
putting your IVR on it's own switch so they are all inbound calls
then you have A -> B -> IVR
now A can happily transfer B who can stay on line with IVR without stopping
the execution.  You can also accomplish this by calling in a loop back to the same box
if you dont want to have 2 boxes.


Also the beginning effort at bridging calls with no media is here
set this magic variable in your dialplan to convince mod_sofia
to pass A's sdp as it's own to B and return B's sdp back to A on 200 or 183

<action application="set" data="no_media=true"/>
<action application="bridge" data="sofia/id@host.com"/>

You will need a new sofia tarball for this version


There is a bunch of other odds and ends added like a function or 2 etc
Oh,

And don't be suprised if it introduces all kinds of bugs!



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2992 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-06 22:39:49 +00:00
Anthony Minessale
f993cd6791 more sofia stuff
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2978 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-05 14:24:25 +00:00
Anthony Minessale
7de068b9ac sip work in progress changes
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2969 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-04 23:11:11 +00:00
Michael Jerris
ea0d99efd7 update docs
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2909 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-01 01:36:44 +00:00
Michael Jerris
18fc21a9cb update docs
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2908 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-01 01:35:14 +00:00
Anthony Minessale
fa5767ebf7 fixes
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2781 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-22 15:22:31 +00:00
Anthony Minessale
90815616cc small core refactoring use -hp arg to gain high priority mode, add fsctl command USAGE: fsctl [hupall|pause|resume|shutdown]
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2765 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-20 20:25:26 +00:00
Michael Jerris
cd74bf6501 tweak types
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2754 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-19 19:09:10 +00:00
Anthony Minessale
ccb32b0eb6 add uuid_bridge api call and ivr function Usage: uuid_bridge <uuid> <other_uuid> *should* take 2 existing channels and bridge them
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2748 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-19 02:18:24 +00:00
Anthony Minessale
19446804c7 pull down stack size another 128k, make the sql use mem cache and add session count to the status command
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2747 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-18 22:22:25 +00:00
Michael Jerris
849822f64e add switch_yield for windows
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2729 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-17 22:40:19 +00:00
Michael Jerris
fa4a1c4317 tweak softimer to not int type truncate microsecond interval time.c
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2728 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-17 22:13:51 +00:00
Anthony Minessale
1386d84694 use usleep when possible, ./configure && make sure when you update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2722 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-17 18:44:53 +00:00
Anthony Minessale
56827bc9ec enhance timers and make rtp use it that way
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2669 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-12 22:23:45 +00:00