繁体   English   中英

如何拒绝WebRTC呼叫

[英]How to reject WebRTC call

我已经使用WebRTC制作了一个简单的调用应用程序。 我已经建立了连接,现在可以从一个浏览器调用另一个浏览器。

在WebRTC标准中,我仍然无法弄清和找不到的一件事是...如何拒绝通话提议。

如果我收到来电者的报价,我正在考虑关注

if(msg.type == 'offer') {
    if(confirm(msg.sender+" is calling you ...")) {
        $.calling.calleePeer.setRemoteDescription(new RTCSessionDescription(msg));
        $.calling.calleePeer.addStream($.calling.localstream);
        $.calling.calleePeer.createAnswer($.calling.setLocalCalleeAndSendDescription, null, $.calling.mediaConstraints);

    } else {
        // TODO What to do here in order to reject the offer?
    }
}

现在,当我接受要约时,一切正常,但是如何让呼叫者知道我现在对通话不感兴趣? 我想标准中有一些解决方案。

在WebRTC中,您可以定义任何信令协议,因此应用程序应向另一方发送命令,告知要约被用户拒绝。

执行此操作时,必须在双方上都关闭PeerConnection对象,浏览器将停止等待或尝试建立连接。

if(msg.type == 'offer') {
    if(confirm(msg.sender+" is calling you ...")) {
        $.calling.calleePeer.setRemoteDescription(new RTCSessionDescription(msg));
        $.calling.calleePeer.addStream($.calling.localstream);
        $.calling.calleePeer.createAnswer($.calling.setLocalCalleeAndSendDescription, null, $.calling.mediaConstraints);

    } else {
        $.calling.calleePeer.close();
        // Send a command to the other party (i.e. a response to the invitation) rejecting the offer.
    }
}

收到拒绝后,启动该过程的客户端应执行相同的操作。

// I suppose you have something like this.
$.calling.callerPeer.close();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM