Commit Graph

128 Commits

Author SHA1 Message Date
Michael Jerris
562471068e Don't load module interfaces without a name. We use that name for reference in the hash, it is required.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4372 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-23 18:24:31 +00:00
Michael Jerris
0c34702513 fix warnings on weird L value casts for function pointers.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4246 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-13 22:15:24 +00:00
Michael Jerris
07d6f12018 use "%s" format specifier for uses of switch_event_add_header that just pass a string to avoid potential issues/exploits"
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4226 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-13 04:43:49 +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
74c5c120af fix typo
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4131 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-02-06 06:07:23 +00:00
Anthony Minessale
9821a5237a more tweaks
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4084 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-29 18:31:35 +00:00
Anthony Minessale
db70ef2a37 codec tweaks (do a make sure)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4077 d0543943-73ff-0310-b7d9-9358b9ac24b2
2007-01-29 15:43:41 +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
Brian West
5cad11b9c4 make it more obvious
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3700 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-12-18 20:08:45 +00:00
Anthony Minessale
44cc7d5cfe build progress break everything
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3682 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-12-17 01:01:09 +00:00
Anthony Minessale
5969fe801b prevent double load of modules
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3506 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-12-01 16:08:56 +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
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
99e22d69bd refactor earlier junk from this eve and add ken's propagate variable thing
set this sometime before an origination (bridge etc).

<action application="set" data="propagate_vars=my_cool_var1,my_cool_var2,foo,bar"/>

and they should be cloned over to the new channel when it's substantiated



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3101 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-19 07:13:34 +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
564e791d63 type tweak
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2915 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-01 21:21:41 +00:00
Michael Jerris
4f0aae4dba fix message khz->hz
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2537 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-06 23:29:03 +00:00
Anthony Minessale
4395e55493 typo
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2185 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-07-27 15:45:19 +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
4aab8842cd tweaks for wideband tests
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1883 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-07-14 19:42:09 +00:00
Michael Jerris
03ac8289e8 fix windows build
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1833 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-07-11 20:59:07 +00:00
Anthony Minessale
2838ad4a9b restructure codec code
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1818 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-07-10 22:08:02 +00:00
Anthony Minessale
3ba26db705 move iana codes to the implementations.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1666 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-06-23 20:14:29 +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
Anthony Minessale
295424544d update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1425 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-05-10 19:07:38 +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
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
Michael Jerris
dc8cb51400 fix types for msvc
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1348 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-05-04 16:01:38 +00:00
Anthony Minessale
51b19e6fa6 update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1328 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-05-03 17:15:17 +00:00
Anthony Minessale
9e93388543 commit
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1326 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-05-03 16:55:30 +00:00
Michael Jerris
b6545379d6 add interfaces to sqlite db table for quick show api commands (coming soon)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1313 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-05-01 19:44:21 +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
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
Michael Jerris
49783ee5c1 code before declaration.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1246 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-04-25 04:09:34 +00:00
Anthony Minessale
a3d0b78ea0 tweak loadable module code to allow registration for langauges that can in turn fully implement modules of thier own (e.g. mono)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1244 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-04-25 00:33:00 +00:00
Anthony Minessale
a680625e0a add load command
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1209 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-04-20 00:58:06 +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
Michael Jerris
74d14b25f7 tweak to repair some damage from icc tweaks
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@992 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-03-31 16:10:00 +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
Brian West
c086f23e6c Fix newline char.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@809 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-03-08 17:12:41 +00:00
Michael Jerris
6ad4c8a9d5 build mod_perl and fs_perl correctly on windows.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@765 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-03-06 20:35:23 +00:00
Michael Jerris
3a0038330d add perl dir to the path at runtime on windows.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@759 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-03-06 03:23:34 +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
9d8a280cde use directory separator #define instead of hard-coded /
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@739 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-03-03 08:26:00 +00:00
Anthony Minessale
62e510c9b1 general haphazzard rearrangement
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@702 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-02-28 21:21:48 +00:00
Anthony Minessale
5492b17e94 fix nice fresh config bug
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@668 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-02-24 21:59:13 +00:00
Michael Jerris
f36292af04 get rid of unnecessary pragmas.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@655 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-02-22 22:36:52 +00:00
Anthony Minessale
009e9607e7 fix evil pragmas in unix and get rid of horrible ^M in the files (dont do that)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@644 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-02-21 18:34:32 +00:00
Michael Jerris
fea14e6d90 block unimportant warnings in core.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@642 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-02-21 17:55:38 +00:00
Anthony Minessale
2bea53541b cleanup some warnings
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@639 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-02-21 15:05:18 +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
5d8283c4ad make new modules.conf OS independant
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@613 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-02-14 17:31:20 +00:00
Anthony Minessale
cb463b4e52 Make optional modules.conf that allows you to pick the module load order
and to exclude some modules. (see example in trunk/conf)

