[Asterisk-Users] More on"Callprogress"
Stephen R. Besch
sbesch at acsu.buffalo.edu
Wed Sep 24 13:09:13 MST 2003
Here is some more stuff to add to the confusion about the "callprogress"
option. I currently have my * system operating with a T100P talking to
an ADTRAN TSU600 channel bank with 8 FXO ports connecting to the outside
world and Grandstream SIP phones as handset extensions. At first I
naively set "callprogress=yes" in zapata.conf. The results were typical
of what many people have reported in the lists: I could receive incoming
calls (to the SIP hardware) with no problem but outgoing calls failed.
When "callprogress=no" was used, everything was fine. Given this, I
assumed that * cannot tell that the remote (analog) line had been
answered, so the call was never bridged. I concluded that the ADTRAN
TSU would have to detect "answered" status, and that therefore this was
the expected behavior: callprogress should only be able to operate on
FXO's that are plugged directly into the * box. What's strange is that
as long as the remote phone does not pick up, the * console indicates
ringing on the zap interface (i.e., Zap/1-1 Ringing repeats). However,
when the remote phone picks up, * stops announcing that it is detecting
ringing and waits (forever, or at least until the remote line is hung
up). In other words, either the ADTRAN had signalled that ringing had
stopped, or * was listening and noticed that ringing had stopped.
However, even though the remote phone is picked up, I still hear (the
locally generated) ringback on the SIP phone, indicating that * had not
acknowleged the remote phone having been picked up, even though it
apparently knows - it has after all stopped repeatedly displaying the
"ringing" notification.
The questions are these:
1) If callprogress is in fact detecting ringing, and then the cessation
of ringing through the ADTRAN, then why doesn't it bridge the call when
the ringing stops?
2) Why bother at all with callprogress. If bridging an analog call when
it's dialed (i.e., callprogress=no) always succeeds, then why wait? The
only advantage I can see is that it may save some wasted bandwidth,
which, while not important in my case, could be very important to people
with large call volumes. But then, those people would probably not be
using analog lines anyway so the problem goes away. Can someone clarify?
3) Finally, if I disable busydetect, what are the consequences? Does it
simply mean that * won't be able to easily detect when the remote end of
the analog line hangs up?
Stephen R. Besch
More information about the asterisk-users
mailing list