@ipcom/asterisk-ari 0.0.116 → 0.0.117
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cjs/index.cjs
CHANGED
|
@@ -1463,13 +1463,13 @@ var PlaybackInstance = class extends import_events2.EventEmitter {
|
|
|
1463
1463
|
);
|
|
1464
1464
|
}
|
|
1465
1465
|
const scopedEvent = `${this.app}:Playback:${this.id}:${event}`;
|
|
1466
|
-
console.log({ metheod: "on", event, scopedEvent });
|
|
1467
1466
|
const existingListeners = wsClient.listeners(scopedEvent);
|
|
1468
1467
|
if (existingListeners.some((listener) => listener === callback)) {
|
|
1469
1468
|
console.warn(`Listener j\xE1 registrado para o evento '${scopedEvent}'.`);
|
|
1470
1469
|
return this;
|
|
1471
1470
|
}
|
|
1472
1471
|
wsClient.on(scopedEvent, callback);
|
|
1472
|
+
console.log(`Listener registrado para '${scopedEvent}'.`);
|
|
1473
1473
|
return this;
|
|
1474
1474
|
}
|
|
1475
1475
|
/**
|
|
@@ -1482,9 +1482,7 @@ var PlaybackInstance = class extends import_events2.EventEmitter {
|
|
|
1482
1482
|
`Nenhum WebSocket conectado dispon\xEDvel para '${this.app}'.`
|
|
1483
1483
|
);
|
|
1484
1484
|
}
|
|
1485
|
-
wsClient.removeWildcardListeners(this.id, event, "Playback");
|
|
1486
1485
|
const scopedEvent = `${this.app}:Playback:${this.id}:${event}`;
|
|
1487
|
-
console.log({ metheod: "once", event, scopedEvent });
|
|
1488
1486
|
const existingListeners = wsClient.listeners(scopedEvent);
|
|
1489
1487
|
if (existingListeners.some((listener2) => listener2 === callback)) {
|
|
1490
1488
|
console.warn(`Listener j\xE1 registrado para o evento '${scopedEvent}'.`);
|
|
@@ -1493,9 +1491,10 @@ var PlaybackInstance = class extends import_events2.EventEmitter {
|
|
|
1493
1491
|
const listener = (data) => {
|
|
1494
1492
|
callback(data);
|
|
1495
1493
|
wsClient.off(scopedEvent, listener);
|
|
1496
|
-
|
|
1494
|
+
console.log(`Listener removido ap\xF3s execu\xE7\xE3o para '${scopedEvent}'.`);
|
|
1497
1495
|
};
|
|
1498
1496
|
wsClient.on(scopedEvent, listener);
|
|
1497
|
+
console.log(`Listener registrado para '${scopedEvent}' (apenas uma vez).`);
|
|
1499
1498
|
return this;
|
|
1500
1499
|
}
|
|
1501
1500
|
/**
|
|
@@ -1509,7 +1508,15 @@ var PlaybackInstance = class extends import_events2.EventEmitter {
|
|
|
1509
1508
|
);
|
|
1510
1509
|
}
|
|
1511
1510
|
const scopedEvent = `${this.app}:Playback:${this.id}:${event}`;
|
|
1511
|
+
const existingListeners = wsClient.listeners(scopedEvent);
|
|
1512
|
+
if (!existingListeners.some((listener) => listener === callback)) {
|
|
1513
|
+
console.warn(
|
|
1514
|
+
`Nenhum listener registrado para '${scopedEvent}' que corresponda.`
|
|
1515
|
+
);
|
|
1516
|
+
return this;
|
|
1517
|
+
}
|
|
1512
1518
|
wsClient.off(scopedEvent, callback);
|
|
1519
|
+
console.log(`Listener removido para '${scopedEvent}'.`);
|
|
1513
1520
|
return this;
|
|
1514
1521
|
}
|
|
1515
1522
|
/**
|
|
@@ -1767,6 +1774,7 @@ var WebSocketClient = class extends import_events3.EventEmitter {
|
|
|
1767
1774
|
async connect() {
|
|
1768
1775
|
if (this.isReconnecting) return;
|
|
1769
1776
|
return new Promise((resolve, reject) => {
|
|
1777
|
+
this.removeAllListeners();
|
|
1770
1778
|
this.ws = new import_ws.default(this.url);
|
|
1771
1779
|
this.ws.on("open", () => {
|
|
1772
1780
|
console.log("WebSocket conectado.");
|
|
@@ -1805,6 +1813,7 @@ var WebSocketClient = class extends import_events3.EventEmitter {
|
|
|
1805
1813
|
if (!this.messageListeners.includes(callback)) {
|
|
1806
1814
|
this.messageListeners.push(callback);
|
|
1807
1815
|
this.on("message", callback);
|
|
1816
|
+
console.log("Listener registrado para 'message'.");
|
|
1808
1817
|
} else {
|
|
1809
1818
|
console.warn("Tentativa de registrar listener duplicado para 'message'.");
|
|
1810
1819
|
}
|
|
@@ -1943,10 +1952,17 @@ var WebSocketClient = class extends import_events3.EventEmitter {
|
|
|
1943
1952
|
}
|
|
1944
1953
|
const scopedListener = this.scopedListeners.get(key);
|
|
1945
1954
|
if (scopedListener) {
|
|
1946
|
-
this.
|
|
1955
|
+
if (this.listeners("message").includes(scopedListener)) {
|
|
1956
|
+
this.off("message", scopedListener);
|
|
1957
|
+
console.log(`Listener removido para '${key}'.`);
|
|
1958
|
+
} else {
|
|
1959
|
+
console.warn(
|
|
1960
|
+
`Listener n\xE3o encontrado entre os registrados para '${key}'.`
|
|
1961
|
+
);
|
|
1962
|
+
}
|
|
1947
1963
|
this.scopedListeners.delete(key);
|
|
1948
1964
|
console.log(
|
|
1949
|
-
`Listeners removidos para a inst\xE2ncia '${key}'. Total de listeners restantes: ${this.listenerCount(
|
|
1965
|
+
`Listeners escopados removidos para a inst\xE2ncia '${key}'. Total de listeners restantes: ${this.listenerCount(
|
|
1950
1966
|
"message"
|
|
1951
1967
|
)}`
|
|
1952
1968
|
);
|
|
@@ -2004,10 +2020,12 @@ var WebSocketClient = class extends import_events3.EventEmitter {
|
|
|
2004
2020
|
this.isClosedManually = true;
|
|
2005
2021
|
this.ws.close();
|
|
2006
2022
|
this.ws = null;
|
|
2023
|
+
this.scopedListeners.forEach((_listener, key) => {
|
|
2024
|
+
console.log(`Removendo listener escopado para '${key}' ao fechar.`);
|
|
2025
|
+
this.removeScopedMessageListeners(key.split(":")[1], key.split(":")[0]);
|
|
2026
|
+
});
|
|
2007
2027
|
this.removeAllListeners("message");
|
|
2008
|
-
console.log(
|
|
2009
|
-
"WebSocket fechado manualmente e listeners para 'message' limpos."
|
|
2010
|
-
);
|
|
2028
|
+
console.log("WebSocket fechado manualmente e todos os listeners limpos.");
|
|
2011
2029
|
}
|
|
2012
2030
|
}
|
|
2013
2031
|
};
|