[mirotalksfu] - refactoring, update dep

هذا الالتزام موجود في:
Miroslav Pejic
2024-04-06 20:34:15 +02:00
الأصل d32600fad3
التزام c849bdc024
7 ملفات معدلة مع 160 إضافات و64 حذوفات

عرض الملف

@@ -210,11 +210,6 @@ module.exports = class Room {
const peer = this.peers.get(socket_id);
if (!peer || typeof peer !== 'object') {
log.error('---> Peer object not found for socket ID', socket_id);
return null;
}
return peer;
}
@@ -251,6 +246,14 @@ module.exports = class Room {
const { id, peer_name } = peer;
peer.close();
this.peers.delete(socket_id);
if (this.getPeers().size === 0) {
this.closeRouter();
}
const peerTransports = peer.getTransports();
const peerProducers = peer.getProducers();
const peerConsumers = peer.getConsumers();
@@ -262,14 +265,6 @@ module.exports = class Room {
peerProducers: peerProducers,
peerConsumers: peerConsumers,
});
peer.close();
this.peers.delete(socket_id);
if (this.getPeers().size === 0) {
this.closeRouter();
}
}
// ####################################################
@@ -318,6 +313,7 @@ module.exports = class Room {
if (iceState === 'disconnected' || iceState === 'closed') {
log.debug('Transport closed "icestatechange" event', {
peer_name: peer_name,
transport_id: id,
iceState: iceState,
});
transport.close();
@@ -327,6 +323,7 @@ module.exports = class Room {
transport.on('sctpstatechange', (sctpState) => {
log.debug('Transport "sctpstatechange" event', {
peer_name: peer_name,
transport_id: id,
sctpState: sctpState,
});
});
@@ -335,6 +332,7 @@ module.exports = class Room {
if (dtlsState === 'failed' || dtlsState === 'closed') {
log.debug('Transport closed "dtlsstatechange" event', {
peer_name: peer_name,
transport_id: id,
dtlsState: dtlsState,
});
transport.close();
@@ -345,10 +343,10 @@ module.exports = class Room {
log.debug('Transport closed', { peer_name: peer_name, transport_id: transport.id });
});
log.debug('Adding transport', { transportId: id });
peer.addTransport(transport);
log.debug('Transport created', { transportId: id });
return {
id: id,
iceParameters: iceParameters,
@@ -421,6 +419,18 @@ module.exports = class Room {
return id;
}
closeProducer(socket_id, producer_id) {
if (!socket_id || !producer_id) return;
const peer = this.getPeer(socket_id);
if (!peer || typeof peer !== 'object') {
return;
}
peer.closeProducer(producer_id);
}
// ####################################################
// CONSUME
// ####################################################
@@ -457,13 +467,8 @@ module.exports = class Room {
const { id, kind } = consumer;
const { peer_name } = peer;
consumer.on('producerclose', () => {
log.debug('Consumer closed due to producerclose event', {
peer_name: peer_name,
consumer_id: id,
});
log.debug('Consumer closed due to "producerclose" event');
peer.removeConsumer(id);
// Notify the client that consumer is closed
@@ -480,20 +485,6 @@ module.exports = class Room {
}
}
closeProducer(socket_id, producer_id) {
if (!socket_id || !producer_id) return;
const peer = this.getPeer(socket_id);
if (!peer || typeof peer !== 'object') {
return;
}
peer.closeProducer(producer_id);
log.debug('Producer closed', producer_id);
}
// ####################################################
// HANDLE BANNED PEERS
// ####################################################