Commit Graph

61 Commits

Author SHA1 Message Date
Michael Jerris 0dbc6515d2 fix windows build
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@6421 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-11-28 22:27:33 +00:00
Anthony Minessale 60c783c636 rss feeds of your voicemail
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@6417 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-11-28 19:56:25 +00:00
Michael Jerris 7c125a5d19 var types, build errors fix.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@5792 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-10-04 13:17:56 +00:00
Anthony Minessale 1667112b3b add fsctl loglevel [<level>] fsctl command
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@5790 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-10-03 23:43:01 +00:00
Anthony Minessale bd6bd9ad57 add softtimer to the core, begin framework for static modules and reduces calls to gettimeofday for timestamps
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@5784 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-10-03 16:44:11 +00:00
Michael Jerris 9c364f9ff4 silence picky compiler.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@5678 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-08-29 20:38:00 +00:00
Anthony Minessale d2002bd07c tweak for editline stuff
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@5175 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-05-14 16:20:57 +00:00
Anthony Minessale 5d09c438ac update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@5046 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-04-30 23:56:27 +00:00
Anthony Minessale c5c13c2668 add --enable-core-libedit-support configure flag in case you want nicer command line stuff in the debug console (I know I do when I am coding dunno about you)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@5044 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-04-30 20:37:41 +00:00
Anthony Minessale debdfb1aab indent
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4798 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-30 00:13:31 +00:00
Anthony Minessale 3a54126261 spring cleaning
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4795 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-29 22:31:56 +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 42e78242a3 add wrapper code to fully encapsulate apr, apr-utils, pcre, and sqlite. fully use switch_ namespace in modules, create our own format and type defines. follow up commit for unix autotools coming soon after this. PLEASE NOTE: you will NEED to do a make megaclean and run configure again after this update (and the following commit) or it will not build.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4494 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-03-09 20:44:13 +00:00
Michael Jerris 95374edaab constify the fmt string on all printf like functions
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4249 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-14 02:53:23 +00:00
Michael Jerris c0a362d156 use WaitForSingleObject for the console loop to wait on stdin on the windows build, as the select was not working properly.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4247 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-14 00:31:11 +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 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
Anthony Minessale 403243980e mmkay
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4217 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-13 01:58:39 +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 aa2d884df7 tweak
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3916 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-06 16:40:46 +00:00
Brian West d5acc6493c ctl-d crap (i still would not recommend doing it
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3729 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-12-19 19:15:13 +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 0e2a7c122c find missing ret = and put them back
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3064 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-16 19:56:42 +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
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 73b5fcf641 win32 tweaks
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2767 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-20 20:47:28 +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
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
Anthony Minessale 780edcd09d optimizations
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2354 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-22 00:56:27 +00:00
Anthony Minessale c4d890e0a4 Modify XML Dialplan
BTW, forget what I said yesterday RE: the strftime app I was at McDonalds, how can I concentrate there eh? 
see below....


The Definitive Guide To XML Dialplan:

The "dialplan" section of the freeswitch.xml meta document may contain several contexts

<?xml version="1.0"?>
<document type="freeswitch/xml">
  <section name="dialplan" description="Regex/XML Dialplan">
    <!-- the default context is a safe start -->
    <context name="default">

    <!-- one or more extension tags -->

    </context>
    
    <!-- more optional contexts -->
  </section>
</document>

The important thing to remember is that the dialplan is parsed once when the call
hits the dialplan parser in the RING state.  With one pass across the XML the result
will be a complete list of instructions installed into the channel based on
 parsed <action> or <anti-action> tags.

Those accustomed to Asterisk may expect the call to follow the dialplan by executing the 
applications as it parses them allowing data obtained from one action to influence the next action.
This not the case with the exception being the %{api func} {api arg} field type where an pluggable api call from
a module may be executed as the parsing occurs but this is meant to be used to draw realtime info such as
date and time or other quickly accessible information and shold *not* be abused.


The anatomy of an <extension> tag.

Legend: 
Text wrapped in [] indicates optional and is not part of the actual code.
a '|' inside [] indicates mutiple possible values and also is not part of the code.
Text wrapped in {} indicates it's a description of the parameter in place of the param itself.

<extension name="{exten_name}" [continue="[true|false]"]> 

continue=true means even if an extension executes to continue
parsing the next extension too

The {exten_name} above may anything but if it's 
an exact match with the destination number the parser will leap to this extension
to begin the searching that does not mean it will execute the extension.

Searching will either begin at the first extension in the context or at the point
the the parser has jumped to in the case described above.

Each condition is parsed in turn first taking the 'field' param.
The parser will apply the perl regular expression to each 'field' param encountered.

If the expression matches, it will parse each existing <action> tag in turn and add 
the data from the <application> tags to the channels todo list.	

If a matched expression contains any data wrapped in () the variables
$1,$2..$N will be valid and expanded in any of 'data' params from the subsequent action tags.

If the expression does NOT match, it will parse each <anti-action> tag in turn and add 
the data from the <application> tags to the channels todo list.
*NOTE* since there was no match the () feature is not availabe in anti-actions

The 'break' param indicates how to behave in relation to matching:
*) 'on-true'  - stop searching conditions after the first successful match.
*) 'on-false' - stop searching after the first unsuccessful match.
*) 'always'   - stop at this conditon regardless of a match or non-match.
*) 'never'    - continue searching regardless of a match or non-match.

