<html><head><style type="text/css"><!-- DIV {margin:0px;} --></style></head><body><div style="font-family:courier,monaco,monospace,sans-serif;font-size:12pt">thanks =D<br><br><div>&nbsp;</div><div>Anthony Minessale II<br><br><span>FreeSWITCH <a target="_blank" href="http://www.freeswitch.org/">http://www.freeswitch.org/</a></span><br><span>ClueCon <a target="_blank" href="http://www.cluecon.com/">http://www.cluecon.com/</a></span><br><br>AIM: anthm<br>MSN:anthony_minessale@hotmail.com<br>JABBER:anthony.minessale@gmail.com<br>IRC: irc.freenode.net #freeswitch</div><div><br>FreeSWITCH Developer Conference<br>sip:888@conference.freeswitch.org<br>iax:guest@conference.freeswitch.org/888<br>googletalk:conf+888@conference.freeswitch.org<br>pstn:213-799-1400</div><div style="font-family: courier,monaco,monospace,sans-serif; font-size: 12pt;"><br><br><div style="font-family: times new roman,new york,times,serif; font-size: 12pt;">----- Original Message ----<br>From: Jason Garland
 &lt;jgarland@gmail.com&gt;<br>To: freeswitch-users@lists.freeswitch.org<br>Sent: Thursday, May 24, 2007 12:05:26 PM<br>Subject: Re: [Freeswitch-users] Does FS handle remote NATed phones?<br><br><div><a target="_blank" href="http://wiki.freeswitch.org/wiki/Talk:Event_Socket">http://wiki.freeswitch.org/wiki/Talk:Event_Socket</a><br><br><a target="_blank" href="http://wiki.freeswitch.org/wiki/Event_Socket">http://wiki.freeswitch.org/wiki/Event_Socket</a><br><br><br><br>On 5/24/07, Anthony Minessale &lt;anthmct@yahoo.com&gt; wrote:<br>&gt;<br>&gt; We do have mod_event_socket's "socket" app which is similar to the network<br>&gt; based fast-agi (FAGI).&nbsp;&nbsp;This application makes an outbound tcp connection to<br>&gt; the specified ip:port and the other end can control the call in similar ways<br>&gt; to an agi only the dialect is much different and it supports async<br>&gt; operations e.g. telling the call to play foo.wav and getting an immediate<br>&gt; return to listen
 for dtmf as the file plays rather than block till the file<br>&gt; is over.<br>&gt;<br>&gt; there is an example perl script in tree:<br>&gt;<br>&gt; "scripts/socket/sock.pl"<br>&gt;<br>&gt; The data syntax from the dialplan is<br>&gt; &lt;ip&gt;:&lt;port&gt; [&lt;keywords&gt;]<br>&gt;<br>&gt; keywords:<br>&gt;<br>&gt; async:<br>&gt;<br>&gt; The "async" keyword indicates that all commands will return instantly making<br>&gt; it possible to monitor the socket for events etc while the<br>&gt; stack of commands are executing.<br>&gt;<br>&gt; If the async keyword is absent then all calls will block until the<br>&gt; command has finished.<br>&gt;<br>&gt; full:<br>&gt;<br>&gt; The "full" keyword indicates that the other end will have the full command<br>&gt; set for event_socket this is the same command set an inbound connection to<br>&gt; event_socket has so you can execute api commands, get global events etc.<br>&gt;<br>&gt; If the "full" keyword is absent the command set and
 events are limited<br>&gt; to that paticular call<br>&gt;<br>&gt; Here are examples of how to use it in the dialplan.<br>&gt;<br>&gt; &lt;action application="socket" data="127.0.0.1:8084"/&gt;<br>&gt;&nbsp;&nbsp;&lt;action application="socket" data="127.0.0.1:8084 async"/&gt;<br>&gt; &lt;action application="socket" data="127.0.0.1:8084 full"/&gt;<br>&gt;&nbsp;&nbsp;&lt;action application="socket" data="127.0.0.1:8084 async full"/&gt;<br>&gt;<br>&gt;<br>&gt; I think if wasim's angel want's to implement it a good idea<br>&gt; is to write it as a separate application and use this interface<br>&gt; to control the call then let the forked processes in the remote<br>&gt; application provide the AGI emulation.<br>&gt;<br>&gt; We have someone working on a C library to use as an event socket library<br>&gt; also.<br>&gt; but in the meantime there is also a crude C example with no client library<br>&gt; but just inline commands in "scripts/socket/socket2me" this small C
 program<br>&gt; demonstrates how you can use the interface to not only control the call but<br>&gt; to also request a 2 way media stream and process the data.&nbsp;&nbsp;This application<br>&gt; uses spandsp to implement a fax send/recv similar to asterisk's rxfax txfax<br>&gt; only over the loopback interface.<br>&gt;<br>&gt;<br>&gt;<br>&gt; /me hopes somone makes a wiki page out of this info =D<br>&gt;<br>&gt;<br>&gt;<br>&gt;<br>&gt;<br>&gt; Anthony Minessale II<br>&gt;<br>&gt; FreeSWITCH <a target="_blank" href="http://www.freeswitch.org/">http://www.freeswitch.org/</a><br>&gt; ClueCon <a target="_blank" href="http://www.cluecon.com/">http://www.cluecon.com/</a><br>&gt;<br>&gt; AIM: anthm<br>&gt; MSN:anthony_minessale@hotmail.com<br>&gt; JABBER:anthony.minessale@gmail.com<br>&gt; IRC: irc.freenode.net #freeswitch<br>&gt;<br>&gt; FreeSWITCH Developer Conference<br>&gt; sip:888@conference.freeswitch.org<br>&gt; iax:guest@conference.freeswitch.org/888<br>&gt;
 googletalk:conf+888@conference.freeswitch.org<br>&gt; pstn:213-799-1400<br>&gt;<br>&gt;<br>&gt; ----- Original Message ----<br>&gt; From: Wasim Baig &lt;wasim@convergence.pk&gt;<br>&gt; To: freeswitch-users@lists.freeswitch.org<br>&gt; Sent: Thursday, May 24, 2007 7:13:24 AM<br>&gt; Subject: Re: [Freeswitch-users] Does FS handle remote NATed phones?<br>&gt;<br>&gt; On 5/24/07, Fred &lt;codecomplete@free.fr&gt; wrote:<br>&gt;<br>&gt; &gt; Hopefully, the AGI interface works the same, so that existing scripts will<br>&gt; &gt; still work in FS.<br>&gt;<br>&gt; nope, not as yet, but i'm convincing an angel to write up a mod_agi that<br>&gt; would allow using most if not all of the AGI functions in freeswitch<br>&gt; (atleast SetVar and GetVar, if not Dial)<br>&gt;<br>&gt;&nbsp;&nbsp;imho thats one of the main bottlenecks for people who have existing<br>&gt; asterisk deployments on AGI from switching to FS, lets see if we can get<br>&gt; some good news on this
 shortly<br>&gt;<br>&gt; --<br>&gt; wasim h. baig | principal consultant | convergence pk | +92 300 8508070<br>&gt; _______________________________________________<br>&gt; Freeswitch-users mailing list<br>&gt; Freeswitch-users@lists.freeswitch.org<br>&gt; <a target="_blank" href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>&gt; UNSUBSCRIBE:<a target="_blank" href="http://lists.freeswitch.org/mailman/options/freeswitch-users">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>&gt; <a target="_blank" href="http://www.freeswitch.org">http://www.freeswitch.org</a><br>&gt;<br>&gt;<br>&gt;&nbsp;&nbsp;________________________________<br>&gt; Ready for the edge of your seat? Check out tonight's top picks on Yahoo! TV.<br>&gt; _______________________________________________<br>&gt; Freeswitch-users mailing list<br>&gt; Freeswitch-users@lists.freeswitch.org<br>&gt; <a
 target="_blank" href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>&gt; UNSUBSCRIBE:<a target="_blank" href="http://lists.freeswitch.org/mailman/options/freeswitch-users">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br>&gt; <a target="_blank" href="http://www.freeswitch.org">http://www.freeswitch.org</a><br>&gt;<br>&gt;<br><br>_______________________________________________<br>Freeswitch-users mailing list<br>Freeswitch-users@lists.freeswitch.org<br><a target="_blank" href="http://lists.freeswitch.org/mailman/listinfo/freeswitch-users">http://lists.freeswitch.org/mailman/listinfo/freeswitch-users</a><br>UNSUBSCRIBE:<a target="_blank" href="http://lists.freeswitch.org/mailman/options/freeswitch-users">http://lists.freeswitch.org/mailman/options/freeswitch-users</a><br><a target="_blank"
 href="http://www.freeswitch.org">http://www.freeswitch.org</a><br></div></div><br></div></div><br>

<hr size=1>Expecting? Get great news right away with <a href="http://us.rd.yahoo.com/evt=49982/*http://advision.webevents.yahoo.com/mailbeta/newmail_tools.html">email Auto-Check.</a><br>Try the <a href="http://us.rd.yahoo.com/evt=49982/*http://advision.webevents.yahoo.com/mailbeta/newmail_tools.html">Yahoo! Mail Beta.</a></body></html>