TSPI_phoneDevSpecific (Compact 2013)

3/26/2014

This function is used as a general extension mechanism to enable a Telephony API implementation to provide features not described in the other operations. The meanings of these extensions are device specific.

Syntax

LONG TSPIAPI TSPI_phoneDevSpecific(
  DRV_REQUESTID dwRequestID, 
  HDRVPHONE hdPhone, 
  LPVOID lpParams, 
  DWORD dwSize 
);

Parameters

  • dwRequestID
    Identifier of the asynchronous request.
  • hdPhone
    Handle to the phone on which a device-specific operation is to be performed.
  • lpParams
    Pointer to a memory area used to hold a parameter block. Its interpretation is device specific. The lpParams parameter should not contain pointers. To get information back to the application from the TSPI_phoneDevSpecific function, the service provider sends a PHONE_DEVSPECIFIC message with the information.
  • dwSize
    Size, in bytes, of the parameter block area.

Return Value

Returns dwRequestID or an error number if an error occurs. The lResult actual parameter of the corresponding ASYNC_COMPLETION is zero if the function succeeds or it is an error number if an error occurs. The following table shows the return values for this method.

Value

Description

PHONEERR_INVALPHONEHANDLE

The handle to the phone is invalid.

PHONEERR_OPERATIONUNAVAIL

The operation is unavailable.

PHONEERR_INVALPOINTER

The pointer is invalid.

PHONEERR_NOMEM

Not enough memory is available.

PHONEERR_OPERATIONFAILED

The operation failed.

PHONEERR_RESOURCEUNAVAIL

The resource is unavailable.

Remarks

Additional return values are device specific.

This operation provides a generic parameter profile. The interpretation of the parameter block is device specific. Indications and replies that are device specific should use the PHONE_DEVSPECIFIC message.

This function is called in direct response to an application that has called the TAPI phoneDevSpecific function. TAPI translates the hPhone parameter used at the TAPI level to the corresponding hdPhone parameter used at the TSPI level. The lpParams buffer is passed through unmodified.

A service provider can provide access to device-specific functions by defining parameters for use with this operation. Applications that want to make use of these device-specific extensions should consult the device-specific (vendor-specific) documentation that describes what extensions are defined.

Note

An application that relies on these device-specific extensions is typically not portable in working with other service provider environments.

Requirements

Header

tspi.h

Library

CellTSP.dll

See Also

Reference

TSPI Phone Device Functions