Commit Graph

3180 Commits

Author SHA1 Message Date
Michael Jerris
a021945cef switch_malloc and switch_zmalloc macros that are fatal if malloc fails both in debug and release modes, switch_zmalloc includes a companion memset for the malloc'd block.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4794 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-29 17:37:42 +00:00
Anthony Minessale
6e2b76eb75 finishing touch on nomedia with mutiple bridges
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4793 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-29 15:21:42 +00:00
Michael Jerris
677ebfff2b fix bsd make compile of mod_cdr
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4792 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-29 14:47:31 +00:00
Michael Jerris
429ed0b811 even when the same size, we should use ld over d, because..... well who really knows?
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4791 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-29 12:53:12 +00:00
Michael Jerris
617d581d10 fix freebsd build
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4790 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-29 12:41:13 +00:00
Michael Jerris
bc8a4855a6 use autoconf determined time_t printf format specifier
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4787 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-29 04:08:18 +00:00
Michael Jerris
490f53c183 use better tricks in mod_cdr Makefile.am so we don't get warnings about duplicate targets, and so we can move all our tricks into configure soon
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4786 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-29 02:58:02 +00:00
Anthony Minessale
8a4406ece2 Addition of scheduler engine and a few applications to use it.
This patch adds a scheduler thread to the core and moves the heartbeat
event to use the new scheduler as an example.

Also The following features are implemented that use this scheduler:

sched_hangup dialplan application:

<action application="sched_hangup" data="+10 normal_clearing bleg"/>

** The cause code is optional and the optional bleg keyword will only hangup the
   channel the current channel is bridged to if the call is in a bridge.

sched_transfer dialplan application:

<action application="sched_transfer" data="+10 1000 XML default"/>

** The last 2 args (dialplan and context) are optional

sched_broadcast dialplan application:

<action application="sched_broadcast" data="+10 playback:/tmp/foo.wav"/>
<action application="sched_broadcast" data="+10 playback!normal_clearing:/tmp/foo.wav"/>

** The optional !<cause_code> can be added to make the channel hangup after broadcasting the file.


sched_hangup api function:

sched_hangup +10 <uuid_string> normal_clearing

** The cause code is optional

sched_transfer api function:

sched_transfer +10 <uuid_string> 1000 XML default

** The last 2 args (dialplan and context) are optional

sched_broadcast api function:

sched_broadcast +10 <uuid_str> playback:/tmp/foo.wav
sched_broadcast +10 <uuid_str> playback!normal_clearing:/tmp/foo.wav

** The optional !<cause_code> can be added to make the channel hangup after broadcasting the file.

The new C functions in the core are documented in the doxeygen.

*NOTE* This commit should satisfy at least 2 bounties on the wiki



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4785 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-28 23:37:12 +00:00
Michael Jerris
24b1a46ceb we should never include off the installed includes, only the source tree ones.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4784 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-28 21:48:06 +00:00
Michael Jerris
4341b8e6e4 add --disable-resample configure option to build without resampler support
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4783 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-28 18:46:07 +00:00
Michael Jerris
e5dff3e822 add checking for successful re-sampler allocation. Add ifdefs to disable build with re-sampler.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4782 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-28 18:21:00 +00:00
Michael Jerris
0958553f39 add special make targets (from requests via irc)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4779 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-28 17:33:05 +00:00
Anthony Minessale
e6718b876c fix null pointer issue
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4778 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-28 15:15:01 +00:00
Michael Jerris
34359cb61c fix seg.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4777 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-28 12:30:20 +00:00
Anthony Minessale
4450a80bd8 This patch adds 2 important variables to the originate subsystem
originate_retries:
		This variable controls how many times the system should retry the
		entire dialstring before exiting on failure (default 1)

originate_retry_sleep_ms: 
		This variable controls how long in milliseconds to pause between 
		retries (default 1000)

*NOTE*	when using the , and & symbols to call sequential or simultaneous channels in conjunction with this feature,
	the *entire* dialstring will be repeated as many times as you specify in ${originate_retries}

Here is an example using the bridge application to originate the call. (The feature will also work anywhere else 
an origination can be made.)

<extension name="1000">
  <condition field="destination_number" expression="^1000$">
    <action application="set" data="originate_retries=10"/>
    <action application="set" data="originate_retry_sleep_ms=1000"/>
    <action application="bridge" data="sofia/$${domain}/1000@somehost.com"/>
  </condition>
</extension>





git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4776 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-27 17:15:10 +00:00
Michael Jerris
c5e0757737 use logger for iksemel logs too instead of stderr.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4775 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-27 05:15:16 +00:00
Michael Jerris
a409072a0f reconnect on failure
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4774 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-27 04:14:48 +00:00
Anthony Minessale
d9de1807ee Add state change i/o hook to the core and change some spidermonkey behaviour.
The most important thing to check is you now must create a new session with a blank constructor:
s = new Session();
then call s.originate() with all the former args that were documented to be for the constructor
this will will return true or false to indicate if the call worked.

See below this sample code demonstrates all of the changes:

////////////////////////////////////////////////////////////////////////////////
function on_hangup(hup_session)
{
    console_log("debug", "HANGUP!!!! name: " + hup_session.name + " cause: " + hup_session.cause + "\n");
	//exit here would end the script so you could cleanup and just be done
	//exit();
}

