Simulate a Collect Call behaviour
Hello All, I am in need to simulate a Collect Call behaviour for a particular case and I have tried Asterisk to do that but without any luck and I am wondering if FS can do that. Scenario: A calls B when B answers A hear an announcement (pre-recorded) and B hears another announcement. If B stay in the line after heard all the announcement the call is connected. I have found this ( http://wiki.freeswitch.org/wiki/Freeswitch_IVR_Originate#Answer_confirmation) but I am not sure if it can accomplish this scenario. I really appreciate any tips. Best regards Rodrigo Telles
Rodrigo, Yes, this is possible in FreeSWITCH. (I'm guessing it's possible in Asterisk, too, but I don't know enough about * to say definitively.) The ideal situation is to use the "group_confirm" behavior that you mentioned and let party B press a key to accept the call. However, if you need the specific behavior of party B staying on the line and having party A automatically connect if B does not hangup then this will require a bit of programming. You could accomplish it with a mix of XML dialplan, phrase macros, and a dp script written in Lua, Perl, or Javascript. (Depending upon how simple the process is you might not even need a script.) I'd recommend writing up the exact call flow in simple terms and then building the dialplan in small steps. Also, you could join #freeswitch on irc.freenode.net and get some realtime assistance. I think people would be willing to help you if you agreed to put your example on our wiki. :) -MC On Wed, Nov 17, 2010 at 7:21 AM, Listas Devel-IT <listas.develit@gmail.com>wrote:
Hello All,
I am in need to simulate a Collect Call behaviour for a particular case and I have tried Asterisk to do that but without any luck and I am wondering if FS can do that.
Scenario:
A calls B when B answers A hear an announcement (pre-recorded) and B hears another announcement. If B stay in the line after heard all the announcement the call is connected.
I have found this ( http://wiki.freeswitch.org/wiki/Freeswitch_IVR_Originate#Answer_confirmation) but I am not sure if it can accomplish this scenario.
I really appreciate any tips.
Best regards Rodrigo Telles
_______________________________________________ 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
Hi Michael, Thanks very much for your quick reply I realy appreciate that. Of corse you won't recall of me from Cluecon 09, I am one of the Brazilian guys, we have a very nice talking there. I just need some leads to start these feature and know what resources should I use, and of corse it will be available at FS wiki. I will follow your recomendations and will join #freeswitch at freenode. Thanks again! Best regards Rodrigo Telles On Wed, Nov 17, 2010 at 3:43 PM, Michael Collins <msc@freeswitch.org> wrote:
Rodrigo,
Yes, this is possible in FreeSWITCH. (I'm guessing it's possible in Asterisk, too, but I don't know enough about * to say definitively.)
The ideal situation is to use the "group_confirm" behavior that you mentioned and let party B press a key to accept the call. However, if you need the specific behavior of party B staying on the line and having party A automatically connect if B does not hangup then this will require a bit of programming. You could accomplish it with a mix of XML dialplan, phrase macros, and a dp script written in Lua, Perl, or Javascript. (Depending upon how simple the process is you might not even need a script.)
I'd recommend writing up the exact call flow in simple terms and then building the dialplan in small steps. Also, you could join #freeswitch on irc.freenode.net and get some realtime assistance. I think people would be willing to help you if you agreed to put your example on our wiki. :)
-MC
On Wed, Nov 17, 2010 at 7:21 AM, Listas Devel-IT <listas.develit@gmail.com
wrote:
Hello All,
I am in need to simulate a Collect Call behaviour for a particular case and I have tried Asterisk to do that but without any luck and I am wondering if FS can do that.
Scenario:
A calls B when B answers A hear an announcement (pre-recorded) and B hears another announcement. If B stay in the line after heard all the announcement the call is connected.
I have found this ( http://wiki.freeswitch.org/wiki/Freeswitch_IVR_Originate#Answer_confirmation) but I am not sure if it can accomplish this scenario.
I really appreciate any tips.
Best regards Rodrigo Telles
_______________________________________________ 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
Of course I remember CC 2009! We had a nice conversation with you guys. :) Okay, I was thinking about this and I had a few questions: #1 - how do you feel about having the called party press a key to accept the collect call? If that is okay with you then the problem is solved very easily with the group_confirm stuff. (see http://wiki.freeswitch.org/wiki/Channel_Variables#Answer_confirmation_variab... more information) #2 - if you really want to have the called party just wait several seconds to accept the call then I would wonder how you handle a condition like the called party's voicemail answering? It's entirely possible that the called party's VM picks up, then the collect call goes through. (Unless, of course, that's what you want.) Write out the call flow, like this: Party A calls, is placed on hold, party B is called If party B accepts call, bridge A and B If party B rejects, send A to a rejection message Is that right? If so then it's time to start coding. :) -MC
Hi Michael, On Thu, Nov 18, 2010 at 6:01 PM, Michael Collins <msc@freeswitch.org> wrote:
Of course I remember CC 2009! We had a nice conversation with you guys. :)
Okay, I was thinking about this and I had a few questions:
#1 - how do you feel about having the called party press a key to accept the collect call? If that is okay with you then the problem is solved very easily with the group_confirm stuff. (see http://wiki.freeswitch.org/wiki/Channel_Variables#Answer_confirmation_variab... more information)
This not an option for this project, we must do exactly how the Collect Call works here in Brazil - You must stay in the line after a few seconds (6s) to accept the call.
#2 - if you really want to have the called party just wait several seconds to accept the call then I would wonder how you handle a condition like the called party's voicemail answering? It's entirely possible that the called party's VM picks up, then the collect call goes through. (Unless, of course, that's what you want.)
Yes you are right, but in that case the B side will not have VM enabled or at least not enabled for this kind of calls.
Write out the call flow, like this: Party A calls, is placed on hold, party B is called If party B accepts call, bridge A and B If party B rejects, send A to a rejection message
Is that right? If so then it's time to start coding. :)
Not exactly, should be that way: Party A calls and party B is called (the phone is ringing at that point) When party B picks up the phone, FS plays an announcement to party A (ex: callee.wav) and another announcement to party B (ex: called.wav) - bouth announcements/sounds has the same duration If party B stays in the line after heard the announcement/sound FS bridge A and B If party B hangup the phone, party A hears busy tone (could be an announcement too) and the call is dropped. Thats it! Do you think its possible to accomplish with FS? Thanks for your attention. Best regards Rodrigo Telles
-MC
_______________________________________________ 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
This is totally doable in FreeSWITCH. I'd recommend writing it in a script and using ESL This will give you more control over what's happening. You'll need to spend some time learning the event socket and how to handle events from two related call legs. I highly recommend our book, especially chapter 9. :P You can also hang out in #freeswitch to talk in realtime with the gang. -MC <snip>
Party A calls and party B is called (the phone is ringing at that point)
When party B picks up the phone, FS plays an announcement to party A (ex: callee.wav) and another announcement to party B (ex: called.wav) - bouth announcements/sounds has the same duration If party B stays in the line after heard the announcement/sound FS bridge A and B If party B hangup the phone, party A hears busy tone (could be an announcement too) and the call is dropped.
Hi Michael, Very good! I already bought the FS E-book version few weeks ago and now I have something to do in the weekend :-) Thanks. Rodrigo Telles On Fri, Nov 19, 2010 at 6:23 PM, Michael Collins <msc@freeswitch.org> wrote:
This is totally doable in FreeSWITCH. I'd recommend writing it in a script and using ESL This will give you more control over what's happening. You'll need to spend some time learning the event socket and how to handle events from two related call legs. I highly recommend our book, especially chapter 9. :P
You can also hang out in #freeswitch to talk in realtime with the gang.
-MC
<snip>
Party A calls and party B is called (the phone is ringing at that point)
When party B picks up the phone, FS plays an announcement to party A (ex: callee.wav) and another announcement to party B (ex: called.wav) - bouth announcements/sounds has the same duration If party B stays in the line after heard the announcement/sound FS bridge A and B If party B hangup the phone, party A hears busy tone (could be an announcement too) and the call is dropped.
_______________________________________________ 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
participants (2)
-
Listas Devel-IT
-
Michael Collins