Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/spreed.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoachim Bauch <bauch@struktur.de>2017-01-20 14:27:13 +0300
committerIvan Sein <ivan@struktur.de>2017-02-16 18:37:24 +0300
commit4058c399fb0f1b993d0a60bfd49af693802d4481 (patch)
treedd140d9272b391413275d784542733f80ea20d25 /js/simplewebrtc.js
parent6d78c28fe5755090c2cfac5b0d479e1786edb37a (diff)
Implement first draft of screensharing support.
Signed-off-by: Joachim Bauch <bauch@struktur.de>
Diffstat (limited to 'js/simplewebrtc.js')
-rw-r--r--js/simplewebrtc.js18
1 files changed, 18 insertions, 0 deletions
diff --git a/js/simplewebrtc.js b/js/simplewebrtc.js
index 690d9c72e..36d4cd2e4 100644
--- a/js/simplewebrtc.js
+++ b/js/simplewebrtc.js
@@ -17739,6 +17739,9 @@
mLine.iceTransport.addRemoteCandidate({});
}
});
+ } else if (message.type === 'unshareScreen') {
+ this.parent.emit('unshareScreen', {id: message.from});
+ this.end();
}
};
@@ -18317,7 +18320,11 @@
if (this.getLocalScreen()) {
this.webrtc.stopScreenShare();
}
+ // Notify peers were sending to.
this.webrtc.peers.forEach(function (peer) {
+ if (peer.type === 'screen' && peer.sharemyscreen) {
+ peer.send('unshareScreen');
+ }
if (peer.broadcaster) {
peer.end();
}
@@ -18478,6 +18485,17 @@
}
});
+ this.on('unshareScreen', function(message) {
+ // End peers we were receiving the screensharing stream from.
+ var peers = self.getPeers(message.from, 'screen');
+ peers.forEach(function(peer) {
+ if (!peer.sharemyscreen) {
+ peer.end();
+ }
+ });
+ });
+
+
// log events in debug mode
if (this.config.debug) {
this.on('*', function (event, val1, val2) {