lineGetRequest 函数 (tapi.h)
lineGetRequest 函数检索指定请求模式的下一个按代理请求。
语法
LONG lineGetRequest(
HLINEAPP hLineApp,
DWORD dwRequestMode,
LPVOID lpRequestBuffer
);
参数
hLineApp
TAPI 的行部分的应用程序使用句柄。
dwRequestMode
要获取的请求类型。 请注意, dwRequestMode 只能设置一个位。 此参数只使用一个 LINEREQUESTMODE_常量。
lpRequestBuffer
指向要在其中放置请求参数的内存缓冲区的指针。 缓冲区的大小和放置在缓冲区中的数据的解释取决于请求模式。 假定应用程序分配的缓冲区大小足以容纳请求。
如果 dwRequestMode LINEREQUESTMODE_MAKECALL,请使用 LINEREQMAKECALL 结构解释请求缓冲区的内容。
LINEREQUESTMODE_MEDIACALL已过时。 有关详细信息,请参阅 tapiRequestMediaCall。
返回值
如果请求成功,则返回零;如果发生错误,则返回负错误号。 可能的返回值为:
LINEERR_INVALAPPHANDLE、LINEERR_NOTREGISTERED、LINEERR_INVALPOINTER、LINEERR_OPERATIONFAILED、LINEERR_INVALREQUESTMODE、LINEERR_RESOURCEUNAVAIL、LINEERR_NOMEM、LINEERR_UNINITIALIZED、LINEERR_NOREQUEST。
注解
支持电话的应用程序可以通过调用 tapiRequestMakeCall 来请求代表其进行呼叫。 这些请求由 TAPI 排队,已注册处理请求的最高优先级应用程序将发送 LINE_REQUEST 消息,并指示请求处于挂起状态。 通常,此应用程序是用户的呼叫控制应用程序。 LINE_REQUEST消息指示可能有零个或多个请求等待注册的应用程序进行处理;收到LINE_REQUEST后,接收方应用程序负责调用 lineGetRequest ,直到返回LINEERR_NOREQUEST,这表示没有更多请求处于挂起状态。
接下来,接收此消息的调用控制应用程序调用 lineGetRequest,指定请求模式和足以容纳请求的缓冲区。 然后,调用控制应用程序解释并执行请求。
执行 lineGetRequest 后,TAPI 会从其内部队列中清除请求,为后续请求腾出空间。 因此,如果同一应用程序或其他应用程序发出另一个请求,则执行 lineGetRequest 时,可能会立即收到新的LINE_REQUEST消息。 请求接收方应用程序负责通过某种机制处理此方案;例如,通过注意到附加LINE_REQUEST,并延迟后续 行GetRequest ,直到完成上述请求的处理,通过根据需要获取后续请求和缓冲区,或通过其他适当的方法。
不应忽略后续LINE_REQUEST,因为 TAPI 不会重复它。
要求
要求 | 值 |
---|---|
目标平台 | Windows |
标头 | tapi.h |
Library | Tapi32.lib |
DLL | Tapi32.dll |