From 79d132b322345a41d246f3bb8117d6252b33a05c Mon Sep 17 00:00:00 2001 From: Simon Eisenmann Date: Mon, 8 Dec 2014 15:34:27 +0100 Subject: [PATCH] Also show a notification that someone called no matter if call was aborted before pickup timeout. --- static/js/controllers/mediastreamcontroller.js | 10 ++++++++++ static/js/mediastream/webrtc.js | 6 ++++-- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/static/js/controllers/mediastreamcontroller.js b/static/js/controllers/mediastreamcontroller.js index f9767b40..250e8d26 100644 --- a/static/js/controllers/mediastreamcontroller.js +++ b/static/js/controllers/mediastreamcontroller.js @@ -663,6 +663,7 @@ define(['jquery', 'underscore', 'angular', 'bigscreen', 'moment', 'sjcl', 'moder }); mediaStream.webrtc.e.on("bye", function(event, reason, from) { + console.log("received bye", pickupTimeout, reason); switch (reason) { case "busy": console.log("User is busy", reason, from); @@ -689,6 +690,13 @@ define(['jquery', 'underscore', 'angular', 'bigscreen', 'moment', 'sjcl', 'moder console.log("User cannot accept call because of error"); alertify.dialog.alert(translation._("Oops") + "
" + translation._("User hung up because of error.")); break; + case "abort": + console.log("Remote call was aborted before we did pick up"); + $scope.$emit("notification", "abortbeforepickup", { + reason: reason, + from: from + }); + break; } }); @@ -725,6 +733,8 @@ define(['jquery', 'underscore', 'angular', 'bigscreen', 'moment', 'sjcl', 'moder case "incomingbusy": toastr.info(moment().format("llll"), displayName(details.from) + translation._(" tried to call you.")); break; + case "abortbeforepickup": + // Fall through case "incomingpickuptimeout": toastr.info(moment().format("llll"), displayName(details.from) + translation._(" called you.")); break; diff --git a/static/js/mediastream/webrtc.js b/static/js/mediastream/webrtc.js index 5464b85a..9382a8ae 100644 --- a/static/js/mediastream/webrtc.js +++ b/static/js/mediastream/webrtc.js @@ -151,9 +151,9 @@ function($, _, PeerCall, PeerConference, PeerXfer, PeerScreenshare, UserMedia, u return; } this.msgQueue.unshift([to, data, type, to2, from]); - // create call + // Create call. this.currentcall = this.createCall(from, from, from); - // delegate next steps to Ui + // Delegate next steps to UI. this.e.triggerHandler("offer", [from, to2, to]); break; case "Bye": @@ -167,6 +167,8 @@ function($, _, PeerCall, PeerConference, PeerXfer, PeerScreenshare, UserMedia, u } console.log("Bye process (started false)"); this.doHangup("receivedbye", from); + // Delegate bye to UI. + this.e.triggerHandler("bye", [data.Reason, from, to, to2]); break; default: this.msgQueue.push([to, data, type, to2, from]);