@per_moeller/asterisk-ari 1.0.3 → 1.0.4
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/client.d.ts +360 -22
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +374 -29
- package/dist/client.js.map +1 -1
- package/dist/connection.d.ts +132 -12
- package/dist/connection.d.ts.map +1 -1
- package/dist/connection.js +121 -10
- package/dist/connection.js.map +1 -1
- package/dist/events/emitter.d.ts +213 -21
- package/dist/events/emitter.d.ts.map +1 -1
- package/dist/events/emitter.js +163 -17
- package/dist/events/emitter.js.map +1 -1
- package/dist/events/types.d.ts +386 -3
- package/dist/events/types.d.ts.map +1 -1
- package/dist/events/types.js +5 -0
- package/dist/events/types.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/models/channel.d.ts +349 -32
- package/dist/models/channel.d.ts.map +1 -1
- package/dist/models/channel.js +348 -34
- package/dist/models/channel.js.map +1 -1
- package/dist/pool.d.ts +152 -11
- package/dist/pool.d.ts.map +1 -1
- package/dist/pool.js +152 -11
- package/dist/pool.js.map +1 -1
- package/dist/queue.d.ts +130 -16
- package/dist/queue.d.ts.map +1 -1
- package/dist/queue.js +123 -16
- package/dist/queue.js.map +1 -1
- package/dist/types/api.d.ts +655 -1
- package/dist/types/api.d.ts.map +1 -1
- package/dist/types/api.js +5 -0
- package/dist/types/api.js.map +1 -1
- package/dist/version.d.ts +163 -26
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +143 -22
- package/dist/version.js.map +1 -1
- package/package.json +1 -1
package/dist/connection.d.ts
CHANGED
|
@@ -1,66 +1,186 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* HTTP connection manager using native fetch
|
|
3
|
+
*
|
|
4
|
+
* This module provides the HTTP layer for communicating with the Asterisk
|
|
5
|
+
* ARI REST API endpoints.
|
|
6
|
+
*
|
|
7
|
+
* @packageDocumentation
|
|
3
8
|
*/
|
|
4
9
|
import type { ResolvedOptions } from './types/options.js';
|
|
5
10
|
/**
|
|
6
|
-
* ARI
|
|
11
|
+
* Error thrown when an ARI HTTP request fails.
|
|
12
|
+
*
|
|
13
|
+
* Contains the HTTP status code and the response body (if available)
|
|
14
|
+
* for debugging purposes.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```typescript
|
|
18
|
+
* try {
|
|
19
|
+
* await client.channels.get('non-existent-id');
|
|
20
|
+
* } catch (error) {
|
|
21
|
+
* if (error instanceof AriHttpError) {
|
|
22
|
+
* console.log(`Status: ${error.statusCode}`);
|
|
23
|
+
* console.log(`Response: ${JSON.stringify(error.response)}`);
|
|
24
|
+
* }
|
|
25
|
+
* }
|
|
26
|
+
* ```
|
|
7
27
|
*/
|
|
8
28
|
export declare class AriHttpError extends Error {
|
|
9
29
|
statusCode: number;
|
|
10
30
|
response?: unknown | undefined;
|
|
31
|
+
/**
|
|
32
|
+
* Creates a new ARI HTTP error.
|
|
33
|
+
*
|
|
34
|
+
* @param message - Error message describing what went wrong
|
|
35
|
+
* @param statusCode - HTTP status code (0 for network errors)
|
|
36
|
+
* @param response - Response body from the server (if available)
|
|
37
|
+
*/
|
|
11
38
|
constructor(message: string, statusCode: number, response?: unknown | undefined);
|
|
12
39
|
}
|
|
13
40
|
/**
|
|
14
|
-
* Query
|
|
41
|
+
* Query parameters for HTTP requests.
|
|
42
|
+
*
|
|
43
|
+
* Supports string, number, boolean, and string array values.
|
|
44
|
+
* Undefined values are automatically filtered out.
|
|
15
45
|
*/
|
|
16
46
|
export type QueryParams = Record<string, string | number | boolean | string[] | undefined>;
|
|
17
47
|
/**
|
|
18
|
-
* Convert
|
|
48
|
+
* Convert an object to query parameters.
|
|
49
|
+
*
|
|
50
|
+
* This is a simple type assertion helper for converting typed objects
|
|
51
|
+
* to the generic QueryParams type.
|
|
52
|
+
*
|
|
53
|
+
* @param obj - Object to convert
|
|
54
|
+
* @returns Query parameters object or undefined
|
|
55
|
+
*
|
|
56
|
+
* @internal
|
|
19
57
|
*/
|
|
20
58
|
export declare function toQueryParams(obj?: object): QueryParams | undefined;
|
|
21
59
|
/**
|
|
22
|
-
*
|
|
60
|
+
* Options for making HTTP requests.
|
|
61
|
+
*
|
|
62
|
+
* @internal
|
|
23
63
|
*/
|
|
24
64
|
export interface RequestOptions {
|
|
65
|
+
/** HTTP method (default: 'GET') */
|
|
25
66
|
method?: 'GET' | 'POST' | 'PUT' | 'DELETE';
|
|
67
|
+
/** Request body (will be JSON-serialized) */
|
|
26
68
|
body?: unknown;
|
|
69
|
+
/** Query parameters to append to the URL */
|
|
27
70
|
query?: QueryParams;
|
|
71
|
+
/** Request timeout in milliseconds (overrides default) */
|
|
28
72
|
timeout?: number;
|
|
29
73
|
}
|
|
30
74
|
/**
|
|
31
|
-
* HTTP connection manager for ARI REST API
|
|
75
|
+
* HTTP connection manager for ARI REST API.
|
|
76
|
+
*
|
|
77
|
+
* Handles all HTTP communication with Asterisk, including authentication,
|
|
78
|
+
* request timeouts, and error handling.
|
|
79
|
+
*
|
|
80
|
+
* @remarks
|
|
81
|
+
* This class is used internally by the ARI client. You typically don't
|
|
82
|
+
* need to use it directly unless building custom functionality.
|
|
83
|
+
*
|
|
84
|
+
* @example
|
|
85
|
+
* ```typescript
|
|
86
|
+
* const http = new HttpConnection(options);
|
|
87
|
+
*
|
|
88
|
+
* // Make requests
|
|
89
|
+
* const channels = await http.get<Channel[]>('/channels');
|
|
90
|
+
* const channel = await http.post<Channel>('/channels', undefined, {
|
|
91
|
+
* endpoint: 'PJSIP/1000',
|
|
92
|
+
* app: 'my-app'
|
|
93
|
+
* });
|
|
94
|
+
* ```
|
|
32
95
|
*/
|
|
33
96
|
export declare class HttpConnection {
|
|
34
97
|
private readonly baseUrl;
|
|
35
98
|
private readonly authHeader;
|
|
36
99
|
private readonly defaultTimeout;
|
|
100
|
+
/**
|
|
101
|
+
* Creates a new HTTP connection.
|
|
102
|
+
*
|
|
103
|
+
* @param options - Resolved connection options with credentials and URL
|
|
104
|
+
*/
|
|
37
105
|
constructor(options: ResolvedOptions);
|
|
38
106
|
/**
|
|
39
|
-
* Make an HTTP request to the ARI API
|
|
107
|
+
* Make an HTTP request to the ARI API.
|
|
108
|
+
*
|
|
109
|
+
* @typeParam T - Expected response type
|
|
110
|
+
* @param path - API path (e.g., '/channels')
|
|
111
|
+
* @param options - Request options
|
|
112
|
+
* @returns Promise resolving to the response data
|
|
113
|
+
* @throws {AriHttpError} If the request fails or returns an error status
|
|
114
|
+
*
|
|
115
|
+
* @example
|
|
116
|
+
* ```typescript
|
|
117
|
+
* // GET request
|
|
118
|
+
* const channels = await http.request<Channel[]>('/channels');
|
|
119
|
+
*
|
|
120
|
+
* // POST with query params
|
|
121
|
+
* const channel = await http.request<Channel>('/channels', {
|
|
122
|
+
* method: 'POST',
|
|
123
|
+
* query: { endpoint: 'PJSIP/1000', app: 'my-app' }
|
|
124
|
+
* });
|
|
125
|
+
* ```
|
|
40
126
|
*/
|
|
41
127
|
request<T>(path: string, options?: RequestOptions): Promise<T>;
|
|
42
128
|
/**
|
|
43
|
-
* GET request
|
|
129
|
+
* Make a GET request.
|
|
130
|
+
*
|
|
131
|
+
* @typeParam T - Expected response type
|
|
132
|
+
* @param path - API path
|
|
133
|
+
* @param query - Optional query parameters
|
|
134
|
+
* @returns Promise resolving to the response data
|
|
44
135
|
*/
|
|
45
136
|
get<T>(path: string, query?: RequestOptions['query']): Promise<T>;
|
|
46
137
|
/**
|
|
47
|
-
* POST request
|
|
138
|
+
* Make a POST request.
|
|
139
|
+
*
|
|
140
|
+
* @typeParam T - Expected response type
|
|
141
|
+
* @param path - API path
|
|
142
|
+
* @param body - Request body (will be JSON-serialized)
|
|
143
|
+
* @param query - Optional query parameters
|
|
144
|
+
* @returns Promise resolving to the response data
|
|
48
145
|
*/
|
|
49
146
|
post<T>(path: string, body?: unknown, query?: RequestOptions['query']): Promise<T>;
|
|
50
147
|
/**
|
|
51
|
-
* PUT request
|
|
148
|
+
* Make a PUT request.
|
|
149
|
+
*
|
|
150
|
+
* @typeParam T - Expected response type
|
|
151
|
+
* @param path - API path
|
|
152
|
+
* @param body - Request body (will be JSON-serialized)
|
|
153
|
+
* @param query - Optional query parameters
|
|
154
|
+
* @returns Promise resolving to the response data
|
|
52
155
|
*/
|
|
53
156
|
put<T>(path: string, body?: unknown, query?: RequestOptions['query']): Promise<T>;
|
|
54
157
|
/**
|
|
55
|
-
* DELETE request
|
|
158
|
+
* Make a DELETE request.
|
|
159
|
+
*
|
|
160
|
+
* @typeParam T - Expected response type
|
|
161
|
+
* @param path - API path
|
|
162
|
+
* @param query - Optional query parameters
|
|
163
|
+
* @returns Promise resolving to the response data
|
|
56
164
|
*/
|
|
57
165
|
delete<T>(path: string, query?: RequestOptions['query']): Promise<T>;
|
|
58
166
|
/**
|
|
59
|
-
* Get the base URL
|
|
167
|
+
* Get the base URL of the Asterisk server.
|
|
168
|
+
*
|
|
169
|
+
* Used internally for WebSocket connection URL construction.
|
|
170
|
+
*
|
|
171
|
+
* @returns Base URL (e.g., 'http://localhost:8088')
|
|
172
|
+
*
|
|
173
|
+
* @internal
|
|
60
174
|
*/
|
|
61
175
|
getBaseUrl(): string;
|
|
62
176
|
/**
|
|
63
|
-
* Get the
|
|
177
|
+
* Get the authentication credentials.
|
|
178
|
+
*
|
|
179
|
+
* Used internally for WebSocket authentication.
|
|
180
|
+
*
|
|
181
|
+
* @returns Object with username and password
|
|
182
|
+
*
|
|
183
|
+
* @internal
|
|
64
184
|
*/
|
|
65
185
|
getCredentials(): {
|
|
66
186
|
username: string;
|
package/dist/connection.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE1D;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,YAAa,SAAQ,KAAK;IAU5B,UAAU,EAAE,MAAM;IAClB,QAAQ,CAAC,EAAE,OAAO;IAV3B;;;;;;OAMG;gBAED,OAAO,EAAE,MAAM,EACR,UAAU,EAAE,MAAM,EAClB,QAAQ,CAAC,EAAE,OAAO,YAAA;CAK5B;AAED;;;;;GAKG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;AAE3F;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAGnE;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,mCAAmC;IACnC,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAC;IAC3C,6CAA6C;IAC7C,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,4CAA4C;IAC5C,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,0DAA0D;IAC1D,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IAExC;;;;OAIG;gBACS,OAAO,EAAE,eAAe;IAQpC;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,CAAC,CAAC;IAuFxE;;;;;;;OAOG;IACG,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAIvE;;;;;;;;OAQG;IACG,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAIxF;;;;;;;;OAQG;IACG,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAIvF;;;;;;;OAOG;IACG,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAI1E;;;;;;;;OAQG;IACH,UAAU,IAAI,MAAM;IAIpB;;;;;;;;OAQG;IACH,cAAc,IAAI;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE;CAOzD"}
|
package/dist/connection.js
CHANGED
|
@@ -1,12 +1,39 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* HTTP connection manager using native fetch
|
|
3
|
+
*
|
|
4
|
+
* This module provides the HTTP layer for communicating with the Asterisk
|
|
5
|
+
* ARI REST API endpoints.
|
|
6
|
+
*
|
|
7
|
+
* @packageDocumentation
|
|
3
8
|
*/
|
|
4
9
|
/**
|
|
5
|
-
* ARI
|
|
10
|
+
* Error thrown when an ARI HTTP request fails.
|
|
11
|
+
*
|
|
12
|
+
* Contains the HTTP status code and the response body (if available)
|
|
13
|
+
* for debugging purposes.
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```typescript
|
|
17
|
+
* try {
|
|
18
|
+
* await client.channels.get('non-existent-id');
|
|
19
|
+
* } catch (error) {
|
|
20
|
+
* if (error instanceof AriHttpError) {
|
|
21
|
+
* console.log(`Status: ${error.statusCode}`);
|
|
22
|
+
* console.log(`Response: ${JSON.stringify(error.response)}`);
|
|
23
|
+
* }
|
|
24
|
+
* }
|
|
25
|
+
* ```
|
|
6
26
|
*/
|
|
7
27
|
export class AriHttpError extends Error {
|
|
8
28
|
statusCode;
|
|
9
29
|
response;
|
|
30
|
+
/**
|
|
31
|
+
* Creates a new ARI HTTP error.
|
|
32
|
+
*
|
|
33
|
+
* @param message - Error message describing what went wrong
|
|
34
|
+
* @param statusCode - HTTP status code (0 for network errors)
|
|
35
|
+
* @param response - Response body from the server (if available)
|
|
36
|
+
*/
|
|
10
37
|
constructor(message, statusCode, response) {
|
|
11
38
|
super(message);
|
|
12
39
|
this.statusCode = statusCode;
|
|
@@ -15,7 +42,15 @@ export class AriHttpError extends Error {
|
|
|
15
42
|
}
|
|
16
43
|
}
|
|
17
44
|
/**
|
|
18
|
-
* Convert
|
|
45
|
+
* Convert an object to query parameters.
|
|
46
|
+
*
|
|
47
|
+
* This is a simple type assertion helper for converting typed objects
|
|
48
|
+
* to the generic QueryParams type.
|
|
49
|
+
*
|
|
50
|
+
* @param obj - Object to convert
|
|
51
|
+
* @returns Query parameters object or undefined
|
|
52
|
+
*
|
|
53
|
+
* @internal
|
|
19
54
|
*/
|
|
20
55
|
export function toQueryParams(obj) {
|
|
21
56
|
if (!obj)
|
|
@@ -23,12 +58,36 @@ export function toQueryParams(obj) {
|
|
|
23
58
|
return obj;
|
|
24
59
|
}
|
|
25
60
|
/**
|
|
26
|
-
* HTTP connection manager for ARI REST API
|
|
61
|
+
* HTTP connection manager for ARI REST API.
|
|
62
|
+
*
|
|
63
|
+
* Handles all HTTP communication with Asterisk, including authentication,
|
|
64
|
+
* request timeouts, and error handling.
|
|
65
|
+
*
|
|
66
|
+
* @remarks
|
|
67
|
+
* This class is used internally by the ARI client. You typically don't
|
|
68
|
+
* need to use it directly unless building custom functionality.
|
|
69
|
+
*
|
|
70
|
+
* @example
|
|
71
|
+
* ```typescript
|
|
72
|
+
* const http = new HttpConnection(options);
|
|
73
|
+
*
|
|
74
|
+
* // Make requests
|
|
75
|
+
* const channels = await http.get<Channel[]>('/channels');
|
|
76
|
+
* const channel = await http.post<Channel>('/channels', undefined, {
|
|
77
|
+
* endpoint: 'PJSIP/1000',
|
|
78
|
+
* app: 'my-app'
|
|
79
|
+
* });
|
|
80
|
+
* ```
|
|
27
81
|
*/
|
|
28
82
|
export class HttpConnection {
|
|
29
83
|
baseUrl;
|
|
30
84
|
authHeader;
|
|
31
85
|
defaultTimeout;
|
|
86
|
+
/**
|
|
87
|
+
* Creates a new HTTP connection.
|
|
88
|
+
*
|
|
89
|
+
* @param options - Resolved connection options with credentials and URL
|
|
90
|
+
*/
|
|
32
91
|
constructor(options) {
|
|
33
92
|
// Ensure URL doesn't have trailing slash
|
|
34
93
|
this.baseUrl = options.url.replace(/\/$/, '');
|
|
@@ -37,7 +96,25 @@ export class HttpConnection {
|
|
|
37
96
|
this.defaultTimeout = options.requestTimeout;
|
|
38
97
|
}
|
|
39
98
|
/**
|
|
40
|
-
* Make an HTTP request to the ARI API
|
|
99
|
+
* Make an HTTP request to the ARI API.
|
|
100
|
+
*
|
|
101
|
+
* @typeParam T - Expected response type
|
|
102
|
+
* @param path - API path (e.g., '/channels')
|
|
103
|
+
* @param options - Request options
|
|
104
|
+
* @returns Promise resolving to the response data
|
|
105
|
+
* @throws {AriHttpError} If the request fails or returns an error status
|
|
106
|
+
*
|
|
107
|
+
* @example
|
|
108
|
+
* ```typescript
|
|
109
|
+
* // GET request
|
|
110
|
+
* const channels = await http.request<Channel[]>('/channels');
|
|
111
|
+
*
|
|
112
|
+
* // POST with query params
|
|
113
|
+
* const channel = await http.request<Channel>('/channels', {
|
|
114
|
+
* method: 'POST',
|
|
115
|
+
* query: { endpoint: 'PJSIP/1000', app: 'my-app' }
|
|
116
|
+
* });
|
|
117
|
+
* ```
|
|
41
118
|
*/
|
|
42
119
|
async request(path, options = {}) {
|
|
43
120
|
const { method = 'GET', body, query, timeout = this.defaultTimeout } = options;
|
|
@@ -114,37 +191,71 @@ export class HttpConnection {
|
|
|
114
191
|
}
|
|
115
192
|
}
|
|
116
193
|
/**
|
|
117
|
-
* GET request
|
|
194
|
+
* Make a GET request.
|
|
195
|
+
*
|
|
196
|
+
* @typeParam T - Expected response type
|
|
197
|
+
* @param path - API path
|
|
198
|
+
* @param query - Optional query parameters
|
|
199
|
+
* @returns Promise resolving to the response data
|
|
118
200
|
*/
|
|
119
201
|
async get(path, query) {
|
|
120
202
|
return this.request(path, { method: 'GET', query });
|
|
121
203
|
}
|
|
122
204
|
/**
|
|
123
|
-
* POST request
|
|
205
|
+
* Make a POST request.
|
|
206
|
+
*
|
|
207
|
+
* @typeParam T - Expected response type
|
|
208
|
+
* @param path - API path
|
|
209
|
+
* @param body - Request body (will be JSON-serialized)
|
|
210
|
+
* @param query - Optional query parameters
|
|
211
|
+
* @returns Promise resolving to the response data
|
|
124
212
|
*/
|
|
125
213
|
async post(path, body, query) {
|
|
126
214
|
return this.request(path, { method: 'POST', body, query });
|
|
127
215
|
}
|
|
128
216
|
/**
|
|
129
|
-
* PUT request
|
|
217
|
+
* Make a PUT request.
|
|
218
|
+
*
|
|
219
|
+
* @typeParam T - Expected response type
|
|
220
|
+
* @param path - API path
|
|
221
|
+
* @param body - Request body (will be JSON-serialized)
|
|
222
|
+
* @param query - Optional query parameters
|
|
223
|
+
* @returns Promise resolving to the response data
|
|
130
224
|
*/
|
|
131
225
|
async put(path, body, query) {
|
|
132
226
|
return this.request(path, { method: 'PUT', body, query });
|
|
133
227
|
}
|
|
134
228
|
/**
|
|
135
|
-
* DELETE request
|
|
229
|
+
* Make a DELETE request.
|
|
230
|
+
*
|
|
231
|
+
* @typeParam T - Expected response type
|
|
232
|
+
* @param path - API path
|
|
233
|
+
* @param query - Optional query parameters
|
|
234
|
+
* @returns Promise resolving to the response data
|
|
136
235
|
*/
|
|
137
236
|
async delete(path, query) {
|
|
138
237
|
return this.request(path, { method: 'DELETE', query });
|
|
139
238
|
}
|
|
140
239
|
/**
|
|
141
|
-
* Get the base URL
|
|
240
|
+
* Get the base URL of the Asterisk server.
|
|
241
|
+
*
|
|
242
|
+
* Used internally for WebSocket connection URL construction.
|
|
243
|
+
*
|
|
244
|
+
* @returns Base URL (e.g., 'http://localhost:8088')
|
|
245
|
+
*
|
|
246
|
+
* @internal
|
|
142
247
|
*/
|
|
143
248
|
getBaseUrl() {
|
|
144
249
|
return this.baseUrl;
|
|
145
250
|
}
|
|
146
251
|
/**
|
|
147
|
-
* Get the
|
|
252
|
+
* Get the authentication credentials.
|
|
253
|
+
*
|
|
254
|
+
* Used internally for WebSocket authentication.
|
|
255
|
+
*
|
|
256
|
+
* @returns Object with username and password
|
|
257
|
+
*
|
|
258
|
+
* @internal
|
|
148
259
|
*/
|
|
149
260
|
getCredentials() {
|
|
150
261
|
// Decode from auth header
|
package/dist/connection.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"connection.js","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"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"}
|