@ipcom/asterisk-ari 0.0.94 → 0.0.96
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 +70 -25
- package/dist/cjs/index.cjs.map +2 -2
- package/dist/esm/index.js +70 -25
- package/dist/esm/index.js.map +2 -2
- package/dist/types/ari-client/resources/channels.d.ts +3 -0
- package/dist/types/ari-client/resources/channels.d.ts.map +1 -1
- package/dist/types/ari-client/resources/playbacks.d.ts +9 -9
- package/dist/types/ari-client/resources/playbacks.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/cjs/index.cjs
CHANGED
|
@@ -962,10 +962,36 @@ var ChannelInstance = class extends import_events2.EventEmitter {
|
|
|
962
962
|
super.on(event, callback);
|
|
963
963
|
return this;
|
|
964
964
|
}
|
|
965
|
+
/**
|
|
966
|
+
* Adiciona um listener para ser chamado apenas uma vez.
|
|
967
|
+
*/
|
|
965
968
|
/**
|
|
966
969
|
* Adiciona um listener para ser chamado apenas uma vez.
|
|
967
970
|
*/
|
|
968
971
|
once(event, callback) {
|
|
972
|
+
console.log({
|
|
973
|
+
type: "Adiciona um listener para ser chamado apenas uma vez",
|
|
974
|
+
event
|
|
975
|
+
});
|
|
976
|
+
const wsClients = this.client.getWebSocketClients();
|
|
977
|
+
const wsClient = Array.from(wsClients.values()).find(
|
|
978
|
+
(client) => client.isConnected()
|
|
979
|
+
);
|
|
980
|
+
if (!wsClient) {
|
|
981
|
+
throw new Error(
|
|
982
|
+
`Nenhum WebSocket conectado dispon\xEDvel para '${this.id}'.`
|
|
983
|
+
);
|
|
984
|
+
}
|
|
985
|
+
const globalListener = (webSocketEvent) => {
|
|
986
|
+
if (isChannelEvent(webSocketEvent, this.id) && webSocketEvent.type === event) {
|
|
987
|
+
console.log(`Recebido evento '${event}' para canal '${this.id}'`);
|
|
988
|
+
this.emit(event, webSocketEvent);
|
|
989
|
+
callback(webSocketEvent);
|
|
990
|
+
wsClient.off("message", globalListener);
|
|
991
|
+
console.log(`Listener global para canal '${this.id}' foi removido.`);
|
|
992
|
+
}
|
|
993
|
+
};
|
|
994
|
+
wsClient.on("message", globalListener);
|
|
969
995
|
super.once(event, callback);
|
|
970
996
|
return this;
|
|
971
997
|
}
|
|
@@ -1421,6 +1447,50 @@ var PlaybackInstance = class extends import_events3.EventEmitter {
|
|
|
1421
1447
|
}
|
|
1422
1448
|
playbackData = null;
|
|
1423
1449
|
id;
|
|
1450
|
+
/**
|
|
1451
|
+
* Adiciona um listener para eventos de playback.
|
|
1452
|
+
*/
|
|
1453
|
+
on(event, callback) {
|
|
1454
|
+
super.on(event, callback);
|
|
1455
|
+
return this;
|
|
1456
|
+
}
|
|
1457
|
+
/**
|
|
1458
|
+
* Adiciona um listener para ser chamado apenas uma vez.
|
|
1459
|
+
*/
|
|
1460
|
+
once(event, callback) {
|
|
1461
|
+
console.log({
|
|
1462
|
+
type: "Adiciona um listener para ser chamado apenas uma vez",
|
|
1463
|
+
event
|
|
1464
|
+
});
|
|
1465
|
+
const wsClients = this.client.getWebSocketClients();
|
|
1466
|
+
const wsClient = Array.from(wsClients.values()).find(
|
|
1467
|
+
(client) => client.isConnected()
|
|
1468
|
+
);
|
|
1469
|
+
if (!wsClient) {
|
|
1470
|
+
throw new Error(
|
|
1471
|
+
`Nenhum WebSocket conectado dispon\xEDvel para '${this.id}'.`
|
|
1472
|
+
);
|
|
1473
|
+
}
|
|
1474
|
+
const globalListener = (webSocketEvent) => {
|
|
1475
|
+
if (isPlaybackEvent(webSocketEvent, this.id) && webSocketEvent.type === event) {
|
|
1476
|
+
console.log(`Recebido evento '${event}' para playback '${this.id}'`);
|
|
1477
|
+
this.emit(event, webSocketEvent);
|
|
1478
|
+
callback(webSocketEvent);
|
|
1479
|
+
wsClient.off("message", globalListener);
|
|
1480
|
+
console.log(`Listener global para playback '${this.id}' foi removido.`);
|
|
1481
|
+
}
|
|
1482
|
+
};
|
|
1483
|
+
wsClient.on("message", globalListener);
|
|
1484
|
+
super.once(event, callback);
|
|
1485
|
+
return this;
|
|
1486
|
+
}
|
|
1487
|
+
/**
|
|
1488
|
+
* Remove um listener específico.
|
|
1489
|
+
*/
|
|
1490
|
+
off(event, callback) {
|
|
1491
|
+
super.off(event, callback);
|
|
1492
|
+
return this;
|
|
1493
|
+
}
|
|
1424
1494
|
/**
|
|
1425
1495
|
* Obtém os detalhes do playback.
|
|
1426
1496
|
*/
|
|
@@ -1457,31 +1527,6 @@ var PlaybackInstance = class extends import_events3.EventEmitter {
|
|
|
1457
1527
|
await this.baseClient.delete(`/playbacks/${this.id}`);
|
|
1458
1528
|
this.emit("PlaybackStopped", this.playbackData);
|
|
1459
1529
|
}
|
|
1460
|
-
/**
|
|
1461
|
-
* Adiciona um listener para eventos de playback.
|
|
1462
|
-
*/
|
|
1463
|
-
on(event, callback) {
|
|
1464
|
-
super.on(event, callback);
|
|
1465
|
-
return this;
|
|
1466
|
-
}
|
|
1467
|
-
/**
|
|
1468
|
-
* Adiciona um listener para ser chamado apenas uma vez.
|
|
1469
|
-
*/
|
|
1470
|
-
once(event, callback) {
|
|
1471
|
-
console.log({
|
|
1472
|
-
type: "Adiciona um listener para ser chamado apenas uma vez",
|
|
1473
|
-
event
|
|
1474
|
-
});
|
|
1475
|
-
super.once(event, callback);
|
|
1476
|
-
return this;
|
|
1477
|
-
}
|
|
1478
|
-
/**
|
|
1479
|
-
* Remove um listener específico.
|
|
1480
|
-
*/
|
|
1481
|
-
off(event, callback) {
|
|
1482
|
-
super.off(event, callback);
|
|
1483
|
-
return this;
|
|
1484
|
-
}
|
|
1485
1530
|
};
|
|
1486
1531
|
var Playbacks = class extends import_events3.EventEmitter {
|
|
1487
1532
|
constructor(baseClient, client) {
|