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 |