LINE_NEWCALL消息
每当 TAPI 尚未发起的新调用到达 TAPI 已打开的行时,TSPI LINE_NEWCALL 消息将发送到 LINEEVENT 回调函数。 这必须是发送的关于该调用的第一条消息。 TAPI 将 htCall 不透明句柄写入服务提供商作为 dwParam2 传递的位置。 这为服务提供商提供了要在后续消息中使用的 htCall 值。
参数
-
htLine
-
行设备的 TAPI 不透明对象句柄。
-
htCall
-
未使用。
-
dwMsg
-
值LINE_NEWCALL。
-
dwParam1
-
服务提供程序的调用的不透明句柄,类型为 HDRVCALL。 TAPI 将此值作为 hdCall 参数传递,以在后续过程中标识调用以对调用进行操作的调用。
-
dwParam2
-
指向 HTAPICALL 的 LPHTAPICALL 类型的指针。 TAPI 将调用的 TAPI 不透明句柄写入到指示的位置。 服务提供商必须保存此值,并将其作为 htCall 参数传递,以标识它为调用报告的后续事件中的调用。
此参数还可以获取 NULL 值, (请参阅以下备注部分) 。
-
dwParam3
-
未使用。
注解
服务提供商应发送 LINE_CALLSTATE 消息作为此调用的下一条消息。 LINE_NEWCALL 事件不寻常,因为它还会将值传递回服务提供商。
此函数报告源自服务提供商的任何新呼叫 (入站、出站、在电话上发起等) TAPI 和服务提供商尚未交换不透明句柄。 交换句柄,以便 TAPI 和服务提供商随后可以发出请求并报告涉及调用的事件。 由于这些新调用不一定是入站调用,因此调用最初可以处于任何状态,不一定处于 产品/服务 状态。 如果服务提供商启动并发现一个或多个呼叫已在线路上处于活动状态,它会使用 LINE_NEWCALL 消息通知 TAPI,后跟指示当前状态 的LINE_CALLSTATE 消息。 用户通过电话发起的新传出呼叫将报告 为LINE_NEWCALL 消息,初始 LINE_CALLSTATE 消息将指示呼叫处于 DIALTONE 状态 (,然后从) 继续。
如果服务提供商在同一中断周期) (非常短的时间内将大量调用传递给 TAPI,则 TAPI 在处理这些调用时可能会积压。 发生这种情况时,TAPI 会向服务提供商发出信号,等待一段时间后再发送任何呼叫。 它通过将 NULL 值(而不是有效的 HTAPICALL)写入到 LINE_NEWCALL的 dwParam2 参数指向的位置来发出信号。 这表示尝试处理新提供的调用句柄未成功,很可能是由于暂时无法分配内存。 服务提供商可以通过放弃呼叫或通过在计划延迟 (之后重新发送 LINE_NEWCALL 消息来响应,在此期间,服务提供商应生成处理器,以允许 TAPI) 处理其他挂起的操作。 在任何情况下,在句柄交换成功之前,不能将有关新调用的进一步消息传递给 TAPI。 当 dwParam2 指向的位置获取非 NULL 值时,服务提供商知道此值是调用的有效 HTAPICALL 句柄。
TAPI 级别没有直接对应的消息。 此消息在 TSPI 级别用于唯一且明确引入对 TAPI 的新传入调用,并检索呼叫的 TAPI 不透明标识符。
要求
要求 | 值 |
---|---|
TAPI 版本 |
需要 TAPI 2.0 或更高版本 |
标头 |
|