- WLanguage procedure
- Required configuration
In French: telDémarreDétectionAppel
Starts the call detection (also called "call monitoring service").
: By default, the device used is the first TAPI 2-compatible device found. A specific device can be selected by tapiDevice
. In this case, this specific device will be used.
// Starts the service for call detection
IF tapiListen("IncomingCall", tapiOptionMediaModeFax, "CallDetection") = True THEN
// The service for call detection is started
Message("Call detection enabled")
// The service for call detection is not started
Error("Unable to start the call detection" + CR + ...
"Error details:"+ CR + ErrorInfo(errMessage))
<Result> = tapiListen(<Service Identifier> [, <Options>] , <Procedure Name> , <Custom Parameter>)
- True if the call detection is enabled,
- False otherwise.
<Service Identifier>: Character string (with quotes)
Name used to identify the service for call detection.
<Options>: Optional constant
Characteristics of call detection:
|Detecting calls on a fax modem. In most cases, the functions for handling calls are not supported by the modems. |
This option cannot be used with the other options.
|tapiOptionMonitor||Detects the calls (to perform statistics for example), even if they are managed by an application. No operation will be possible on the call.|
|tapiOptionMediaModeVoice||Detects the voice calls.|
Note: The Fax modems that allow auto-dialing may return this constant. In this case, a WLanguage error will occur.
|tapiOptionMediaModeUnknown||Detects the unknown types of calls.|
|tapiOptionMediaModeFax||Detects the calls coming from a fax.|
<Procedure Name>: Character string (with or without quotes)
Name of WLanguage procedure called during a call detection or when the call status changes. This procedure has the following format:
PROCEDURE <Procedure Name> (<Service Identifier>, <Call Identifier>,
<Call Status>, <Parameter>)
- <Service Identifier>: identifier of service that detected the call
- <Call Identifier>: integer identifying the call. Can be used in all the functions for handling the call.
- <Call Status>: integer that can take the following values:
|tapiLineBusy||The line is currently busy.|
|tapiLineConnected||The line is connected.|
|tapiLineDialing||Dialing in progress.|
|tapiLineDialTone||The line gets a dial tone.|
|tapiLineDisconnected||The correspondent has hung up.|
|tapiLineProceeding||The call is dialed: searching for the correspondent.|
|tapiLineRingBack||Ringing in progress.|
|tapiNewCall||New call detected waiting for an answer or for a reject.|
|tapiCallInformation||The additional information (presentation of the number) is available. In most cases, this information will be available after the fist ring.|
|tapiMonitoredDigit||A phone key has been used. To find out the list of keys used, call tapiKeyPressed.|
- <Parameter> is the custom parameter passed to tapiListen.
Caution: this procedure must contain no call to the debugger (no breakpoint, no STOP keyword, no auto-stop expression, ...).
<Custom Parameter>: Any type
Parameter passed to the WLanguage procedure.
tapiListen cannot be called in the procedure for call detection.
The WLanguage procedure is run in a WLanguage thread.
Caution: The following processes cannot be run in the threads:
- use tapiDial, tapiLineDial, tapiListen, tapiStopCallDetection, tapiHold, tapiSendKey, tapiDevice, tapiHangUp, tapiAnswerCall, tapiUnhold and tapiBlindTransfer.
- opening windows with WLanguage functions such as Open, Use, Close, ... A specific management mode must be implemented if windows must be handled in the threads (very rare). See Managing the opening of a window in a secondary thread for more details
- managing events.
- managing timers.
The telephony functions are using the TAPI 2.0 technology. This technology can be used on all the systems.
However, if the system used is Windows NT4, the service pack 4 (or later) must be installed.
Note: The TAPI 3.0 technology (and later) is not supported in this version.
This page is also available for…