Asterisk Dialplan AGI脚本未执行(可能存在Asterisk权限问题?)

时间:2018-11-26 14:14:34

标签: asterisk

我的星号出现异常情况。

首先,该机器是运行Asterisk 15.4.0的FreePBX 14

我有一个拨号计划,该计划使用IVR获取卡的详细信息,即输入卡号,然后输入哈希键。

然后将整个字符串放在一起以执行单独的Perl脚本,该脚本将向客户卡收取所请求的金额。

如果我从CLI运行perl脚本,该脚本将正常执行并为卡充值。

如果我仔细查看一下拨号计划,提供有关卡的详细信息,当它最终执行脚本时,一切似乎都可以正常工作,但是就卡的充电而言什么也没发生。

为了查看AGI脚本正在运行并查看发生了什么问题,我以root用户身份以“ asterisk -vvvvvc”身份运行asterisk,然后再次执行相同的操作,付款就可以了,并且可以正常工作。

这使我相信,当以(asterisk -vvvc)的形式运行星号时,它将以提升的权限运行,从而允许脚本正常运行。

关于如何使它正常工作或需要修复哪些权限的任何想法。

该脚本设置为0777,因此所有内容都应可执行,并且我还将该脚本设置为由星号和root拥有,这没什么区别。

这是我在拨号计划中用来调用脚本的命令。

exten=>50000,n,AGI(MakePayment.agi,${CardVar},${ExpMonth},${ExpYear},${SecurityVar},${Value},${TransID})

尽管所做的只是将其传递给perl脚本。

如前所述,我不认为拨号方案或脚本不会出现问题,而是两者之间相互影响的问题。

1 个答案:

答案 0 :(得分:0)

以防万一将来有人遇到与此类似的问题,该问题很可能是由于我使用的Stripe(付款服务器)CLI程序造成的,它不喜欢在原来的脚本中运行而不是在普通终端中进行解释,解释了为什么在两种情况下都可以使用,但在拨号方案中却不能使用。