@per_moeller/asterisk-ari 1.0.0
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/LICENSE +21 -0
- package/README.md +291 -0
- package/dist/client.d.ts +123 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +297 -0
- package/dist/client.js.map +1 -0
- package/dist/connection.d.ts +70 -0
- package/dist/connection.d.ts.map +1 -0
- package/dist/connection.js +157 -0
- package/dist/connection.js.map +1 -0
- package/dist/events/emitter.d.ts +82 -0
- package/dist/events/emitter.d.ts.map +1 -0
- package/dist/events/emitter.js +132 -0
- package/dist/events/emitter.js.map +1 -0
- package/dist/events/types.d.ts +283 -0
- package/dist/events/types.d.ts.map +1 -0
- package/dist/events/types.js +5 -0
- package/dist/events/types.js.map +1 -0
- package/dist/index.d.ts +27 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +34 -0
- package/dist/index.js.map +1 -0
- package/dist/models/bridge.d.ts +102 -0
- package/dist/models/bridge.d.ts.map +1 -0
- package/dist/models/bridge.js +186 -0
- package/dist/models/bridge.js.map +1 -0
- package/dist/models/channel.d.ts +166 -0
- package/dist/models/channel.d.ts.map +1 -0
- package/dist/models/channel.js +278 -0
- package/dist/models/channel.js.map +1 -0
- package/dist/models/index.d.ts +8 -0
- package/dist/models/index.d.ts.map +1 -0
- package/dist/models/index.js +8 -0
- package/dist/models/index.js.map +1 -0
- package/dist/models/playback.d.ts +82 -0
- package/dist/models/playback.d.ts.map +1 -0
- package/dist/models/playback.js +146 -0
- package/dist/models/playback.js.map +1 -0
- package/dist/models/recording.d.ts +104 -0
- package/dist/models/recording.d.ts.map +1 -0
- package/dist/models/recording.js +191 -0
- package/dist/models/recording.js.map +1 -0
- package/dist/pool.d.ts +57 -0
- package/dist/pool.d.ts.map +1 -0
- package/dist/pool.js +111 -0
- package/dist/pool.js.map +1 -0
- package/dist/queue.d.ts +85 -0
- package/dist/queue.d.ts.map +1 -0
- package/dist/queue.js +208 -0
- package/dist/queue.js.map +1 -0
- package/dist/resources/applications.d.ts +37 -0
- package/dist/resources/applications.d.ts.map +1 -0
- package/dist/resources/applications.js +45 -0
- package/dist/resources/applications.js.map +1 -0
- package/dist/resources/asterisk.d.ts +71 -0
- package/dist/resources/asterisk.d.ts.map +1 -0
- package/dist/resources/asterisk.js +94 -0
- package/dist/resources/asterisk.js.map +1 -0
- package/dist/resources/base.d.ts +18 -0
- package/dist/resources/base.d.ts.map +1 -0
- package/dist/resources/base.js +21 -0
- package/dist/resources/base.js.map +1 -0
- package/dist/resources/bridges.d.ts +66 -0
- package/dist/resources/bridges.d.ts.map +1 -0
- package/dist/resources/bridges.js +109 -0
- package/dist/resources/bridges.js.map +1 -0
- package/dist/resources/channels.d.ts +130 -0
- package/dist/resources/channels.d.ts.map +1 -0
- package/dist/resources/channels.js +228 -0
- package/dist/resources/channels.js.map +1 -0
- package/dist/resources/devicestates.d.ts +30 -0
- package/dist/resources/devicestates.d.ts.map +1 -0
- package/dist/resources/devicestates.js +37 -0
- package/dist/resources/devicestates.js.map +1 -0
- package/dist/resources/endpoints.d.ts +38 -0
- package/dist/resources/endpoints.d.ts.map +1 -0
- package/dist/resources/endpoints.js +61 -0
- package/dist/resources/endpoints.js.map +1 -0
- package/dist/resources/mailboxes.d.ts +30 -0
- package/dist/resources/mailboxes.d.ts.map +1 -0
- package/dist/resources/mailboxes.js +38 -0
- package/dist/resources/mailboxes.js.map +1 -0
- package/dist/resources/playbacks.d.ts +27 -0
- package/dist/resources/playbacks.d.ts.map +1 -0
- package/dist/resources/playbacks.js +31 -0
- package/dist/resources/playbacks.js.map +1 -0
- package/dist/resources/recordings.d.ts +76 -0
- package/dist/resources/recordings.d.ts.map +1 -0
- package/dist/resources/recordings.js +105 -0
- package/dist/resources/recordings.js.map +1 -0
- package/dist/resources/sounds.d.ts +22 -0
- package/dist/resources/sounds.d.ts.map +1 -0
- package/dist/resources/sounds.js +26 -0
- package/dist/resources/sounds.js.map +1 -0
- package/dist/types/api.d.ts +331 -0
- package/dist/types/api.d.ts.map +1 -0
- package/dist/types/api.js +5 -0
- package/dist/types/api.js.map +1 -0
- package/dist/types/options.d.ts +77 -0
- package/dist/types/options.d.ts.map +1 -0
- package/dist/types/options.js +23 -0
- package/dist/types/options.js.map +1 -0
- package/dist/version.d.ts +86 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +122 -0
- package/dist/version.js.map +1 -0
- package/dist/websocket.d.ts +70 -0
- package/dist/websocket.d.ts.map +1 -0
- package/dist/websocket.js +195 -0
- package/dist/websocket.js.map +1 -0
- package/package.json +59 -0
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Recordings API resource
|
|
3
|
+
*/
|
|
4
|
+
import { BaseResource } from './base.js';
|
|
5
|
+
import { toQueryParams } from '../connection.js';
|
|
6
|
+
/**
|
|
7
|
+
* Stored Recordings API
|
|
8
|
+
*/
|
|
9
|
+
export class StoredRecordingsResource extends BaseResource {
|
|
10
|
+
constructor(http, version) {
|
|
11
|
+
super(http, version);
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* List all stored recordings
|
|
15
|
+
*/
|
|
16
|
+
async list() {
|
|
17
|
+
return this.http.get('/recordings/stored');
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Get a stored recording's details
|
|
21
|
+
*/
|
|
22
|
+
async get(recordingName) {
|
|
23
|
+
return this.http.get(`/recordings/stored/${encodeURIComponent(recordingName)}`);
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Get the file for a stored recording
|
|
27
|
+
*/
|
|
28
|
+
async getFile(recordingName) {
|
|
29
|
+
return this.http.get(`/recordings/stored/${encodeURIComponent(recordingName)}/file`);
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Copy a stored recording
|
|
33
|
+
*/
|
|
34
|
+
async copy(recordingName, params) {
|
|
35
|
+
return this.http.post(`/recordings/stored/${encodeURIComponent(recordingName)}/copy`, undefined, toQueryParams(params));
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Delete a stored recording
|
|
39
|
+
*/
|
|
40
|
+
async delete(recordingName) {
|
|
41
|
+
return this.http.delete(`/recordings/stored/${encodeURIComponent(recordingName)}`);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Live Recordings API
|
|
46
|
+
*/
|
|
47
|
+
export class LiveRecordingsResource extends BaseResource {
|
|
48
|
+
constructor(http, version) {
|
|
49
|
+
super(http, version);
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Get a live recording's details
|
|
53
|
+
*/
|
|
54
|
+
async get(recordingName) {
|
|
55
|
+
return this.http.get(`/recordings/live/${encodeURIComponent(recordingName)}`);
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Stop and store a live recording
|
|
59
|
+
*/
|
|
60
|
+
async stop(recordingName) {
|
|
61
|
+
return this.http.post(`/recordings/live/${encodeURIComponent(recordingName)}/stop`);
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Pause a live recording
|
|
65
|
+
*/
|
|
66
|
+
async pause(recordingName) {
|
|
67
|
+
return this.http.post(`/recordings/live/${encodeURIComponent(recordingName)}/pause`);
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Unpause a live recording
|
|
71
|
+
*/
|
|
72
|
+
async unpause(recordingName) {
|
|
73
|
+
return this.http.delete(`/recordings/live/${encodeURIComponent(recordingName)}/pause`);
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Mute a live recording
|
|
77
|
+
*/
|
|
78
|
+
async mute(recordingName) {
|
|
79
|
+
return this.http.post(`/recordings/live/${encodeURIComponent(recordingName)}/mute`);
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Unmute a live recording
|
|
83
|
+
*/
|
|
84
|
+
async unmute(recordingName) {
|
|
85
|
+
return this.http.delete(`/recordings/live/${encodeURIComponent(recordingName)}/mute`);
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Cancel and discard a live recording
|
|
89
|
+
*/
|
|
90
|
+
async cancel(recordingName) {
|
|
91
|
+
return this.http.delete(`/recordings/live/${encodeURIComponent(recordingName)}`);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Combined Recordings API
|
|
96
|
+
*/
|
|
97
|
+
export class RecordingsResource {
|
|
98
|
+
stored;
|
|
99
|
+
live;
|
|
100
|
+
constructor(http, version) {
|
|
101
|
+
this.stored = new StoredRecordingsResource(http, version);
|
|
102
|
+
this.live = new LiveRecordingsResource(http, version);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=recordings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recordings.js","sourceRoot":"","sources":["../../src/resources/recordings.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sounds API resource
|
|
3
|
+
*/
|
|
4
|
+
import { BaseResource } from './base.js';
|
|
5
|
+
import type { HttpConnection } from '../connection.js';
|
|
6
|
+
import type { VersionCompat } from '../version.js';
|
|
7
|
+
import type { Sound, ListSoundsParams } from '../types/api.js';
|
|
8
|
+
/**
|
|
9
|
+
* Sounds API - List available sounds
|
|
10
|
+
*/
|
|
11
|
+
export declare class SoundsResource extends BaseResource {
|
|
12
|
+
constructor(http: HttpConnection, version: VersionCompat);
|
|
13
|
+
/**
|
|
14
|
+
* List all sounds
|
|
15
|
+
*/
|
|
16
|
+
list(params?: ListSoundsParams): Promise<Sound[]>;
|
|
17
|
+
/**
|
|
18
|
+
* Get a specific sound
|
|
19
|
+
*/
|
|
20
|
+
get(soundId: string): Promise<Sound>;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=sounds.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sounds.d.ts","sourceRoot":"","sources":["../../src/resources/sounds.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,KAAK,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAE/D;;GAEG;AACH,qBAAa,cAAe,SAAQ,YAAY;gBAClC,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,aAAa;IAIxD;;OAEG;IACG,IAAI,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAIvD;;OAEG;IACG,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;CAG3C"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sounds API resource
|
|
3
|
+
*/
|
|
4
|
+
import { BaseResource } from './base.js';
|
|
5
|
+
import { toQueryParams } from '../connection.js';
|
|
6
|
+
/**
|
|
7
|
+
* Sounds API - List available sounds
|
|
8
|
+
*/
|
|
9
|
+
export class SoundsResource extends BaseResource {
|
|
10
|
+
constructor(http, version) {
|
|
11
|
+
super(http, version);
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* List all sounds
|
|
15
|
+
*/
|
|
16
|
+
async list(params) {
|
|
17
|
+
return this.http.get('/sounds', toQueryParams(params));
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Get a specific sound
|
|
21
|
+
*/
|
|
22
|
+
async get(soundId) {
|
|
23
|
+
return this.http.get(`/sounds/${encodeURIComponent(soundId)}`);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=sounds.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sounds.js","sourceRoot":"","sources":["../../src/resources/sounds.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAIjD;;GAEG;AACH,MAAM,OAAO,cAAe,SAAQ,YAAY;IAC9C,YAAY,IAAoB,EAAE,OAAsB;QACtD,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,CAAC,MAAyB;QAClC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAU,SAAS,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;IAClE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,GAAG,CAAC,OAAe;QACvB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAQ,WAAW,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACxE,CAAC;CACF"}
|
|
@@ -0,0 +1,331 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* API request and response types for Asterisk ARI
|
|
3
|
+
*/
|
|
4
|
+
export type ChannelState = 'Down' | 'Rsrvd' | 'OffHook' | 'Dialing' | 'Ring' | 'Ringing' | 'Up' | 'Busy' | 'Dialing Offhook' | 'Pre-ring' | 'Unknown';
|
|
5
|
+
export interface CallerId {
|
|
6
|
+
name: string;
|
|
7
|
+
number: string;
|
|
8
|
+
}
|
|
9
|
+
export interface DialplanCEP {
|
|
10
|
+
context: string;
|
|
11
|
+
exten: string;
|
|
12
|
+
priority: number;
|
|
13
|
+
app_name?: string;
|
|
14
|
+
app_data?: string;
|
|
15
|
+
}
|
|
16
|
+
export interface RTPstat {
|
|
17
|
+
txcount: number;
|
|
18
|
+
rxcount: number;
|
|
19
|
+
txjitter?: number;
|
|
20
|
+
rxjitter?: number;
|
|
21
|
+
remote_maxjitter?: number;
|
|
22
|
+
remote_minjitter?: number;
|
|
23
|
+
remote_normdevjitter?: number;
|
|
24
|
+
remote_stdevjitter?: number;
|
|
25
|
+
local_maxjitter?: number;
|
|
26
|
+
local_minjitter?: number;
|
|
27
|
+
local_normdevjitter?: number;
|
|
28
|
+
local_stdevjitter?: number;
|
|
29
|
+
txploss: number;
|
|
30
|
+
rxploss: number;
|
|
31
|
+
remote_maxrxploss?: number;
|
|
32
|
+
remote_minrxploss?: number;
|
|
33
|
+
remote_normdevrxploss?: number;
|
|
34
|
+
remote_stdevrxploss?: number;
|
|
35
|
+
local_maxrxploss?: number;
|
|
36
|
+
local_minrxploss?: number;
|
|
37
|
+
local_normdevrxploss?: number;
|
|
38
|
+
local_stdevrxploss?: number;
|
|
39
|
+
rtt?: number;
|
|
40
|
+
maxrtt?: number;
|
|
41
|
+
minrtt?: number;
|
|
42
|
+
normdevrtt?: number;
|
|
43
|
+
stdevrtt?: number;
|
|
44
|
+
local_ssrc: number;
|
|
45
|
+
remote_ssrc: number;
|
|
46
|
+
txoctetcount: number;
|
|
47
|
+
rxoctetcount: number;
|
|
48
|
+
channel_uniqueid: string;
|
|
49
|
+
}
|
|
50
|
+
export interface Channel {
|
|
51
|
+
id: string;
|
|
52
|
+
name: string;
|
|
53
|
+
state: ChannelState;
|
|
54
|
+
caller: CallerId;
|
|
55
|
+
connected: CallerId;
|
|
56
|
+
accountcode: string;
|
|
57
|
+
dialplan: DialplanCEP;
|
|
58
|
+
creationtime: string;
|
|
59
|
+
language: string;
|
|
60
|
+
channelvars?: Record<string, string>;
|
|
61
|
+
/** Protocol ID (Asterisk 20+) */
|
|
62
|
+
protocol_id?: string;
|
|
63
|
+
}
|
|
64
|
+
export interface OriginateParams {
|
|
65
|
+
endpoint: string;
|
|
66
|
+
extension?: string;
|
|
67
|
+
context?: string;
|
|
68
|
+
priority?: number;
|
|
69
|
+
label?: string;
|
|
70
|
+
app?: string;
|
|
71
|
+
appArgs?: string;
|
|
72
|
+
callerId?: string;
|
|
73
|
+
timeout?: number;
|
|
74
|
+
channelId?: string;
|
|
75
|
+
otherChannelId?: string;
|
|
76
|
+
originator?: string;
|
|
77
|
+
formats?: string;
|
|
78
|
+
variables?: Record<string, string>;
|
|
79
|
+
}
|
|
80
|
+
export interface CreateChannelParams {
|
|
81
|
+
endpoint: string;
|
|
82
|
+
app: string;
|
|
83
|
+
appArgs?: string;
|
|
84
|
+
channelId?: string;
|
|
85
|
+
otherChannelId?: string;
|
|
86
|
+
originator?: string;
|
|
87
|
+
formats?: string;
|
|
88
|
+
variables?: Record<string, string>;
|
|
89
|
+
}
|
|
90
|
+
export interface HangupParams {
|
|
91
|
+
reason_code?: string;
|
|
92
|
+
reason?: string;
|
|
93
|
+
}
|
|
94
|
+
export interface ContinueParams {
|
|
95
|
+
context?: string;
|
|
96
|
+
extension?: string;
|
|
97
|
+
priority?: number;
|
|
98
|
+
label?: string;
|
|
99
|
+
}
|
|
100
|
+
export interface MoveParams {
|
|
101
|
+
app: string;
|
|
102
|
+
appArgs?: string;
|
|
103
|
+
}
|
|
104
|
+
export interface DTMFParams {
|
|
105
|
+
dtmf: string;
|
|
106
|
+
before?: number;
|
|
107
|
+
between?: number;
|
|
108
|
+
duration?: number;
|
|
109
|
+
after?: number;
|
|
110
|
+
}
|
|
111
|
+
export interface PlayParams {
|
|
112
|
+
media: string | string[];
|
|
113
|
+
lang?: string;
|
|
114
|
+
offsetms?: number;
|
|
115
|
+
skipms?: number;
|
|
116
|
+
playbackId?: string;
|
|
117
|
+
}
|
|
118
|
+
export interface RecordParams {
|
|
119
|
+
name: string;
|
|
120
|
+
format: string;
|
|
121
|
+
maxDurationSeconds?: number;
|
|
122
|
+
maxSilenceSeconds?: number;
|
|
123
|
+
ifExists?: 'fail' | 'overwrite' | 'append';
|
|
124
|
+
beep?: boolean;
|
|
125
|
+
terminateOn?: string;
|
|
126
|
+
}
|
|
127
|
+
export interface SnoopParams {
|
|
128
|
+
spy?: 'none' | 'both' | 'out' | 'in';
|
|
129
|
+
whisper?: 'none' | 'both' | 'out' | 'in';
|
|
130
|
+
app: string;
|
|
131
|
+
appArgs?: string;
|
|
132
|
+
snoopId?: string;
|
|
133
|
+
}
|
|
134
|
+
export interface DialParams {
|
|
135
|
+
caller?: string;
|
|
136
|
+
timeout?: number;
|
|
137
|
+
}
|
|
138
|
+
export interface ExternalMediaParams {
|
|
139
|
+
channelId?: string;
|
|
140
|
+
app: string;
|
|
141
|
+
external_host: string;
|
|
142
|
+
encapsulation?: 'rtp' | 'audiosocket';
|
|
143
|
+
transport?: 'udp' | 'tcp';
|
|
144
|
+
connection_type?: 'client' | 'server';
|
|
145
|
+
format: string;
|
|
146
|
+
direction?: 'both' | 'read' | 'write';
|
|
147
|
+
data?: string;
|
|
148
|
+
variables?: Record<string, string>;
|
|
149
|
+
}
|
|
150
|
+
export type BridgeType = 'mixing' | 'holding' | 'dtmf_events' | 'proxy_media' | 'video_sfu' | 'video_single';
|
|
151
|
+
export interface Bridge {
|
|
152
|
+
id: string;
|
|
153
|
+
technology: string;
|
|
154
|
+
bridge_type: BridgeType;
|
|
155
|
+
bridge_class: string;
|
|
156
|
+
creator: string;
|
|
157
|
+
name: string;
|
|
158
|
+
channels: string[];
|
|
159
|
+
video_mode?: 'none' | 'talker' | 'single';
|
|
160
|
+
video_source_id?: string;
|
|
161
|
+
creationtime: string;
|
|
162
|
+
}
|
|
163
|
+
export interface CreateBridgeParams {
|
|
164
|
+
type?: BridgeType | string;
|
|
165
|
+
bridgeId?: string;
|
|
166
|
+
name?: string;
|
|
167
|
+
}
|
|
168
|
+
export interface AddChannelParams {
|
|
169
|
+
channel: string | string[];
|
|
170
|
+
role?: string;
|
|
171
|
+
absorbDTMF?: boolean;
|
|
172
|
+
mute?: boolean;
|
|
173
|
+
inhibitConnectedLineUpdates?: boolean;
|
|
174
|
+
}
|
|
175
|
+
export interface RemoveChannelParams {
|
|
176
|
+
channel: string | string[];
|
|
177
|
+
}
|
|
178
|
+
export interface PlayBridgeParams extends PlayParams {
|
|
179
|
+
}
|
|
180
|
+
export interface RecordBridgeParams extends RecordParams {
|
|
181
|
+
}
|
|
182
|
+
export type EndpointState = 'unknown' | 'offline' | 'online';
|
|
183
|
+
export interface Endpoint {
|
|
184
|
+
technology: string;
|
|
185
|
+
resource: string;
|
|
186
|
+
state: EndpointState;
|
|
187
|
+
channel_ids: string[];
|
|
188
|
+
}
|
|
189
|
+
export interface TextMessage {
|
|
190
|
+
from: string;
|
|
191
|
+
to: string;
|
|
192
|
+
body: string;
|
|
193
|
+
variables?: Record<string, string>;
|
|
194
|
+
}
|
|
195
|
+
export interface Application {
|
|
196
|
+
name: string;
|
|
197
|
+
channel_ids: string[];
|
|
198
|
+
bridge_ids: string[];
|
|
199
|
+
endpoint_ids: string[];
|
|
200
|
+
device_names: string[];
|
|
201
|
+
}
|
|
202
|
+
export interface SubscribeParams {
|
|
203
|
+
eventSource: string | string[];
|
|
204
|
+
}
|
|
205
|
+
export type PlaybackState = 'queued' | 'playing' | 'paused' | 'complete' | 'failed';
|
|
206
|
+
export interface Playback {
|
|
207
|
+
id: string;
|
|
208
|
+
media_uri: string;
|
|
209
|
+
next_media_uri?: string;
|
|
210
|
+
target_uri: string;
|
|
211
|
+
language: string;
|
|
212
|
+
state: PlaybackState;
|
|
213
|
+
}
|
|
214
|
+
export type RecordingState = 'queued' | 'recording' | 'paused' | 'done' | 'failed' | 'canceled';
|
|
215
|
+
export interface LiveRecording {
|
|
216
|
+
name: string;
|
|
217
|
+
format: string;
|
|
218
|
+
state: RecordingState;
|
|
219
|
+
target_uri: string;
|
|
220
|
+
duration?: number;
|
|
221
|
+
talking_duration?: number;
|
|
222
|
+
silence_duration?: number;
|
|
223
|
+
cause?: string;
|
|
224
|
+
}
|
|
225
|
+
export interface StoredRecording {
|
|
226
|
+
name: string;
|
|
227
|
+
format: string;
|
|
228
|
+
}
|
|
229
|
+
export interface StoredRecordingCopyParams {
|
|
230
|
+
destinationRecordingName: string;
|
|
231
|
+
}
|
|
232
|
+
export interface Sound {
|
|
233
|
+
id: string;
|
|
234
|
+
text?: string;
|
|
235
|
+
formats: FormatLangPair[];
|
|
236
|
+
}
|
|
237
|
+
export interface FormatLangPair {
|
|
238
|
+
language: string;
|
|
239
|
+
format: string;
|
|
240
|
+
}
|
|
241
|
+
export interface ListSoundsParams {
|
|
242
|
+
lang?: string;
|
|
243
|
+
format?: string;
|
|
244
|
+
}
|
|
245
|
+
export interface Mailbox {
|
|
246
|
+
name: string;
|
|
247
|
+
old_messages: number;
|
|
248
|
+
new_messages: number;
|
|
249
|
+
}
|
|
250
|
+
export interface UpdateMailboxParams {
|
|
251
|
+
oldMessages: number;
|
|
252
|
+
newMessages: number;
|
|
253
|
+
}
|
|
254
|
+
export type DeviceState = 'UNKNOWN' | 'NOT_INUSE' | 'INUSE' | 'BUSY' | 'INVALID' | 'UNAVAILABLE' | 'RINGING' | 'RINGINUSE' | 'ONHOLD';
|
|
255
|
+
export interface DeviceStateResource {
|
|
256
|
+
name: string;
|
|
257
|
+
state: DeviceState;
|
|
258
|
+
}
|
|
259
|
+
export interface AsteriskInfo {
|
|
260
|
+
build?: BuildInfo;
|
|
261
|
+
system?: SystemInfo;
|
|
262
|
+
config?: ConfigInfo;
|
|
263
|
+
status?: StatusInfo;
|
|
264
|
+
}
|
|
265
|
+
export interface BuildInfo {
|
|
266
|
+
os: string;
|
|
267
|
+
kernel: string;
|
|
268
|
+
options: string;
|
|
269
|
+
machine: string;
|
|
270
|
+
date: string;
|
|
271
|
+
user: string;
|
|
272
|
+
}
|
|
273
|
+
export interface SystemInfo {
|
|
274
|
+
version: string;
|
|
275
|
+
entity_id: string;
|
|
276
|
+
}
|
|
277
|
+
export interface ConfigInfo {
|
|
278
|
+
name: string;
|
|
279
|
+
default_language: string;
|
|
280
|
+
max_channels?: number;
|
|
281
|
+
max_open_files?: number;
|
|
282
|
+
max_load?: number;
|
|
283
|
+
setid?: SetId;
|
|
284
|
+
}
|
|
285
|
+
export interface SetId {
|
|
286
|
+
user: string;
|
|
287
|
+
group: string;
|
|
288
|
+
}
|
|
289
|
+
export interface StatusInfo {
|
|
290
|
+
startup_time: string;
|
|
291
|
+
last_reload_time: string;
|
|
292
|
+
}
|
|
293
|
+
export interface Variable {
|
|
294
|
+
value: string;
|
|
295
|
+
}
|
|
296
|
+
export interface Module {
|
|
297
|
+
name: string;
|
|
298
|
+
description: string;
|
|
299
|
+
use_count: number;
|
|
300
|
+
status: string;
|
|
301
|
+
support_level: string;
|
|
302
|
+
}
|
|
303
|
+
export interface LogChannel {
|
|
304
|
+
channel: string;
|
|
305
|
+
type: string;
|
|
306
|
+
status: string;
|
|
307
|
+
configuration: string;
|
|
308
|
+
}
|
|
309
|
+
export interface AriInfo {
|
|
310
|
+
apiVersion: string;
|
|
311
|
+
swaggerVersion: string;
|
|
312
|
+
basePath: string;
|
|
313
|
+
resourcePath: string;
|
|
314
|
+
apis: ApiDeclaration[];
|
|
315
|
+
models?: Record<string, unknown>;
|
|
316
|
+
}
|
|
317
|
+
export interface ApiDeclaration {
|
|
318
|
+
path: string;
|
|
319
|
+
description?: string;
|
|
320
|
+
}
|
|
321
|
+
export interface ResourcesJson {
|
|
322
|
+
apiVersion: string;
|
|
323
|
+
swaggerVersion: string;
|
|
324
|
+
basePath: string;
|
|
325
|
+
apis: ApiListing[];
|
|
326
|
+
}
|
|
327
|
+
export interface ApiListing {
|
|
328
|
+
path: string;
|
|
329
|
+
description: string;
|
|
330
|
+
}
|
|
331
|
+
//# sourceMappingURL=api.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/types/api.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/types/api.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Connection options for ARI client
|
|
3
|
+
*/
|
|
4
|
+
export interface ConnectOptions {
|
|
5
|
+
/** Base URL of the Asterisk server (e.g., 'http://localhost:8088') */
|
|
6
|
+
url: string;
|
|
7
|
+
/** ARI username */
|
|
8
|
+
username: string;
|
|
9
|
+
/** ARI password */
|
|
10
|
+
password: string;
|
|
11
|
+
/** Stasis application name(s) - can be a single app or comma-separated list */
|
|
12
|
+
app: string;
|
|
13
|
+
/** Subscribe to all Asterisk events (default: false) */
|
|
14
|
+
subscribeAll?: boolean;
|
|
15
|
+
/** Enable automatic WebSocket reconnection (default: true) */
|
|
16
|
+
reconnect?: boolean;
|
|
17
|
+
/** Initial reconnect interval in ms (default: 1000) */
|
|
18
|
+
reconnectInterval?: number;
|
|
19
|
+
/** Maximum reconnect interval in ms (default: 30000) */
|
|
20
|
+
maxReconnectInterval?: number;
|
|
21
|
+
/** Backoff multiplier for reconnection delay (default: 1.5) */
|
|
22
|
+
reconnectBackoffMultiplier?: number;
|
|
23
|
+
/** WebSocket ping interval in ms (default: 30000) */
|
|
24
|
+
pingInterval?: number;
|
|
25
|
+
/** Ping response timeout in ms (default: 5000) */
|
|
26
|
+
pingTimeout?: number;
|
|
27
|
+
/** HTTP request timeout in ms (default: 30000) */
|
|
28
|
+
requestTimeout?: number;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Internal resolved options with defaults applied
|
|
32
|
+
*/
|
|
33
|
+
export interface ResolvedOptions {
|
|
34
|
+
url: string;
|
|
35
|
+
username: string;
|
|
36
|
+
password: string;
|
|
37
|
+
app: string;
|
|
38
|
+
subscribeAll: boolean;
|
|
39
|
+
reconnect: boolean;
|
|
40
|
+
reconnectInterval: number;
|
|
41
|
+
maxReconnectInterval: number;
|
|
42
|
+
reconnectBackoffMultiplier: number;
|
|
43
|
+
pingInterval: number;
|
|
44
|
+
pingTimeout: number;
|
|
45
|
+
requestTimeout: number;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Default connection options
|
|
49
|
+
*/
|
|
50
|
+
export declare const DEFAULT_OPTIONS: Omit<ResolvedOptions, 'url' | 'username' | 'password' | 'app'>;
|
|
51
|
+
/**
|
|
52
|
+
* Resolve options with defaults
|
|
53
|
+
*/
|
|
54
|
+
export declare function resolveOptions(options: ConnectOptions): ResolvedOptions;
|
|
55
|
+
/**
|
|
56
|
+
* Connection pool options
|
|
57
|
+
*/
|
|
58
|
+
export interface PoolOptions extends ConnectOptions {
|
|
59
|
+
/** Number of connections in the pool (default: 5) */
|
|
60
|
+
poolSize?: number;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Request queue options
|
|
64
|
+
*/
|
|
65
|
+
export interface QueueOptions {
|
|
66
|
+
/** Maximum concurrent requests (default: 10) */
|
|
67
|
+
maxConcurrent?: number;
|
|
68
|
+
/** Maximum retry attempts (default: 3) */
|
|
69
|
+
maxRetries?: number;
|
|
70
|
+
/** Initial retry delay in ms (default: 1000) */
|
|
71
|
+
retryDelay?: number;
|
|
72
|
+
/** Failures before opening circuit breaker (default: 5) */
|
|
73
|
+
circuitBreakerThreshold?: number;
|
|
74
|
+
/** Time before half-open state in ms (default: 30000) */
|
|
75
|
+
circuitBreakerTimeout?: number;
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=options.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/types/options.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,sEAAsE;IACtE,GAAG,EAAE,MAAM,CAAC;IACZ,mBAAmB;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,mBAAmB;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,+EAA+E;IAC/E,GAAG,EAAE,MAAM,CAAC;IACZ,wDAAwD;IACxD,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,8DAA8D;IAC9D,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,uDAAuD;IACvD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,wDAAwD;IACxD,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,+DAA+D;IAC/D,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,qDAAqD;IACrD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kDAAkD;IAClD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kDAAkD;IAClD,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,OAAO,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,0BAA0B,EAAE,MAAM,CAAC;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,IAAI,CAAC,eAAe,EAAE,KAAK,GAAG,UAAU,GAAG,UAAU,GAAG,KAAK,CAS1F,CAAC;AAEF;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,cAAc,GAAG,eAAe,CAKvE;AAED;;GAEG;AACH,MAAM,WAAW,WAAY,SAAQ,cAAc;IACjD,qDAAqD;IACrD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,gDAAgD;IAChD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,0CAA0C;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gDAAgD;IAChD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2DAA2D;IAC3D,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,yDAAyD;IACzD,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Default connection options
|
|
3
|
+
*/
|
|
4
|
+
export const DEFAULT_OPTIONS = {
|
|
5
|
+
subscribeAll: false,
|
|
6
|
+
reconnect: true,
|
|
7
|
+
reconnectInterval: 1000,
|
|
8
|
+
maxReconnectInterval: 30000,
|
|
9
|
+
reconnectBackoffMultiplier: 1.5,
|
|
10
|
+
pingInterval: 30000,
|
|
11
|
+
pingTimeout: 5000,
|
|
12
|
+
requestTimeout: 30000,
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Resolve options with defaults
|
|
16
|
+
*/
|
|
17
|
+
export function resolveOptions(options) {
|
|
18
|
+
return {
|
|
19
|
+
...DEFAULT_OPTIONS,
|
|
20
|
+
...options,
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=options.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"options.js","sourceRoot":"","sources":["../../src/types/options.ts"],"names":[],"mappings":"AAgDA;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAmE;IAC7F,YAAY,EAAE,KAAK;IACnB,SAAS,EAAE,IAAI;IACf,iBAAiB,EAAE,IAAI;IACvB,oBAAoB,EAAE,KAAK;IAC3B,0BAA0B,EAAE,GAAG;IAC/B,YAAY,EAAE,KAAK;IACnB,WAAW,EAAE,IAAI;IACjB,cAAc,EAAE,KAAK;CACtB,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,OAAuB;IACpD,OAAO;QACL,GAAG,eAAe;QAClB,GAAG,OAAO;KACX,CAAC;AACJ,CAAC"}
|