LINE_CALLSTATE消息

当指定呼叫的状态发生更改时,将发送 TAPI LINE_CALLSTATE 消息。 通常,在调用的生存期内会收到多个此类消息。 应用程序会收到包含此消息的新传入呼叫的通知;新调用处于 产品/服务 状态。 应用程序可以使用 lineGetCallStatus 检索有关调用当前状态的更多详细信息。

            

参数

hDevice

调用的句柄。

dwCallbackInstance

打开调用的线路时提供的回调实例。

dwParam1

新的调用状态。 此参数必须是以下 LINECALLSTATE_常量之一,并且只有一个。

dwParam1 含义
LINECALLSTATE_BUSY
dwParam2 包含有关忙碌模式的详细信息。 此参数使用 LINEBUSYMODE_常量之一。
LINECALLSTATE_CONNECTED
dwParam2 包含有关连接模式的详细信息。 此参数使用 LINECONNECTEDMODE_常量之一。
LINECALLSTATE_DIALTONE
dwParam2 包含有关拨号音模式的详细信息。 此参数使用 LINEDIALTONEMODE_常量之一。
LINECALLSTATE_OFFERING
dwParam2 包含有关连接模式的详细信息。 此参数使用 LINEOFFERINGMODE_常量之一。
LINECALLSTATE_SPECIALINFO
dwParam2 包含有关特殊信息模式的详细信息。 此参数使用 LINESPECIALINFO_常量之一。
LINECALLSTATE_DISCONNECTED
dwParam2 包含有关断开连接模式的详细信息。 此参数使用 LINEDISCONNECTMODE_常量之一。

dwParam2

依赖于调用状态的信息。 请参阅 dwParam1

注意

如果 延迟响应合适 ,请使用 LINEDISCONNECTMODE_TEMPFAILURE。 如果适合 列入阻止列表的 响应,请使用 LINEDISCONNECT_BLOCKED。 有关详细信息,请参阅 LINEDISCONNECTMODE_常量

如果 dwParam1 LINECALLSTATE_CONFERENCED,则 dwParam2 包含主题 hCall 是其成员的会议父调用的 hConfCall 参数。 如果应用程序以前未将 dwParam2 中指定的呼叫视为 hConfCall (父电话会议,则应用程序必须为此消息。 如果应用程序没有会议父呼叫的句柄, (因为它以前在该句柄上调用了 lineDeallocateCall ,) dwParam2 设置为 NULL

dwParam3

如果为零,则此参数指示应用程序对调用的权限没有更改。

如果不是零,则指定应用程序对调用的特权。 这种情况在以下情况下发生: (1) 首次为应用程序提供此调用的句柄; (2) 当应用程序是呼叫切换的目标时,即使应用程序已是呼叫) 的所有者, (也是如此。 此参数使用以下 LINECALLPRIVILEGE_常量之一

返回值

没有返回值。

备注

此消息将发送到具有调用句柄的任何应用程序。 LINE_CALLSTATE消息还会通知监视线路上呼叫的应用程序,告知其他应用程序或用户 (手动建立的出站呼叫的存在和状态,例如,在附加电话设备上) 。 此类调用的调用状态反映呼叫的实际状态,而呼叫不提供。 通过检查呼叫状态,应用程序可以确定呼叫是否是需要应答的入站呼叫。

由于其他应用程序请求的 lineMakeCalllineForwardlineUnparklineSetupTransferlinePickuplineSetupConferencelinePrepareAddToConference 成功,可以将具有未知调用状态的LINE_CALLSTATE消息发送到监视应用程序。 在为请求的操作发送 LINE_REPLY (成功) 请求应用程序的同时,将发送 LINE_CALLSTATE ( 未知) 消息。 使用服务提供商) 不久之后向请求和监视应用程序提供的信息, (发送一条指示新生成的呼叫的“真实”调用状态的LINE_CALLSTATE消息。

lineCompleteTransfer 导致呼叫解析为三向会议时,才会将LINE_CALLSTATE (未知) 消息发送到监视应用程序。

为了向后兼容,较旧的应用程序不需要 dwParam2 中LINECALLSTATE_CONFERENCED消息中的任何特定值。 因此,无论接收消息的应用程序的 API 版本如何,TAPI 都会在 dwParam2 中传递父调用 hConfCall。 对于服务提供商发起的电话会议,旧应用程序不知道父呼叫已成为电话会议,除非它碰巧自发地检查其他信息 (,例如呼叫 lineGetConfRelatedCalls) 。

无法禁用此消息。

要求

要求
TAPI 版本
需要 TAPI 2.0 或更高版本
标头
Tapi.h

另请参阅

LINE_REPLY

lineCompleteTransfer

lineDeallocateCall

LINEDIALPARAMS

lineForward

lineGenerateDigits

lineGetCallStatus

lineGetConfRelatedCalls

lineMakeCall

linePickup

linePrepareAddToConference

lineSetupTransfer

lineUnpark