@ipcom/asterisk-ari 0.0.106 → 0.0.108

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/esm/index.js CHANGED
@@ -975,7 +975,9 @@ var ChannelInstance = class extends EventEmitter2 {
975
975
  `Nenhum WebSocket conectado dispon\xEDvel para '${this.app}'.`
976
976
  );
977
977
  }
978
+ wsClient.removeWildcardListeners(this.id, event, "Channel");
978
979
  const scopedEvent = `${this.app}:Channel:${this.id}:${event}`;
980
+ console.log({ scopedEvent });
979
981
  const listener = (data) => {
980
982
  callback(data);
981
983
  wsClient.off(scopedEvent, listener);
@@ -1494,6 +1496,7 @@ var PlaybackInstance = class extends EventEmitter3 {
1494
1496
  `Nenhum WebSocket conectado dispon\xEDvel para '${this.app}'.`
1495
1497
  );
1496
1498
  }
1499
+ wsClient.removeWildcardListeners(this.id, event, "Playback");
1497
1500
  const scopedEvent = `${this.app}:Playback:${this.id}:${event}`;
1498
1501
  const listener = (data) => {
1499
1502
  callback(data);
@@ -1834,6 +1837,20 @@ var WebSocketClient = class extends EventEmitter4 {
1834
1837
  super.off(event, callback);
1835
1838
  return this;
1836
1839
  }
1840
+ removeWildcardListeners(id, event, type) {
1841
+ console.log(
1842
+ `Removendo listeners para '${type}:${id}:${event}' com wildcard no app`
1843
+ );
1844
+ for (const eventName of this.eventNames()) {
1845
+ if (typeof eventName === "string") {
1846
+ const eventString = String(eventName);
1847
+ if (eventString.includes(`:${type}:${id}:${event}`)) {
1848
+ console.log(`Removendo listener para o evento: ${eventString}`);
1849
+ this.removeAllListeners(eventName);
1850
+ }
1851
+ }
1852
+ }
1853
+ }
1837
1854
  /**
1838
1855
  * Removes all listeners for a specific event, or all events if no event is specified.
1839
1856
  * @param event - Optional. The event to remove all listeners from.