63 Commits

Author SHA1 Message Date
Anthony Minessale
884cfc4465 fix event_socket bugs
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2430 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-29 20:27:43 +00:00
Anthony Minessale
2fe0375f77 add reply
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2379 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-23 23:24:23 +00:00
Anthony Minessale
3761d20e8a add presence
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2378 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-23 23:08:45 +00:00
Anthony Minessale
5ea6d5f03a add auto buddy
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2377 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-23 22:38:53 +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
72dcc8a515 fix mod_event_socket destination
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2321 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-17 23:47:24 +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
Michael Jerris
a90b88d201 revert static runtime change for msvc. Bad idea...
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2290 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-14 17:44:38 +00:00
Michael Jerris
fea5980a12 Change windows build to use static runtime to make it more easily portable to older windows, and to decrease startup time on windows.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2289 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-14 16:11:08 +00:00
Michael Jerris
c0be28d911 make mod cdr work on windows, and make it segfault less.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2279 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-13 04:41:40 +00:00
Anthony Minessale
3b09338cee more socket stuff
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2263 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-11 18:59:25 +00:00
Anthony Minessale
44095d48ef socket tweak
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2260 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-11 18:20:04 +00:00
Anthony Minessale
7ccdd37a71 socket code
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2257 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-11 15:25:49 +00:00
Anthony Minessale
010e85da14 temp fix socket issue on win
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2236 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-07 21:16:54 +00:00
Michael Jerris
8246f730fc merge mod_cdr changes to trunk
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2188 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-07-27 17:05:27 +00:00
Anthony Minessale
3481f29c62 dox
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2169 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-07-26 20:20:13 +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
9727efd842 Change the socket protocol and the sample client to use multiline input
valid input:

-------------------------
<command>[ <args>]

-------------------------
or
-------------------------
<command>[ <args>]
Header1: Val
HeaderN: Val

-------------------------





git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2109 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-07-25 14:14:07 +00:00
Michael Jerris
ae4ff80250 Add MysqlCDR to mod_cdr build on windows.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2085 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-07-24 20:10:12 +00:00
Michael Jerris
e9a3ad4877 Start getting mod_cdr w/ mysql to build on windows. Still more to do on this.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2080 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-07-24 18:30:41 +00:00
Anthony Minessale
3bc5fd502b fixup custom event stuff
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2078 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-07-24 15:45:36 +00:00
Michael Jerris
f723e57b61 Initial merge of mod_cdr. Big thanks to Yossi Neiman for this huge contribution. Please note that this is still somewhat a work in progress, but it works.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2077 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-07-24 15:19:05 +00:00
Michael Jerris
5378e48454 add mod_event_socket to windows build.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2049 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-07-22 22:16:06 +00:00
Anthony Minessale
9c79c2a3fb Add mod_event_socket remote client module and sample client.
To Test:

uncomment or add from modules.conf
make installall again to compile it
uncomment the load line from freeswitch.xml

the default values are to bind to 127.0.0.1 port 8021

telnet to port 8021
enter "auth ClueCon" to authenticate

from here you can do the following:
*) events [xml|plain] <list of events to log or all for all>
*) noevents 
*) log <level> // same as the console.conf values
*) nolog
*) api <command> <arg>
*) exit

there is a perl client in scripts/socket called fs.pl

with the module up and loaded:
cd scripts/socket
perl fs.pl <optional log level>

you can enter a few api commands like "show or status"




git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2047 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-07-22 21:49:52 +00:00
Anthony Minessale
d77e574d4e rearrange the furnature
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1846 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-07-12 18:39:19 +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
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
c1d0488201 update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1413 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-05-10 15:53:10 +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
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
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
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
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
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
Anthony Minessale
539ff39995 tweaks and fixes
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@859 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-03-15 22:11:13 +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
Michael Jerris
8420b7e8fb add mod_event_multicast to msvc build. Fix some warnings.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@618 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-02-14 22:58:07 +00:00
Anthony Minessale
ebfc333dc6 add files to go with previous commit
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@617 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-02-14 21:18:27 +00:00
Anthony Minessale
847b7160bd Add multicast event module
This does 2 things when loaded:

1) All events are serialized and sent to the multicast destination.
2) Any serialized event received on the socket will be reconstituted into
   an event and fired on the local box

So, if you make another local event handler listen for the custom event from
mod_event_multicast "multicast::event" you will be able to react to events
on other instances of FreeSWITCH




git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@616 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-02-14 21:13:53 +00:00