lineGetNumRings function (tapi.h)

The lineGetNumRings function determines the number of rings an incoming call on the given address should ring prior to answering the call.

Syntax

LONG lineGetNumRings(
  HLINE   hLine,
  DWORD   dwAddressID,
  LPDWORD lpdwNumRings
);

Parameters

hLine

Handle to the open line device.

dwAddressID

Address on the line device. An address identifier is permanently associated with an address; the identifier remains constant across operating system upgrades.

lpdwNumRings

Number of rings that is the minimum of all current lineSetNumRings requests.

Return value

Returns zero if the request succeeds or a negative error number if an error occurs. Possible return values are:

LINEERR_INVALADDRESSID, LINEERR_OPERATIONFAILED, LINEERR_INVALLINEHANDLE, LINEERR_RESOURCEUNAVAIL, LINEERR_INVALPOINTER, LINEERR_UNINITIALIZED, LINEERR_NOMEM.

Remarks

The lineGetNumRings and lineSetNumRings functions, when used in combination, provide a mechanism to support the implementation of toll-saver features across multiple independent applications.

An application that receives a handle for a call in the offering state and a LINE_LINEDEVSTATE ringing message should wait a number of rings equal to the number returned by lineGetNumRings before answering the call in order to honor the toll-saver settings across all applications. The lineGetNumRings function returns the minimum of all applications' number of rings specified by lineSetNumRings. Because this number can vary dynamically, an application should invoke lineGetNumRings each time it has the option to answer a call. If no application has called lineSetNumRings, the number of rings returned is 0xFFFFFFFF. A separate LINE_LINEDEVSTATE ringing message is sent to the application for each ring cycle.

If call classification is performed by TAPI of answering all calls of unknown media mode and filtering the media stream, TAPI honors this number as well.

Note  This operation is purely informational and does not in itself affect the state of any calls on the line device.
 

Requirements

Requirement Value
Target Platform Windows
Header tapi.h
Library Tapi32.lib
DLL Tapi32.dll

See also

Basic Telephony Services Reference

LINE_LINEDEVSTATE

TAPI 2.2 Reference Overview

lineSetNumRings