149 Commits

Author SHA1 Message Date
Anthony Minessale
9fedc12934 move pcre into core do a ./configure again (part 2)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2212 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-07-31 23:56:27 +00:00
Anthony Minessale
3a5caeddae move pcre into core do a ./configure again
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2211 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-07-31 23:46:37 +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
f7e6e52855 add speak application
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1583 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-06-09 15:15:58 +00:00
Anthony Minessale
3995ca8c00 add vars to fields in dp
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1511 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-05-26 19:25:00 +00:00
Anthony Minessale
ab3f42c9c4 update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1508 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-05-26 16:00:08 +00:00
Michael Jerris
6853b563c4 use dynamic lib for pcre on windows.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1492 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-05-23 16:38:48 +00:00
Anthony Minessale
21c2b5812e update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1476 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-05-17 00:58:21 +00:00
Michael Jerris
31ee0d59fc normalize configuration parameters to use - instead of _.
Break everybody's configuration.

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1475 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-05-16 17:08:21 +00:00
Michael Jerris
2a07e46e34 allow msvc build to work from source directory with a space in it.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1454 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-05-12 22:55:12 +00:00
Anthony Minessale
d53d9d3997 rearrange some things please see conf/freeswitch.xml as there is a significant change to the conf that will break your stuff
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1446 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-05-12 19:28:21 +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
dbcd3f4690 XMLification (wave 2)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1402 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-05-10 03:27:00 +00:00
Anthony Minessale
93666f6dd7 XMLification (wave 1)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1401 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-05-10 03:23:05 +00:00
Anthony Minessale
3058335e80 add xml
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1376 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-05-05 21:05:11 +00:00
Anthony Minessale
ccab39a2e7 break some more stuff
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1319 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-05-02 17:42:24 +00:00
Michael Jerris
c904577269 C++ says we can't use "interface" as a variable name.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1305 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-04-30 18:24:24 +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
Anthony Minessale
35dc32018c add transfer capability and small ways to test it
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1290 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-04-28 19:46:57 +00:00
Anthony Minessale
1eb4d491a5 causes part 2
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1226 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-04-22 03:05:25 +00:00
Anthony Minessale
a9f86cb58a add VAD
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1222 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-04-21 22:31:08 +00:00
Michael Jerris
026e8d39ca Set log levels on many existing log messages. A huge thanks to James Martelletti for going through all the log calls to do this.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1173 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-04-16 06:05:53 +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
ef4556479b add inbound/outbound separation to pcre
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1042 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-04-04 17:59:07 +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
Michael Jerris
a2c448e118 windows build update to use more dynamic libs, fix some type issues, and fix jrtp build.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@862 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-03-17 02:45:19 +00:00
Michael Jerris
dae0ff0d4a msvc build tweaks
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@833 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-03-10 09:01:40 +00:00
Anthony Minessale
cbdfe1f72f ok this is just being picky but on darwin and mac we really should call it .dylib instead of .so but this also gave me a chance to get better with the build system. /b
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@753 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-03-05 23:44:04 +00:00
Michael Jerris
681d2823e6 enable warnings as errors in msvc
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@637 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-02-20 19:07:41 +00:00
Michael Jerris
241903ba4e fix more msvc warnings.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@636 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-02-20 06:13:56 +00:00
Michael Jerris
70739b6d2e fix more msvc warnings. Fix mod_sndfile build on OSX
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@635 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-02-20 04:36:29 +00:00
Anthony Minessale
77bf3ceb5d Make warnings fatal on modules too
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@612 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-02-14 17:06:15 +00:00
Michael Jerris
0df19ccd10 add mod_ldap and mod_dialplan_demo to msvc build.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@586 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-02-10 22:09:20 +00:00
Anthony Minessale
146a819fdf add dialplan module to use new directory stuff. (you can get dialplan from ldap now)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@582 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-02-10 02:13:51 +00:00
Michael Jerris
01f0481db1 Build system cleanup, initial piece of automatic build test system (thanks xachen)
minor mod- I kept build.sh in the root dir for now.

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@560 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-02-08 00:57:35 +00:00
Anthony Minessale
597bc093bf more build stuff
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@505 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-01-30 21:04:19 +00:00
Anthony Minessale
6021832880 Windows updates
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@466 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-01-27 23:47:45 +00:00
Anthony Minessale
534db1947e Add more IVR stuff and a test app (mod_ivrtest)
in dialplan (ivrtest <path to file>)
if the file is valid it will play the file and you will be expected to dial digits
until you dial 10 digits or press # or * (* will end the call) (# will repeat the test endlessly)



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@462 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-01-27 21:33:45 +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
1e04eb13b5 indent
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@417 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-01-20 00:41:30 +00:00
Anthony Minessale
9cfa0cf916 optimize pcre and fix autoheadache
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@386 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-01-14 18:52:11 +00:00
Michael Jerris
b1ab21b5ca Use pcre static decl in msvc
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@385 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-01-14 16:55:25 +00:00
Anthony Minessale
54664b3dab fix iax and add regex dialplan
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@381 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-01-14 16:01:52 +00:00
Michael Jerris
b243f79024 add mod_pcre to msvc build. Add building of pcre library.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@380 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-01-14 15:00:01 +00:00
Anthony Minessale
23f3ad6b19 update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@378 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-01-14 13:22:29 +00:00
Anthony Minessale
ecfea1b594 update vcproj
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@274 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-01-03 23:14:28 +00:00
Anthony Minessale
cdd35a6ac5 update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@266 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-01-03 22:15:03 +00:00