Internet explorer internet explorer中的webrtc4all

Internet explorer internet explorer中的webrtc4all,internet-explorer,sip,webrtc,Internet Explorer,Sip,Webrtc,我正在尝试使用WebRTC()实现对SIP服务器的调用,它在google chrome上运行良好,但是我需要在Internet Explorer上运行它 甚至sipml5的演示页面在IE上也不起作用 我在下面的链接()中提到可以使用'webrtc4all\u windows\u 1\u 35\u 981(stable).sfx.exe' 即使在安装了上面的“exe”之后,也没有任何效果。还有如何在IE中调试,类似于使用chrome的开发工具 请找到我下面的代码示例,它在Google chrome

我正在尝试使用WebRTC()实现对SIP服务器的调用,它在google chrome上运行良好,但是我需要在Internet Explorer上运行它

甚至sipml5的演示页面在IE上也不起作用

我在下面的链接()中提到可以使用
'webrtc4all\u windows\u 1\u 35\u 981(stable).sfx.exe'

即使在安装了上面的“exe”之后,也没有任何效果。还有如何在IE中调试,类似于使用chrome的开发工具

请找到我下面的代码示例,它在Google chrome上运行得非常好

<!DOCTYPE html>
<html>
<head>
    <title>A Web to SIP call demo</title>
    <script src="SIPml-api.js?svn=179" type="text/javascript"> </script>
    <script type="text/javascript" >

        var sipStack;
        var eventsListener = function (e) {
            console.info('eventsListener ::::::::::::::::::::::::::::::::::: session event = ' + e.type);
            if (e.type == 'started') {
                login();
                txtCallStatus.innerHTML = "Connected.";
            }
            else if (e.type == 'i_new_message') { // incoming new SIP MESSAGE (SMS-like)
                acceptMessage(e);
            }
            else if (e.type == 'i_new_call') { // incoming audio/video call
                acceptCall(e);
            }
            else if (e.type == 'connecting') {
                txtCallStatus.innerHTML = "connecting.....";
            }
            else if (e.type == 'i_ao_request') {
                txtCallStatus.innerHTML = "ringing...";
            }
            else if (e.type == 'connected') {
                txtCallStatus.innerHTML = "connected";
            }
            else if (e.type == 'terminated') {
                txtCallStatus.innerHTML = "terminated";
            }

        }

        function createSipStack() {
            var ext = extension.value;
            if (ext == null || ext == '')
            {
                alert('null');
                ext = '5555';
            }
            sipStack = new SIPml.Stack({
                realm: '--myip address--', // mandatory: domain name
                impi: ext, // mandatory: authorization name (IMS Private Identity)
                impu: 'sip:' + ext + '@' + realm, // mandatory: valid SIP Uri (IMS Public Identity)
                password: '--mypassword--', // optional
                display_name: 'extension' + ext, // optional
                //websocket_proxy_url: 'wss://sipml5.org:10062', // optional
                //outbound_proxy_url: 'udp://example.org:5060', // optional
                enable_rtcweb_breaker: true, // optional
                events_listener: { events: '*', listener: eventsListener }, // optional: '*' means all events
                sip_headers: [ // optional
                        { name: 'User-Agent', value: 'IM-client/OMA1.0 sipML5-v1.0.0.0' },
                        { name: 'Organization', value: 'Doubango Telecom' }
                ]
            }
            );
        }
        //Initialize SIPml
        var readyCallback = function (e) {
            createSipStack(); // see next section
        };
        var errorCallback = function (e) {
            console.error('Failed to initialize the engine: ' + e.message);
        }


        //Register / login
        var registerSession;
        var login = function () {
            registerSession = sipStack.newSession('register', {
                events_listener: { events: '*', listener: eventsListener } // optional: '*' means all events
            });
            registerSession.register();
        }




        function onClickCall() {
            callSession = sipStack.newSession('call-audio', {
                audio_remote: document.getElementById('audio-remote'),
                bandwidth: { audio: undefined, video: undefined },
                events_listener: { events: '*', listener: eventsListener }, // optional: '*' means all events
                sip_caps: [
                           { name: '+g.oma.sip-im' },
                           { name: '+sip.ice' },
                           { name: 'language', value: '\"en,fr\"' }
                ]
            });
            callSession.call('w2s_' + mobilenumber.value);
        }

        function onClickHangup() {
            if (callSession) {
                txtCallStatus.innerHTML = 'Terminating the call...';
                callSession.hangup({ events_listener: { events: '*', listener: eventsListener } });
            }
        }

        function onClickConnect()
        {
            SIPml.init(readyCallback, errorCallback);
            sipStack.start();
        }
    </script>

    <style>
        body {
            font-family:Tahoma;
            font-size:small;        
        }
    </style>
