[Asterisk-Users] *66 auto redial emulation?
Chris Coulthurst
asterisk at shuksan.com
Sun Jun 12 15:48:06 MST 2005
Has anyone ever tried to roll out a *66 auto-callback-redial feature on
asterisk?
I'm sure that implementing this for outbound Zap calls would be a nightmare,
but what about something easier, like internal extensions?
On my old Panasonic key system, it used to be such that, if the called
extensions were busy, you could press 6 while hearing the busy signal, it
would beep twice and hangup. Once the called, busy party's line was free,
the KSU would ring-ring your phone back, and once you picked up, it redialed
the extension that is freed.
I have a rough idea on how to implement something like this, but I can see a
few complex issues.
1. IF you want it to ring busy, and have the same behaviors as the Panasonic
system did, you can't TRULY ring busy. Need a playtones command here to go
to instead. I have already sketched one out but it needs work.
2. If the called party actually has call waiting, maybe we could still get
the 'busy' tone but instead of pressing 6 to callback, we press 1 to signal
their call-waiting second line. If that line is also busy (they have a
caller on hold), then we could maybe go to their VM at this point.
Okay, are we confused enough yet? You bet, I sure am, and would love any
input and sample extensions.conf context examples you may have. Here is the
one that I kinda-wrote out for the busy-generation:
[new-busy]
exten => s,1,Answer()
exten => s,2,ResponseTimeout(60)
exten => s,3,Playtones(busy)
exten => s,4,Read(dialed,,1)
exten => s,5,Goto(${dialed},1)
exten => 1,1,StopPlayTones
exten => 1,2,** GO DO SOMETHING WHEN YOU PRESS 1 HERE **
exten => 1,3,Hangup
exten => 6,1,StopPlayTones
exten => 6,2,** GO DO SOMETHING ELSE WHEN YOU PRESS 2 **
exten => 6,3,Hangup
exten => i,1,Goto(s,3); everything else is invalid
exten => t,1,Hangup ; busy timed out after 60 seconds
Chris Coulthurst
chris at shuksan.com
More information about the asterisk-users
mailing list