summary refs log tree commit diff
path: root/webclient/app-controller.js
diff options
context:
space:
mode:
authorDavid Baker <dbkr@matrix.org>2014-09-01 17:15:26 +0100
committerDavid Baker <dbkr@matrix.org>2014-09-01 17:16:27 +0100
commit57f047a05a310883d534a6b01ac99916586fa584 (patch)
treed69f36cd696ae91686823f9e5601920b5615553e /webclient/app-controller.js
parentFlesh out Room Events. (diff)
downloadsynapse-57f047a05a310883d534a6b01ac99916586fa584.tar.xz
Fairly simple move of the call status widget to the header bar (and therefore into the index page rather than the rooms page).
Diffstat (limited to 'webclient/app-controller.js')
-rw-r--r--webclient/app-controller.js28
1 files changed, 24 insertions, 4 deletions
diff --git a/webclient/app-controller.js b/webclient/app-controller.js
index 97f799d623..42c45f7c31 100644
--- a/webclient/app-controller.js
+++ b/webclient/app-controller.js
@@ -21,8 +21,8 @@ limitations under the License.
 'use strict';
 
 angular.module('MatrixWebClientController', ['matrixService', 'mPresence', 'eventStreamService'])
-.controller('MatrixWebClientController', ['$scope', '$location', '$rootScope', 'matrixService', 'mPresence', 'eventStreamService',
-                               function($scope, $location, $rootScope, matrixService, mPresence, eventStreamService) {
+.controller('MatrixWebClientController', ['$scope', '$location', '$rootScope', 'matrixService', 'mPresence', 'eventStreamService', 'matrixPhoneService',
+                               function($scope, $location, $rootScope, matrixService, mPresence, eventStreamService, matrixPhoneService) {
          
     // Check current URL to avoid to display the logout button on the login page
     $scope.location = $location.path();
@@ -88,7 +88,27 @@ angular.module('MatrixWebClientController', ['matrixService', 'mPresence', 'even
     $scope.updateHeader = function() {
         $scope.user_id = matrixService.config().user_id;
     };
+
+    $rootScope.$on(matrixPhoneService.INCOMING_CALL_EVENT, function(ngEvent, call) {
+        console.trace("incoming call");
+        call.onError = $scope.onCallError;
+        call.onHangup = $scope.onCallHangup;
+        $rootScope.currentCall = call;
+    });
+
+    $scope.answerCall = function() {
+        $scope.currentCall.answer();
+    };
+
+    $scope.hangupCall = function() {
+        $scope.currentCall.hangup();
+        $scope.currentCall = undefined;
+    };
     
-}]);
+    $rootScope.onCallError = function(errStr) {
+        $scope.feedback = errStr;
+    }
 
-   
+    $rootScope.onCallHangup = function() {
+    }
+}]);