1
Fork 0
mirror of https://github.com/jech/galene.git synced 2024-11-22 16:45:58 +01:00

Remove up media when closing the socket.

This commit is contained in:
Juliusz Chroboczek 2020-08-23 19:07:52 +02:00
parent 8fbd16cc8c
commit a2ab8c3686
2 changed files with 12 additions and 4 deletions

View file

@ -36,9 +36,11 @@ serverConnection.onclearchat = ...;
serverConnection.ondownstream = ...; serverConnection.ondownstream = ...;
``` ```
The `onconnected` callback is called when we connect to the server; The `onconnected` callback is called when we connect to the server. The
`onclose` is the opposite of `onconnected`. `onusermessage` indicates `onclose` callback is called when the socket is closed; you should use it
a message from the server that should be displayed to the user. to close all your outgoing streams (incoming streams will be closed by the
server). `onusermessage` indicates a message from the server that should
be displayed to the user.
The other callbacks will only be called after you join a group. `onuser` The other callbacks will only be called after you join a group. `onuser`
is used to indicate that a user has joined or left the current group. is used to indicate that a user has joined or left the current group.

View file

@ -69,6 +69,7 @@ function gotConnected() {
} }
function gotClose(code, reason) { function gotClose(code, reason) {
delUpMediaKind(null);
setConnected(false); setConnected(false);
if(code != 1000) if(code != 1000)
console.warn('Socket close', code, reason); console.warn('Socket close', code, reason);
@ -395,10 +396,15 @@ function delUpMedia(c) {
setButtonsVisibility() setButtonsVisibility()
} }
/**
* delUpMediaKind reoves all up media of the given kind. If kind is
* falseish, it removes all up media.
* @param {string} kind
*/
function delUpMediaKind(kind) { function delUpMediaKind(kind) {
for(let id in serverConnection.up) { for(let id in serverConnection.up) {
let c = serverConnection.up[id]; let c = serverConnection.up[id];
if(c.kind != kind) if(kind && c.kind != kind)
continue continue
c.close(true); c.close(true);
delMedia(id); delMedia(id);