确定呼叫是否处于暂停状态

时间:2013-02-01 15:46:40

标签: sip asterisk pbx

有没有办法(在拨号方案中,或通过一些AMI动作)确定某个频道是否处于暂停状态?

可以使用

ChanIsAvail(<some channel ID>),但没有“暂停”状态。保留的通话状态为AST_STATE_UP

2 个答案:

答案 0 :(得分:1)

不,没有办法。

但是你可以通过AMI设置事件监听器并使用它来保存这种状态(数据库)。

http://www.voip-info.org/wiki/view/asterisk+manager+events

答案 1 :(得分:1)

看一下Asterisk func device_State

  

DEVICE_STATE(device)两种用途的可能值   功能是:UNKNOWN | NOT_INUSE | INUSE |忙碌|无效|   无法使用|环| RINGINUSE | ONHOLD

http://www.voip-info.org/wiki/view/Asterisk+func+device_State

如果您可以从频道中提取设备名称(应该可以),则可以检查相关设备的状态。

希望这会有所帮助。如果没有,如果您可以提供有关您的用例的更多信息,我可能会想出一个不同的解决方案。