@ipcom/asterisk-ari 0.0.117 → 0.0.118

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
@@ -1890,29 +1890,19 @@ var WebSocketClient = class extends EventEmitter3 {
1890
1890
  const key = `${app}:${instanceId}`;
1891
1891
  if (this.scopedListeners.has(key)) {
1892
1892
  console.warn(
1893
- `Listener escopado para a inst\xE2ncia '${key}' j\xE1 existe. Ignorando.`
1893
+ `Listener escopado para a inst\xE2ncia '${key}' j\xE1 existe. Ignorando duplicata.`
1894
1894
  );
1895
1895
  return;
1896
1896
  }
1897
1897
  const scopedListener = (data) => {
1898
- try {
1899
- if (data.application === app && (data.type.startsWith("Channel") && "channel" in data && data.channel?.id === instanceId || data.type.startsWith("Playback") && "playbackId" in data && data.playbackId === instanceId)) {
1900
- console.log(
1901
- `Listener escopado ativado para inst\xE2ncia '${instanceId}' no app '${app}'.`
1902
- );
1903
- callback(data);
1904
- }
1905
- } catch (error) {
1906
- console.error(
1907
- `Erro no listener escopado para inst\xE2ncia '${instanceId}' no app '${app}':`,
1908
- error
1909
- );
1898
+ if (data.application === app && (data.type.startsWith("Channel") && "channel" in data && data.channel?.id === instanceId || data.type.startsWith("Playback") && "playbackId" in data && data.playbackId === instanceId)) {
1899
+ callback(data);
1910
1900
  }
1911
1901
  };
1912
- this.scopedListeners.set(key, scopedListener);
1913
1902
  this.on("message", scopedListener);
1903
+ this.scopedListeners.set(key, scopedListener);
1914
1904
  console.log(
1915
- `Listener escopado adicionado para a inst\xE2ncia '${instanceId}' no app '${app}'. Total de listeners: ${this.listenerCount(
1905
+ `Listener escopado adicionado para a inst\xE2ncia '${key}'. Total de listeners: ${this.listenerCount(
1916
1906
  "message"
1917
1907
  )}`
1918
1908
  );
@@ -1924,29 +1914,23 @@ var WebSocketClient = class extends EventEmitter3 {
1924
1914
  */
1925
1915
  removeScopedMessageListeners(instanceId, app) {
1926
1916
  const key = `${app}:${instanceId}`;
1927
- if (!this.scopedListeners.has(key)) {
1917
+ const scopedListener = this.scopedListeners.get(key);
1918
+ if (!scopedListener) {
1928
1919
  console.warn(`Nenhum listener encontrado para a inst\xE2ncia '${key}'.`);
1929
1920
  return;
1930
1921
  }
1931
- const scopedListener = this.scopedListeners.get(key);
1932
- if (scopedListener) {
1933
- if (this.listeners("message").includes(scopedListener)) {
1934
- this.off("message", scopedListener);
1935
- console.log(`Listener removido para '${key}'.`);
1936
- } else {
1937
- console.warn(
1938
- `Listener n\xE3o encontrado entre os registrados para '${key}'.`
1939
- );
1940
- }
1941
- this.scopedListeners.delete(key);
1942
- console.log(
1943
- `Listeners escopados removidos para a inst\xE2ncia '${key}'. Total de listeners restantes: ${this.listenerCount(
1944
- "message"
1945
- )}`
1946
- );
1922
+ if (this.listeners("message").includes(scopedListener)) {
1923
+ this.off("message", scopedListener);
1924
+ console.log(`Listener escopado removido para '${key}'.`);
1947
1925
  } else {
1948
- console.warn(`Listener j\xE1 foi removido para a inst\xE2ncia '${key}'.`);
1926
+ console.warn(`Listener j\xE1 foi removido para '${key}'.`);
1949
1927
  }
1928
+ this.scopedListeners.delete(key);
1929
+ console.log(
1930
+ `Listeners escopados removidos para a inst\xE2ncia '${key}'. Total de listeners restantes: ${this.listenerCount(
1931
+ "message"
1932
+ )}`
1933
+ );
1950
1934
  }
1951
1935
  /**
1952
1936
  * Handles incoming WebSocket messages.
@@ -1998,10 +1982,12 @@ var WebSocketClient = class extends EventEmitter3 {
1998
1982
  this.isClosedManually = true;
1999
1983
  this.ws.close();
2000
1984
  this.ws = null;
1985
+ console.log(this.scopedListeners);
2001
1986
  this.scopedListeners.forEach((_listener, key) => {
2002
1987
  console.log(`Removendo listener escopado para '${key}' ao fechar.`);
2003
1988
  this.removeScopedMessageListeners(key.split(":")[1], key.split(":")[0]);
2004
1989
  });
1990
+ this.scopedListeners.clear();
2005
1991
  this.removeAllListeners("message");
2006
1992
  console.log("WebSocket fechado manualmente e todos os listeners limpos.");
2007
1993
  }