Home | Sign in | English EN
This content has been translated automatically. Click here to view the French version.
  • Limitation
  • WLanguage procedure
  • Required configuration
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WindowsLinuxPHPWEBDEV - Browser code
AndroidAndroid Widget iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Stored procedures
tapiListen (Function)
In french: telDémarreDétectionAppel
Starts the call detection (also called "call monitoring service").
// Démarre le service de détection des appels
IF tapiListen("AppelEntrant", tapiOptionMediaModeFax, "DetectionAppel") = True THEN
// Le service de détection des appels a démarré
Message("Détection des appels activée")
// Le service de détection des appels n'a pas démarré
Error("Impossible de démarrer la détection des appels" + CR + ...
"Détail de l'erreur:"+ CR + ErrorInfo(errMessage))
<Result> = tapiListen(<Service ID> [, <Options>] , <WLanguage procedure> , <Custom parameter>)
<Result>: Boolean
  • True if the call detection is enabled,
  • False otherwise.
<Service ID>: Character string (with quotes)
Name used to identify the service for call detection.
<Options>: Optional constant
Characteristics of call detection:
(default option)
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.
tapiOptionMonitorDetects the calls (to perform statistics for example), even if they are managed by an application. No operation will be possible on the call.
tapiOptionMediaModeVoiceDetects the voice calls.
Remark: The Fax modems that allow auto-dialing may return this constant. In this case, a WLanguage error will occur.
tapiOptionMediaModeUnknownDetects the unknown types of calls.
tapiOptionMediaModeFaxDetects the calls coming from a fax.
<WLanguage procedure>: Procedure name
Name of WLanguage procedure called during a call detection or when the call status changes. This procedure has the following format:
PROCÉDURE <Nom de la procédure> (<Identifiant du service>, <Identifiant de l'appel>,
<Statut de l'appel>, <Paramètre>)
  • <Service identifier>: identifier of service that detected the call
  • <Call identifier>: integer that identifies the call. Can be used in all the functions for handling the call.
  • <Call status>: integer that can take the following values:
    tapiLineBusyThe line is currently busy.
    tapiLineConnectedThe line is connected.
    tapiLineDialingDialing in progress.
    Remark: If TAPI 3.1 technology is used, this constant is no longer returned.
    tapiLineDialToneThe line gets a dial tone.
    tapiLineDisconnectedThe correspondent has hung up.
    tapiLineProceedingThe call is dialed: searching for the correspondent.
    tapiLineRingBackRinging in progress.
    tapiNewCallNew call detected waiting for an answer or for a reject.
    tapiCallInformationThe additional information (presentation of the number) is available. In most cases, this information will be available after the fist ring.
    tapiMonitoredDigitA 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 not contain any 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 call detection procedure.

WLanguage procedure

The WLanguage procedure is run in a WLanguage thread.
Caution: The following processes cannot be run in the threads:
For more details on threads, see Gestion des threads.

Required configuration

Telephony functions use TAPI 2.0 technology and/or TAPI 3.1 technology. These technologies can be used on all systems.
Related Examples:
WD Telephony Complete examples (WINDEV): WD Telephony
[ + ] This example presents the telephony functions of WINDEV.
The following topics are presented in this example:
1/ How to dial a phone number
2/ Detect and identify the incoming calls
Summary of the example supplied with WINDEV:
This example presents the telephony functions supplied with WINDEV. Once contacts have been entered in the main window (the table is in edit), you will be able to call them from the application directly (your computer must be equipped with a modem properly installed). You will be able to get a notification for the incoming calls and to identify the caller
Component: wd270com.dll
Minimum version required
  • Version 9
This page is also available for…
Click [Add] to post a comment