Home | Sign in | English UK
  • Differences between tapiDial and tapiLineDial
  • Limitation
  • Required configuration
WindowsLinuxUniversal Windows 10 AppJavaReports and QueriesUser code (UMC)
WindowsLinuxPHPWEBDEV - Browser code
AndroidAndroid Widget iPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Stored procedures
Dials a phone number for a voice line.
WINDEV Remark: By default, the device used is the first TAPI 3.1-compatible device found. A specific device can be selected by tapiDevice. In this case, this specific device will be used.
WINDEV PABX application: With a PABX application, each line appears as a device. Therefore, to dial on a phone line, you must:
  1. Choose the current phone line (tapiDevice).
  2. Number (tapiDial).
To do so, use tapiLineDial.
Remark: Depending on the operating system and on the modem driver, a window for call management may be displayed when using tapiDial. This window is used to automatically end the current call.
IF tapiDial(EDT_PhoneNumber, "LineStatus")=True THEN
Info("Click OK to hang up")
PROCEDURE TestLineStatus(ValueLineStatus is int)
SWITCH ValueLineStatus
CASE tapiLineBusy: Message("The line is busy")
CASE tapiLineConnected: Message("OK, connected")
CASE tapiLineDialing: Message("Dialing in progress")
CASE tapiLineDialTone: Message("Dial tone")
CASE tapiLineDisconnected: Message("The correspondent has hung up")
CASE tapiLineProceeding: Message("Searching for your correspondent")
CASE tapiLineRingBack: Message("Ringing")
<Result> = tapiDial(<Number to dial> [, <Procedure name> [, <Duration> [, <Custom parameter>]]])
<Result>: Boolean
  • True if the line is opened: you can pick up the receiver and talk,
  • False otherwise. For more details about the problem, use tapiError.
<Number to dial>: Character string (with quotes)
Phone number to dial. To specify a prefix (0 for an external line for example), use a comma in the number. For example: "0,0467789066".
<Procedure name>: Optional character string (with or without quotes)
Name of WLanguage procedure used to manage the progress of dialing. This procedure has the following format:
PROCEDURE <Procedure name> (<Line status>, <Parameter>)

The first procedure parameter (<Line status>) is an 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.
The second procedure parameter (<Parameter>) is the custom parameter passed to tapiDial.
Caution: This procedure must contain no call to the debugger (no breakpoint, no STOP keyword, no auto-stop expression, ...).
<Duration>: Optional integer or optional Duration
Maximum wait duration (in seconds). When this time-out is exceeded, the function assumes that there is no response (nobody picked up).
This parameter can correspond to:
  • an integer corresponding to the number of seconds,
  • a Duration variable,
  • Versions 23 and later
    the direct indication of duration (1 s or 10 ms for example).
    New in version 23
    the direct indication of duration (1 s or 10 ms for example).
    the direct indication of duration (1 s or 10 ms for example).
<Custom parameter>: Any type, optional
Parameter passed to the WLanguage procedure.

Differences between tapiDial and tapiLineDial

  • tapiDial is used in the context of a single outgoing call. The identifier of this call is not available.
  • tapiLineDial is used in a context where there may be several simultaneous calls. tapiLineDial returns the call identifier. Therefore, it can be easily handled (to transfer a call for example).


tapiDial cannot be called in the procedure for call detection (defined by tapiListen).
WINDEVUser code (UMC)

Required configuration

Telephony functions use TAPI 2.0 technology and/or TAPI 3.1 technology. These technologies can be used on all systems.
Component : wd250com.dll
Minimum version required
  • Version 9
This page is also available for…
Click [Add] to post a comment