【问题标题】:app_dial.c: dial_exec_full Unable to create channel type SIP (cause 20 Unknown)app_dial.c: dial_exec_full 无法创建通道类型 SIP(​​原因 20 未知)
【发布时间】:2014-04-01 08:13:12
【问题描述】:

我第一次尝试在我的 Ubuntu Linux 机器上配置星号。我安装了星号并在执行以下命令时在我的终端中得到了这个...

root@ubuntu:~# asterisk -r
Asterisk 1.8.4.4~dfsg-2ubuntu1.1, Copyright (C) 1999 - 2010 Digium, Inc. and others.
Created by Mark Spencer <markster@digium.com>
Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type 'core show license' for details.
 =========================================================================
Connected to Asterisk 1.8.4.4~dfsg-2ubuntu1.1 currently running on ubuntu (pid = 1062)
ubuntu*CLI> 

现在我已经更新了sip.conf 关注..

[general]
port = 5060
bindaddr = 0.0.0.0
context = others

[2000]
type=friend
context=my-phones
secret=1234
host=dynamic

[2001]
type=friend
context=my-phones
secret=1234
host=dynamic

这是我的extensions.conf

[others]

[my-phones]
exten => 2000,1,Dial(SIP/2000)
exten => 2001,1,Dial(SIP/2001) 

现在出于测试目的,我下载了Twinkle 软电话并尝试使用用户名2000 和域Localhost 配置扩展名2000。 现在我在上面注册后,我尝试从 Twinkle 调用 Extension 2001,但它在 Asterisk CLI 中给出了以下错误。..

 [Apr  1 03:49:58] WARNING[2301]: app_dial.c:2041 dial_exec_full: Unable to create   channel of type 'SIP' (cause 20 - Unknown)

这里是命令sip show peers 导致终端..

  Name/username              Host                                    Dyn Forcerport ACL Port     Status     
  2000/2000                  127.0.0.1                                D          5061     Unmonitored 
  2001                       (Unspecified)                            D          0        Unmonitored 
  2 sip peers [Monitored: 0 online, 0 offline Unmonitored: 1 online, 1 offline]

Sip 注册也显示为零..

ubuntu*CLI> sip show registry
Host                                    dnsmgr Username       Refresh    State                Reg.Time                 
0 SIP registrations.

这都是关于我的问题..我对星号和 Linux 都非常陌生,并且在这种情况下受到了严重打击。 请帮我解决这个问题。

【问题讨论】:

    标签: linux ubuntu sip asterisk


    【解决方案1】:

    您收到此错误是因为 2001 未在任何地方注册。

    在另一个软电话中注册 2001 并尝试。

    【讨论】:

    • 我是否需要在不同电脑上安装的不同软电话中注册 2001 以及为什么我收到 0 个 SIP 注册消息
    【解决方案2】:
    • sip show registration 显示为零
    • sip show peer 已显示您手机的 ip 在对等点 2001 附近。

    所以您需要在星号上注册您的软件电话/电话。

    考虑到您的问题水平,我建议您阅读星号书。我建议您阅读 ORelly 的“Asterisk The Future of Telephony”。

    【讨论】:

      【解决方案3】:

      第 1 步 - 从软件电话中注销用户 2001

      第 2 步 - 再次注册用户 2001,保持您的星号服务器。

      【讨论】:

        【解决方案4】:

        我知道这已经过时了,但对于那些研究同样问题的人来说:

        @moonstruck 提供了唯一正确的答案。

        OP 配置了 2 个 SIP 扩展,但只使用了 1 个 SIP 客户端 (2000) 来连接星号。
        显然,必须先将 2 个 SIP 客户端连接到星号,然后才能在它们之间路由呼叫。

        sip show registry 列出SIP 服务器之间的注册。它与 SIP 客户端无关。

        【讨论】:

          【解决方案5】:

          几天以来,我一直在寻找这个问题的解决方案,但在网上的任何地方都找不到单一的解决方案。所以我做了自己的研究,发现了以下有趣的事实:-

          发现:-

          1. 我有 13 个扩展,它们都是我定义的每个队列的一部分。一次只有 4 到 5 个分机登录(在线)。
          2. 只要有呼入呼叫到达队列,队列就会开始搜索所有 13 个分机。这是 Asterisk 显示此错误的时间。
          3. 星号一次显示多个错误。某一特定时间的错误总数可按以下公式定义:

          单次显示的错误数 = 该队列中的总分机数 - 在线分机数

          1. 我用不同数量的扩展尝试了这种现象,每次都发现公式是正确的。
          2. 出现此错误,系统在保持平稳运行方面完全没有问题。

          建议:-

          我建议保持系统运行并忍受此错误,除非有人找到解决这些烦人错误的方法。不要看我;这是我第一次使用 Asterisk 和 FreePBX。 :)

          【讨论】:

            猜你喜欢
            • 2012-12-02
            • 2012-12-04
            • 2021-02-09
            • 2021-06-17
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2011-09-03
            相关资源
            最近更新 更多