On systems using Analog Telephony Cards (eg:
Dialogic D/4PCI, D/120JCT etc) end of call is detectable by:
- Loop
Current Drop on the line.
- Disconnect tone on the line.
- Special DTMF
tone played by PBX/Switch.
- Timeout awaiting input from
caller.
On systems using Voice Modems end of call
detection is made by:
Systems which use normal modems end of call detection
is made by:
- Disconnect tone on the line.
- Timeout awaiting input
from caller.
Systems using Digital Telephony Cards
(includes CAPI/ISDN cards) (eg: Dialogic D/240, D/300, AVM ISDN cards,
Eicon ISDN cards etc.) end of call is detectable by:
- End of call
digital signaling.
- Timeout awaiting input from caller.
Detection Method Description
Loop Current Drop:
Loop current drop is used by many telephone companies and PBXs to indicate
end of call (other party has hung up). Telephony Cards can detect loop current
drop and will inform the application of it.
Telephone companies will usually play a tone on the line to indicate end of call, this tone is known as a 'busy tone' or a 'disconnect tone'. PBXs can be configured to play a tone, or send a DTMF tone (usually tone "D") to indicate end of call.
Detection of disconnect tones: Voice modems come pre-programmed with sets tones that they will detect as 'end-of-call' tones - these cannot be changed. Some voice modems detect end-of-call tones well, but some do not. Telephony cards also come pre-programmed with sets tones that they will detect as 'end-of-call' tones, but can also be be programmed what disconnect tones to listen for. This allows telephony card to have its end-of-call (disconnect) tone detection matched to that generated by the telephone company or PBX.
For Dialogic the disconnect tones to listen for can be configured in the Dialogic TSP, eg:

If you do not know the parameters of the disconnect tone. You can analyze it with CoolEdit.
1. Run the Sample Program Multi-Thread Voice, Dial the phone beside your PC.
2.Pickup the phone, and the call is connected.
3. Start Recording sound into a wave file, and immediately drop the phone.
Disconnect tones will be record into the wave file.
After about 10 seconds, stop recording.
4.Open the recorded wave file with CoolEdit 2000. Analyze the waveform of
the disconnect tone. Get the frequency of the disconnect tone, and the tone
on time and off time.
Another way to configure Dialoigc cards to detect busy/disconnect tones is to create a "Tone File" using Dialogic's PBXpert application and then selected as the TSFFileName in Dialogic Configuration Manager (need to set TsFFileSupport to "Yes" as well).
Accuracy of tone detection with telephony cards is much better then with modems. Some modems even falsely detect disconnect tones while playing/recording sound files or when a DTMF key is pressed by the caller.
Detection of DTMF disconnect tones :
Special DTMF tone played by PBX/Switch:
Some PBXs and Switches can
be set up to play a DTMF tone on the line when the PBX/Switch detects that the
other party has hung up. The DTMF tone chosen to indicate that is usually the
"D" tone.
Most telephone handsets do not have the DTMF A, B, C and D tones on their keypad, so the callers cannot generate these tones themselves (either intentionally or by mistake). This makes the "DTMF Disconnect Tone" a very useful way of detecting end of call.
If the PBX or Switch is capable of generating DTMF tone at end of call then we highly recommend using this approach as it is a very reliable way to detect disconnection.

Timeout awaiting input from caller:
Scripts need to be designed to
ensure that there are no 'infinite loops' within them.
End of call digital signaling
Digital (includes all ISDN) systems all use digital signaling to immediately
indicate end of call when the other party hangs up the handset.