I just uploaded a patch <a href="http://jira.freeswitch.org/browse/FSCORE-102">http://jira.freeswitch.org/browse/FSCORE-102</a><br><br>Brian, can you be kind and fix/add the config when/if the patch is accepted?<br><br><div class="gmail_quote">
On Wed, Feb 20, 2008 at 7:04 PM, Brian West <<a href="mailto:brian.west@mac.com">brian.west@mac.com</a>> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
I would wrap the query in a CDATA just to be safe.<br>
<font color="#888888"><br>
/b<br>
</font><div><div></div><div class="Wj3C7c"><br>
On Feb 20, 2008, at 10:23 AM, Jonas Gauffin wrote:<br>
<br>
> ohh. yes ofcourse. didnt think of that.<br>
><br>
> How about adding driver mapping into the odbcfile.<br>
><br>
> for example:<br>
><br>
> <section name="odbc"><br>
> <connection_check driver="default">SELECT 1</connection_check><br>
> <connection_check driver="fb64">SELECT FIRST 1 * FROM RDB<br>
> $RELATIONS</connection_check><br>
> <connection_check driver="firebird">SELECT FIRST 1 * FROM RDB<br>
> $RELATIONS</connection_check><br>
> </section><br>
><br>
> On Wed, Feb 20, 2008 at 4:54 PM, Michael Jerris <<a href="mailto:mike@jerris.com">mike@jerris.com</a>><br>
> wrote:<br>
> This check would have to be specific to each odbc connection, not<br>
> global to the switch, as you could be using different types of<br>
> databases for different connections. I still lean towards a better<br>
> way of auto-detecting (probably in addition to a configurable<br>
> option) if it is at all possible.<br>
><br>
><br>
> Mike<br>
><br>
> On Feb 20, 2008, at 9:57 AM, Jonas Gauffin wrote:<br>
><br>
>> Ok. I've done a patch and will upload it if the following config is<br>
>> ok by Anthony.<br>
>><br>
>> (Either create odbc.conf.xml in autoload_configs or add it directly<br>
>> to freeswitch.xml)<br>
>><br>
>> <section name="odbc" description="odbc general options"><br>
>> <connection_check>SELECT 1</connection_check><br>
>> </section><br>
>><br>
>> My patch will load that string when a new connection is created.<br>
>><br>
>> On Wed, Feb 20, 2008 at 3:40 PM, <<a href="mailto:freeswitch@dalethatcher.com">freeswitch@dalethatcher.com</a>> wrote:<br>
>> Could I suggest the 'db check' query be configurable? Oracle is<br>
>> another<br>
>> database which doesn't work with the 'select 1' and needs 'select 1<br>
>> from<br>
>> dual'. Then you can have the default as 'select 1' and let the end<br>
>> user<br>
>> fiddle with the config for their own particular broken DB.<br>
>><br>
>> Adding in special code to handle every database out there is going<br>
>> to be<br>
>> a big headache for you. If it isn't already.<br>
>><br>
>> thanks,<br>
>><br>
>> - Dale<br>
>><br>
>> On Wed, Feb 20, 2008 at 06:08:08AM -0800, Anthony Minessale wrote:<br>
>> > Many databases break silently or the connection drops<br>
>> > without any way to know for sure w/o trying to use it.<br>
>> ><br>
>> > I choose to ensure in the core that the data is connected.<br>
>> > executing "select 1" is a small price to pay to make sure<br>
>> > that the database is connected considering the importance<br>
>> > of persistent connectivity in the sip, jingle and call<br>
>> > limit databases as well as the javascript that rely on it.<br>
>> ><br>
>> > All of those applications to make the safe<br>
>> > assumption that the core will keep the db connected and<br>
>> > to change that would be drastic behavior change and<br>
>> > destabilize the code on the eve of our release.<br>
>> ><br>
>> > Therefore i guess we should focus on better heuristics<br>
>> > to detect firebird, preferably based on the driver name<br>
>> > and not by doing a 2nd sql stmt every time.<br>
>> ><br>
>> ><br>
>> ><br>
>> > Anthony Minessale II<br>
>> ><br>
>> > FreeSWITCH <a href="http://www.freeswitch.org/" target="_blank">http://www.freeswitch.org/</a><br>
>> > ClueCon <a href="http://www.cluecon.com/" target="_blank">http://www.cluecon.com/</a><br>
>> ><br>
>> > AIM: anthm<br>
>> > <a href="mailto:MSN:anthony_minessale@hotmail.com">MSN:anthony_minessale@hotmail.com</a><br>
>> > GTALK/JABBER/PAYPAL:<a href="mailto:anthony.minessale@gmail.com">anthony.minessale@gmail.com</a><br>
>> > IRC: <a href="http://irc.freenode.net" target="_blank">irc.freenode.net</a> #freeswitch<br>
>> ><br>
>> > FreeSWITCH Developer Conference<br>
>> > <a href="mailto:sip:888@conference.freeswitch.org">sip:888@conference.freeswitch.org</a><br>
>> > <a href="http://iax:guest@conference.freeswitch.org/888" target="_blank">iax:guest@conference.freeswitch.org/888</a><br>
>> > <a href="mailto:googletalk:conf+888@conference.freeswitch.org">googletalk:conf+888@conference.freeswitch.org</a><br>
>> > pstn:213-799-1400<br>
>> ><br>
>> ><br>
>> > ----- Original Message ----<br>
>> > From: David Revill <<a href="mailto:davidrevill@datarun.co.uk">davidrevill@datarun.co.uk</a>><br>
>> > To: <a href="mailto:freeswitch-users@lists.freeswitch.org">freeswitch-users@lists.freeswitch.org</a><br>
>> > Sent: Tuesday, February 19, 2008 4:37:28 PM<br>
>> > Subject: Re: [Freeswitch-users] Spidermonkey ODBC<br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> > DIV {<br>
>> > MARGIN:0px;}<br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> > Unfortunately, there isn't a universal ansi sql<br>
>> > stmt that will do it as the only statements which can be<br>
>> guaranteed to follow<br>
>> > the ansi standard are the simple select, update and delete<br>
>> statements which rely<br>
>> > on knowing some table name .<br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> > I think we are trying to solve a problem which need<br>
>> > not exist. The Javascript application should handle the idle<br>
>> timeout. It<br>
>> > should close the connection if it will not be using it for a while,<br>
>> > and,if it needs to, can do what db_is_up is attempting to do in the<br>
>> > application code. Testing for connection before every query seems<br>
>> an<br>
>> > unneccessary overhead.<br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> > ----- Original Message -----<br>
>> ><br>
>> > From:<br>
>> > Anthony<br>
>> > Minessale<br>
>> ><br>
>> > To: <a href="mailto:freeswitch-users@lists.freeswitch.org">freeswitch-users@lists.freeswitch.org</a><br>
>> ><br>
>> ><br>
>> > Sent: Tuesday, February 19, 2008 6:38<br>
>> > PM<br>
>> ><br>
>> > Subject: Re: [Freeswitch-users]<br>
>> > Spidermonkey ODBC<br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> > is<br>
>> > there some universal ansi sql stmt that is small and harmless<br>
>> > but is<br>
>> > supported by everything? to replace "select 1"<br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> > Anthony Minessale II<br>
>> ><br>
>> > FreeSWITCH <a href="http://www.freeswitch.org/" target="_blank">http://www.freeswitch.org/</a><br>
>> > ClueCon <a href="http://www.cluecon.com/" target="_blank">http://www.cluecon.com/</a><br>
>> ><br>
>> > AIM:<br>
>> > anthm<br>
>> > <a href="mailto:MSN:anthony_minessale@hotmail.com">MSN:anthony_minessale@hotmail.com</a><br>
>> > GTALK/JABBER/PAYPAL:<a href="mailto:anthony.minessale@gmail.com">anthony.minessale@gmail.com</a><br>
>> > IRC:<br>
>> > <a href="http://irc.freenode.net" target="_blank">irc.freenode.net</a> #freeswitch<br>
>> ><br>
>> ><br>
>> > FreeSWITCH Developer<br>
>> > Conference<br>
>> > <a href="mailto:sip:888@conference.freeswitch.org">sip:888@conference.freeswitch.org</a><br>
>> > <a href="http://iax:guest@conference.freeswitch.org/888" target="_blank">iax:guest@conference.freeswitch.org/888</a><br>
>> > <a href="mailto:googletalk:conf+888@conference.freeswitch.org">googletalk:conf+888@conference.freeswitch.org</a><br>
>> > pstn:213-799-1400<br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> > -----<br>
>> > Original Message ----<br>
>> > From: David Revill<br>
>> > <<a href="mailto:davidrevill@datarun.co.uk">davidrevill@datarun.co.uk</a>><br>
>> > To:<br>
>> > <a href="mailto:freeswitch-users@lists.freeswitch.org">freeswitch-users@lists.freeswitch.org</a><br>
>> > Sent: Tuesday, February 19, 2008<br>
>> > 6:56:31 AM<br>
>> > Subject: Re: [Freeswitch-users] Spidermonkey ODBC<br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> > One way to detect firebird would be to put the<br>
>> > 'Select first 1 * from RDB$relations' into<br>
>> switch_odbc_handle_connect.<br>
>> > If it succeeds then it is Firebird. A better query might be<br>
>> 'select * from<br>
>> > rdb$database' as the system table rdb$database only ever has 1<br>
>> > record.<br>
>> ><br>
>> ><br>
>> > -----<br>
>> > Original Message -----<br>
>> ><br>
>> > From:<br>
>> > Jonas<br>
>> > Gauffin<br>
>> ><br>
>> > To:<br>
>> > <a href="mailto:freeswitch-users@lists.freeswitch.org">freeswitch-users@lists.freeswitch.org</a><br>
>> ><br>
>> ><br>
>> > Sent:<br>
>> > Tuesday, February 19, 2008 12:18 PM<br>
>> ><br>
>> > Subject:<br>
>> > Re: [Freeswitch-users] Spidermonkey ODBC<br>
>> ><br>
>> ><br>
>> ><br>
>> > I''ve only tested it with firebird on windows. As you said,<br>
>> > your driver name doesnt match any of the names I used to<br>
>> detect if it's<br>
>> > firebird.<br>
>> ><br>
>> > The problem is that most databases supports "SELECT 1" as a<br>
>> > query. It will always be successful if the the connection is<br>
>> up. However,<br>
>> > firebird did not support "SELECT 1" and therefore i did query<br>
>> the system<br>
>> > database instead.<br>
>> ><br>
>> > If the firebird check fails, it will try to invoke<br>
>> > "SELECT 1", and on firebird that query will fail. And the<br>
>> failure is<br>
>> > interpreted as the connection is down, and therefore it tries<br>
>> to<br>
>> > reconnect.<br>
>> ><br>
>> > That's probably why you get that error. If you have any<br>
>> > other idea on how I can detect if it's a firebird db, please<br>
>> let me know and<br>
>> > i'll fix the odbc code.<br>
>> ><br>
>> ><br>
>> > On Feb 19, 2008 1:05 PM, David Revill <<a href="mailto:davidrevill@datarun.co.uk">davidrevill@datarun.co.uk</a><br>
>> ><br>
>> > wrote:<br>
>> ><br>
>> ><br>
>> ><br>
>> > That's a fair point, but db_is_up is only<br>
>> > called in 2 places and the attempted re-connect could be<br>
>> done if the<br>
>> > exec'd query fails. That way it would not be dependant on<br>
>> the name of the<br>
>> > driver.<br>
>> ><br>
>> ><br>
>> ><br>
>> > In my application, the database was queried<br>
>> > at the beginning of the script and the connection closed.<br>
>> It was<br>
>> > explicitly re-connected at the end to post data, so the<br>
>> connection timeout<br>
>> > was not an issue.<br>
>> ><br>
>> ><br>
>> ><br>
>> > -----<br>
>> > Original Message -----<br>
>> ><br>
>> > From:<br>
>> > Jonas Gauffin<br>
>> ><br>
>> > To:<br>
>> > <a href="mailto:freeswitch-users@lists.freeswitch.org">freeswitch-users@lists.freeswitch.org</a><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> > Sent:<br>
>> > Tuesday, February 19, 2008 10:35 AM<br>
>> ><br>
>> > Subject:<br>
>> > Re: [Freeswitch-users] Spidermonkey ODBC<br>
>> ><br>
>> ><br>
>> ><br>
>> > I did that code a couple of months ago.<br>
>> > The function<br>
>> > was added since connections are closed if they are idle<br>
>> too long, and<br>
>> > they were not reconnected again if that happened.<br>
>> ><br>
>> ><br>
>> ><br>
>> > On Feb 19, 2008 11:22 AM, David Revill <<a href="mailto:davidrevill@datarun.co.uk">davidrevill@datarun.co.uk</a><br>
>> ><br>
>> > wrote:<br>
>> ><br>
>> ><br>
>> ><br>
>> > The problem is in switch_odbc.c function<br>
>> > db_is_up. It assumes that the variable is_firebird is<br>
>> true, but the<br>
>> > setting of this variable assumes that the Firebird<br>
>> driver name has<br>
>> > 'FIREBIRD', 'FB64' or 'FB32' in it.<br>
>> ><br>
>> ><br>
>> ><br>
>> > I commented out the code in<br>
>> > db_is_up and just returned a true value, as on closer<br>
>> inspection<br>
>> > could not see the point of this function.<br>
>> ><br>
>> ><br>
>> ><br>
>> > David Revill<br>
>> ><br>
>> ><br>
>> ><br>
>> > -----<br>
>> > Original Message -----<br>
>> ><br>
>> > From:<br>
>> > David Revill<br>
>> ><br>
>> > To:<br>
>> > <a href="mailto:freeswitch-users@lists.freeswitch.org">freeswitch-users@lists.freeswitch.org</a><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> > Sent:<br>
>> > Tuesday, February 19, 2008 8:58 AM<br>
>> ><br>
>> > Subject:<br>
>> > Re: [Freeswitch-users] Spidermonkey ODBC<br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> > I spotted this error a few months ago,<br>
>> > and to my shame did not let everyone know. I have<br>
>> since<br>
>> > archived the project so cannot point you to the<br>
>> actual code.<br>
>> > However, the problem is that it assumes the name of<br>
>> the<br>
>> > Firebird Driver (FB64?) to set a boolean, so that it<br>
>> handle<br>
>> > the connection test differently.<br>
>> ><br>
>> ><br>
>> ><br>
>> > When looking at the actual code, I<br>
>> > actually felt that the connection test was redundant,<br>
>> as all it did<br>
>> > was a select from a system table. This meant it was<br>
>> doing two<br>
>> > queries for everyone required. (One to see if it<br>
>> could do a query,<br>
>> > and then one to do it). I therefore commented the<br>
>> connection test<br>
>> > function out.<br>
>> ><br>
>> ><br>
>> ><br>
>> > regards<br>
>> ><br>
>> ><br>
>> ><br>
>> > David Revill<br>
>> ><br>
>> ><br>
>> > -----<br>
>> > Original Message -----<br>
>> ><br>
>> > From:<br>
>> > Steven Brown<br>
>> ><br>
>> > To:<br>
>> > <a href="mailto:freeswitch-users@lists.freeswitch.org">freeswitch-users@lists.freeswitch.org</a><br>
>> ><br>
>> ><br>
>> > Sent:<br>
>> > Monday, February 18, 2008 11:34 PM<br>
>> ><br>
>> > Subject:<br>
>> > [Freeswitch-users] Spidermonkey ODBC<br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> > Hi,<br>
>> ><br>
>> ><br>
>> ><br>
>> > I'm experimenting with<br>
>> > spidermonkey for JavaScript call control, the<br>
>> basics seem<br>
>> > fine and I'm now trying to connect to an existing<br>
>> Firebird<br>
>> > database, the Firebird odbc lib is installed ok as<br>
>> is unixODBC and<br>
>> > I can confirm this and access the db no problem<br>
>> with isql,<br>
>> > something strange happens though when I connect in<br>
>> spidermonkey,<br>
>> > basically the odbc connection is made successfully,<br>
>> but then as<br>
>> > soon as I call either exec or query the odbc<br>
>> connection starts to<br>
>> > drop and re-connect continuously,<br>
>> ><br>
>> ><br>
>> ><br>
>> > the isql output is below<br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> > isql -v<br>
>> > test<br>
>> > +---------------------------------------+<br>
>> > |<br>
>> > Connected!<br>
>> > |<br>
>> > |<br>
>> > |<br>
>> > |<br>
>> > sql-statement<br>
>> > |<br>
>> > | help<br>
>> > [tablename]<br>
>> > |<br>
>> > |<br>
>> > quit<br>
>> > |<br>
>> > |<br>
>> > |<br>
>> > +---------------------------------------+<br>
>> > SQL> select<br>
>> > first 1 * from<br>
>> > pool_phones<br>
>> > +---------------------+------------+<br>
>> > |<br>
>> > GSMNO<br>
>> > | ORGNO<br>
>> > |<br>
>> > +---------------------+------------+<br>
>> > |<br>
>> > 0712345678 |<br>
>> > 1<br>
>> > |<br>
>> > +---------------------+------------+<br>
>> > SQLRowCount returns<br>
>> > 1<br>
>> > 1 rows fetched<br>
>> > SQL><br>
>> ><br>
>> ><br>
>> > however the following test code<br>
>> > calling the same query<br>
>> ><br>
>> ><br>
>> ><br>
>> > use("ODBC");<br>
>> ><br>
>> > var db = new<br>
>> > ODBC("test","SYSDBA","masterkey");<br>
>> > db.connect();<br>
>> > db.query("select<br>
>> > first 1 * from pool_phones");<br>
>> ><br>
>> > db.nextRow();<br>
>> ><br>
>> > row =<br>
>> > db.getData();<br>
>> > console_log("INFO","HELLO " + row["GSMNO"]<br>
>> > + "\n");<br>
>> ><br>
>> > exit();<br>
>> ><br>
>> ><br>
>> ><br>
>> > gives the following output and then<br>
>> > just loops disconnecting and reconnecting until I<br>
>> shutdown<br>
>> > freeswitch<br>
>> ><br>
>> ><br>
>> > 2008-02-18 23:26:03 [DEBUG]<br>
>> > switch_core_state_machine.c:144<br>
>> switch_core_standard_on_execute()<br>
>> > sofia/default/1000@192.168.0.7:5060 Execute<br>
>> > javascript(/usr/scripts/test1.js)<br>
>> > 2008-02-18 23:26:03 [DEBUG]<br>
>> > mod_spidermonkey.c:3150 js_api_use() Loading ODBC<br>
>> > 2008-02-18<br>
>> > 23:26:03 [DEBUG] switch_odbc.c:145<br>
>> switch_odbc_handle_connect()<br>
>> > Connecting test<br>
>> > 2008-02-18 23:26:03 [DEBUG] switch_odbc.c:174<br>
>> > switch_odbc_handle_connect() Connected to [test]<br>
>> > 2008-02-18<br>
>> > 23:26:03 [DEBUG] switch_odbc.c:95<br>
>> switch_odbc_handle_disconnect()<br>
>> > Disconnected 0 from [test]<br>
>> > 2008-02-18 23:26:03 [DEBUG]<br>
>> > switch_odbc.c:142 switch_odbc_handle_connect() Re-<br>
>> connecting<br>
>> > test<br>
>> > 2008-02-18 23:26:03 [DEBUG] switch_odbc.c:145<br>
>> > switch_odbc_handle_connect() Connecting test<br>
>> > 2008-02-18<br>
>> > 23:26:03 [DEBUG] switch_odbc.c:174<br>
>> switch_odbc_handle_connect()<br>
>> > Connected to [test]<br>
>> > 2008-02-18 23:26:03 [CRIT]<br>
>> > switch_odbc.c:234 db_is_up() The sql server is not<br>
>> responding for<br>
>> > DSN test []<br>
>> > 2008-02-18 23:26:03 [INFO] switch_odbc.c:239<br>
>> > db_is_up() The connection has been re-established<br>
>> ><br>
>> > ...<br>
>> ><br>
>> > Any ideas much appreciated<br>
>> ><br>
>> > Thanks<br>
>> ><br>
>> > Steve<br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> > _______________________________________________<br>
>> > Freeswitch-users<br>
>> > mailing list<br>
>> > <a href="mailto:Freeswitch-users@lists.freeswitch.org">Freeswitch-users@lists.freeswitch.org</a><br>
>> > <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
>> > UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
>> > <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> > _______________________________________________<br>
>> > Freeswitch-users<br>
>> > mailing list<br>
>> > <a href="mailto:Freeswitch-users@lists.freeswitch.org">Freeswitch-users@lists.freeswitch.org</a><br>
>> > <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
>> > UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
>> > <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> > _______________________________________________<br>
>> > Freeswitch-users<br>
>> > mailing list<br>
>> > <a href="mailto:Freeswitch-users@lists.freeswitch.org">Freeswitch-users@lists.freeswitch.org</a><br>
>> > <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
>> > UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
>> > <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> > _______________________________________________<br>
>> > Freeswitch-users<br>
>> > mailing list<br>
>> > <a href="mailto:Freeswitch-users@lists.freeswitch.org">Freeswitch-users@lists.freeswitch.org</a><br>
>> > <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
>> > UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
>> > <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
>> ><br>
>> ><br>
>> ><br>
>> > _______________________________________________<br>
>> > Freeswitch-users<br>
>> > mailing list<br>
>> > <a href="mailto:Freeswitch-users@lists.freeswitch.org">Freeswitch-users@lists.freeswitch.org</a><br>
>> > <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
>> > UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
>> > <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> > _______________________________________________<br>
>> > Freeswitch-users<br>
>> > mailing list<br>
>> > <a href="mailto:Freeswitch-users@lists.freeswitch.org">Freeswitch-users@lists.freeswitch.org</a><br>
>> > <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
>> > UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
>> > <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
>> ><br>
>> ><br>
>> ><br>
>> > -----Inline Attachment<br>
>> > Follows-----<br>
>> ><br>
>> > _______________________________________________<br>
>> > Freeswitch-users<br>
>> > mailing list<br>
>> > <a href="mailto:Freeswitch-users@lists.freeswitch.org">Freeswitch-users@lists.freeswitch.org</a><br>
>> > <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
>> > UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
>> > <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> > Be a better friend, newshound, and know-it-all with Yahoo!<br>
>> Mobile. Try<br>
>> > it now.<br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> > _______________________________________________<br>
>> > Freeswitch-users<br>
>> > mailing<br>
>> > list<br>
>> > <a href="mailto:Freeswitch-users@lists.freeswitch.org">Freeswitch-users@lists.freeswitch.org</a><br>
>> > <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
>> > UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
>> > <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
>> ><br>
>> ><br>
>> > -----Inline Attachment Follows-----<br>
>> ><br>
>> > _______________________________________________<br>
>> > Freeswitch-users<br>
>> > mailing<br>
>> > list<br>
>> > <a href="mailto:Freeswitch-users@lists.freeswitch.org">Freeswitch-users@lists.freeswitch.org</a><br>
>> > <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
>> > UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
>> > <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ><br>
>> ____________________________________________________________________________________<br>
>> > Looking for last minute shopping deals?<br>
>> > Find them fast with Yahoo! Search. <a href="http://tools.search.yahoo.com/newsearch/category.php?category=shopping" target="_blank">http://tools.search.yahoo.com/newsearch/category.php?category=shopping</a><br>
>> > _______________________________________________<br>
>> > Freeswitch-users mailing list<br>
>> > <a href="mailto:Freeswitch-users@lists.freeswitch.org">Freeswitch-users@lists.freeswitch.org</a><br>
>> > <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
>> > UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
>> > <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
>><br>
>><br>
>> _______________________________________________<br>
>> Freeswitch-users mailing list<br>
>> <a href="mailto:Freeswitch-users@lists.freeswitch.org">Freeswitch-users@lists.freeswitch.org</a><br>
>> <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
>> UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
>> <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
>><br>
>> _______________________________________________<br>
>> Freeswitch-users mailing list<br>
>> <a href="mailto:Freeswitch-users@lists.freeswitch.org">Freeswitch-users@lists.freeswitch.org</a><br>
>> <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
>> UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
>> <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
><br>
><br>
> _______________________________________________<br>
> Freeswitch-users mailing list<br>
> <a href="mailto:Freeswitch-users@lists.freeswitch.org">Freeswitch-users@lists.freeswitch.org</a><br>
> <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
> UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
> <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
><br>
><br>
> _______________________________________________<br>
> Freeswitch-users mailing list<br>
> <a href="mailto:Freeswitch-users@lists.freeswitch.org">Freeswitch-users@lists.freeswitch.org</a><br>
> <a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
> UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
> <a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
<br>
<br>
_______________________________________________<br>
Freeswitch-users mailing list<br>
<a href="mailto:Freeswitch-users@lists.freeswitch.org">Freeswitch-users@lists.freeswitch.org</a><br>
<a href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>
UNSUBSCRIBE:<a href="http://lists.freeswitch.org/mailman/options/freeswitch-users" target="_blank">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>
<a href="http://www.freeswitch.org" target="_blank">http://www.freeswitch.org</a><br>
</div></div></blockquote></div><br>