441 Commits

Author SHA1 Message Date
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
49f0d6152f tweaks
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4208 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-12 20:03:29 +00:00
Anthony Minessale
59d4d0b071 fix no_media mode
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4192 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-10 19:34:03 +00:00
Michael Jerris
712976653d fix paramater checking on switch_ivr_phrase_macro and it's consumers.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4187 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-09 22:55:48 +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
Michael Jerris
0d35fb0308 Fix typo in several places. Patch from Matt Klein.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4163 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-08 13:50:28 +00:00
Anthony Minessale
c6d0188af0 get rid of _ char in special vars and add an unset dialplan app for clarity sake
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4124 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-05 19:35:31 +00:00
Michael Jerris
d246f3a07b add queue_dtmf application, takes one param, a string of dtmf that will be queued to send from the channel. You could use this in the dialplan before a bridge to queue up dtmf to be sent to the other channel for example if you need to dial digits after answer for an fxo ata device.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4085 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-29 20:06:23 +00:00
Anthony Minessale
ed0524c2fc pre_answer only in ivr menus (you will have to actually answer yourself)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3987 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-18 16:06:04 +00:00
Anthony Minessale
5c802e3196 fix xml parser in ivr menus
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3986 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-18 15:44:01 +00:00
Michael Jerris
d83b399d96 completely untested redirect support, need to try this from a machine that can take sip calls.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3942 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-10 21:26:10 +00:00
Michael Jerris
63d89577d6 switch all libs and mods to use the dynamic instead of the static runtime so everything in freeswitch runs in a single instance of the runtime.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3925 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-07 04:35:16 +00:00
Michael Jerris
63bf54fee1 make build on windows.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3912 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-05 16:49:36 +00:00
Anthony Minessale
6a2529748a some changes from mmurdock
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3899 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-03 00:21:17 +00:00
Anthony Minessale
64bc419497 add hangup dp app
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3893 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-02 18:56:39 +00:00
Anthony Minessale
591c9b87aa ruin everything, sorry jamesdotcom
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3815 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-12-23 16:40:37 +00:00
Anthony Minessale
b7dbea6407 add pelim say stuff, module framework, xml parser, dialplan app, and add new channel var called sound_prefix for audio files
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3766 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-12-20 21:25:14 +00:00
Michael Jerris
ea20e92e59 actually add the application. (thanks knhor)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3600 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-12-10 22:19:22 +00:00
Michael Jerris
660159dff1 add extra input checking for valid input on some api's and functions.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3583 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-12-08 16:31:58 +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
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
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
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
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
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
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
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
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
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
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
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
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
Anthony Minessale
c48208e578 Add strftime app to the dp_tools
Use in the dialplan like so:

<!-- continue="true" means keep searching even when you have a match -->
<extension name="set-date" continue="true">
  <condition>
    <action application="strftime" data="NOW=%H:%M"/>
  </condition>
</extension>

<extension name="route-date">
  <condition field="$NOW" expression="^0[34].*">
    <action application="playback" data="/tmp/cluecon1.wav"/>
  </condition>
</extension>





git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2144 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-07-25 23:51:38 +00:00
Michael Jerris
0d82c97797 Fix win32 Build
Update win32 Setup
add show calls and show channels


git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1884 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-07-14 19:55:55 +00:00
Anthony Minessale
e73ee221d2 add mod_dptools, for set variable and sleep from the dialplan
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1864 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-07-13 13:20:20 +00:00