<condition field="[{field name}|${variable name}|%{api func} {api arg}]" expression="{expression}" break="[on-true|on-false|always|never]">
  <action application="{app name}" data="{app arg}"/>
  <anti-action application="{app name}" data="{app arg}"/>
</condition>

  <!-- any number of condition tags may follow where the same rules apply -->
</extension>




git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2167 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-07-26 20:12:49 +00:00
Michael Jerris 6a98739f2e fix off by 1 in console cmd handling. Thanks trixter for identifying this.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1616 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-06-13 21:41:16 +00:00
Michael Jerris 73ff3c89a6 move switch_version.h to be a private header.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1463 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-05-15 15:00:10 +00:00
Michael Jerris ead82d86fd msvc types tweaks.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1416 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-05-10 16:37:56 +00:00
Anthony Minessale f09491a69b XMLification (wave 4)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1412 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-05-10 15:47:54 +00:00
Anthony Minessale 913104b50c portaudio tweaks
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1311 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-05-01 17:20:30 +00:00
Michael Jerris 14fee78470 part 3 of 3 standardizing typedefed types to end in _t.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1300 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-04-29 23:43:28 +00:00
Michael Jerris 73a3adac8f part 2 of many standardizing typedefed types to end in _t
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1294 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-04-29 06:05:03 +00:00
Michael Jerris d0347b2a95 part 1 of many standardizing typedefed types to end in _t
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1292 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-04-29 01:00:52 +00:00
Brian West 559b8ab26c Gut Logger and put it back modular style
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1117 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-04-11 21:13:44 +00:00
Anthony Minessale 64507e70ca icc changes part 1
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@982 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-03-30 23:02:50 +00:00
Anthony Minessale fac7b4a64e optimize
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@960 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-03-29 19:11:20 +00:00
Anthony Minessale d22db18b4b update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@930 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-03-26 17:42:06 +00:00
Michael Jerris ce72c5d1c8 fix segfault from stack corruption.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@889 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-03-21 18:32:39 +00:00
Anthony Minessale 142e273cb0 update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@872 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-03-18 04:13:51 +00:00
Michael Jerris fc341792be turn on higher warning level in msvc for the core and libteletone and resolve warnings.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@634 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-02-20 00:23:25 +00:00
Anthony Minessale 926bea44eb valgrind tweaks
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@600 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-02-13 18:34:39 +00:00
Michael Jerris 92628433da fix oops (svn merge -r 418:417 http://svn.freeswitch.org/svn/freeswitch/trunk)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@419 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-01-20 15:05:05 +00:00
Anthony Minessale 0ea203849f update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@418 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-01-20 02:02:03 +00:00
Anthony Minessale 42383b1f15 indent
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@416 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-01-20 00:40:29 +00:00
Anthony Minessale 21baa6630b update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@312 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-01-09 22:06:01 +00:00