212 Commits

Author SHA1 Message Date
Anthony Minessale
8fd300e992 feeling lucky
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3544 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-12-05 21:10:33 +00:00
Michael Jerris
b616b6ec2a add ivr application that uses the switch_ivr_menu functions, from Neal Horman.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3528 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-12-04 05:50:41 +00:00
Anthony Minessale
d138ed71b7 adjustments to the core do a make sure
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3504 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-12-01 15:26:37 +00:00
Michael Jerris
92bd5358d0 fix mod_enum on windows, fix logic error in free function causing operations on freed memory
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3503 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-12-01 06:12:07 +00:00
Michael Jerris
fb447028bc mod_enum doesn't crash windows now, still a bit to get it to work right.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3500 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-30 23:47:30 +00:00
Michael Jerris
fadc1ccebe win32 build for mod_enum/libudns. Please note, this builds but still DOES NOT work on windows.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3499 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-30 23:33:37 +00:00
Anthony Minessale
8c67ef2c5d mod_enum
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3495 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-30 22:02:49 +00:00
Anthony Minessale
60434decf5 ENUM Support
mod_enum can be used as a dialplan app, an api call from the console or as a dialplan interface.


Dialplan Interface:
put enum as the dialplan parameter in an endpoint module
i.e. instead of "XML" set it to "enum" or "enum,XML" for fall through.

Dialplan App:
This example will do a lookup and set the a variable that is the proper
dialstring to call all of the possible routes in order of preference according to 
the lookup and the order of the routes in the enum.conf section.

<extension name="tollfree">
  <condition field="destination_number" expression="^(18(0{2}|8{2}|7{2}|6{2})\d{7})$">
    <action application="enum" data="$1"/>
    <action application="bridge" data="${enum_auto_route}"/>
  </condition>
</extension>

You can also pick an alrernate root:
<action application="enum" data="$1 myroot.org"/>	


API command:
at the console you can say:
enum <number> [<root>]

The root always defaults to the one in the enum.conf section.




git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3494 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-30 21:28:32 +00:00
Anthony Minessale
d288ae58a8 add timelimit to record
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3475 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-28 21:46:29 +00:00
Paul Tinsley
a85ec77f99 Fix a few overflow problems
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3471 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-28 20:20:22 +00:00
Paul Tinsley
e15479daae Get rid of the hard coded console help output, and add an api version command for fun.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3470 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-28 19:33:54 +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
361dc67be2 no_media/ringback tweaks
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3461 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-27 21:52:38 +00:00
Michael Jerris
63aae494ac add "log" application to print log messages From Mike Murdock.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3451 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-24 15:43:46 +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
bc3aceaf78 udpdate
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3301 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-10 08:28:16 +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
Michael Jerris
e7dae8a9d9 add missing Member-ID header to a couple events, merged from knhor's branch.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3267 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-05 19:32:32 +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
051b623bb0 formatting whitespace changes from knhor branch.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3239 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-31 05:04:47 +00:00
Anthony Minessale
003fb84e7c doh, thx CtRiX
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3228 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-29 18:15:53 +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
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
b30eb82b84 new sofia rollout
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3166 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-23 20:28:55 +00:00
Anthony Minessale
776919d5fd tweeks
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3164 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-23 17:34:03 +00:00
Michael Jerris
af23ce4853 whitespace cleanup.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3158 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-22 17:44:41 +00:00
Michael Jerris
1cd8709762 add "all" member target for vol and energy commands, fix init of len for record.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3157 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-22 17:07:28 +00:00
Anthony Minessale
aba9c77c35 your run-of-the mill nightmarish attempt at normalizing not one crazy protocol but many....
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3151 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-22 04:37:19 +00:00
Michael Jerris
1bc0db0db6 clarify in mod_skel. (thanks knhor).
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3144 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-21 23:02:36 +00:00
Michael Jerris
d0f877a32f Make record only end the application, and not hangup the call on * (thanks knhor).
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3143 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-21 23:01:58 +00:00
Michael Jerris
dd5d73742a add ability to specify member "all" on conference api commands taking a member (thanks knhor).
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3142 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-21 23:01:17 +00:00
Anthony Minessale
b2f9fae6d1 conference recording
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3139 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-21 21:19:40 +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
7e61bcf9bb fix
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3133 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-21 03:19:48 +00:00
Michael Jerris
beb4922646 fix typo, thanks knhor
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3132 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-21 01:33:23 +00:00
Anthony Minessale
59f3204d61 update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3130 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-21 01:20:46 +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
b01828b6a1 let * be end playback not hangup
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3065 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-16 20:24:11 +00:00
Michael Jerris
786cfc4557 Make error message more descriptive, and less antagonistic.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3060 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-16 16:06:44 +00:00
Michael Jerris
b2ac3d1bdc add privacy application, thanks ken.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3059 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-16 15:04:54 +00:00
Michael Jerris
dfb9845d85 making the world a little less ugly, one commit at a time.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3026 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-10 12:00:22 +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
3667da49b6 add description and syntax to interface database, add description and syntax headers to events for interface add for api and application interface, add appropriate output to show and help commands.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3003 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-08 08:35:27 +00:00
Michael Jerris
e9af9e02fe make help an api command, still need to add syntax and descriptions to the db so we can output those as well.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3002 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-08 08:09:57 +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
dd3cd99301 add more usage checking and return usage information on invalid usage of api commands.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2999 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-08 04:40:15 +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