| 23 | } |
| 24 | |
| 25 | _onMessage(msg) { |
| 26 | msg = JSON.parse(msg); |
| 27 | console.log('WS:', msg); |
| 28 | switch (msg.type) { |
| 29 | case 'peers': |
| 30 | Events.fire('peers', msg.peers); |
| 31 | break; |
| 32 | case 'peer-joined': |
| 33 | Events.fire('peer-joined', msg.peer); |
| 34 | break; |
| 35 | case 'peer-left': |
| 36 | Events.fire('peer-left', msg.peerId); |
| 37 | break; |
| 38 | case 'signal': |
| 39 | Events.fire('signal', msg); |
| 40 | break; |
| 41 | case 'ping': |
| 42 | this.send({ type: 'pong' }); |
| 43 | break; |
| 44 | case 'display-name': |
| 45 | Events.fire('display-name', msg); |
| 46 | break; |
| 47 | default: |
| 48 | console.error('WS: unkown message type', msg); |
| 49 | } |
| 50 | } |
| 51 | |
| 52 | send(message) { |
| 53 | if (!this._isConnected()) return; |