Dear all i'm using an "old" Asterisk 1.6.2.9-2+squeeze12, and want to know if is possible to configure a scenario like this: 1) receive a call and put it on-hold in a queue (OK) 2) monitor the queue and trigger an outbound call to a remote number using AMI, setting the channel of the on-hold on a specific var named channel2Link (OK) 3) when the remote number answer, trigger an AGI/diaplan script that ask to accept the call pressing a specific key (OK) 4) if right key is pressed redirect the current call to the channel2Link, connecting the call in queue with the remote number (?) Step 1,2,3 works properly but i'm not able to link the two channels, even using redirect,goto or pickupChan. Any idea or help will be appreciated! Thanks -- /*************/ nik600 http://www.kumbe.it -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.digium.com/pipermail/asterisk-users/attachments/20160630/45cfa95c/attachment.html>
On 06/30/16 15:08, nik600 wrote:> Dear all > > i'm using an "old" Asterisk 1.6.2.9-2+squeeze12, and want to know if is > possible to configure a scenario like this: > > 1) receive a call and put it on-hold in a queue (OK) > 2) monitor the queue and trigger an outbound call to a remote number > using AMI, setting the channel of the on-hold on a specific var named > channel2Link (OK) > 3) when the remote number answer, trigger an AGI/diaplan script that ask > to accept the call pressing a specific key (OK) > 4) if right key is pressed redirect the current call to > the channel2Link, connecting the call in queue with the remote number (?) > > Step 1,2,3 works properly but i'm not able to link the two channels, > even using redirect,goto or pickupChan. > > Any idea or help will be appreciated! >I think the way to achieve that is by using the Bridge application: https://wiki.asterisk.org/wiki/display/AST/Bridge+Application https://wiki.asterisk.org/wiki/display/AST/Asterisk+13+Application_Bridge -- Guido Falsi <mad at madpilot.net>
oh, yes! Many thanks 2016-06-30 15:28 GMT+02:00 Guido Falsi <mad at madpilot.net>:> On 06/30/16 15:08, nik600 wrote: > > Dear all > > > > i'm using an "old" Asterisk 1.6.2.9-2+squeeze12, and want to know if is > > possible to configure a scenario like this: > > > > 1) receive a call and put it on-hold in a queue (OK) > > 2) monitor the queue and trigger an outbound call to a remote number > > using AMI, setting the channel of the on-hold on a specific var named > > channel2Link (OK) > > 3) when the remote number answer, trigger an AGI/diaplan script that ask > > to accept the call pressing a specific key (OK) > > 4) if right key is pressed redirect the current call to > > the channel2Link, connecting the call in queue with the remote number (?) > > > > Step 1,2,3 works properly but i'm not able to link the two channels, > > even using redirect,goto or pickupChan. > > > > Any idea or help will be appreciated! > > > > I think the way to achieve that is by using the Bridge application: > > https://wiki.asterisk.org/wiki/display/AST/Bridge+Application > https://wiki.asterisk.org/wiki/display/AST/Asterisk+13+Application_Bridge > > -- > Guido Falsi <mad at madpilot.net> > > -- > _____________________________________________________________________ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > New to Asterisk? Join us for a live introductory webinar every Thurs: > http://www.asterisk.org/hello > > asterisk-users mailing list > To UNSUBSCRIBE or update options visit: > http://lists.digium.com/mailman/listinfo/asterisk-users >-- /*************/ nik600 http://www.kumbe.it -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.digium.com/pipermail/asterisk-users/attachments/20160630/3c879166/attachment.html>
I think a simpler way to do this would be to define an member in your queues.conf that points to a local channel that calls the remote users cell phone. You can use the M option in your dial to run a macro to prompt the user to accept the call. Here's my connector macro, I call it with: Dial(LOCAL/${CELLPHONE}@intern,60,M(connector)) [macro-connector] exten => s,1,NoOP() same => n(TOP),Read(RESPONSE,beep&accept-reject,1,s,3,5); 3 tries with 5 seconds to respond each time same => n,GotoIf($[${LEN(${RESPONSE})} = 0]?REJECT,1) ;If we didn't get a response try and fail gracefully same => n,GotoIf($["${RESPONSE}" = "1"]?ACCEPT,1) ;Take the call same => n,GotoIf($["${RESPONSE}" = "2"]?REJECT,1) ;Reject the Call same => n,Goto(s,TOP) exten => ACCEPT,1,NoOP() ;Just connect the caller and callee same => n,Playback(pls-wait-connect-call) same => n,MacroExit() ;Return exten => REJECT,1,NoOP() same => n,Playback(beep&cancelled&goodbye) same => n,Set(MACRO_RESULT=BUSY) ;Reject the call same => n,Hangup() same => n,MacroExit() ;Return On Thu, Jun 30, 2016 at 6:08 AM, nik600 <nik600 at gmail.com> wrote:> Dear all > > i'm using an "old" Asterisk 1.6.2.9-2+squeeze12, and want to know if is > possible to configure a scenario like this: > > 1) receive a call and put it on-hold in a queue (OK) > 2) monitor the queue and trigger an outbound call to a remote number using > AMI, setting the channel of the on-hold on a specific var named > channel2Link (OK) > 3) when the remote number answer, trigger an AGI/diaplan script that ask > to accept the call pressing a specific key (OK) > 4) if right key is pressed redirect the current call to the channel2Link, > connecting the call in queue with the remote number (?) > > Step 1,2,3 works properly but i'm not able to link the two channels, even > using redirect,goto or pickupChan. > > Any idea or help will be appreciated! > > Thanks > > -- > /*************/ > nik600 > http://www.kumbe.it > > -- > _____________________________________________________________________ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > New to Asterisk? Join us for a live introductory webinar every Thurs: > http://www.asterisk.org/hello > > asterisk-users mailing list > To UNSUBSCRIBE or update options visit: > http://lists.digium.com/mailman/listinfo/asterisk-users >-- A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects. ---Heinlein -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.digium.com/pipermail/asterisk-users/attachments/20160630/101f12bc/attachment.html>
thanks John yeah, your approach is much siple, i've tried it but i'm not able do detect DTMF tones. it seems that on calls that i receive DTMF tones are handled correctly, but on calls generated from Asterisk to the world when the called side sends some DTMF digits they are not detected: -- Executing [s at macro-myconnector:1] NoOp("SIP/pbx2-000004b2", "") in new stack -- Executing [s at macro-myconnector:2] Read("SIP/pbx2-000004b2", "RESPONSE,beep,1,s,3,5") in new stack -- Accepting a maximum of 1 digits. -- <SIP/pbx2-000004b2> Playing 'beep.gsm' (language 'en') ... -- User entered nothing, 2 chances left -- <SIP/pbx2-000004b2> Playing 'beep.gsm' (language 'en') ... -- User entered nothing, 1 chance left -- <SIP/pbx2-000004b2> Playing 'beep.gsm' (language 'en') ... -- User entered nothing. -- Executing [s at macro-myconnector:3] GotoIf("SIP/pbx2-000004b2", "1?REJECT,1") in new stack Any idea? 2016-06-30 21:50 GMT+02:00 John Kiniston <johnkiniston at gmail.com>:> I think a simpler way to do this would be to define an member in your > queues.conf that points to a local channel that calls the remote users cell > phone. > > You can use the M option in your dial to run a macro to prompt the user to > accept the call. > > Here's my connector macro, I call it with: > > Dial(LOCAL/${CELLPHONE}@intern,60,M(connector)) > > [macro-connector] > exten => s,1,NoOP() > same => n(TOP),Read(RESPONSE,beep&accept-reject,1,s,3,5); 3 tries with > 5 seconds to respond each time > same => n,GotoIf($[${LEN(${RESPONSE})} = 0]?REJECT,1) ;If we > didn't get a response try and fail gracefully > same => n,GotoIf($["${RESPONSE}" = "1"]?ACCEPT,1) ;Take the > call > same => n,GotoIf($["${RESPONSE}" = "2"]?REJECT,1) ;Reject > the Call > same => n,Goto(s,TOP) > > exten => ACCEPT,1,NoOP() ;Just > connect the caller and callee > same => n,Playback(pls-wait-connect-call) > same => n,MacroExit() ;Return > > exten => REJECT,1,NoOP() > same => n,Playback(beep&cancelled&goodbye) > same => n,Set(MACRO_RESULT=BUSY) ;Reject the call > same => n,Hangup() > same => n,MacroExit() ;Return > > > On Thu, Jun 30, 2016 at 6:08 AM, nik600 <nik600 at gmail.com> wrote: > >> Dear all >> >> i'm using an "old" Asterisk 1.6.2.9-2+squeeze12, and want to know if is >> possible to configure a scenario like this: >> >> 1) receive a call and put it on-hold in a queue (OK) >> 2) monitor the queue and trigger an outbound call to a remote number >> using AMI, setting the channel of the on-hold on a specific var named >> channel2Link (OK) >> 3) when the remote number answer, trigger an AGI/diaplan script that ask >> to accept the call pressing a specific key (OK) >> 4) if right key is pressed redirect the current call to the channel2Link, >> connecting the call in queue with the remote number (?) >> >> Step 1,2,3 works properly but i'm not able to link the two channels, even >> using redirect,goto or pickupChan. >> >> Any idea or help will be appreciated! >> >> Thanks >> >> -- >> /*************/ >> nik600 >> http://www.kumbe.it >> >> -- >> _____________________________________________________________________ >> -- Bandwidth and Colocation Provided by http://www.api-digital.com -- >> New to Asterisk? Join us for a live introductory webinar every Thurs: >> http://www.asterisk.org/hello >> >> asterisk-users mailing list >> To UNSUBSCRIBE or update options visit: >> http://lists.digium.com/mailman/listinfo/asterisk-users >> > > > > -- > A human being should be able to change a diaper, plan an invasion, butcher > a hog, conn a ship, design a building, write a sonnet, balance accounts, > build a wall, set a bone, comfort the dying, take orders, give orders, > cooperate, act alone, solve equations, analyze a new problem, pitch manure, > program a computer, cook a tasty meal, fight efficiently, die gallantly. > Specialization is for insects. > ---Heinlein > > -- > _____________________________________________________________________ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > New to Asterisk? Join us for a live introductory webinar every Thurs: > http://www.asterisk.org/hello > > asterisk-users mailing list > To UNSUBSCRIBE or update options visit: > http://lists.digium.com/mailman/listinfo/asterisk-users >-- /*************/ nik600 http://www.kumbe.it -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.digium.com/pipermail/asterisk-users/attachments/20160630/abfc23c5/attachment.html>