Commit Graph

170 Commits

Author SHA1 Message Date
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
Michael Jerris 0fbdfb60b4 update usage descriptions.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2983 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-05 20:49:09 +00:00
Anthony Minessale d80ce73564 umm, yeah, when it's dynamic, and there are no members, let's go ahead and ummmm exit the thread, mmmkay?
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2966 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-03 18:02:23 +00:00
Anthony Minessale cdfa49e91a add transfer application
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2823 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-24 19:17:57 +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 55c160506c Initialize http variable.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2759 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-19 22:57:25 +00:00
Anthony Minessale 7045c12e3b fix a bunch of stuff you want this version
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2752 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-19 15:33:02 +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
Anthony Minessale 0fcf13bc34 misc
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2704 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-14 22:11:30 +00:00
Anthony Minessale 06a0b2c0d5 cause code goodies
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2671 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-12 23:20:40 +00:00
Anthony Minessale 387fdc5311 add justinu's patch
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2670 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-12 22:24:39 +00:00
Anthony Minessale cb2da2328a pass cause from originate
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2647 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-12 01:32:04 +00:00
Michael Jerris 89649d47d8 rever oops
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2606 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-10 05:52:45 +00:00
Anthony Minessale 7142a03c9a add uuid to originate
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2591 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-09 04:03:30 +00:00
Anthony Minessale ae9d56e288 Adding bugs to the core
This is the primary commit to add bugs to the core (media bugs that is)
Media bugs are kind of like what ChanSpy is in Asterisk only cooler (I wrote ChanSpy too so I can say that)

Here is an example of using them to record a call by the higher level switch_ivr functionality passed
up to the dialplan via mod_playback.

The call will be recorded while the some.wav plays then stop for the rest of the call (when some_other.wav plays)

The bugs may have bugs since this is 1 day's work so happy hunting ......

<extension name="42">
  <condition field="destination_number" expression="^42$">
   <action application="set" data="RECORD_TITLE=recording test"/>
   <action application="set" data="RECORD_ARTIST=FreeSWITCH"/>
    <action application="record_session" data="/tmp/rtest.wav"/>
    <action application="playback" data="/tmp/some.wav"/>
    <action application="stop_record_session" data="/tmp/rtest.wav"/>
    <action application="playback" data="/tmp/some_other.wav"/>
  </condition>
</extension>



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2588 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-09 03:39:28 +00:00
Anthony Minessale f689b62fb6 add dynamic buffers
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2583 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-08 18:57:24 +00:00
Michael Jerris 12d496bb75 make detecting if it's a soundfile more flexible on windows.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2577 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-08 16:35:58 +00:00
Michael Jerris 597e2becbc add flags to conference dial. add mute and/or deaf after the dial string, or none if you dont want any flags, but need to do cid number/name. Please test.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2571 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-08 04:49:38 +00:00
Michael Jerris 64b0912eb6 add mod_park to the windows build.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2543 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-07 05:35:29 +00:00
Michael Jerris 7863ad0d70 remove unnecessary muting on volume adjust and energy, bad bluetooth headsets find bugs, thanks Jason Garland for finding this one.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2541 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-07 05:34:11 +00:00
Anthony Minessale 80722357a6 Mega Changes
adding mod_park for putting channels in limbo state for remote control.
adding stuff to mod_event_socket to let you do the bgapi <command> <args>
this will let you execute a job in the bg and the result will be sent as an event with an
indicated uuid to match the reply to the command

adding switch_core_port_allocator (to be used soon)
adding "make sure" to do a full rebild of the freeswitch object files

There will be more to this committed as the week progresses

make sure you do a rebuild after this update or you'll be sowwie
./configure && make sure




