0

我正在尝试为家庭使用创建某种电话网关,如果我拨打我的号码,我可以拨打我已经定义的号码列表。我已经对其进行了身份验证,这是我的 extensions.conf 的示例:

exten => s,n,Background(${sdir}/dial-exten-tone)
exten => s,n,WaitExten()
exten => *8,1,Authenticate(5)
exten => *8,2,Goto(private-gateway,s,1)

[private-gateway]
exten => s,1,Background(${sdir}/ent-target-attendant)
exten => s,2,WaitExten()
exten => s,n,NoOp(${EXT})
exten => 100XXX,n,Goto(local-users,${EXTEN},1)

这个想法是拨打我的私人号码,按 8,然后通过 5 进行身份验证,然后进入私人网关上下文,能够呼叫本地用户。不幸的是,只要我在私有网关上下文中按下任何数字,我就会收到以下警告:

    -- Executing [*8@netlife-ivr:1] Authenticate("Datacard/life6464-b4b9", "5") in new stack
    -- <Datacard/life6464-b4b9> Playing 'agent-pass.gsm' (language 'en')
    -- <Datacard/life6464-b4b9> Playing 'auth-incorrect.gsm' (language 'en')
    -- <Datacard/life6464-b4b9> Playing 'auth-thankyou.gsm' (language 'en')
    -- Executing [*8@netlife-ivr:2] Goto("Datacard/life6464-b4b9", "private-gateway,s,1") in new stack
    -- Goto (private-gateway,s,1)
    -- Executing [s@private-gateway:1] BackGround("Datacard/life6464-b4b9", ""/var/lib/asterisk/sounds/ru/"/ent-target-attendant") in new stack
    -- <Datacard/life6464-b4b9> Playing '/var/lib/asterisk/sounds/ru//ent-target-attendant.slin' (language 'en')
    -- Executing [s@private-gateway:2] WaitExten("Datacard/life6464-b4b9", "") in new stack
[Aug 14 12:37:55] WARNING[27531]: pbx.c:4902 __ast_pbx_run: Invalid extension '1', but no rule 'i' or 'e' in context 'private-gateway'

这意味着 - 它不等待整数,而是等待第一个。我究竟做错了什么?

4

1 回答 1

2

使用 Asterisk 的应用程序 Disa() - 这应该做你想要的

于 2011-11-10T16:44:31.943 回答