//set the on_hangup function to be called when this session is hungup
session.setHangupHook(on_hangup);

//allocate a new b_session
var b_session = new Session();

//make a call with b_session.  If this fails, all we will be able to access is the b_session.cause attr
if (b_session.originate(session, "sofia/mydomain.com/888@conference.freeswitch.org")) {
	//Inform the scripting engine to automaticly hang this session up when the script ends
    b_session.setAutoHangup(true);
	//set the on_hangup function to be called when this session is hungup
    b_session.setHangupHook(on_hangup);	
	//bridge session with b_session
    bridge(session, b_session);
} else {
    console_log("debug", "Originate Failed.. cause: " + b_session.cause + "\n");
}
////////////////////////////////////////////////////////////////////////////////






git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4773 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-27 00:40:53 +00:00
Michael Jerris
f628a159af don't double switch_xml_free
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4771 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-26 21:35:19 +00:00
Michael Jerris
880f17d33b refactor in mod_dialplan_xml. Factor out a function for the hint string generation/xml_locate so that we do not need to generate the xml hint string when using a static file. Dont add blank items from the caller profile to the hint string.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4766 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-25 15:21:22 +00:00
Michael Jerris
b65f2273d0 fix portaudio bsd build and remove gmakeisms from the portaudio lib makefile
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4765 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-25 01:11:03 +00:00
Michael Jerris
a7909fb093 I think this is actually more correct from what I read.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4764 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-24 20:12:41 +00:00
Michael Jerris
496bae429a a bit cleaner.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4763 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-24 19:54:38 +00:00
Michael Jerris
db9e1c549b a more proper replacement for vasprintf. Lets see if we can actually do it this way (seems to work on msvc which is the only platform I have seen that does not have vasprintf available).
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4762 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-24 19:33:34 +00:00
Michael Jerris
dc765f457e roll back 4757 until I figure out how I want to actually handle those.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4761 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-24 04:52:46 +00:00
Michael Jerris
dce495fc0a quick comment
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4760 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-24 04:51:17 +00:00
Michael Jerris
25762b3583 CR/LF -> LF
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4759 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-24 03:32:24 +00:00
Michael Jerris
010c2f4ee6 switch_config isn't used anymore. leaving the .c and .h file there for now, we may remove them in the future.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4758 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-24 03:29:24 +00:00
Michael Jerris
1ed2d7b2b8 add _COUNT memeber at the end of most enum defs (except for those with specific vals like the flags. These should be very handy for bounds checking later on.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4757 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-24 03:14:24 +00:00
Michael Jerris
550db707af a little realloc never hurt anyone.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4756 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-23 22:44:28 +00:00
Michael Jerris
67acaefcec fix windows build. you may need to delete libs/apr-util/xml/expat/lib/config.h for it to build.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4755 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-23 21:54:16 +00:00
Michael Jerris
bf0c023107 start building teletone as part of the core
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4754 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-23 20:41:16 +00:00
Michael Jerris
f066800296 don't build curl client, we don't need it
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4753 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-23 18:38:55 +00:00
Anthony Minessale
3b84b53819 fixes
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4751 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-23 16:34:13 +00:00
Anthony Minessale
318dc8b4e5 o crap
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4750 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-23 15:53:46 +00:00
Michael Jerris
7df787b72d add proper autoconf checks for mysql client and convert mod_cdr to automake makefile so that we can use AM_CONDITIONALS for the mysqlcdr build selection
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4749 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-23 06:08:17 +00:00
Michael Jerris
a7c186acec keep odbc from installing every time
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4748 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-23 03:45:08 +00:00
Anthony Minessale
848f8d43f8 temporary workaround for seg
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4747 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-23 03:09:03 +00:00
Michael Jerris
8607209400 still trying
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4746 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-23 00:39:55 +00:00
Michael Jerris
bbd69f3180 still trying
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4745 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-23 00:31:08 +00:00
Michael Jerris
f0d94e76f5 tweak deps
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4744 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-22 23:20:23 +00:00
Michael Jerris
ff40dd4ee3 tweak deps
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4743 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-22 23:04:12 +00:00
Michael Jerris
29de0403f6 work around broken libshout not linking -speex when it needs to
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4742 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-22 22:44:05 +00:00
Anthony Minessale
6c3040530e add a local copy of libsangoma
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4741 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-22 21:53:32 +00:00
Anthony Minessale
d99c7f9e7f add a local copy of libsangoma
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4740 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-22 21:50:59 +00:00
Anthony Minessale
5feaf19ecd use handy exported vars to find the installed lumenvox libs and includes
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4739 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-22 21:47:05 +00:00
Anthony Minessale
7a2098ef78 fix
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4738 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-22 21:40:11 +00:00
Michael Jerris
178e3cd8d6 shout does not need speex
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4737 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-22 21:13:10 +00:00
Michael Jerris
c44efac0eb fix linking to link to all the needed la's
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4736 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-22 21:04:43 +00:00
Anthony Minessale
1b5ea9482f dunno maybe this will work
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4735 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-22 20:55:46 +00:00