-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathngobrel.js
66 lines (55 loc) · 1.27 KB
/
ngobrel.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
var app = angular.module("ngobrelApp", [])
.controller("callCtrl", ["$scope", "$location", function($scope, $location) {
var webrtc;
$scope.room = $location.path();
$scope.url = $location.absUrl();
$scope.muted = false;
$scope.paused = false;
$scope.numRemotes = function() {
return angular.element("#remotes").find("video").length;
}
$scope.unmute = function() {
if ($scope.muted) {
$scope.muted = false;
webrtc.unmute();
}
}
$scope.mute = function() {
if (!$scope.muted) {
$scope.muted = true;
webrtc.mute();
}
}
$scope.resume = function() {
if ($scope.paused) {
$scope.paused = false;
webrtc.resume();
}
}
$scope.pause = function() {
if (!$scope.paused) {
$scope.paused = true;
webrtc.pause();
}
}
$scope.start = function() {
var room = chance.word({length:10});
webrtc.createRoom(room, function (err, name) {
if (!err) {
$scope.room = room;
$location.path("/" + name);
}
});
}
webrtc = new SimpleWebRTC({
localVideoEl: 'local',
remoteVideosEl: 'remotes',
autoRequestMedia: true,
log: true
});
webrtc.on("readyToCall", function() {
if ($scope.room) {
webrtc.joinRoom($scope.room);
}
});
}])