0

jssip/sipjs ライブラリを使用して通話中にドロップアウトが発生します。音声もありません。以下はjavascriptコンソールに表示されます。

====
Fri Apr 04 2014 10:14:30 GMT+0530 (IST) | sip.sanitycheck | Via sent-by in the response does not match UA Via host value. Dropping the response sip-0.5.0.js:170
Fri Apr 04 2014 10:14:34 GMT+0530 (IST) | sip.sanitycheck | Via sent-by in the response does not match UA Via host value. Dropping the response sip-0.5.0.js:170
Fri Apr 04 2014 10:14:38 GMT+0530 (IST) | sip.sanitycheck | Via sent-by in the response does not match UA Via host value. Dropping the response sip-0.5.0.js:170
Fri Apr 04 2014 10:14:42 GMT+0530 (IST) | sip.sanitycheck | Via sent-by in the response does not match UA Via host value. Dropping the response sip-0.5.0.js:170

セットアップには、アスタリスク サーバーと webrtc サービスが含まれます。

以下は、テストに使用しているサンプルの html ページです。

<!DOCTYPE html>
<html>
<head>
<!-- <script type="text/javascript" src="SIPml-api.js"></script> -->
</head>

<body>
Hello woirld
<video id="remoteVideo"></video>
    <video id="localVideo" muted="muted"></video> 
  <button type="button" id="endButton">End</button>  
<button type="button" id="callButton">Call</button>
</body>
<script type="text/javascript" src="sip-0.5.0.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script type="text/javascript">

(function () {
  var session;

  function onAccepted () {
    alert("You made a call!");
  }

var userAgent = new SIP.UA({
  uri: 'sip:100@X.X.X.X',
//  wsServers: ['ws://mywebrtc.com:10060'],
  wsServers: ['wss://mywebrtc.com:10062'],
  authorizationUser: '100',
  password: '1234'
});


$( document ).ready(function() {

  var endButton = document.getElementById('endButton');
  endButton.addEventListener("click", function() {
    session.bye();
    alert("Call Ended");
}, false);

});


  //here you determine whether the call has video and audio
  var options = {
    mediaConstraints: {
      audio: true,
      video: true
    }
  };
  //makes the call
  session = userAgent.invite('111', options);
  session.on('accepted', onAccepted);

}) ();



</script>
</html>

=====

誰かがこれについて私を助けることができますか?

4

1 に答える 1

0

あなたのコードから以下を置き換えてみてください

<video id="remoteVideo"></video>
    <video id="localVideo" muted="muted"></video>

<audio  id="remoteAudio"></audio>
    <audio  id="localAudio" muted="muted"></audio>

 //here you determine whether the call has video and audio
      var options = {
        mediaConstraints: {
          audio: true,
          video: true
        }
      };

//ここで、通話にビデオとオーディオがあるかどうかを判断します

var options = {

                 media: {
                          constraints: {
                                         audio: true,
                                         video: false,
                                       },
                          render: {
                                    remote: {
                                               audio: document.getElementById('remoteAudio')
                                            },

                                    local:  {
                                               audio: document.getElementById('localAudio')
                                            }
                                  }
                       }
};

Asterisk 11.11.0、Firefox 31.0、Opera 22.0.1471.70 でテストしました。音声通話は正常に機能しています。最新の chrome ブラウザー (バージョン 37.0.2062.58 beta-m (64 ビット)) では音声の問題は発生しません。それ以外の場合は、魅力のように機能します。

もう 1 つ、Asterisk は vp8 コーデックをサポートしていないため、ビデオは機能しません。Asterisk 12 は、パススルー モードで vp8 コーデックをサポートします。この機能はまだテストしていません。

于 2014-08-01T12:13:33.957 に答える