Make ';' a valid comment in config files 
Interpret a line in config files beginning with "__END__" as eof



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@608 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-02-14 16:26:24 +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
Anthony Minessale
95fbe70503 Initial framework for directory interface modules (ldap etc)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@575 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-02-09 16:28:49 +00:00
Anthony Minessale
17e06cf6bc Add framework for speech modules (asr/tts)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@457 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-01-27 16:43:57 +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
a4d3a30ac2 what's up doc
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@280 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-01-05 21:03:22 +00:00
Anthony Minessale
8a292bf0b2 stupid crap
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@279 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-01-04 01:04:33 +00:00
Michael Jerris
bedcabb8ec cleanup and formating
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@261 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-01-03 01:17:59 +00:00
Anthony Minessale
378ce8e115 let codecs and timers use existing pool and add new file i/o backend
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@212 d0543943-73ff-0310-b7d9-9358b9ac24b2
2005-12-27 18:46:12 +00:00
Anthony Minessale
a0d199af73 let codecs and timers be init with an existing pool
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@209 d0543943-73ff-0310-b7d9-9358b9ac24b2
2005-12-26 21:01:22 +00:00
Anthony Minessale
f3d711ccae event cleanup from windows perspective
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@204 d0543943-73ff-0310-b7d9-9358b9ac24b2
2005-12-23 21:09:36 +00:00
Anthony Minessale
f3d53dfa7b tweak
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@198 d0543943-73ff-0310-b7d9-9358b9ac24b2
2005-12-23 03:12:39 +00:00
Anthony Minessale
f52b45c2c9 centralize api interface
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@197 d0543943-73ff-0310-b7d9-9358b9ac24b2
2005-12-23 02:55:25 +00:00
Anthony Minessale
3e0234219b use more of apr-utils in the event stuff
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@191 d0543943-73ff-0310-b7d9-9358b9ac24b2
2005-12-22 18:53:33 +00:00
Anthony Minessale
230c5012a6 more event code
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@153 d0543943-73ff-0310-b7d9-9358b9ac24b2
2005-12-14 22:46:09 +00:00
Anthony Minessale
c5174dbcc8 OMG this rocks
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@102 d0543943-73ff-0310-b7d9-9358b9ac24b2
2005-12-09 22:19:08 +00:00
Anthony Minessale
86c1904cce update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@101 d0543943-73ff-0310-b7d9-9358b9ac24b2
2005-12-09 19:33:21 +00:00
Anthony Minessale
e85eefe7f2 let modules see the filename they were called as
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@94 d0543943-73ff-0310-b7d9-9358b9ac24b2
2005-12-08 18:31:49 +00:00
Anthony Minessale
8311b9a01a iax and empty core for opal
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@86 d0543943-73ff-0310-b7d9-9358b9ac24b2
2005-12-06 17:18:56 +00:00
Michael Jerris
b266ae8b11 Moved remotely
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@48 d0543943-73ff-0310-b7d9-9358b9ac24b2
2005-11-19 20:09:09 +00:00