Jerry Geis
2004-Apr-25 11:35 UTC
[Asterisk-Users] EXEC Transfer from AGI and detect busy run AGI.
Hi, I have not found anyway to successfully do a Transfer from within an AGI with the call started from an outgoing spool call. The call file is: Channel: Local/304@smvoice-dialout/n Context: smvoice-dialout Extension: 304 Priority: 1 RetryTime: 2 WaitTime: 60 MaxRetries: 1 SetVar: transfer=303 ------- Part of the extensions.conf file is: [smvoice-dialout] exten => 301,1,Dial,Zap/1 exten => 301,2,agi,smvoice|-digium_asterisk exten => 302,1,Dial,Zap/2 exten => 302,2,agi,smvoice|-digium_asterisk exten => 303,1,Dial,Zap/3 exten => 303,2,agi,smvoice|-digium_asterisk exten => 304,1,Dial,Zap/4 exten => 304,2,agi,smvoice|-digium_asterisk Then when my agi calls 304 first and says "please hold for Jerry Geis" it executes an "EXEC Transfer 303". Then it hangs up and I hear busy tones. I cant determine if I am doing something wrong, have something setup wrong or if possibly a bug. Any help is appreciated. I have tried calling Digium support and they say they dont have much experience with AGI. This feature is just one small part of my AGI application but one of the last to get working. The other problem I have is detecting busy. In my extensions.conf I tried adding a line: exten => 301,1,Dial,Zap/1 exten => 301,2,agi,smvoice|-digium_asterisk exten => 301,102,agi,smvoice|-digium_busy to detect a call is busy - however it never executes the agi in this case. The call remains in the outgoing directory and tries again in a little while. I need to have another agi execute in case of busy. How can I detect busy and run an agi based on that. THanks for any help you might be able to give.