【问题标题】:Asterisk AMI originate callAsterisk AMI 发起呼叫
【发布时间】:2015-01-26 11:26:24
【问题描述】:

我已经用 cisco 适配器配置了模拟本地电话,所以我可以从 SIP 电话拨打任何呼出电话。但我无法通过 AMI 实现这一点,它通过中继调用出站通道然后播放提示。
manager.conf:

[asteriskjava]
secret = asteriskjava  
deny = 0.0.0.0/0.0.0.0  
permit = 127.0.0.1/255.255.255.0  
read = all  
write = all  

extensions.conf

[bulk]
exten => 8,1,Playback(thank-you-cooperation)
exten => h,1,Hangup  

source code

public class HelloManager
 {
    private ManagerConnection managerConnection;

    public HelloManager() throws IOException
    {
      ManagerConnectionFactory factory = new ManagerConnectionFactory(
            "localhost", "asteriskjava", "asteriskjava");

      this.managerConnection = factory.createManagerConnection();
    }

    public void run() throws IOException, AuthenticationFailedException,
        TimeoutException
    {
      OriginateAction originateAction;
      ManagerResponse originateResponse;

      originateAction = new OriginateAction();
      originateAction.setChannel("SIP/405/7000000");
      originateAction.setContext("bulk");
      originateAction.setExten("8");
      originateAction.setPriority(new Integer(1));
      originateAction.setAsync(true);

      // connect to Asterisk and log in
      managerConnection.login();

      // send the originate action and wait for a maximum of 30 seconds for Asterisk
      // to send a reply
      originateResponse = managerConnection.sendAction(originateAction, 30000);

      // print out whether the originate succeeded or not
      System.out.println("---" + originateResponse.getResponse());

      // and finally log off and disconnect
      managerConnection.logoff();
    }
}  

其中405 是用于拨出呼叫的 CISCO 适配器的用户 ID,7000000 是示例手机号码。

这里是日志:

== Manager 'asteriskjava' logged on from 127.0.0.1
    == Manager 'asteriskjava' logged off from 127.0.0.1
    == Using SIP RTP CoS mark 5
         > Channel SIP/405-0000000c was answered.
      -- Executing [8@bulk:1] Playback("SIP/405-0000000c", "thank-you-cooperation") in new stack
      -- <SIP/405-0000000c> Playing 'thank-you-cooperation.gsm' (language 'en')
      -- Auto fallthrough, channel 'SIP/405-0000000c' status is 'UNKNOWN'
      -- Executing [h@bulk:1] Hangup("SIP/405-0000000c", "") in new stack
    == Spawn extension (bulk, h, 1) exited non-zero on 'SIP/405-0000000c'  

我认为SIP/405 正在接听,执行Playback 然后挂断,而不是重定向到样本号。
有什么建议?

编辑:如何配置我的 cisco 适配器以重定向拨出电话,而不是接听和建立桥接?

【问题讨论】:

    标签: java asterisk cisco asteriskami


    【解决方案1】:

    您已在 ATA 上配置响铃、接听和忙碌识别。

    就我从您的跟踪中看到的而言,Asterisk 可以按照您的要求工作。

    如果适配器没有调用,您已经检查了您的适配器设置。例如,它可以是音调,为什么你的线路期望它是脉冲。

    也可能是您任务的不正确适配器类型。通过 PSTN 线路呼出需要 FXO 适配器,而不是 FXS。

    【讨论】:

    • 适配器正在呼叫手机,但在此之前它会响应星号呼叫然后尝试重定向。但是星号管理器从适配器获得响应(它是 ANSWERING),然后播放提示。现在我想问一下是否可以配置适配器只是重定向呼叫而不是先应答。 CISCO型号为:SPA3102-NA
    • 我不知道您尝试重定向的时间和地点。 3102 是模拟适配器。它不会做任何重定向
    • SPA3102能否将参数发送到对方应答、失败或挂断的星号
    • 是的,如果已配置。如果这不起作用,您可以在 3102 web 中检查 FXO 线路上的参数。
    • 你能告诉我如何配置,或者给我一个链接。我看过一些论坛,这是不可能的。但我相信没有什么是不可能的)))。提前感谢
    猜你喜欢
    • 2020-04-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多