When a caller in the queue is connected to an agent, the call is placed to the extension and context specified using Agentcallbacklogin. This allows for me to add extra things to the diaplan *before* calling the agent. Now, I want to be able to use a device, rather than agents. So I can use addQueueMember and add my SIP device. However, I still want to do a couple of things before the device is called. Is there any way of doing that ? I was looking for something like the "connected" macro in the Dial command. I see that there is an optional agi command - I don't know agi, and will learn how to use it if required, but was hoping that there was something simple that I am missing. Julian
On 6/13/06, Julian Lyndon-Smith <asterisk@dotr.com> wrote:> When a caller in the queue is connected to an agent, the call is placed > to the extension and context specified using Agentcallbacklogin. This > allows for me to add extra things to the diaplan *before* calling the agent. > > Now, I want to be able to use a device, rather than agents. So I can use > addQueueMember and add my SIP device. However, I still want to do a > couple of things before the device is called. > > Is there any way of doing that ? I was looking for something like the > "connected" macro in the Dial command. > > I see that there is an optional agi command - I don't know agi, and will > learn how to use it if required, but was hoping that there was something > simple that I am missing. >If you're not using agents, the AGI will be your only shot, but that's also executed against the calling channel and not the device you've called who has the agent on the other end. -- Bird's The Word Technologies, Inc. http://www.btwtech.com/
----- Julian Lyndon-Smith <asterisk@dotr.com> wrote:> Now, I want to be able to use a device, rather than agents. So I can > use > addQueueMember and add my SIP device. However, I still want to do a > couple of things before the device is called.This is what the Local channel (chan_local) is for. If your SIP device is called "myfancyphone", then instead of adding SIP/myfancyphone to the queue using AddQueueMember, add (instead) Local/myfancyphone@members, and then in your dialplan: [members] exten => myfancyphone,1,... exten => myfancyphone,n,... exten => myfancyphone,n,Dial(SIP/${EXTEN}) -- Kevin P. Fleming Senior Software Engineer Digium, Inc.
Many thanks :) I was currently trying to add a macro to app_queue.c (like Dial) but will now abandon with indecent haste and use this ! Julian. Kevin P. Fleming wrote:> ----- Julian Lyndon-Smith <asterisk@dotr.com> wrote: >> Now, I want to be able to use a device, rather than agents. So I can >> use >> addQueueMember and add my SIP device. However, I still want to do a >> couple of things before the device is called. > > This is what the Local channel (chan_local) is for. > > If your SIP device is called "myfancyphone", then instead of adding SIP/myfancyphone to the queue using AddQueueMember, add (instead) Local/myfancyphone@members, and then in your dialplan: > > [members] > exten => myfancyphone,1,... > exten => myfancyphone,n,... > exten => myfancyphone,n,Dial(SIP/${EXTEN}) >