commit 92a5f3b782b4037beaf9b404683239cf71105586
parent e9eeea48e5ea76214971daa1a879b0ae2ba1a196
Author: RobinLinus <robinlinus@users.noreply.github.com>
Date: Fri, 21 Sep 2018 19:14:25 +0200
Cleanup; fix STUN servers
Diffstat:
3 files changed, 19 insertions(+), 17 deletions(-)
diff --git a/client/scripts/network.js b/client/scripts/network.js
@@ -10,7 +10,7 @@ class ServerConnection {
if (this._isConnected()) return
const ws = new WebSocket(this._endpoint());
ws.binaryType = 'arraybuffer';
- ws.onopen = e => console.log('WS: server connection opened');
+ ws.onopen = e => console.log('WS: server connected');
ws.onmessage = e => this._onMessage(e.data);
ws.onclose = e => this._onDisconnect();
ws.onerror = e => console.error(e);
@@ -18,7 +18,7 @@ class ServerConnection {
clearTimeout(this._reconnectTimer);
}
- _isConnected(){
+ _isConnected() {
return this._socket && this._socket.readyState === this._socket.OPEN;
}
@@ -243,7 +243,7 @@ class RTCPeer extends Peer {
_createChannel() {
const channel = this._peer.createDataChannel('data-channel', { reliable: true });
channel.binaryType = 'arraybuffer';
- channel.onopen = e => this._onChannelOpened(e)
+ channel.onopen = e => this._onChannelOpened(e);
this._peer.createOffer(d => this._onDescription(d), e => this._onError(e));
}
@@ -466,16 +466,17 @@ window.isRtcSupported = !!(window.RTCPeerConnection || window.mozRTCPeerConnecti
RTCPeer.config = {
'iceServers': [{
- urls: 'stun:stun.stunprotocol.org:3478'
- }, {
- urls: 'stun:stun.l.google.com:19302'
- }, {
- urls: 'turn:turn.bistri.com:80',
- credential: 'homeo',
- username: 'homeo'
- }, {
- urls: 'turn:turn.anyfirewall.com:443?transport=tcp',
- credential: 'webrtc',
- username: 'webrtc'
- }]
+ urls: 'stun:stun.stunprotocol.org:3478'
+ }, {
+ urls: 'stun:stun.l.google.com:19302'
+ }, {
+ url: 'turn:192.158.29.39:3478?transport=tcp',
+ credential: 'JZEOEt2V3Qb0y27GRntt2u2PAYA=',
+ username: '28224511:1379330808'
+ } {
+ urls: 'turn:turn.anyfirewall.com:443?transport=tcp',
+ credential: 'webrtc',
+ username: 'webrtc'
+ }
+ ]
}
\ No newline at end of file
diff --git a/client/scripts/ui.js b/client/scripts/ui.js
@@ -335,8 +335,8 @@ class Notifications {
constructor() {
// Check if the browser supports notifications
if (!('Notification' in window)) return;
+
// Check whether notification permissions have already been granted
-
if (Notification.permission !== 'granted') {
this.$button = $('notification');
this.$button.removeAttribute('hidden');
@@ -364,6 +364,7 @@ class Notifications {
vibrate: [200, 100, 200, 100, 200, 100, 400],
}
if (serviceWorker && serviceWorker.showNotification) {
+ // android doesn't support "new Notification" if service worker is installed
return serviceWorker.showNotification(message, config);
} else {
return new Notification(message, config);
diff --git a/server/index.js b/server/index.js
@@ -84,7 +84,7 @@ class SnapdropServer {
_leaveRoom(peer) {
// delete the peer
this._cancelKeepAlive(peer);
- if (!this._rooms[peer.ip]) return;
+ if (!this._rooms[peer.ip] || !this._rooms[peer.ip][peer.id]) return;
delete this._rooms[peer.ip][peer.id];