是否有任何方法可以拒绝twilioconversation上刚发送的邀请。有一次,我邀请并且如果由于超时而发生错误,则错误仅发送到呼叫结束而不是被称为结束。
$scope.callUser = function(beingCalledId) {
if (activeConversation) {
// add a participant
activeConversation.invite(beingCalledID);
} else {
//create a conversation
var options = {};
if (previewMedia) {
options.localMedia = previewMedia;
}
conversationsClient.inviteToConversation(beingCalledId, options).then(
conversationStarted,
function(error) {
alert(error);
}
);
}
};
即使是被攻击的结尾也没有收到电话,Error_conversation_invitation
被发出。但是,beingCalled(recieving end)
上的通话仍然响起。有没有像这样的方法:
conversationsClient.rejectJustSentInvitation();
我们如何在twilio中挂断来自呼叫端的呼叫?接收结束可以拒绝接听电话,这很好吗?呼叫结束怎么样?
编辑:是否没有发生事件,例如失败?或取消?
conversationsClient.on('failed', function(invite) {
$scope.modal2.hide();
$scope.modal1.hide();
invite.reject();
});
conversationsClient.on('canceled', function(invite) {
$scope.modal2.hide();
$scope.modal1.hide();
invite.reject();
});
答案 0 :(得分:1)
Twilio开发者传道者在这里。
当您致电inviteToConversation
时,它会返回OutgoingInvite
,这是一张最终解析为Conversation
的承诺。
但是,API目前将promises实现为可取消。因此,您可以随时致电承诺cancel()
,直到被拒绝或履行为止。
请告诉我这是否有帮助!
<强> [编辑] 强>
为了更加清晰,这是一个例子。您可以将其保存为变量,而不是仅仅依赖于从inviteToConversation
调用中获得的承诺。然后,如果您需要取消它,请在其上调用cancel
:
var invitePromise = conversationsClient.inviteToConversation(beingCalledId, options)
invitePromise.then(conversationStarted, function(error) {
alert(error);
});
// Then sometime later, if you need to cancel the invite
invitePromise.cancel();
希望有所帮助。
[再次编辑]
在isCalled结束时,您可以在IncomingInvite
对象上侦听已取消和失败的事件。
conversationsClient.on('invite', function(invite) {
// show modal for accepting the call
invite.on('canceled', function(event) {
// hide modal
});
invite.on('failed', function(event) {
// hide modal
})
})