</head>
<body>
    <span id="txtCallStatus" style="font-style: italic"></span>
    <br />
    <input type="text" value="5555" id="extension" />  
    <input type="button" value="Connect" onclick="return onClickConnect()" />
    <input type="text" value="" name="mobilenumber" id="mobilenumber" />
    <input type="button" value="Call" onclick="return onClickCall()" />
    <input type="button" value="Hangup" onclick="return onClickHangup()" />
    <audio id="audio-remote" autoplay="autoplay" />
    <audio id="ringtone" loop src="sounds/ringtone.wav" />
    <audio id="ringbacktone" loop src="sounds/ringbacktone.wav" />
    <audio id="dtmfTone" src="sounds/dtmf.wav" />

</body>
</html>

一个Web到SIP的呼叫演示
var-sipStack;
var eventsListener=函数(e){
console.info('eventsListener:;
如果(e.type=='started'){
登录();
txtCallStatus.innerHTML=“已连接。”;
}
else if(e.type=='i_new_message'){//传入的新SIP消息(类似SMS)
接受信息(e);
}
else if(e.type=='i_new_call'){//传入音频/视频呼叫
接受呼叫(e);
}
否则如果(e.type=='connecting'){
txtCallStatus.innerHTML=“正在连接…”;
}
else if(e.type=='i\u ao\u request'){
txtCallStatus.innerHTML=“铃声…”;
}
else如果(e.type=='connected'){
txtCallStatus.innerHTML=“已连接”;
}
否则如果(e.type=='terminated'){
txtCallStatus.innerHTML=“已终止”;
}
}
函数createSipStack(){
var ext=extension.value;
如果(ext==null | | ext=='')
{
警报(“空”);
ext='5555';
}
sipStack=新的SIPml.Stack({
领域:'--myip地址--',//必填:域名
impi:ext,//必需:授权名称(IMS专用标识)
impu:'sip:'+ext+'@'+realm,//必需:有效的sip Uri(IMS公共标识)
密码:'--mypassword-->',//可选
显示名称:“扩展名”+ext,//可选
//websocket\u代理\u url:'wss://sipml5.org:10062“,//可选
//出站\u代理\u url:'udp://example.org:5060“,//可选
启用\u rtcweb\u断路器:true,//可选
events_listener:{events:'*',listener:eventsListener},//可选:'*'表示所有事件
sip_头:[//可选
{name:'User-Agent',value:'IM-client/OMA1.0 sipML5-v1.0.0.0'},
{名称:'Organization',值:'Doubango Telecom'}
]
}
);
}
//初始化SIPml
var readyCallback=函数(e){
createSipStack();//参见下一节
};
var errorCallback=函数(e){
console.error('未能初始化引擎:'+e.message);
}
//注册/登录
var注册会话;
var login=函数(){
registerSession=sipStack.newSession('register'{
events_listener:{events:'*',listener:eventsListener}//可选:'*'表示所有事件
});
registerSession.register();
}
函数onClickCall(){
callSession=sipStack.newSession('call-audio'{
音频远程:document.getElementById('audio-remote'),
带宽:{音频:未定义,视频:未定义},
events_listener:{events:'*',listener:eventsListener},//可选:'*'表示所有事件
sip_caps:[
{name:'+g.oma.sip im'},
{name:'+sip.ice'},
{name:'language',value:'\'en,fr\'}
]
});
callSession.call('w2s_u2;'+mobilenumber.value);
}
函数onClickHangup(){
if(呼叫会话){
txtCallStatus.innerHTML='正在终止呼叫…';
挂起({events_listener:{events:'*',listener:eventsListener});
}
}
函数onClickConnect()
{
SIPml.init(readyCallback,errorCallback);
sipStack.start();
}
身体{
字体系列:Tahoma;
字体大小:小;
}


您是否尝试过在internet explorer上使用chrome框架。。它可能支持webrtc。目前webrtc处于草稿状态,Internet Explorer通常在接近推荐状态之前不提供对标准的支持。是的,chrome框架尚未试用,但我的客户不会接受(webrtc4all仅在浏览器模式下工作:IE9,我现在可以登录到我的sip服务器并进行身份验证。但是,现在在将呼叫桥接到PSTN网络时出现编解码器协商错误。启用RTC4ALL后,此问题在其他浏览器中得到解决。