使用 Asterisk CLI 通道发起命令设置 callerID

问题描述 投票:0回答:2

我正在尝试在 Asterisk 中自动进行呼叫。第一步,我尝试通过 Asterisk CLI 拨打电话。然后我将通过 bash 脚本实现自动化。我想设置callerID并通过SIP Trunk拨打电话。我可以使用以下命令拨打电话。我如何在此命令中设置 callerID。

channel originate SIP/commpeak/${callingNumber}

我尝试了给定的命令,但它没有设置来电显示,但已拨打电话

channel originate SIP/commpeak/yyyyy  Application Set(CALLERID(number)=xxxx
asterisk sip
2个回答
0
投票

您可以通过本地渠道呼叫(通过拨号方案呼叫,而不是 sip)或使用上下文、分机、优先级作为命令的目的地(第二条腿)。

https://wiki.asterisk.org/wiki/display/AST/Local+Channel


0
投票

cli 上的频道发起命令不允许设置呼叫者 ID,您显示的命令示例的工作原理如下:

星号用

SIP/commpeak/yyyyy
发起一个频道,并在频道被应答后开始“拨号”该频道,然后执行
Application
选项。因此,执行该操作后,不允许在频道发起之前设置呼叫者 ID。

正如@arheops所说,您可以使用originate cli命令:

channel orignate Local/yyyy@context application Echo

在您的

extensions.conf
文件中,您必须创建一个上下文(拨号计划)来定义要执行的规则/步骤,例如:

[context]
exten=> _X.,1,Set(CALLERID(num)=xxxxx)
 same=> n,Dial(SIP/commpeak/${EXTEN},35,rT)
 same=> n,Hangup

还有另一种方式使用

Originate
方法,如
AMI
(Asterisk Manager Interface)服务、
call
文件等

希望这能让人一目了然

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.