Asterisk 如何更改每个中继的星号入站呼叫者ID

Asterisk 如何更改每个中继的星号入站呼叫者ID,asterisk,Asterisk,第一次发到这里,所以如果我弄错了,我道歉。我正在尝试用Asterisk实现一个扩展,它将在主干级别操纵呼叫者ID。 我发现了几乎相同的场景,并尝试实现建议的内容,但由于某些原因,它对我不起作用 我有两个箱子。一个在英国,一个在德国。我想修改传入的呼叫者ID,使其成为完整的国际呼叫者ID,而不考虑中继。例如,如果一个电话是从英国通过英国中继线打进来的,那么呼叫者ID是0123456789。我想做这个00441233456789。德国干线也是如此 到目前为止,我已经根据我的发现添加了以下内容 [gl

第一次发到这里,所以如果我弄错了,我道歉。我正在尝试用Asterisk实现一个扩展,它将在主干级别操纵呼叫者ID。 我发现了几乎相同的场景,并尝试实现建议的内容,但由于某些原因,它对我不起作用

我有两个箱子。一个在英国,一个在德国。我想修改传入的呼叫者ID,使其成为完整的国际呼叫者ID,而不考虑中继。例如,如果一个电话是从英国通过英国中继线打进来的,那么呼叫者ID是0123456789。我想做这个00441233456789。德国干线也是如此

到目前为止,我已经根据我的发现添加了以下内容

[globals]
DE_PREFIX=9876
UK_PREFIX=1234

[from-trunk-de-custom]
exten => _00X.,1,NoOp(Callerid is just fine)
exten => _0ZX.,1,Set(CALLERID(num)=00491${CALLERID(num):1})
exten => _ZX.,1,Set(CALLERID(num)=00492${DE_PREFIX}${CALLERID(num)})
exten => _X.,n,Goto(from-trunk,${EXTEN},1)
当我从德国电话号码(如0987654321)呼叫时,该号码被操纵为004920987654321

所以发生了两件我不明白的事情,号码在ZX上匹配。我希望它在ZX上匹配的行。线路。 其次,我希望添加DE_前缀,但这并没有发生


非常感谢您的帮助。

请尝试一下。您可以打个电话并将输出从控制台发送出去吗。您可能需要设置verbose3来查看数据。这些中继是IP中继还是“真实”中继?请阅读本书。扩展将根据DST编号而不是src进行匹配。完成任务的最简单方法是为每个主干创建不同的上下文。