git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2540 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-07 03:58:01 +00:00
Michael Jerris d9d51826fb fix assert when running api originate and not passing an extension.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2519 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-05 20:34:17 +00:00
Michael Jerris 24f3cc1e85 add some syntax and descriptions of api commands and applications.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2518 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-05 18:52:16 +00:00
Michael Jerris 19a820229f make conf use default profile if none specified, make it work with soundfiles on windows, must have full drive letter and path (i.e. C:\Windows\Media\blah.wav)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2499 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-04 03:36:56 +00:00
Michael Jerris 657ca535ed fix crash when passing null string to switch_core_session_locate (via killchan with no param)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2479 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-02 07:31:18 +00:00
Michael Jerris 087d731301 add answer application, change playback to preanswer by default.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2403 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-26 21:21:02 +00:00
Anthony Minessale f83a8ecf46 update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2401 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-26 21:13:56 +00:00
Anthony Minessale 1569055084 conference update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2385 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-24 20:23:43 +00:00
Anthony Minessale d8703f5bd2 change conference
no more <rooms>
rooms will just be created on the fly.

<action application="conference" data="myconf@myprofile+1234"/>

+1234 is optional on-the-fly pin





git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2381 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-24 02:22:57 +00:00
Anthony Minessale 9d3d3a5d69 add 1 person dyna conference
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2380 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-24 00:44:47 +00:00
Anthony Minessale 31892070a6 working towards stability with new functions
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2368 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-22 22:34:48 +00:00
Anthony Minessale da727681fc update core
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2361 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-22 18:29:00 +00:00
Anthony Minessale 4f17ab7714 bunch of tweaks to make ivr more fun
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2350 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-21 19:14:51 +00:00
Brian West 9bf84fd913 update this to include my name :P /b
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2341 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-20 04:36:28 +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 78d060c6a7 *deep breath*
Ok,

This one adds a bunch of stuff on top of the framework restructuring from yesterday.

1) originate api function:
Usage: originate <call url> <exten> [<dialplan>] [<context>] [<cid_name>] [<cid_num>] [<timeout_sec>]

This will call the specified url then transfer the call to the specified extension

example: originate exosip/1000@somehost 1000 XML default

2) mutiple destinations in outbound calls:

This means any dialstring may contain an '&' separated list of call urls
When using mutiple urls in this manner it is possible to map a certian key as required
indication of an accepted call.  You may also supply a filename to play possibly instructing the 
call recipiant to press the desired key etc...

The example below will call 2 locations playing prompt.wav to any who answer and
completing the call to the first offhook recipiant to dial "4"



      <extension name="3002">
        <condition field="destination_number" expression="^3002$">
          <action application="set" data="call_timeout=60"/>
          <action application="set" data="group_confirm_file=/path/to/prompt.wav"/>
          <action application="set" data="group_confirm_key=4"/>
          <action application="bridge" data="iax/guest@somebox/1234&exosip/1000@somehost"/>
        </condition>
      </extension>

The following is the equivilant but the confirm data is passed vial the bridge parameters
(This is for situations where there is no originating channel to set variables to)

      <extension name="3002">
        <condition field="destination_number" expression="^3002$">
          <action application="bridge" data=/path/to/prompt.wav:4"confirm=iax/guest@somebox/1234&exosip/1000@somehost"/>
        </condition>
      </extension>

Omitting the file and key stuff will simply comeplete the call to whoever answers first. 
(this is similar to how other less fortunate software handles the situation with thier best effort.)

This logic should be permitted in anything that establishes an outgoing call with
switch_ivr_originate()

Yes! That means even in this new originate api command you can call mutiple targets and send
whoever answers first to an extension that calls more mutiple targets.  (better test it though!)


Oh, and you should be able to do the same in the mod_conference dial and dynamic conference features

please report any behaviour contrary to this account to me ASAP cos i would not be terribly
suprised if I forgot some scenerio that causes an explosion I did all this in 1 afternoon so it probably needs tuning still.





git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2311 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-17 00:53:09 +00:00
Anthony Minessale 6175062b27 consolidate code in conference into todays changes
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2303 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-16 00:35:02 +00:00
Anthony Minessale 0562e38a51 add proper shutdown to mod_conference
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2302 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-15 22:19:38 +00:00
Anthony Minessale 5782555e70 redecorating
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2301 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-15 21:38:24 +00:00
Anthony Minessale e54c549840 add bridge indication to conferences so sip disables the async rtp since we already have dual threaded i/o
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2293 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-14 21:16:17 +00:00
Michael Jerris f1e3aa5a96 time_t cast.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2256 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-11 15:01:48 +00:00