我在哪里可以看到Asterisk AMI执行的“Originate”命令

时间:2012-06-29 17:49:01

标签: asterisk asteriskami

我正在调整简单的应用程序,除其他外应该能够使用Asterisk AMI Originate命令调用另一方。

我被困住了,我相信我的原始命令是错误的。

当我使用普通手机时,我在哪里/如何看到Asterisk创建的Originate命令的日志,以便将其与我手工制作的手机进行比较?

1 个答案:

答案 0 :(得分:1)

使用网络嗅探器,例如tcpdumpwireshark,并捕获进出星号的数据包。默认情况下,它使用5038 / tcp。检查您的manager.conf文件,然后查找 bindaddr 端口选项,以确保捕获正确的流量。

如果你正在使用ssl(sslenable = yes),那么你必须使用你的ssl密钥配置wireshark,这样它就可以解密流量或只是使用普通的tcp(没有ssl)进行调试,然后切换到ssl。 / p>

您应该看到操作:源头进入星号,星号响应和相关事件。查找操作的 ActionID 参数,以便跟踪哪些响应和事件对应于每个已发布的操作。

考虑到星号接收到操作后异步发起(async:true)将返回响应,但它会发送异步事件以通知呼叫状态(一旦完成)。另一方面,当使用async:false时,将调用该调用并且响应将具有状态。

关于原始行动的更多资源:

与async参数相关的另一个问题: Asterisk originate response says successfully queued but nothing more

希望它有所帮助!

编辑:Asterisk不会创建originate命令,但会根据传入的源操作拨打目标(频道),或call file,因此您的应用程序(ami客户端) )将发出原始动作,然后星号将通过拨打电话对其作出反应。如果您的通话来自手机,则更有可能通过dial()中的dialplan命令发起通话。