@gibme/asterisk-gateway-interface 1.0.1 → 1.0.2
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.
|
@@ -9,7 +9,7 @@ export { ChannelState, DialStatus, PlaybackStatus } from './types';
|
|
|
9
9
|
export default class AsteriskGatewayInterface extends EventEmitter {
|
|
10
10
|
readonly port: number;
|
|
11
11
|
readonly ip: string;
|
|
12
|
-
private readonly
|
|
12
|
+
private readonly server;
|
|
13
13
|
/**
|
|
14
14
|
* Constructs a new instance of the object
|
|
15
15
|
* @param port
|
|
@@ -16,7 +16,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
16
16
|
};
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
exports.PlaybackStatus = exports.DialStatus = exports.ChannelState = exports.Channel = void 0;
|
|
19
|
-
const
|
|
19
|
+
const tcp_server_1 = require("@gibme/tcp-server");
|
|
20
20
|
const events_1 = require("events");
|
|
21
21
|
const channel_1 = __importDefault(require("./channel"));
|
|
22
22
|
exports.Channel = channel_1.default;
|
|
@@ -38,13 +38,14 @@ class AsteriskGatewayInterface extends events_1.EventEmitter {
|
|
|
38
38
|
super();
|
|
39
39
|
this.port = port;
|
|
40
40
|
this.ip = ip;
|
|
41
|
-
this.
|
|
41
|
+
this.server = (0, tcp_server_1.createServer)();
|
|
42
42
|
this.setMaxListeners(maximumListeners);
|
|
43
|
-
this.
|
|
43
|
+
this.server.on('connection', (socket) => {
|
|
44
44
|
const channel = new channel_1.default(socket);
|
|
45
45
|
channel.on('ready', () => this.emit('channel', channel));
|
|
46
46
|
});
|
|
47
|
-
this.
|
|
47
|
+
this.server.on('error', error => this.emit('error', error));
|
|
48
|
+
this.server.on('close', () => this.emit('close'));
|
|
48
49
|
}
|
|
49
50
|
on(event, listener) {
|
|
50
51
|
return super.on(event, listener);
|
|
@@ -54,16 +55,7 @@ class AsteriskGatewayInterface extends events_1.EventEmitter {
|
|
|
54
55
|
*/
|
|
55
56
|
start() {
|
|
56
57
|
return __awaiter(this, void 0, void 0, function* () {
|
|
57
|
-
return
|
|
58
|
-
this.m_server.once('error', error => {
|
|
59
|
-
return reject(error);
|
|
60
|
-
});
|
|
61
|
-
this.m_server.listen(this.port, this.ip, () => {
|
|
62
|
-
this.m_server.removeAllListeners('error');
|
|
63
|
-
this.m_server.on('error', error => this.emit('error', error));
|
|
64
|
-
return resolve();
|
|
65
|
-
});
|
|
66
|
-
});
|
|
58
|
+
return this.server.start(this.port, this.ip);
|
|
67
59
|
});
|
|
68
60
|
}
|
|
69
61
|
/**
|
|
@@ -71,17 +63,7 @@ class AsteriskGatewayInterface extends events_1.EventEmitter {
|
|
|
71
63
|
*/
|
|
72
64
|
stop() {
|
|
73
65
|
return __awaiter(this, void 0, void 0, function* () {
|
|
74
|
-
|
|
75
|
-
return;
|
|
76
|
-
}
|
|
77
|
-
return new Promise((resolve, reject) => {
|
|
78
|
-
this.m_server.close((error) => {
|
|
79
|
-
if (error) {
|
|
80
|
-
return reject(error);
|
|
81
|
-
}
|
|
82
|
-
return resolve();
|
|
83
|
-
});
|
|
84
|
-
});
|
|
66
|
+
return this.server.stop();
|
|
85
67
|
});
|
|
86
68
|
}
|
|
87
69
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gibme/asterisk-gateway-interface",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.2",
|
|
4
4
|
"description": "Simple Asterisk Gateway Interface Helper",
|
|
5
5
|
"main": "dist/asterisk-gateway-interface.js",
|
|
6
6
|
"types": "dist/asterisk-gateway-interface.d.ts",
|
|
@@ -32,6 +32,7 @@
|
|
|
32
32
|
"email": "brandonlehmann@gmail.com"
|
|
33
33
|
},
|
|
34
34
|
"dependencies": {
|
|
35
|
+
"@gibme/tcp-server": "^1.0.0",
|
|
35
36
|
"@gibme/timer": "^1.0.0",
|
|
36
37
|
"@types/uuid": "^8.3.4",
|
|
37
38
|
"dotenv": "^16.0.3",
|