Re: [Freeswitch-users] Generating calls from external source
Thanks for that, coming from a C++ background it's a refreshing change to be looking at something that seems logical and efficient. I'd briefly looked at the event socket and wondered if that was the way to go. I presume that there's some sort of event generation that can trigger and external process as well somewhere, though all I need to do is update mysql (hopefully using some sort of pooled connection) I'm not using a TDM card, I have a direct interconnect with the PSTN breakout provider with 1,500 channels available to me. I'm finding Asterisk proving to be less than stable at high call volumes and load values spike at more than 100 calls with billing/accounting in place, hence my interest in FS. The only thing that's concerning me is XML at the moment. Lots of code and very wordy. I'm sure I'll appreciate why XML given time Regards, From: freeswitch-users-boun...@lists.freeswitch.org [mailto:freeswitch-users-boun...@lists.freeswitch.org] On Behalf Of Michael S Collins Sent: 03 February 2009 01:17 To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] Generating calls from external source Nik, Welcome to FreeSWITCH! The short answer is yes, FS can do that. The first thing that you should do is unlearn the Asterisk way of thinking. Usually there is an elegant way of doing things in FS that wasn't possible in Ast. I would recommend that you start by looking at the event socket, which is somewhat analogous to the AMI only cooler. :) I have personally done something similar to this using the event socket and a Perl script. The key is to learn the syntax of the originate command. (definitely hit the wiki and IRC channel) Are you using TDM cards for this? Just curious. -MC (IRC nick: mercutioviz) Sent from my iPhone On Feb 2, 2009, at 3:35 PM, Nik Middleton nik.middle...@noblesolutions.co.uk wrote: Hi Guys, As a long time Asterisk user, I'm looking into freeswitch as an alternative mainly due to (list multiple reasons here) Can anyone give me a pointer as to how I would achieve the following? I need to replicate an emergency broadcast system currently running under Asterisk. At the moment, I run through a Mysql database and using the manager API, issues an Originate command to dial a number. When the call is answered, a message is played, and the recipient has the option of hitting a digit to confirm receipt. I then call an AGI script to update the database. Is this fairly easy to do in Freeswitch? Not looking for code, just some pointers as to what's available to do the above / Regards, ___ Freeswitch-users mailing list Freeswitch-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE: http://lists.freeswitch.org/mailman/options/freeswitch-users http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ___ Freeswitch-users mailing list Freeswitch-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Re: [Freeswitch-users] Generating calls from external source
Hi Nik, Here's a snipped in Perl that launches an outbound call: if (my $sock = IO::Socket::INET-new(Proto ='tcp', PeerAddr = '127.0.0.1', PeerPort = 8021)) { print $sock auth XXX\n\n; print $sock api originate {softivr_id=$siid,src_softivr_id=$siid,softivr_outdial=true}sofia/frombt/$...@1.2.3.4 $service\n\n; $sock-close(); } - it does no error checking or anything, but (line by line) it: - opens a socket to the event socket interface - authenticates - issues an originate which dials out to the number in $ntd. The bits in {} set a bunch of variables on the channel, which are used by the software which processes the call later on. The call is linked to the extension in $service - FS looks this up in the dialplan - which handles our end. - closes the socket Cheers -- Dave Thanks for that, coming from a C++ background it’s a refreshing change to be looking at something that seems logical and efficient. I’d briefly looked at the event socket and wondered if that was the way to go. I presume that there’s some sort of event generation that can trigger and external process as well somewhere, though all I need to do is update mysql (hopefully using some sort of pooled connection) I’m not using a TDM card, I have a direct interconnect with the PSTN breakout provider with 1,500 channels available to me. I’m finding Asterisk proving to be less than stable at high call volumes and load values spike at more than 100 calls with billing/accounting in place, hence my interest in FS. The only thing that’s concerning me is XML at the moment. Lots of code and very wordy. I’m sure I’ll appreciate why XML given time Regards, From: freeswitch-users-boun...@lists.freeswitch.org [mailto:freeswitch-users-boun...@lists.freeswitch.org ] On Behalf Of Michael S Collins Sent: 03 February 2009 01:17 To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] Generating calls from external source Nik, Welcome to FreeSWITCH! The short answer is yes, FS can do that. The first thing that you should do is unlearn the Asterisk way of thinking. Usually there is an elegant way of doing things in FS that wasn't possible in Ast. I would recommend that you start by looking at the event socket, which is somewhat analogous to the AMI only cooler. :) I have personally done something similar to this using the event socket and a Perl script. The key is to learn the syntax of the originate command. (definitely hit the wiki and IRC channel) Are you using TDM cards for this? Just curious. -MC (IRC nick: mercutioviz) Sent from my iPhone On Feb 2, 2009, at 3:35 PM, Nik Middleton nik.middle...@noblesolutions.co.uk wrote: Hi Guys, As a long time Asterisk user, I’m looking into freeswitch as an alternative mainly due to (list multiple reasons here) Can anyone give me a pointer as to how I would achieve the following? I need to replicate an emergency broadcast system currently running under Asterisk. At the moment, I run through a Mysql database and using the manager API, issues an Originate command to dial a number. When the call is answered, a message is played, and the recipient has the option of hitting a digit to confirm receipt. I then call an AGI script to update the database. Is this fairly easy to do in Freeswitch? Not looking for code, just some pointers as to what’s available to do the above / Regards, ___ Freeswitch-users mailing list Freeswitch-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ___ Freeswitch-users mailing list Freeswitch-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ___ Freeswitch-users mailing list Freeswitch-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
Re: [Freeswitch-users] Generating calls from external source
In addition do David's suggestion, you probably want to have your application to watch for some specific events after the call is originated and take action based on them. For example, you could watch for the CHANNEL_ANSWER event and play some audio file waiting for some digit, which is generated by the DTMF event. To watch only for those specific events, you should do the following just after authentication (still using Perl as an example, but the mod_event_socket is language agnostic), then you will receive those events from FreeSWITCH through the socket stream: ... print $sock auth XXX\n\n; print $sock event plain CHANNEL_ANSWER DTMF\n\n; ... To see a list of available events, please look at the following wiki pages: http://wiki.freeswitch.org/wiki/Mod_event_socket#event http://wiki.freeswitch.org/wiki/Event_list Regards, Raul On Tue, 2009-02-03 at 09:46 +, David Knell wrote: Hi Nik, Here's a snipped in Perl that launches an outbound call: if (my $sock = IO::Socket::INET-new(Proto ='tcp', PeerAddr = '127.0.0.1', PeerPort = 8021)) { print $sock auth XXX\n\n; print $sock api originate {softivr_id=$siid,src_softivr_id= $siid,softivr_outdial=true}sofia/frombt/$...@1.2.3.4 $service\n\n; $sock-close(); } - it does no error checking or anything, but (line by line) it: - opens a socket to the event socket interface - authenticates - issues an originate which dials out to the number in $ntd. The bits in {} set a bunch of variables on the channel, which are used by the software which processes the call later on. The call is linked to the extension in $service - FS looks this up in the dialplan - which handles our end. - closes the socket Cheers -- Dave Thanks for that, coming from a C++ background it’s a refreshing change to be looking at something that seems logical and efficient. I’d briefly looked at the event socket and wondered if that was the way to go. I presume that there’s some sort of event generation that can trigger and external process as well somewhere, though all I need to do is update mysql (hopefully using some sort of pooled connection) I’m not using a TDM card, I have a direct interconnect with the PSTN breakout provider with 1,500 channels available to me. I’m finding Asterisk proving to be less than stable at high call volumes and load values spike at more than 100 calls with billing/accounting in place, hence my interest in FS. The only thing that’s concerning me is XML at the moment. Lots of code and very wordy. I’m sure I’ll appreciate why XML given time Regards, From: freeswitch-users-boun...@lists.freeswitch.org [mailto:freeswitch-users-boun...@lists.freeswitch.org] On Behalf Of Michael S Collins Sent: 03 February 2009 01:17 To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] Generating calls from external source Nik, Welcome to FreeSWITCH! The short answer is yes, FS can do that. The first thing that you should do is unlearn the Asterisk way of thinking. Usually there is an elegant way of doing things in FS that wasn't possible in Ast. I would recommend that you start by looking at the event socket, which is somewhat analogous to the AMI only cooler. :) I have personally done something similar to this using the event socket and a Perl script. The key is to learn the syntax of the originate command. (definitely hit the wiki and IRC channel) Are you using TDM cards for this? Just curious. -MC (IRC nick: mercutioviz) Sent from my iPhone On Feb 2, 2009, at 3:35 PM, Nik Middleton nik.middle...@noblesolutions.co.uk wrote: Hi Guys, As a long time Asterisk user, I’m looking into freeswitch as an alternative mainly due to (list multiple reasons here) Can anyone give me a pointer as to how I would achieve the following? I need to replicate an emergency broadcast system currently running under Asterisk. At the moment, I run through a Mysql database and using the manager API, issues an Originate command to dial a number. When the call is answered, a message is played, and the recipient has the option of hitting a digit to confirm receipt. I then call an AGI script to update the database. Is this fairly easy to do in Freeswitch? Not looking for code, just some pointers as to what’s available to do the above / Regards, ___ Freeswitch-users mailing list Freeswitch-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org ___ Freeswitch-users mailing list Freeswitch
Re: [Freeswitch-users] Generating calls from external source
Are you suggesting that I should process the call externally instead of using the dialplan? That would be neat as the audio file select could be driven from the db select for the number. I presume that I could also bridge the call to another number as well dependant on DTMF selection? Regards -Original Message- From: freeswitch-users-boun...@lists.freeswitch.org [mailto:freeswitch-users-boun...@lists.freeswitch.org] On Behalf Of Raul Fragoso Sent: 03 February 2009 13:12 To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] Generating calls from external source In addition do David's suggestion, you probably want to have your application to watch for some specific events after the call is originated and take action based on them. For example, you could watch for the CHANNEL_ANSWER event and play some audio file waiting for some digit, which is generated by the DTMF event. To watch only for those specific events, you should do the following just after authentication (still using Perl as an example, but the mod_event_socket is language agnostic), then you will receive those events from FreeSWITCH through the socket stream: ... print $sock auth XXX\n\n; print $sock event plain CHANNEL_ANSWER DTMF\n\n; ... To see a list of available events, please look at the following wiki pages: http://wiki.freeswitch.org/wiki/Mod_event_socket#event http://wiki.freeswitch.org/wiki/Event_list Regards, Raul On Tue, 2009-02-03 at 09:46 +, David Knell wrote: Hi Nik, Here's a snipped in Perl that launches an outbound call: if (my $sock = IO::Socket::INET-new(Proto ='tcp', PeerAddr = '127.0.0.1', PeerPort = 8021)) { print $sock auth XXX\n\n; print $sock api originate {softivr_id=$siid,src_softivr_id= $siid,softivr_outdial=true}sofia/frombt/$...@1.2.3.4 $service\n\n; $sock-close(); } - it does no error checking or anything, but (line by line) it: - opens a socket to the event socket interface - authenticates - issues an originate which dials out to the number in $ntd. The bits in {} set a bunch of variables on the channel, which are used by the software which processes the call later on. The call is linked to the extension in $service - FS looks this up in the dialplan - which handles our end. - closes the socket Cheers -- Dave Thanks for that, coming from a C++ background it's a refreshing change to be looking at something that seems logical and efficient. I'd briefly looked at the event socket and wondered if that was the way to go. I presume that there's some sort of event generation that can trigger and external process as well somewhere, though all I need to do is update mysql (hopefully using some sort of pooled connection) I'm not using a TDM card, I have a direct interconnect with the PSTN breakout provider with 1,500 channels available to me. I'm finding Asterisk proving to be less than stable at high call volumes and load values spike at more than 100 calls with billing/accounting in place, hence my interest in FS. The only thing that's concerning me is XML at the moment. Lots of code and very wordy. I'm sure I'll appreciate why XML given time Regards, From: freeswitch-users-boun...@lists.freeswitch.org [mailto:freeswitch-users-boun...@lists.freeswitch.org] On Behalf Of Michael S Collins Sent: 03 February 2009 01:17 To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] Generating calls from external source Nik, Welcome to FreeSWITCH! The short answer is yes, FS can do that. The first thing that you should do is unlearn the Asterisk way of thinking. Usually there is an elegant way of doing things in FS that wasn't possible in Ast. I would recommend that you start by looking at the event socket, which is somewhat analogous to the AMI only cooler. :) I have personally done something similar to this using the event socket and a Perl script. The key is to learn the syntax of the originate command. (definitely hit the wiki and IRC channel) Are you using TDM cards for this? Just curious. -MC (IRC nick: mercutioviz) Sent from my iPhone On Feb 2, 2009, at 3:35 PM, Nik Middleton nik.middle...@noblesolutions.co.uk wrote: Hi Guys, As a long time Asterisk user, I'm looking into freeswitch as an alternative mainly due to (list multiple reasons here) Can anyone give me a pointer as to how I would achieve the following? I need to replicate an emergency broadcast system currently running under Asterisk. At the moment, I run through a Mysql database and using the manager API, issues an Originate command to dial a number. When the call is answered, a message is played, and the recipient has the option of hitting a digit to confirm receipt. I
Re: [Freeswitch-users] Generating calls from external source
Nik, There are a lot of ways to make FS dial out and deliver messaging etc. We are going through the process of replacing * for this purpose. For us (getting started with the help of our friends here on the list) it has been pretty easy. With * we were using AMI to originate calls ... to migrate to FS we just changed that to use event_socket with bgapi to originate the call and connect the call to a context and extension. There are several ways to get the dialplan to FS after that ... a script, xml_curl, or statically configured in the conf directory. So as an example the application we have just logs into the FS socket (similar to * but much better) and then rips off calls like this: bgapi originate{$set_some_vars}sofia/external/$...@$ip:$PORT $EXTENSION xml $CONTEXT The beauty of it all is that: -- a lot of flexibility in what you can do (like drive the call through events) -- the CDR reporting is about 3 million times better than * -- obviously higher capacity I'd start playing with event_socket and some static dialplans to get the feel for it ... but if you have an application written already to work with * (i.e. the logic and backend) it will be very easy to migrate and you'll be glad you did it! Shelby On Tue, Feb 3, 2009 at 10:53 AM, Nik Middleton nik.middle...@noblesolutions.co.uk wrote: Are you suggesting that I should process the call externally instead of using the dialplan? That would be neat as the audio file select could be driven from the db select for the number. I presume that I could also bridge the call to another number as well dependant on DTMF selection? Regards -Original Message- From: freeswitch-users-boun...@lists.freeswitch.org [mailto:freeswitch-users-boun...@lists.freeswitch.org] On Behalf Of Raul Fragoso Sent: 03 February 2009 13:12 To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] Generating calls from external source In addition do David's suggestion, you probably want to have your application to watch for some specific events after the call is originated and take action based on them. For example, you could watch for the CHANNEL_ANSWER event and play some audio file waiting for some digit, which is generated by the DTMF event. To watch only for those specific events, you should do the following just after authentication (still using Perl as an example, but the mod_event_socket is language agnostic), then you will receive those events from FreeSWITCH through the socket stream: ... print $sock auth XXX\n\n; print $sock event plain CHANNEL_ANSWER DTMF\n\n; ... To see a list of available events, please look at the following wiki pages: http://wiki.freeswitch.org/wiki/Mod_event_socket#event http://wiki.freeswitch.org/wiki/Event_list Regards, Raul On Tue, 2009-02-03 at 09:46 +, David Knell wrote: Hi Nik, Here's a snipped in Perl that launches an outbound call: if (my $sock = IO::Socket::INET-new(Proto ='tcp', PeerAddr = '127.0.0.1', PeerPort = 8021)) { print $sock auth XXX\n\n; print $sock api originate {softivr_id=$siid,src_softivr_id= $siid,softivr_outdial=true}sofia/frombt/$...@1.2.3.4 $service\n\n; $sock-close(); } - it does no error checking or anything, but (line by line) it: - opens a socket to the event socket interface - authenticates - issues an originate which dials out to the number in $ntd. The bits in {} set a bunch of variables on the channel, which are used by the software which processes the call later on. The call is linked to the extension in $service - FS looks this up in the dialplan - which handles our end. - closes the socket Cheers -- Dave Thanks for that, coming from a C++ background it's a refreshing change to be looking at something that seems logical and efficient. I'd briefly looked at the event socket and wondered if that was the way to go. I presume that there's some sort of event generation that can trigger and external process as well somewhere, though all I need to do is update mysql (hopefully using some sort of pooled connection) I'm not using a TDM card, I have a direct interconnect with the PSTN breakout provider with 1,500 channels available to me. I'm finding Asterisk proving to be less than stable at high call volumes and load values spike at more than 100 calls with billing/accounting in place, hence my interest in FS. The only thing that's concerning me is XML at the moment. Lots of code and very wordy. I'm sure I'll appreciate why XML given time Regards, From: freeswitch-users-boun...@lists.freeswitch.org [mailto:freeswitch-users-boun...@lists.freeswitch.org] On Behalf Of Michael S Collins Sent: 03 February 2009 01:17 To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] Generating calls from
Re: [Freeswitch-users] Generating calls from external source
On Tue, Feb 3, 2009 at 8:53 AM, Nik Middleton nik.middle...@noblesolutions.co.uk wrote: Are you suggesting that I should process the call externally instead of using the dialplan? That would be neat as the audio file select could I'm not saying you should, merely that you could. What I did was create a bunch of extensions in my dialplan that handled various steps of the IVR outbound call: start, answered, busy, not answered, SIT tones, etc. So my originate command would originate the call (A leg) and drop the B leg into the dialplan at the start extension and then it goes from there. It listens for early media busy or SIT tones and also does an execute_on_answer to the extension that does the actual IVR. (Only need the IVR on an answered call.) If the call is not answered after 25 seconds then I run a Lua script that checks for the presence of certain channel variables that I set with the tone_detect application (busy and SIT). If none of those are present then I assume the call went unanswered and do the post-processing. be driven from the db select for the number. I presume that I could also bridge the call to another number as well dependant on DTMF selection? Yes, you can do this as well. You can build an IVR in XML or you can build in a scripting language like Lua: demo IVR: http://svn.freeswitch.org/svn/freeswitch/trunk/conf/autoload_configs/ivr.conf.xml Lua IVR info: http://wiki.freeswitch.org/wiki/IVR#Lua_IVRs Sorry if this is all a bit overwhelming, but you'll be glad that you dove in to FS because it does s much and does it so well. Enjoy! -MC Regards -Original Message- From: freeswitch-users-boun...@lists.freeswitch.org [mailto:freeswitch-users-boun...@lists.freeswitch.org] On Behalf Of Raul Fragoso Sent: 03 February 2009 13:12 To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] Generating calls from external source In addition do David's suggestion, you probably want to have your application to watch for some specific events after the call is originated and take action based on them. For example, you could watch for the CHANNEL_ANSWER event and play some audio file waiting for some digit, which is generated by the DTMF event. To watch only for those specific events, you should do the following just after authentication (still using Perl as an example, but the mod_event_socket is language agnostic), then you will receive those events from FreeSWITCH through the socket stream: ... print $sock auth XXX\n\n; print $sock event plain CHANNEL_ANSWER DTMF\n\n; ... To see a list of available events, please look at the following wiki pages: http://wiki.freeswitch.org/wiki/Mod_event_socket#event http://wiki.freeswitch.org/wiki/Event_list Regards, Raul On Tue, 2009-02-03 at 09:46 +, David Knell wrote: Hi Nik, Here's a snipped in Perl that launches an outbound call: if (my $sock = IO::Socket::INET-new(Proto ='tcp', PeerAddr = '127.0.0.1', PeerPort = 8021)) { print $sock auth XXX\n\n; print $sock api originate {softivr_id=$siid,src_softivr_id= $siid,softivr_outdial=true}sofia/frombt/$...@1.2.3.4 $service\n\n; $sock-close(); } - it does no error checking or anything, but (line by line) it: - opens a socket to the event socket interface - authenticates - issues an originate which dials out to the number in $ntd. The bits in {} set a bunch of variables on the channel, which are used by the software which processes the call later on. The call is linked to the extension in $service - FS looks this up in the dialplan - which handles our end. - closes the socket Cheers -- Dave Thanks for that, coming from a C++ background it's a refreshing change to be looking at something that seems logical and efficient. I'd briefly looked at the event socket and wondered if that was the way to go. I presume that there's some sort of event generation that can trigger and external process as well somewhere, though all I need to do is update mysql (hopefully using some sort of pooled connection) I'm not using a TDM card, I have a direct interconnect with the PSTN breakout provider with 1,500 channels available to me. I'm finding Asterisk proving to be less than stable at high call volumes and load values spike at more than 100 calls with billing/accounting in place, hence my interest in FS. The only thing that's concerning me is XML at the moment. Lots of code and very wordy. I'm sure I'll appreciate why XML given time Regards, From: freeswitch-users-boun...@lists.freeswitch.org [mailto:freeswitch-users-boun...@lists.freeswitch.org] On Behalf Of Michael S Collins Sent: 03 February 2009 01:17 To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] Generating calls from external source Nik, Welcome to FreeSWITCH! The short answer is yes, FS can do
Re: [Freeswitch-users] Generating calls from external source
There is also an event socket library written in C called esl that is in the fs tree in the libs directory. This has the ability to establish connections both inbound and outbound from FS. There is also a perl module FreeSWITCH::Client that mr collins may be interested in in the tree as well. On Tue, Feb 3, 2009 at 7:12 AM, Raul Fragoso r...@etellicom.com wrote: In addition do David's suggestion, you probably want to have your application to watch for some specific events after the call is originated and take action based on them. For example, you could watch for the CHANNEL_ANSWER event and play some audio file waiting for some digit, which is generated by the DTMF event. To watch only for those specific events, you should do the following just after authentication (still using Perl as an example, but the mod_event_socket is language agnostic), then you will receive those events from FreeSWITCH through the socket stream: ... print $sock auth XXX\n\n; print $sock event plain CHANNEL_ANSWER DTMF\n\n; ... To see a list of available events, please look at the following wiki pages: http://wiki.freeswitch.org/wiki/Mod_event_socket#event http://wiki.freeswitch.org/wiki/Event_list Regards, Raul On Tue, 2009-02-03 at 09:46 +, David Knell wrote: Hi Nik, Here's a snipped in Perl that launches an outbound call: if (my $sock = IO::Socket::INET-new(Proto ='tcp', PeerAddr = '127.0.0.1', PeerPort = 8021)) { print $sock auth XXX\n\n; print $sock api originate {softivr_id=$siid,src_softivr_id= $siid,softivr_outdial=true}sofia/frombt/$...@1.2.3.4 $service\n\n; $sock-close(); } - it does no error checking or anything, but (line by line) it: - opens a socket to the event socket interface - authenticates - issues an originate which dials out to the number in $ntd. The bits in {} set a bunch of variables on the channel, which are used by the software which processes the call later on. The call is linked to the extension in $service - FS looks this up in the dialplan - which handles our end. - closes the socket Cheers -- Dave Thanks for that, coming from a C++ background it's a refreshing change to be looking at something that seems logical and efficient. I'd briefly looked at the event socket and wondered if that was the way to go. I presume that there's some sort of event generation that can trigger and external process as well somewhere, though all I need to do is update mysql (hopefully using some sort of pooled connection) I'm not using a TDM card, I have a direct interconnect with the PSTN breakout provider with 1,500 channels available to me. I'm finding Asterisk proving to be less than stable at high call volumes and load values spike at more than 100 calls with billing/accounting in place, hence my interest in FS. The only thing that's concerning me is XML at the moment. Lots of code and very wordy. I'm sure I'll appreciate why XML given time Regards, From: freeswitch-users-boun...@lists.freeswitch.org [mailto: freeswitch-users-boun...@lists.freeswitch.org] On Behalf Of Michael S Collins Sent: 03 February 2009 01:17 To: freeswitch-users@lists.freeswitch.org Subject: Re: [Freeswitch-users] Generating calls from external source Nik, Welcome to FreeSWITCH! The short answer is yes, FS can do that. The first thing that you should do is unlearn the Asterisk way of thinking. Usually there is an elegant way of doing things in FS that wasn't possible in Ast. I would recommend that you start by looking at the event socket, which is somewhat analogous to the AMI only cooler. :) I have personally done something similar to this using the event socket and a Perl script. The key is to learn the syntax of the originate command. (definitely hit the wiki and IRC channel) Are you using TDM cards for this? Just curious. -MC (IRC nick: mercutioviz) Sent from my iPhone On Feb 2, 2009, at 3:35 PM, Nik Middleton nik.middle...@noblesolutions.co.uk wrote: Hi Guys, As a long time Asterisk user, I'm looking into freeswitch as an alternative mainly due to (list multiple reasons here) Can anyone give me a pointer as to how I would achieve the following? I need to replicate an emergency broadcast system currently running under Asterisk. At the moment, I run through a Mysql database and using the manager API, issues an Originate command to dial a number. When the call is answered, a message is played, and the recipient has the option of hitting a digit to confirm receipt. I then call an AGI script to update the database. Is this fairly easy to do in Freeswitch? Not looking for code, just some pointers as to what's available to do the above