web-dev-qa-db-ja.com

スタンドアロンアスタリスク上のWebRTC-音声なし

WebRTCのアスタリスクと数週間苦労した後、私は自分の問題をこのフォーラムに投稿することにしました。私の問題は次のとおりです:

WebRTCからWebRTCクライアントにオーディオを取得できません。私はLAN環境で働いています。

状況-スタンドアロンのAsteriskサーバーを使用したJSSIPからJSSIP(同じクライアント)への呼び出し

問題

6001(JSSIP)から6002(JSSIP)への通話を行うと、音声がまったく聞こえません。しばらくすると、RTPパケットが送信されますが、受信されません。RTPパケットがログファイルに表示されてから約40秒後、人間の行動なしに終了します。

両方のクライアントが同じコンピューター上にあり、どちらもグーグルクロム上にあり、一方がシークレットモードで実行されている。また、2つの異なるラップトップでテストしましたが、同じ結果が得られます。

誰かがこの問題の原因を知っていますか?私もこのスレッドをフォローしました: http://forums.digium.com/viewtopic.php?f=1&t=90167 ですが、これは私にとってはうまくいきませんでした。ログファイルと詳細については、以下をご覧ください。

同じ問題に関する複数の投稿のため、私がこの問題を解決しようとしたもの。

  • プロキシの背後でアスタリスクを実行(oversip)
  • メディアコーディングをオンおよびオフにして使用するwebrtc2sip
  • RTCwebbreakerでSipML5を使用、ビデオを無効化
  • アスタリスクをパブリックに設定します(WANアドレスとサーバーへのポート転送を使用して
  • CentOSでアスタリスクを実行する
  • 中古FireFox

アスタリスクサーバー:

  • OS:Ubuntu 14.04
  • バージョン:Asterisk 13.2およびFreePBX 12
  • IPアドレス:192.168.178.203
  • WebSocketポート:8088
  • SIPポート:5060

クライアント:

  • OS:Windows 8.1
  • ブラウザ:Chromeバージョン40.0.2214.115 m
  • IPアドレス:192.168.178.18

構成:

rtp.conf

[general]
rtpstart=10000
rtpend=20000
icesupport=yes
stunaddr=74.125.132.127:19302

http.conf

[general]
enabled=yes
enablestatic=no
bindaddr=0.0.0.0
bindport=8088

sip.conf

[general]
port=5060
bindaddr=192.168.178.203
transport=ws,wss,udp

[6001]
Host=dynamic
secret=6001
context=internal
type=friend
transport=ws,wss,udp
encryption=yes
avpf=yes
force_avp=yes
icesupport=yes
directmedia=outgoing
disallow=all
allow=opus,ulaw,vp8
dtlsenable=yes
dtlsverify=fingerprint
dtlscertfile=/etc/asterisk/keys/default.pem
dtlscafile=/etc/asterisk/keys/ca.crt
dtlssetup=actpass
nat=no

[6002]
Host=dynamic
secret=6002
context=internal
type=friend
transport=ws,wss,udp
encryption=yes
avpf=yes
force_avp=yes
icesupport=yes
directmedia=outgoing
disallow=all
allow=opus,ulaw,vp8
dtlsenable=yes
dtlsverify=fingerprint
dtlscertfile=/etc/asterisk/keys/default.pem
dtlscafile=/etc/asterisk/keys/ca.crt
dtlssetup=actpass
nat=no

extensions.conf

[internal]
exten => 6001,1,Dial(SIP/6001)
exten => 6002,1,Dial(SIP/6002)

ロギング

ここの完全なサーバーログ: http://Pastebin.com/qHwzXbbd

sipおよびrtpデバッグをオンにしたサーバーのロギングの一部

<------------>
Scheduling destruction of SIP dialog '0vreoff3cjblcgubthf1df' in 32000 ms (Method: REGISTER)

<--- SIP read from WS:192.168.178.18:55387 --->
INVITE sip:[email protected]:5060 SIP/2.0
Via: SIP/2.0/WS 1t4mt0723j5t.invalid;branch=z9hG4bK7239492
Max-Forwards: 69
To: <sip:[email protected]:5060>
From: "6001" <sip:[email protected]:5060>;tag=lq9ascrlba
Call-ID: sf6m6uln2amn2lhuuvia
CSeq: 7253 INVITE
X-Can-Renegotiate: undefined
Contact: <sip:[email protected];transport=ws;ob>
Content-Type: application/sdp
Session-Expires: 90
Allow: INVITE,ACK,CANCEL,BYE,UPDATE,MESSAGE,OPTIONS
Supported: timer,ice,outbound
User-Agent: JsSIP 0.6.18
Content-Length: 4710

v=0
o=- 5530171873894353207 2 IN IP4 127.0.0.1
s=-
t=0 0
a=group:BUNDLE audio video
a=msid-semantic: WMS bEWKeIMVkeE6PTP0lgDPhtJoGfmy7MeXYx0v
m=audio 62227 RTP/SAVPF 111 103 104 9 0 8 106 105 13 126
c=IN IP4 192.168.12.1
a=rtcp:62227 IN IP4 192.168.12.1
a=candidate:3708951358 1 udp 2122129151 192.168.12.1 62227 typ Host generation 0
a=candidate:3708951358 2 udp 2122129151 192.168.12.1 62227 typ Host generation 0
a=candidate:3242410012 1 udp 2122063615 25.124.74.215 62228 typ Host generation 0
a=candidate:3242410012 2 udp 2122063615 25.124.74.215 62228 typ Host generation 0
a=candidate:1867667642 1 udp 2121998079 192.168.254.1 62229 typ Host generation 0
a=candidate:1867667642 2 udp 2121998079 192.168.254.1 62229 typ Host generation 0
a=candidate:1340102981 1 udp 2121932543 192.168.178.18 62230 typ Host generation 0
a=candidate:1340102981 2 udp 2121932543 192.168.178.18 62230 typ Host generation 0
a=candidate:2475812814 1 tcp 1518149375 192.168.12.1 0 typ Host tcptype active generation 0
a=candidate:2475812814 2 tcp 1518149375 192.168.12.1 0 typ Host tcptype active generation 0
a=candidate:2411773164 1 tcp 1518083839 25.124.74.215 0 typ Host tcptype active generation 0
a=candidate:2411773164 2 tcp 1518083839 25.124.74.215 0 typ Host tcptype active generation 0
a=candidate:567387210 1 tcp 1518018303 192.168.254.1 0 typ Host tcptype active generation 0
a=candidate:567387210 2 tcp 1518018303 192.168.254.1 0 typ Host tcptype active generation 0
a=candidate:23307701 1 tcp 1517952767 192.168.178.18 0 typ Host tcptype active generation 0
a=candidate:23307701 2 tcp 1517952767 192.168.178.18 0 typ Host tcptype active generation 0
a=ice-ufrag:KUz2P70p6fRKTNhU
a=ice-pwd:uSSZZuV537KDmpbtSzusDKLK
a=ice-options:google-ice
a=fingerprint:sha-256 E8:85:6A:27:CF:E0:50:A7:4B:E5:4D:25:70:76:D4:F1:5D:8D:79:93:40:4B:2E:6B:40:1D:F0:35:B9:38:56:E3
a=setup:actpass
a=mid:audio
a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level
a=extmap:3 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time
a=sendrecv
a=rtcp-mux
a=rtpmap:111 opus/48000/2
a=fmtp:111 minptime=10
a=rtpmap:103 ISAC/16000
a=rtpmap:104 ISAC/32000
a=rtpmap:9 G722/8000
a=rtpmap:0 PCMU/8000
a=rtpmap:8 PCMA/8000
a=rtpmap:106 CN/32000
a=rtpmap:105 CN/16000
a=rtpmap:13 CN/8000
a=rtpmap:126 telephone-event/8000
a=maxptime:60
a=ssrc:831281522 cname:+qS2XmtyXWZX3uFI
a=ssrc:831281522 msid:bEWKeIMVkeE6PTP0lgDPhtJoGfmy7MeXYx0v dc973b27-9b15-4cdd-bbf8-80807c4d3b1d
a=ssrc:831281522 mslabel:bEWKeIMVkeE6PTP0lgDPhtJoGfmy7MeXYx0v
a=ssrc:831281522 label:dc973b27-9b15-4cdd-bbf8-80807c4d3b1d
m=video 62227 RTP/SAVPF 100 116 117 96
c=IN IP4 192.168.12.1
a=rtcp:62227 IN IP4 192.168.12.1
a=candidate:3708951358 1 udp 2122129151 192.168.12.1 62227 typ Host generation 0
a=candidate:3708951358 2 udp 2122129151 192.168.12.1 62227 typ Host generation 0
a=candidate:3242410012 1 udp 2122063615 25.124.74.215 62228 typ Host generation 0
a=candidate:3242410012 2 udp 2122063615 25.124.74.215 62228 typ Host generation 0
a=candidate:1867667642 1 udp 2121998079 192.168.254.1 62229 typ Host generation 0
a=candidate:1867667642 2 udp 2121998079 192.168.254.1 62229 typ Host generation 0
a=candidate:1340102981 1 udp 2121932543 192.168.178.18 62230 typ Host generation 0
a=candidate:1340102981 2 udp 2121932543 192.168.178.18 62230 typ Host generation 0
a=candidate:2475812814 1 tcp 1518149375 192.168.12.1 0 typ Host tcptype active generation 0
a=candidate:2475812814 2 tcp 1518149375 192.168.12.1 0 typ Host tcptype active generation 0
a=candidate:2411773164 1 tcp 1518083839 25.124.74.215 0 typ Host tcptype active generation 0
a=candidate:2411773164 2 tcp 1518083839 25.124.74.215 0 typ Host tcptype active generation 0
a=candidate:567387210 1 tcp 1518018303 192.168.254.1 0 typ Host tcptype active generation 0
a=candidate:567387210 2 tcp 1518018303 192.168.254.1 0 typ Host tcptype active generation 0
a=candidate:23307701 1 tcp 1517952767 192.168.178.18 0 typ Host tcptype active generation 0
a=candidate:23307701 2 tcp 1517952767 192.168.178.18 0 typ Host tcptype active generation 0
a=ice-ufrag:KUz2P70p6fRKTNhU
a=ice-pwd:uSSZZuV537KDmpbtSzusDKLK
a=ice-options:google-ice
a=fingerprint:sha-256 E8:85:6A:27:CF:E0:50:A7:4B:E5:4D:25:70:76:D4:F1:5D:8D:79:93:40:4B:2E:6B:40:1D:F0:35:B9:38:56:E3
a=setup:actpass
a=mid:video
a=extmap:2 urn:ietf:params:rtp-hdrext:toffset
a=extmap:3 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time
a=recvonly
a=rtcp-mux
a=rtpmap:100 VP8/90000
a=rtcp-fb:100 ccm fir
a=rtcp-fb:100 nack
a=rtcp-fb:100 nack pli
a=rtcp-fb:100 goog-remb
a=rtpmap:116 red/90000
a=rtpmap:117 ulpfec/90000
a=rtpmap:96 rtx/90000
a=fmtp:96 apt=100
<------------->
--- (15 headers 89 lines) ---
Using INVITE request as basis request - sf6m6uln2amn2lhuuvia
Found peer '6001' for '6001' from 192.168.178.18:55387

<--- Reliably Transmitting (no NAT) to 192.168.178.18:5060 --->
SIP/2.0 401 Unauthorized
Via: SIP/2.0/WS 1t4mt0723j5t.invalid;branch=z9hG4bK7239492;received=192.168.178.18
From: "6001" <sip:[email protected]:5060>;tag=lq9ascrlba
To: <sip:[email protected]:5060>;tag=as6ed0dbe4
Call-ID: sf6m6uln2amn2lhuuvia
CSeq: 7253 INVITE
Server: FPBX-12.0.37(13.431072M)
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH, MESSAGE
Supported: replaces, timer
WWW-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="263201da"
Content-Length: 0
<------------>
10:57:50.828 utsx0x7f967800  ...STUN client transaction created
10:57:50.828 utsx0x7f967800  ...STUN sending message (transmit count=1)
10:57:50.828 icess0x7f970c0  ..Check 7: [2] 192.168.178.203:18141-->192.168.178.18:62230: state changed from Frozen to In Progress
10:57:50.839 utsx0x7f967800  STUN sending message (transmit count=2)
10:57:50.839 utsx0x7f967800  STUN sending message (transmit count=2)
10:57:50.850 icess0x7f970c0  Starting checklist periodic check
10:57:50.851 icess0x7f970c0  Starting checklist periodic check
10:57:50.861 utsx0x7f967800  STUN sending message (transmit count=2)
10:57:50.862 utsx0x7f967800  STUN sending message (transmit count=2)

10:57:53.770 stuse0x7f96fc0  ..TX 80 bytes STUN message to 192.168.178.18:62261:
--- begin STUN message ---
STUN Binding success response
Hdr: length=60, magic=2112a442, tsx_id=6d4d564652372f537652314a
Attributes:
  XOR-MAPPED-ADDRESS: length=8, IPv4 addr=192.168.178.18:62261
  SOFTWARE: length=12, value="pjnath-2.3.0"
  MESSAGE-INTEGRITY: length=20, data=0204b9b98f375d27e045e50bd034f1ce99288e06
  FINGERPRINT: length=4, value=1908015627 (0x71ba020b)
--- end of STUN message ---

10:57:55.586 utsx0x7f96f800  .....STUN client transaction created
10:57:55.586 utsx0x7f96f800  .....STUN sending message (transmit count=1)
10:57:55.586 icess0x7f96fc0  ....Check 7: [2] 192.168.178.203:13265-->192.168.178.18:62253: state changed from Frozen to In Progress
10:57:55.586 icess0x7f96fc0  .Performing delayed triggerred check for component 1
10:57:55.586 icess0x7f96fc0  ..Triggered check for check 6 not performed because it's in progress. Retransmitting
10:57:55.586 utsx0x7f96f801  ...STUN sending message (transmit count=1)
10:57:55.586 icess0x7f96fc0  .Performing delayed triggerred check for component 2
10:57:55.586 icess0x7f96fc0  ..Triggered check for check 7 not performed because it's in progress. Retransmitting

10:58:41.301 icess0x7f96fc0  .Triggered check for check 7 not performed because it's completed
10:58:41.301 icess0x7f96fc0  ..Check 7 is successful  and nominated
Sent RTP packet to      192.168.178.18:62249 (via ICE) (type 00, seq 020194, ts 004320, len 000160)
Sent RTP packet to      192.168.178.18:62249 (via ICE) (type 00, seq 020195, ts 004480, len 000160)
10:58:41.509 stuse0x7f970c0 !Response cache deleted
10:58:41.509 stun_session.c  tdata 0x7f96fc02cac8 destroy request, force=0, tsx=(nil)
Sent RTP packet to      192.168.178.18:62249 (via ICE) (type 00, seq 020204, ts 005920, len 000160)
10:58:41.519 stuse0x7f970c0  Response cache deleted

誰かが私をある方向に向けることができるか、誰かが同じ問題に遭遇し、彼らの知識を喜んで共有してくれることを願っています。

詳細については、お気軽にお問い合わせください。

前もって感謝します。

7
Haije Ploeg

設定とコールセットアップは問題ありません。 200 OK応答は非常に重要です。また、ブラウザーでwebrtcログを有効にし、それを確認(またはここで送信)して、実際に(DTLSエンコードされた)SRTPの送信先を確認できるようにする必要があります。

アスタリスク13でのWebRTC設定 についての詳細な説明を以下に示します。

また、デフォルトでは、SIPシグナリング。

1
Istvan