TSPI_lineCloseCall 函数 (tspi.h)

TSPI_lineCloseCall函数在完成或中止调用上所有未完成的异步操作后解除分配调用。

语法

LONG TSPIAPI TSPI_lineCloseCall(
  HDRVCALL hdCall
);

参数

hdCall

要关闭的调用的服务提供商句柄。 成功关闭调用后,此句柄不再有效。 调用状态可以是任何状态。

返回值

如果函数成功,则返回零;如果发生错误,则返回错误号。 可能的返回值如下所示:

LINEERR_NOMEM、LINEERR_OPERATIONFAILED、LINEERR_OPERATIONUNAVAIL、LINEERR_RESOURCEUNAVAIL。

注解

服务提供商必须报告异步操作的完成情况。 如果对存在未完成异步操作的调用调用调用 TSPI_lineCloseCall ,则应在此过程返回之前报告操作已完成,并显示相应的结果或错误代码。 此过程返回后,服务提供程序必须不报告有关调用的进一步事件。 服务提供商对线路的句柄和线路上的调用将变为“无效”。

如果服务提供商同步返回 对 TSPI_lineMakeCall 函数的调用中的错误,TAPI 不会调用 TSPI_lineCloseCall 。 但是,如果服务提供商从 TSPI_lineMakeCall 启动的异步操作返回错误,TAPI 会调用 TSPI_lineCloseCall

如果在 TSPI_lineCloseCall时线路上存在活动调用,则必须在 LINEDEVCAPS 结构中的 LINEDEVCAPFLAGS_CLOSEDROP 位指示此行为时放弃调用。

如果服务提供商可以确定有另一个代理共享呼叫控制权(例如,在具有单独手机的群线路情况下),则服务提供商只需让呼叫控制权传递给另一个代理,而不是强行放弃呼叫。

此函数应始终成功,除非在特殊情况下。 大多数调用方可能会忽略返回代码,因为他们无法补偿发生的任何错误。 对于开发诊断目的,指定的返回值比任何其他值更具有建议性。

当具有此调用句柄的最后一个应用程序执行 lineDeallocateCall 时,将调用此函数。

要求

要求
目标平台 Windows
标头 tspi.h

另请参阅

LINEDEVCAPS

TSPI_lineMakeCall