首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >呼叫SipJs到Asterisk 12

呼叫SipJs到Asterisk 12
EN

Stack Overflow用户
提问于 2014-08-01 18:31:57
回答 1查看 4.2K关注 0票数 1

我试着从SIpJs给Asterisk 12打电话。我的同伴在这里。

代码语言:javascript
复制
[6002]
type=friend
secret=6002
host=dynamic
context=public
transport=ws
avpf=yes
icesupport=no
encryption = no

我的JsSip代码在这里

代码语言:javascript
复制
  var configuration = {
            'ws_servers': 'ws://192.168.0.102:8088/ws',
            'uri': 'sip:6002@192.168.0.102',
            'password': '6002'
        };
var options = {
            'eventHandlers': eventHandlers,
            'mediaConstraints': {'audio': true, 'video': false}
        };

        function call() {
            coolPhone.call('sip:6003@192.168.0.102', options);
        }

它被正确注册,但是当我调用" call“函数时,asterisk记录了这个错误

代码语言:javascript
复制
 Rejecting secure audio stream without encryption details: audio 46421 RTP/SAVPF 111 103 104 0 8 106 105 13 126

JSSIp错误出现在此处

调用失败,原因: SDP不兼容

有人能帮我吗?

EN

回答 1

Stack Overflow用户

发布于 2014-09-09 05:25:47

首先,您需要为DTLS创建证书。然后从您的每个对等点启用DTLS。

使用以下命令创建证书。(将X.X替换为您的asterisk服务器IP)

代码语言:javascript
复制
mkdir /etc/asterisk/keys
cd ${ASTERISKSOURCE_PATH}/contrib/scripts/
./ast_tls_cert -C X.X.X.X -O "My Super Company" -d /etc/asterisk/keys

然后将以下密钥添加到您的同级中:

代码语言:javascript
复制
dtlsenable=yes ; Tell Asterisk to enable DTLS for this peer
dtlsverify=no ; Tell Asterisk to not verify your DTLS certs
dtlscertfile=/etc/asterisk/keys/asterisk.pem ; Tell Asterisk where your DTLS cert file is
dtlsprivatekey=/etc/asterisk/keys/asterisk.pem ; Tell Asterisk where your DTLS private key is
dtlssetup=actpass ; Tell Asterisk to use actpass SDP parameter when setting up DTLS
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25078258

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档