o2g-node-sdk 2.5.5 → 2.5.6

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.
Files changed (36) hide show
  1. package/README.md +5 -0
  2. package/dist/o2g-node-sdk.js +799 -693
  3. package/dist/o2g-node-sdk.js.map +1 -1
  4. package/dist/types/services/o2g-analytics.d.ts +40 -31
  5. package/dist/types/services/o2g-analytics.d.ts.map +1 -1
  6. package/dist/types/services/o2g-cc-agent.d.ts +11 -7
  7. package/dist/types/services/o2g-cc-agent.d.ts.map +1 -1
  8. package/dist/types/services/o2g-cc-mngt.d.ts +61 -40
  9. package/dist/types/services/o2g-cc-mngt.d.ts.map +1 -1
  10. package/dist/types/services/o2g-cc-pilot.d.ts +7 -5
  11. package/dist/types/services/o2g-cc-pilot.d.ts.map +1 -1
  12. package/dist/types/services/o2g-cc-rt.d.ts +4 -3
  13. package/dist/types/services/o2g-cc-rt.d.ts.map +1 -1
  14. package/dist/types/services/o2g-cc-stat.d.ts +160 -163
  15. package/dist/types/services/o2g-cc-stat.d.ts.map +1 -1
  16. package/dist/types/services/o2g-comlog.d.ts +68 -67
  17. package/dist/types/services/o2g-comlog.d.ts.map +1 -1
  18. package/dist/types/services/o2g-directory.d.ts +35 -40
  19. package/dist/types/services/o2g-directory.d.ts.map +1 -1
  20. package/dist/types/services/o2g-eventSummary.d.ts +7 -8
  21. package/dist/types/services/o2g-eventSummary.d.ts.map +1 -1
  22. package/dist/types/services/o2g-maint.d.ts +10 -10
  23. package/dist/types/services/o2g-messaging.d.ts +3 -2
  24. package/dist/types/services/o2g-messaging.d.ts.map +1 -1
  25. package/dist/types/services/o2g-routing.d.ts +37 -19
  26. package/dist/types/services/o2g-routing.d.ts.map +1 -1
  27. package/dist/types/services/o2g-rsi.d.ts +62 -54
  28. package/dist/types/services/o2g-rsi.d.ts.map +1 -1
  29. package/dist/types/services/o2g-telephony.d.ts +255 -224
  30. package/dist/types/services/o2g-telephony.d.ts.map +1 -1
  31. package/dist/types/services/o2g-users-mngt.d.ts +21 -13
  32. package/dist/types/services/o2g-users-mngt.d.ts.map +1 -1
  33. package/dist/types/services/o2g-users.d.ts +8 -5
  34. package/dist/types/services/o2g-users.d.ts.map +1 -1
  35. package/dist/types/types/telephony/call/ccd/call-profile.d.ts.map +1 -1
  36. package/package.json +2 -2
@@ -14,13 +14,12 @@ import { DeviceState } from '../types/telephony/device/device-state';
14
14
  import { PilotTransferQueryParameters } from '../types/telephony/call/ccd/pilot-transfer-query-param';
15
15
  import { CallProfile } from '../types/telephony/call/ccd/call-profile';
16
16
  /**
17
- * The TelephonyService allows a user to initiate a call and to activate
17
+ * The TelephonyService allows a user to initiate calls and activate
18
18
  * any kind of OmniPCX Enterprise telephony services.
19
19
  * <p>
20
- * Using this service requires having a <b>TELEPHONY_ADVANCED</b> license,
21
- * except for the 3 basic services
22
- * {@link basicMakeCall}, {@link basicAnswerCall} and {@link basicDropMe} that are available without any
23
- * license.
20
+ * Using this service requires a <b>TELEPHONY_ADVANCED</b> license, except for
21
+ * the three basic services {@link basicMakeCall}, {@link basicAnswerCall} and
22
+ * {@link basicDropMe}, which are available without any license.
24
23
  */
25
24
  export declare class Telephony extends EventEmitter {
26
25
  #private;
@@ -60,46 +59,53 @@ export declare class Telephony extends EventEmitter {
60
59
  */
61
60
  static readonly ON_DYNAMIC_STATE_CHANGED = "OnDynamicStateChanged";
62
61
  /**
63
- * Initiates a call from the specified device to the specified called number.
62
+ * Initiates a basic call from the specified device to the specified called number.
63
+ * <p>
64
+ * This method does not require a license.
64
65
  * <p>
65
66
  * If the session is opened by a user, the device phone number must be one of
66
67
  * the user's devices.
67
68
  * <p>
68
- * If `autoAnswer` is set to `false`, the `deviceId` is called before launching
69
- * the call to the callee; otherwise the callee is called immediately.
69
+ * If `autoAnswer` is set to `false`, the user's device is called first before
70
+ * placing the call to the callee; otherwise the callee is called immediately.
70
71
  *
71
- * @param deviceId the device phone number for which the call is made
72
- * @param callee the called number
73
- * @param autoAnswer automatic answer on make call
72
+ * @param deviceId the device phone number used to place the call
73
+ * @param callee the called phone number
74
+ * @param autoAnswer if `true`, the callee is called immediately; if `false`,
75
+ * the user's device is called first before placing the call to the callee
74
76
  * @returns `true` if the operation succeeded; `false` otherwise.
75
77
  */
76
78
  basicMakeCall(deviceId: string, callee: string, autoAnswer?: boolean): Promise<boolean>;
77
79
  /**
78
80
  * Answers an incoming ringing call on the specified device.
79
81
  * <p>
82
+ * This method does not require a license.
83
+ * <p>
80
84
  * If the session is opened by a user, the device phone number must be one of
81
85
  * the user's devices.
82
86
  *
83
- * @param deviceId the device phone number
87
+ * @param deviceId the device phone number on which to answer
84
88
  * @returns `true` if the operation succeeded; `false` otherwise.
85
89
  */
86
90
  basicAnswerCall(deviceId: string): Promise<boolean>;
87
91
  /**
88
- * Exits from the call for the specified user.
92
+ * Exits from the current call for the specified user.
89
93
  * <p>
90
- * If the session has been opened for a user, the `loginName` parameter is
91
- * ignored, but it is mandatory if the session has been opened by an
92
- * administrator.
94
+ * This method does not require a license.
93
95
  * <p>
94
96
  * If the call is a single call, it is released; if it is a conference, the call
95
97
  * carries on without the user.
98
+ * <p>
99
+ * If the session has been opened for a user, the `loginName` parameter is
100
+ * ignored, but it is mandatory if the session has been opened by an
101
+ * administrator.
96
102
  *
97
103
  * @param loginName the login name for whom the drop is done
98
104
  * @returns `true` if the operation succeeded; `false` otherwise.
99
105
  */
100
106
  basicDropMe(loginName?: string | null): Promise<boolean>;
101
107
  /**
102
- * Retrieves the calls in progress for the specified user.
108
+ * Retrieves the calls currently in progress for the specified user.
103
109
  * <p>
104
110
  * If the session has been opened for a user, the `loginName` parameter is
105
111
  * ignored, but it is mandatory if the session has been opened by an
@@ -107,18 +113,19 @@ export declare class Telephony extends EventEmitter {
107
113
  *
108
114
  * @param loginName the login name
109
115
  * @returns the list of active {@link Call} objects on success; `null` otherwise.
116
+ * @see getCall
110
117
  */
111
118
  getCalls(loginName?: string | null): Promise<Call[] | null>;
112
119
  /**
113
- * Returns the call specified by the call reference for the specified user.
120
+ * Returns the call identified by the specified reference for the specified user.
114
121
  * <p>
115
122
  * If the session has been opened for a user, the `loginName` parameter is
116
123
  * ignored, but it is mandatory if the session has been opened by an
117
124
  * administrator.
118
125
  *
119
- * @param callRef the call reference
126
+ * @param callRef the unique call reference
120
127
  * @param loginName the login name
121
- * @returns the {@link Call} on success; `null` otherwise.
128
+ * @returns the {@link Call} on success; `null` if not found.
122
129
  */
123
130
  getCall(callRef: string, loginName?: string | null): Promise<Call | null>;
124
131
  /**
@@ -129,131 +136,113 @@ export declare class Telephony extends EventEmitter {
129
136
  * ignored, but it is mandatory if the session has been opened by an
130
137
  * administrator.
131
138
  * <p>
132
- * If `autoAnswer` is set to `false`, the `deviceId` is called before launching
133
- * the call to the callee; otherwise the callee is called immediately.
139
+ * If `autoAnswer` is set to `false`, the user's device is called first before
140
+ * placing the call to the callee; otherwise the callee is called immediately.
134
141
  *
135
- * @param deviceId the device phone number for which the call is made
136
- * @param callee the called number
137
- * @param autoAnswer automatic answer on make call
142
+ * @param deviceId the device phone number from which the call is placed; if the
143
+ * session is opened by a user, this must be one of the user's devices
144
+ * @param callee the called phone number
145
+ * @param autoAnswer if `true`, the callee is called immediately; if `false`,
146
+ * the user's device is called first before placing the call to the callee
138
147
  * @param loginName the login name
139
148
  * @returns `true` if the operation succeeded; `false` otherwise.
140
149
  */
141
150
  makeCall(deviceId: string, callee: string, autoAnswer?: boolean, loginName?: string | null): Promise<boolean>;
142
151
  /**
143
- * Initiates a new call to another user (the callee), using the specified device and options.
152
+ * Initiates a call from the specified device to the specified called number,
153
+ * with extended options.
144
154
  * <p>
145
155
  * If the session has been opened for a user, the `loginName` parameter is
146
156
  * ignored, but it is mandatory if the session has been opened by an
147
157
  * administrator.
148
158
  * <p>
149
- * First, the call server initiates a call on the user's `deviceId`. Then when the
150
- * call is answered the call server starts the call to the `callee`, and an
151
- * {@link ON_CALL_CREATED} event is raised.
159
+ * If `autoAnswer` is set to `false`, the user's device is called first before
160
+ * placing the call to the callee; otherwise the callee is called immediately.
152
161
  * <p>
153
- * If `inhibitProgressTone` is `true`, the progress tone is inhibited on the outbound call.
154
- * <p>
155
- * The `callingNumber` can be used to present a different calling number on the public
156
- * network in order to hide the real calling extension number.
157
- *
158
- * * @example
159
- * ```typescript
160
- * // Simple call with auto-answer
161
- * await O2G.telephony.makeCallEx("1234", "5678");
162
- *
163
- * // Call with progress tone inhibited and a different calling number
164
- * await O2G.telephony.makeCallEx("1234", "5678", true, true, null, "9000");
162
+ * The `callingNumber` can be used to present a different calling number on the
163
+ * public network in order to mask the real calling extension number.
165
164
  *
166
- * // Call with correlator data to carry application context
167
- * const correlatorData = new CorrelatorData("transactionId=abc123");
168
- * await O2G.telephony.makeCallEx("1234", "5678", true, false, correlatorData);
169
- *
170
- * // Administrator making a call on behalf of a user
171
- * await O2G.telephony.makeCallEx("1234", "5678", true, false, null, null, "jdoe");
172
- * ```
173
- *
174
- * @param deviceId the device phone number for which the call is made
175
- * @param callee the called number
176
- * @param autoAnswer automatic answer on make call
177
- * @param inhibitProgressTone allows to inhibit the progress tone on the current external call
178
- * @param correlatorData correlator data to add to the call
179
- * @param callingNumber calling number to present to the public network
165
+ * @param deviceId the device phone number from which the call is placed; if the
166
+ * session is opened by a user, this must be one of the user's devices
167
+ * @param callee the called phone number
168
+ * @param autoAnswer if `true`, the callee is called immediately; if `false`,
169
+ * the user's device is called first before placing the call to the callee
170
+ * @param inhibitProgressTone `true` to inhibit the progress tone on the outbound call
171
+ * @param correlatorData correlator data to attach to the call
172
+ * @param callingNumber optional calling number to present to the public network, used to mask
173
+ * the real calling extension number
180
174
  * @param loginName the login name
181
175
  * @returns `true` if the operation succeeded; `false` otherwise.
182
176
  */
183
177
  makeCallEx(deviceId: string, callee: string, autoAnswer?: boolean, inhibitProgressTone?: boolean, correlatorData?: CorrelatorData | null, callingNumber?: string | null, loginName?: string | null): Promise<boolean>;
184
178
  /**
185
- * Initiates a new private call to another user (the callee), using a PIN code and an optional secret code.
179
+ * Initiates a private call to the specified callee, identified by a PIN code.
180
+ * <p>
181
+ * A private call allows the user to flag a call as personal rather than
182
+ * professional, enabling specific charging processing.
186
183
  * <p>
187
184
  * If the session has been opened for a user, the `loginName` parameter is
188
185
  * ignored, but it is mandatory if the session has been opened by an
189
186
  * administrator.
190
- * <p>
191
- * The private call service allows a user to specify that an external call is personal
192
- * rather than professional. The charging for this type of call can then be given
193
- * specific processing.
194
- * <p>
195
- * First, the call server initiates a call on the user's `deviceId`. Then when the
196
- * call is answered the call server starts the call to the `callee`, and an
197
- * {@link ON_CALL_CREATED} event is raised.
198
187
  *
199
- * @param deviceId the device phone number for which the call is made
200
- * @param callee the called number
201
- * @param pin the PIN code to identify the caller
188
+ * @param deviceId the device phone number from which the call is placed; if the
189
+ * session is opened by a user, this must be one of the user's devices
190
+ * @param callee the called phone number
191
+ * @param pin the PIN code identifying the caller
202
192
  * @param secretCode the optional secret code used to confirm the PIN code
203
193
  * @param loginName the login name
204
194
  * @returns `true` if the operation succeeded; `false` otherwise.
205
195
  */
206
196
  makePrivateCall(deviceId: string, callee: string, pin: string, secretCode?: string | null, loginName?: string | null): Promise<boolean>;
207
197
  /**
208
- * Initiates a new business call to another user (the callee), using the specified business code.
198
+ * Initiates a business call to the specified callee, charged to the specified
199
+ * cost center.
209
200
  * <p>
210
201
  * If the session has been opened for a user, the `loginName` parameter is
211
202
  * ignored, but it is mandatory if the session has been opened by an
212
203
  * administrator.
213
- * <p>
214
- * First, the call server initiates a call on the user's `deviceId`. Then when the
215
- * call is answered the call server starts the call to the `callee`, and an
216
- * {@link ON_CALL_CREATED} event is raised.
217
204
  *
218
- * @param deviceId the device phone number for which the call is made
219
- * @param callee the called number
220
- * @param businessCode the cost center on which the call will be charged
205
+ * @param deviceId the device phone number from which the call is placed; if the
206
+ * session is opened by a user, this must be one of the user's devices
207
+ * @param callee the called phone number
208
+ * @param businessCode the cost center code to charge the call to
221
209
  * @param loginName the login name
222
210
  * @returns `true` if the operation succeeded; `false` otherwise.
223
211
  */
224
212
  makeBusinessCall(deviceId: string, callee: string, businessCode: string, loginName?: string | null): Promise<boolean>;
225
213
  /**
226
- * Initiates a call from a CCD agent to a supervisor.
214
+ * Initiates a call from a CCD agent to their supervisor.
227
215
  * <p>
228
216
  * If the session has been opened for a user, the `loginName` parameter is
229
217
  * ignored, but it is mandatory if the session has been opened by an
230
218
  * administrator.
231
- * <p>
232
- * First, the call server initiates a call on the agent's `deviceId`. Then when
233
- * the call is answered the call server calls the supervisor, and an
234
- * {@link ON_CALL_CREATED} event is raised.
235
219
  *
236
- * @param deviceId the device phone number for which the call is made
237
- * @param autoAnswer automatic answer on make call
220
+ * @param deviceId the device phone number from which the call is placed; if the
221
+ * session is opened by a user, this must be one of the user's devices
222
+ * @param autoAnswer if `true`, the supervisor is called immediately; if `false`,
223
+ * the agent's device is called first
238
224
  * @param loginName the login name
239
225
  * @returns `true` if the operation succeeded; `false` otherwise.
240
226
  */
241
227
  makeSupervisorCall(deviceId: string, autoAnswer?: boolean, loginName?: string | null): Promise<boolean>;
242
228
  /**
243
- * Initiates an enquiry call from a CCD agent to a pilot or a RSI point.
229
+ * Initiates a supervised transfer enquiry call from a CCD agent to a pilot or
230
+ * a RSI point.
231
+ * <p>
232
+ * The CCD pilot or the RSI point performs call distribution to select an agent
233
+ * that will be alerted. The `callProfile` is mandatory when the
234
+ * <em>Advanced Call Routing</em> distribution strategy is configured.
244
235
  * <p>
245
236
  * If the session has been opened for a user, the `loginName` parameter is
246
237
  * ignored, but it is mandatory if the session has been opened by an
247
238
  * administrator.
248
- * <p>
249
- * The CCD pilot or the RSI point performs a call distribution to select an agent
250
- * that will be alerted by this call. The `callProfile` is mandatory in case of
251
- * "Advanced Call Routing" call distribution strategy.
252
239
  *
253
- * @param deviceId the device phone number for which the call is made
254
- * @param pilot the called CCD pilot or RSI point number
255
- * @param correlatorData correlator data to add to the call
256
- * @param callProfile the call profile associated to this call
240
+ * @param deviceId the device phone number from which the call is placed; if the
241
+ * session is opened by a user, this must be one of the user's devices
242
+ * @param pilot the CCD pilot or RSI point number to call
243
+ * @param correlatorData optional correlator data to attach to the call
244
+ * @param callProfile the call profile associated to this call; mandatory when the
245
+ * <em>Advanced Call Routing</em> distribution strategy is in use
257
246
  * @param loginName the login name
258
247
  * @returns `true` if the operation succeeded; `false` otherwise.
259
248
  */
@@ -261,33 +250,37 @@ export declare class Telephony extends EventEmitter {
261
250
  /**
262
251
  * Initiates a local call to a CCD pilot or a RSI point.
263
252
  * <p>
253
+ * The CCD pilot or the RSI point performs call distribution to select an agent
254
+ * that will be alerted. The `callProfile` is mandatory when the
255
+ * <em>Advanced Call Routing</em> distribution strategy is configured.
256
+ * <p>
264
257
  * If the session has been opened for a user, the `loginName` parameter is
265
258
  * ignored, but it is mandatory if the session has been opened by an
266
259
  * administrator.
267
- * <p>
268
- * The CCD pilot or the RSI point performs a call distribution to select an agent
269
- * that will be alerted by this call. The `callProfile` is mandatory in case of
270
- * "Advanced Call Routing" call distribution strategy.
271
260
  *
272
- * @param deviceId the device phone number for which the call is made
273
- * @param pilot the called CCD pilot or RSI point number
274
- * @param autoAnswer automatic answer on make call
275
- * @param correlatorData correlator data to add to the call
276
- * @param callProfile the call profile associated to this call
261
+ * @param deviceId the device phone number from which the call is placed; if the
262
+ * session is opened by a user, this must be one of the user's devices
263
+ * @param pilot the CCD pilot or RSI point number to call
264
+ * @param autoAnswer if `true`, the pilot is called immediately; if `false`,
265
+ * the user's device is called first
266
+ * @param correlatorData optional correlator data to attach to the call
267
+ * @param callProfile the call profile associated to this call; mandatory when the
268
+ * <em>Advanced Call Routing</em> distribution strategy is in use
277
269
  * @param loginName the login name
278
270
  * @returns `true` if the operation succeeded; `false` otherwise.
279
271
  */
280
272
  makePilotOrRSICall(deviceId: string, pilot: string, autoAnswer?: boolean, correlatorData?: CorrelatorData | null, callProfile?: CallProfile | null, loginName?: string | null): Promise<boolean | null>;
281
273
  /**
282
- * Hangs up an active call; all parties are released.
274
+ * Releases the specified call; all parties are disconnected.
283
275
  * <p>
284
276
  * If the session has been opened for a user, the `loginName` parameter is
285
277
  * ignored, but it is mandatory if the session has been opened by an
286
278
  * administrator.
287
279
  *
288
- * @param callRef the call reference to hang up
280
+ * @param callRef the call reference
289
281
  * @param loginName the login name
290
282
  * @returns `true` if the operation succeeded; `false` otherwise.
283
+ * @see dropme
291
284
  */
292
285
  release(callRef: string, loginName?: string | null): Promise<boolean>;
293
286
  /**
@@ -297,8 +290,8 @@ export declare class Telephony extends EventEmitter {
297
290
  * If the session is opened by a user, the device phone number must be one of
298
291
  * the user's devices.
299
292
  *
300
- * @param callRef the call reference of the call on hold
301
- * @param deviceId the device phone number for which the operation is done
293
+ * @param callRef the call reference of the active call
294
+ * @param deviceId the device phone number for which the operation is performed
302
295
  * @returns `true` if the operation succeeded; `false` otherwise.
303
296
  */
304
297
  alternate(callRef: string, deviceId: string): Promise<boolean>;
@@ -313,7 +306,7 @@ export declare class Telephony extends EventEmitter {
313
306
  * checking the capabilities of the involved leg (answer capability on the leg).
314
307
  *
315
308
  * @param callRef the call reference of the ringing call
316
- * @param deviceId the device phone number for which the operation is done
309
+ * @param deviceId the device phone number for which the operation is performed
317
310
  * @returns `true` if the operation succeeded; `false` otherwise.
318
311
  */
319
312
  answer(callRef: string, deviceId: string): Promise<boolean>;
@@ -321,32 +314,32 @@ export declare class Telephony extends EventEmitter {
321
314
  * Attaches the specified correlator data to the specified call.
322
315
  * <p>
323
316
  * This is used by the application to provide application-related information
324
- * (limited to 32 bytes). In general, it is used to give information concerning
325
- * a previously established call to the party of a second call.
317
+ * (limited to 32 bytes). In general, it is used to convey context from a
318
+ * previously established call to the party of a second call.
326
319
  *
327
320
  * @param callRef the call reference
328
- * @param deviceId the device phone number for which the operation is done
321
+ * @param deviceId the device phone number for which the operation is performed;
322
+ * if the session is opened by a user, this must be one of the user's devices
329
323
  * @param correlatorData the correlator data to attach
330
324
  * @returns `true` if the operation succeeded; `false` otherwise.
331
325
  */
332
326
  attachData(callRef: string, deviceId: string, correlatorData: CorrelatorData): Promise<boolean>;
333
327
  /**
334
- * Transfers the active call to another user, without keeping control of the call.
328
+ * Transfers the active call to another party without keeping control of the call.
335
329
  * <p>
336
330
  * If the session has been opened for a user, the `loginName` parameter is
337
331
  * ignored, but it is mandatory if the session has been opened by an
338
332
  * administrator.
339
333
  *
340
334
  * @param callRef the reference of the active call
341
- * @param transferTo the phone number to which the call is transferred
342
- * @param anonymous if `true`, the call will be transferred anonymously
335
+ * @param transferTo the phone number to transfer the call to
336
+ * @param anonymous if `true`, the call is transferred anonymously
343
337
  * @param loginName the login name
344
338
  * @returns `true` if the operation succeeded; `false` otherwise.
345
339
  */
346
340
  blindTransfer(callRef: string, transferTo: string, anonymous?: boolean, loginName?: string | null): Promise<boolean>;
347
341
  /**
348
- * Requests a callback on the call specified by the call reference for the
349
- * specified user.
342
+ * Requests a callback on the specified call.
350
343
  * <p>
351
344
  * If the session has been opened for a user, the `loginName` parameter is
352
345
  * ignored, but it is mandatory if the session has been opened by an
@@ -358,8 +351,7 @@ export declare class Telephony extends EventEmitter {
358
351
  */
359
352
  callback(callRef: string, loginName?: string | null): Promise<boolean>;
360
353
  /**
361
- * Returns the legs involved in the call specified by the call reference for the
362
- * specified user.
354
+ * Returns the legs associated to the specified call.
363
355
  * <p>
364
356
  * If the session has been opened for a user, the `loginName` parameter is
365
357
  * ignored, but it is mandatory if the session has been opened by an
@@ -368,11 +360,11 @@ export declare class Telephony extends EventEmitter {
368
360
  * @param callRef the call reference
369
361
  * @param loginName the login name
370
362
  * @returns the list of {@link Leg} objects on success; `null` otherwise.
363
+ * @see getLeg
371
364
  */
372
365
  getLegs(callRef: string, loginName?: string | null): Promise<Leg[] | null>;
373
366
  /**
374
- * Returns the leg specified by its id, involved in the call specified by the
375
- * call reference for the specified user.
367
+ * Returns the specified leg of the specified call.
376
368
  * <p>
377
369
  * If the session has been opened for a user, the `loginName` parameter is
378
370
  * ignored, but it is mandatory if the session has been opened by an
@@ -381,18 +373,19 @@ export declare class Telephony extends EventEmitter {
381
373
  * @param callRef the call reference
382
374
  * @param legId the leg identifier
383
375
  * @param loginName the login name
384
- * @returns the {@link Leg} on success; `null` otherwise.
376
+ * @returns the {@link Leg} with the given identifier on success; `null` if not found.
377
+ * @see getLegs
385
378
  */
386
379
  getLeg(callRef: string, legId: string, loginName?: string | null): Promise<Leg | null>;
387
380
  /**
388
- * Exits from the call specified by its reference for the specified user.
381
+ * Exits from the specified call for the specified user.
382
+ * <p>
383
+ * If the call is a single call, it is released; if it is a conference, the call
384
+ * carries on without the user.
389
385
  * <p>
390
386
  * If the session has been opened for a user, the `loginName` parameter is
391
387
  * ignored, but it is mandatory if the session has been opened by an
392
388
  * administrator.
393
- * <p>
394
- * If the call is a single call, it is released; if it is a conference, the call
395
- * carries on without the user.
396
389
  *
397
390
  * @param callRef the call reference
398
391
  * @param loginName the login name for whom the drop is done
@@ -400,22 +393,22 @@ export declare class Telephony extends EventEmitter {
400
393
  */
401
394
  dropme(callRef: string, loginName?: string | null): Promise<boolean>;
402
395
  /**
403
- * Puts on hold the call specified by its reference, on the specified device,
404
- * for the specified user.
396
+ * Puts the specified call on hold on the specified device.
405
397
  * <p>
406
398
  * If the session has been opened for a user, the `loginName` parameter is
407
399
  * ignored, but it is mandatory if the session has been opened by an
408
400
  * administrator.
409
401
  *
410
402
  * @param callRef the call reference
411
- * @param deviceId the device phone number from which the call is put on hold
403
+ * @param deviceId the device phone number from which the hold is requested; if the
404
+ * session is opened by a user, this must be one of the user's devices
412
405
  * @param loginName the login name
413
406
  * @returns `true` if the operation succeeded; `false` otherwise.
407
+ * @see retrieve
414
408
  */
415
409
  hold(callRef: string, deviceId: string, loginName?: string | null): Promise<boolean>;
416
410
  /**
417
- * Makes a 3-party conference with a specified active call and a specified held
418
- * call for the specified user.
411
+ * Creates a 3-party conference from the specified active call and a held call.
419
412
  * <p>
420
413
  * If the session has been opened for a user, the `loginName` parameter is
421
414
  * ignored, but it is mandatory if the session has been opened by an
@@ -428,8 +421,7 @@ export declare class Telephony extends EventEmitter {
428
421
  */
429
422
  merge(callRef: string, heldCallRef: string, loginName?: string | null): Promise<boolean>;
430
423
  /**
431
- * Redirects an outgoing ringing call specified by its reference to the voice
432
- * mail of the called user.
424
+ * Redirects an outgoing ringing call to the voice mail of the called user.
433
425
  * <p>
434
426
  * If the session has been opened for a user, the `loginName` parameter is
435
427
  * ignored, but it is mandatory if the session has been opened by an
@@ -441,7 +433,11 @@ export declare class Telephony extends EventEmitter {
441
433
  */
442
434
  overflowToVoiceMail(callRef: string, loginName?: string | null): Promise<boolean>;
443
435
  /**
444
- * Gets the telephonic state and capabilities for the specified user.
436
+ * Returns a snapshot of the current telephonic state for the specified user.
437
+ * <p>
438
+ * This method performs a synchronous REST query. For an event-driven approach,
439
+ * use {@link requestSnapshot} instead, which raises an {@link ON_TELEPHONY_STATE}
440
+ * event asynchronously.
445
441
  * <p>
446
442
  * If the session has been opened for a user, the `loginName` parameter is
447
443
  * ignored, but it is mandatory if the session has been opened by an
@@ -449,25 +445,28 @@ export declare class Telephony extends EventEmitter {
449
445
  *
450
446
  * @param loginName the login name
451
447
  * @returns the {@link TelephonicState} on success; `null` otherwise.
448
+ * @see requestSnapshot
452
449
  */
453
450
  getState(loginName?: string | null): Promise<TelephonicState | null>;
454
451
  /**
455
- * Parks the specified active call to a target device.
452
+ * Parks the specified active call on a target device.
456
453
  * <p>
457
- * If the device is not provided, the call will be parked on the current device.
454
+ * If `parkTo` is not provided, the call is parked on the current device.
458
455
  * <p>
459
456
  * If the session has been opened for a user, the `loginName` parameter is
460
457
  * ignored, but it is mandatory if the session has been opened by an
461
458
  * administrator.
462
459
  *
463
460
  * @param callRef the active call reference
464
- * @param parkTo the target device, or `null` to park on the current device
461
+ * @param parkTo the target device extension number, or `null` to park on the
462
+ * current device
465
463
  * @param loginName the login name
466
464
  * @returns `true` if the operation succeeded; `false` otherwise.
465
+ * @see unPark
467
466
  */
468
467
  park(callRef: string, parkTo?: string | null, loginName?: string | null): Promise<boolean>;
469
468
  /**
470
- * Returns the list of participants in the specified call.
469
+ * Returns the participants of the specified call.
471
470
  * <p>
472
471
  * If the session has been opened for a user, the `loginName` parameter is
473
472
  * ignored, but it is mandatory if the session has been opened by an
@@ -476,10 +475,11 @@ export declare class Telephony extends EventEmitter {
476
475
  * @param callRef the call reference
477
476
  * @param loginName the login name
478
477
  * @returns the list of {@link Participant} objects on success; `null` otherwise.
478
+ * @see getParticipant
479
479
  */
480
480
  getParticipants(callRef: string, loginName?: string | null): Promise<Participant[] | null>;
481
481
  /**
482
- * Returns the specified participant in the specified call.
482
+ * Returns the specified participant of the specified call.
483
483
  * <p>
484
484
  * If the session has been opened for a user, the `loginName` parameter is
485
485
  * ignored, but it is mandatory if the session has been opened by an
@@ -488,7 +488,8 @@ export declare class Telephony extends EventEmitter {
488
488
  * @param callRef the call reference
489
489
  * @param participantId the participant identifier
490
490
  * @param loginName the login name
491
- * @returns the {@link Participant} on success; `null` otherwise.
491
+ * @returns the {@link Participant} with the given identifier on success; `null` if not found.
492
+ * @see getParticipants
492
493
  */
493
494
  getParticipant(callRef: string, participantId: string, loginName?: string | null): Promise<Participant | null>;
494
495
  /**
@@ -508,22 +509,22 @@ export declare class Telephony extends EventEmitter {
508
509
  */
509
510
  dropParticipant(callRef: string, participantId: string, loginName?: string | null): Promise<boolean>;
510
511
  /**
511
- * Releases the current call (active or ringing) to retrieve a previously put on
512
- * hold call, cancelling a consultation call.
512
+ * Releases the current call to retrieve a previously held call (cancels a consultation call).
513
513
  * <p>
514
514
  * If the session has been opened for a user, the `loginName` parameter is
515
515
  * ignored, but it is mandatory if the session has been opened by an
516
516
  * administrator.
517
517
  *
518
518
  * @param callRef the held call reference
519
- * @param deviceId the device phone number for which the operation is done
519
+ * @param deviceId the device phone number for which the operation is performed; if the
520
+ * session is opened by a user, this must be one of the user's devices
520
521
  * @param enquiryCallRef the reference of the enquiry call to cancel
521
522
  * @param loginName the login name
522
523
  * @returns `true` if the operation succeeded; `false` otherwise.
523
524
  */
524
525
  reconnect(callRef: string, deviceId: string, enquiryCallRef: string, loginName?: string | null): Promise<boolean>;
525
526
  /**
526
- * Starts, stops, pauses or resumes the recording of the specified call.
527
+ * Starts, stops, pauses, or resumes the recording of the specified call.
527
528
  * <p>
528
529
  * If the session has been opened for a user, the `loginName` parameter is
529
530
  * ignored, but it is mandatory if the session has been opened by an
@@ -536,8 +537,7 @@ export declare class Telephony extends EventEmitter {
536
537
  */
537
538
  doRecordAction(callRef: string, action: RecordingAction, loginName?: string | null): Promise<boolean>;
538
539
  /**
539
- * Redirects an incoming ringing call to another user or number, instead of
540
- * responding to it.
540
+ * Redirects an incoming ringing call to another number or to voice mail.
541
541
  * <p>
542
542
  * If `redirectTo` is equal to `"VOICEMAIL"`, the incoming ringing call is
543
543
  * redirected to the user's voice mail.
@@ -547,8 +547,9 @@ export declare class Telephony extends EventEmitter {
547
547
  * administrator.
548
548
  *
549
549
  * @param callRef the incoming ringing call reference
550
- * @param redirectTo the phone number of the redirection, or `"VOICEMAIL"`
551
- * @param anonymous if `true`, the call will be redirected anonymously
550
+ * @param redirectTo the phone number of the redirection, or `"VOICEMAIL"` to redirect
551
+ * to the user's voice mail
552
+ * @param anonymous if `true`, the redirect is anonymous and the caller identity is hidden
552
553
  * @param loginName the login name
553
554
  * @returns `true` if the operation succeeded; `false` otherwise.
554
555
  */
@@ -556,38 +557,43 @@ export declare class Telephony extends EventEmitter {
556
557
  /**
557
558
  * Retrieves a call that has been previously put on hold.
558
559
  * <p>
559
- * This method will return `false` if it is invoked from a session opened
560
- * by an administrator.
560
+ * If the session has been opened for a user, the `loginName` parameter is
561
+ * ignored, but it is mandatory if the session has been opened by an
562
+ * administrator.
561
563
  *
562
- * @param callRef the held call reference
563
- * @param deviceId the device phone number for which the operation is done
564
+ * @param callRef the held call reference
565
+ * @param deviceId the device phone number for which the operation is performed; if the
566
+ * session is opened by a user, this must be one of the user's devices
567
+ * @param loginName the login name
564
568
  * @returns `true` if the operation succeeded; `false` otherwise.
569
+ * @see hold
565
570
  */
566
571
  retrieve(callRef: string, deviceId: string, loginName?: string | null): Promise<boolean>;
567
572
  /**
568
573
  * Sends DTMF codes on the specified active call.
569
574
  *
570
575
  * @param callRef the active call reference
571
- * @param deviceId the device phone number for which the operation is done
576
+ * @param deviceId the device phone number for which the operation is performed; if the
577
+ * session is opened by a user, this must be one of the user's devices
572
578
  * @param number the DTMF codes to send
573
579
  * @returns `true` if the operation succeeded; `false` otherwise.
574
580
  */
575
581
  sendDtmf(callRef: string, deviceId: string, number: string): Promise<boolean>;
576
582
  /**
577
- * Sends the account info for the specified call, on the specified device.
583
+ * Sends the transaction code for the specified call on the specified device.
578
584
  * <p>
579
- * This operation is used by a CCD agent to send the transaction code at the end
580
- * of the call. The string value must comply with the transaction code accepted
581
- * by OXE (numerical values only).
585
+ * Used by a CCD agent to send the transaction code at the end of a call.
586
+ * The value must comply with the OmniPCX Enterprise transaction code format
587
+ * (numeric values only).
582
588
  *
583
589
  * @param callRef the call reference
584
590
  * @param deviceId the device phone number for which the operation is done
585
- * @param accountInfo the transaction code
591
+ * @param accountInfo the transaction code (numeric values only)
586
592
  * @returns `true` if the operation succeeded; `false` otherwise.
587
593
  */
588
594
  sendAccountInfo(callRef: string, deviceId: string, accountInfo: string): Promise<boolean>;
589
595
  /**
590
- * Transfers a specified active call to a specified held call for the specified user.
596
+ * Transfers the specified active call to the specified held call.
591
597
  * <p>
592
598
  * If the session has been opened for a user, the `loginName` parameter is
593
599
  * ignored, but it is mandatory if the session has been opened by an
@@ -600,7 +606,7 @@ export declare class Telephony extends EventEmitter {
600
606
  */
601
607
  transfer(callRef: string, heldCallRef: string, loginName?: string | null): Promise<boolean>;
602
608
  /**
603
- * Logs the specified user on a specified desk sharing set.
609
+ * Logs the specified user onto a desk sharing set.
604
610
  * <p>
605
611
  * The user must be configured as a desk sharing user.
606
612
  * <p>
@@ -608,14 +614,14 @@ export declare class Telephony extends EventEmitter {
608
614
  * ignored, but it is mandatory if the session has been opened by an
609
615
  * administrator.
610
616
  *
611
- * @param dssDeviceNumber the desk sharing set phone number
617
+ * @param dssDeviceNumber the desk sharing set phone number to log on to
612
618
  * @param loginName the login name
613
619
  * @returns `true` if the operation succeeded; `false` otherwise.
614
620
  * @see deskSharingLogOff
615
621
  */
616
622
  deskSharingLogOn(dssDeviceNumber: string, loginName?: string | null): Promise<boolean>;
617
623
  /**
618
- * Logs off the specified user from the desk sharing set.
624
+ * Logs the specified user off from their desk sharing set.
619
625
  * <p>
620
626
  * The user must be configured as a desk sharing user.
621
627
  * <p>
@@ -629,7 +635,7 @@ export declare class Telephony extends EventEmitter {
629
635
  */
630
636
  deskSharingLogOff(loginName?: string | null): Promise<boolean>;
631
637
  /**
632
- * Gets the states of all devices of the specified user.
638
+ * Returns the operational state of all devices belonging to the specified user.
633
639
  * <p>
634
640
  * If the session has been opened for a user, the `loginName` parameter is
635
641
  * ignored, but it is mandatory if the session has been opened by an
@@ -637,68 +643,76 @@ export declare class Telephony extends EventEmitter {
637
643
  *
638
644
  * @param loginName the login name
639
645
  * @returns the list of {@link DeviceState} objects on success; `null` otherwise.
646
+ * @see getDeviceState
640
647
  */
641
648
  getDevicesState(loginName?: string | null): Promise<DeviceState[] | null>;
642
649
  /**
643
- * Gets the state of the specified device of the specified user.
650
+ * Returns the operational state of the specified device.
644
651
  * <p>
645
652
  * If the session has been opened for a user, the `loginName` parameter is
646
653
  * ignored, but it is mandatory if the session has been opened by an
647
654
  * administrator.
648
655
  *
649
- * @param deviceId the device phone number for which the operation is done
656
+ * @param deviceId the device phone number
650
657
  * @param loginName the login name
651
- * @returns the {@link DeviceState} on success; `null` otherwise.
658
+ * @returns the {@link DeviceState} for the requested device on success; `null` on error
659
+ * or if the device does not belong to the user.
660
+ * @see getDevicesState
652
661
  */
653
662
  getDeviceState(deviceId: string, loginName?: string | null): Promise<DeviceState | null>;
654
663
  /**
655
- * Picks up the specified incoming call for another user.
664
+ * Picks up an incoming call ringing on another user's device.
656
665
  *
657
- * @param deviceId the device phone number for which the operation is done
658
- * @param otherCallRef the reference of the call to pick up (on the remote user)
666
+ * @param deviceId the device phone number from which the pickup is performed;
667
+ * if the session is opened by a user, this must be one of the user's devices
668
+ * @param otherCallRef the reference of the call to pick up on the remote user
659
669
  * @param otherPhoneNumber the phone number on which the call is ringing
660
- * @param autoAnswer if `true`, automatically answers the call after the pickup
670
+ * @param autoAnswer if `true`, the call is automatically answered after pickup
661
671
  * @returns `true` if the operation succeeded; `false` otherwise.
662
672
  */
663
673
  pickUp(deviceId: string, otherCallRef: string, otherPhoneNumber: string, autoAnswer?: boolean): Promise<boolean>;
664
674
  /**
665
- * Performs an intrusion in the active call of a called user.
675
+ * Intrudes into the active call of a busy user.
676
+ * <p>
677
+ * Intrusion requires that the current device is in releasing state while calling
678
+ * a user who is engaged in a call, and that both the current device and the
679
+ * engaged users have the intrusion capability configured.
666
680
  * <p>
667
- * No parameter is required to invoke the intrusion: it only depends on the
668
- * current intrusion capability of the current device. It is based on the fact
669
- * that the current device must be in releasing state while calling a user which
670
- * is in a busy call with another user, the current device has the intrusion
671
- * capability, and the 2 users engaged in the call have the capability to allow
672
- * intrusion.
681
+ * Available from O2G 2.4.
673
682
  *
674
- * @param deviceId the device from which the intrusion is requested
683
+ * @param deviceId the device phone number from which the intrusion is initiated
675
684
  * @returns `true` if the operation succeeded; `false` otherwise.
676
685
  * @since O2G 2.4
677
686
  */
678
687
  intrusion(deviceId: string): Promise<boolean>;
679
688
  /**
680
- * Unparks a call from a target device.
689
+ * Unparks a previously parked call onto the specified device.
681
690
  *
682
- * @param deviceId the device from which the unpark request is made
683
- * @param heldCallRef the reference of the held call to unpark
691
+ * @param deviceId the device from which the unpark is requested
692
+ * @param heldCallRef the reference of the parked call
684
693
  * @returns `true` if the operation succeeded; `false` otherwise.
694
+ * @see park
685
695
  */
686
696
  unPark(deviceId: string, heldCallRef: string): Promise<boolean>;
687
697
  /**
688
- * Retrieves the hunting group status of the specified user.
698
+ * Returns the hunting group login status of the specified user.
689
699
  * <p>
690
700
  * If the session has been opened for a user, the `loginName` parameter is
691
701
  * ignored, but it is mandatory if the session has been opened by an
692
702
  * administrator.
693
703
  *
694
704
  * @param loginName the login name
695
- * @returns the {@link HuntingGroupStatus} on success; `null` otherwise.
705
+ * @returns the {@link HuntingGroupStatus} indicating whether the user is logged into
706
+ * their hunting group on success; `null` otherwise.
707
+ * @see huntingGroupLogOn
708
+ * @see huntingGroupLogOff
696
709
  */
697
710
  getHuntingGroupStatus(loginName?: string | null): Promise<HuntingGroupStatus | null>;
698
711
  /**
699
- * Logs on the specified user in their current hunting group.
712
+ * Logs the specified user into their current hunting group.
700
713
  * <p>
701
714
  * The user must be configured as a member of a hunting group.
715
+ * Has no effect and returns `true` if the user is already logged in.
702
716
  * <p>
703
717
  * If the session has been opened for a user, the `loginName` parameter is
704
718
  * ignored, but it is mandatory if the session has been opened by an
@@ -710,9 +724,10 @@ export declare class Telephony extends EventEmitter {
710
724
  */
711
725
  huntingGroupLogOn(loginName?: string | null): Promise<boolean>;
712
726
  /**
713
- * Logs off the specified user from their current hunting group.
727
+ * Logs the specified user off from their current hunting group.
714
728
  * <p>
715
729
  * The user must be configured as a member of a hunting group.
730
+ * Has no effect and returns `true` if the user is already logged off.
716
731
  * <p>
717
732
  * If the session has been opened for a user, the `loginName` parameter is
718
733
  * ignored, but it is mandatory if the session has been opened by an
@@ -724,7 +739,7 @@ export declare class Telephony extends EventEmitter {
724
739
  */
725
740
  huntingGroupLogOff(loginName?: string | null): Promise<boolean>;
726
741
  /**
727
- * Sets the specified user as a member of a hunting group.
742
+ * Adds the specified user as a member of an existing hunting group.
728
743
  * <p>
729
744
  * The request will fail if the hunting group does not exist. If the user
730
745
  * already belongs to the group, nothing is done and `true` is returned.
@@ -740,7 +755,7 @@ export declare class Telephony extends EventEmitter {
740
755
  */
741
756
  addMeToHuntingGroup(hgNumber: string, loginName?: string | null): Promise<boolean>;
742
757
  /**
743
- * Removes the specified user from a hunting group.
758
+ * Removes the specified user from an existing hunting group.
744
759
  * <p>
745
760
  * The request will fail if the hunting group does not exist. If the user does
746
761
  * not belong to the group, nothing is done and `true` is returned.
@@ -756,29 +771,36 @@ export declare class Telephony extends EventEmitter {
756
771
  */
757
772
  removeMeFromHuntingGroup(hgNumber: string, loginName?: string | null): Promise<boolean>;
758
773
  /**
759
- * Gets the list of hunting groups on the OXE node the specified user belongs to.
774
+ * Returns the hunting groups available on the OmniPCX Enterprise node the
775
+ * specified user belongs to.
760
776
  * <p>
761
777
  * If the session has been opened for a user, the `loginName` parameter is
762
778
  * ignored, but it is mandatory if the session has been opened by an
763
779
  * administrator.
764
780
  *
765
781
  * @param loginName the login name
766
- * @returns the {@link HuntingGroups} on success; `null` otherwise.
782
+ * @returns the {@link HuntingGroups} listing available hunting groups and the user's
783
+ * current membership on success; `null` otherwise.
784
+ * @see getHuntingGroupStatus
785
+ * @see addMeToHuntingGroup
786
+ * @see removeMeFromHuntingGroup
767
787
  */
768
788
  queryHuntingGroups(loginName?: string | null): Promise<HuntingGroups | null>;
769
789
  /**
770
- * Returns the list of callback requests for the specified user.
790
+ * Returns the pending callback requests for the specified user.
771
791
  * <p>
772
792
  * If the session has been opened for a user, the `loginName` parameter is
773
793
  * ignored, but it is mandatory if the session has been opened by an
774
794
  * administrator.
775
795
  *
776
796
  * @param loginName the login name
777
- * @returns the list of {@link Callback} objects on success; `null` otherwise.
797
+ * @returns the list of pending {@link Callback} objects on success; `null` otherwise.
798
+ * @see deleteCallbacks
799
+ * @see deleteCallback
778
800
  */
779
801
  getCallbacks(loginName?: string | null): Promise<Callback[] | null>;
780
802
  /**
781
- * Deletes all callback requests for the specified user.
803
+ * Deletes all pending callback requests for the specified user.
782
804
  * <p>
783
805
  * If the session has been opened for a user, the `loginName` parameter is
784
806
  * ignored, but it is mandatory if the session has been opened by an
@@ -786,108 +808,117 @@ export declare class Telephony extends EventEmitter {
786
808
  *
787
809
  * @param loginName the login name
788
810
  * @returns `true` if the operation succeeded; `false` otherwise.
811
+ * @see getCallbacks
789
812
  */
790
813
  deleteCallbacks(loginName?: string | null): Promise<boolean>;
791
814
  /**
792
- * Deletes the specified callback request for the specified user.
815
+ * Deletes the specified callback request.
793
816
  * <p>
794
817
  * If the session has been opened for a user, the `loginName` parameter is
795
818
  * ignored, but it is mandatory if the session has been opened by an
796
819
  * administrator.
797
820
  *
798
- * @param callbackId the callback identifier
821
+ * @param callbackId the callback identifier as returned by {@link getCallbacks}
799
822
  * @param loginName the login name
800
823
  * @returns `true` if the operation succeeded; `false` otherwise.
824
+ * @see getCallbacks
825
+ * @see deleteCallbacks
801
826
  */
802
827
  deleteCallback(callbackId: string, loginName?: string | null): Promise<boolean>;
803
828
  /**
804
- * Returns the current new mini message for the specified user.
805
- * <p>
806
- * As soon as a message is read, it is erased from OXE and cannot be read again.
807
- * Messages are retrieved in Last In First Out order.
829
+ * Returns the next unread mini message for the specified user.
808
830
  * <p>
809
- * This method will return `null` if all messages have been retrieved.
831
+ * Messages are consumed on read once retrieved, a message is deleted from the
832
+ * OXE and cannot be read again. Messages are returned in Last In First Out order.
833
+ * Returns `null` when there are no more unread messages.
810
834
  * <p>
811
835
  * If the session has been opened for a user, the `loginName` parameter is
812
836
  * ignored, but it is mandatory if the session has been opened by an
813
837
  * administrator.
814
838
  *
815
839
  * @param loginName the login name
816
- * @returns the {@link MiniMessage} on success; `null` otherwise.
840
+ * @returns the {@link MiniMessage} on success; `null` if there are no unread
841
+ * messages or on error.
817
842
  */
818
843
  getMiniMessage(loginName?: string | null): Promise<MiniMessage | null>;
819
844
  /**
820
- * Sends the specified mini message to the specified recipient.
845
+ * Sends a mini message to the specified recipient.
821
846
  * <p>
822
847
  * If the session has been opened for a user, the `loginName` parameter is
823
848
  * ignored, but it is mandatory if the session has been opened by an
824
849
  * administrator.
825
850
  *
826
- * @param recipient the phone number of the mini message recipient
827
- * @param message the mini message text
851
+ * @param recipient the phone number of the message recipient
852
+ * @param message the message text
828
853
  * @param loginName the login name
829
854
  * @returns `true` if the operation succeeded; `false` otherwise.
855
+ * @see getMiniMessage
830
856
  */
831
857
  sendMiniMessage(recipient: string, message: string, loginName?: string | null): Promise<boolean>;
832
858
  /**
833
- * Requests a callback from an idle device of the specified user.
859
+ * Requests a callback from an idle device.
834
860
  * <p>
835
861
  * If the session has been opened for a user, the `loginName` parameter is
836
862
  * ignored, but it is mandatory if the session has been opened by an
837
863
  * administrator.
838
864
  *
839
- * @param callee the phone number of the called party for which a callback is requested
865
+ * @param callee the phone number of the party to request a callback from
840
866
  * @param loginName the login name
841
867
  * @returns `true` if the operation succeeded; `false` otherwise.
868
+ * @see getCallbacks
869
+ * @see deleteCallbacks
842
870
  */
843
871
  requestCallback(callee: string, loginName?: string | null): Promise<boolean>;
844
872
  /**
845
- * Asks a snapshot event on the specified user.
873
+ * Requests a snapshot event to receive the current telephonic state via an
874
+ * {@link ON_TELEPHONY_STATE} event.
875
+ * <p>
876
+ * The resulting event will contain the full {@link TelephonicState} including
877
+ * active calls and device capabilities. If a second request is issued while the
878
+ * first is still in progress, it has no effect.
846
879
  * <p>
847
- * The {@link ON_TELEPHONY_STATE} event will contain the {@link TelephonicState}
848
- * (calls and device capabilities). If a second request is asked while the
849
- * previous one is still in progress, it has no effect.
880
+ * If an administrator calls this with a `null` `loginName`, the snapshot is
881
+ * requested for all users, which may take time depending on the number of users.
850
882
  * <p>
851
883
  * If the session has been opened for a user, the `loginName` parameter is
852
884
  * ignored, but it is mandatory if the session has been opened by an
853
885
  * administrator.
854
886
  *
855
887
  * @param loginName the login name
856
- * @returns `true` if the request was successfully submitted; `false` otherwise.
888
+ * @returns `true` if the operation succeeded; `false` otherwise.
889
+ * @see getState
857
890
  */
858
891
  requestSnapshot(loginName?: string | null): Promise<boolean>;
859
892
  /**
860
- * Toggles the microphone or interphony state on the specified device.
861
- * <p>
862
- * This action acts as a flip/flop and has the same effect as pressing the key:
893
+ * Toggles interphony or hands-free mode on the specified device.
863
894
  * <ul>
864
- * <li>activates or deactivates the microphone if the device has an outgoing or established call</li>
895
+ * <li>activates or deactivates the microphone if the device has an active call</li>
865
896
  * <li>activates or deactivates the interphony if the device is idle</li>
866
897
  * <li>has no effect if the device is ringing on an incoming call</li>
867
898
  * </ul>
868
899
  * <p>
869
- * This operation is done in blind mode: no state event is provided on the push,
870
- * but when the device returns to idle after a call, the microphone comes back to
871
- * the active state.
900
+ * This operation is done in blind mode: no state event is raised on the push,
901
+ * but when the device returns to idle after a call, the microphone comes back
902
+ * to the active state.
872
903
  *
873
- * @param deviceId the device phone number for which the operation is done
904
+ * @param deviceId the device phone number for which the operation is performed
874
905
  * @returns `true` if the operation succeeded; `false` otherwise.
875
906
  */
876
907
  toggleInterphony(deviceId: string): Promise<boolean>;
877
908
  /**
878
- * Query the specified CCD pilot information.
879
- * <p>
880
- * This method is used to get various information on the CCD pilot routing
881
- * capabilities.
909
+ * Returns transfer possibilities for the specified CCD pilot.
882
910
  * <p>
883
- * This method will return `null` if it is invoked from a session opened
884
- * by an administrator.
911
+ * If the session has been opened for a user, the `loginName` parameter is
912
+ * ignored, but it is mandatory if the session has been opened by an
913
+ * administrator.
885
914
  *
886
- * @param nodeId the PCX Enterprise node id
887
- * @param pilotNumber the pilot number
888
- * @param pilotTransferQueryParam optional call profile context parameters
915
+ * @param nodeId the OmniPCX Enterprise node ID
916
+ * @param pilotNumber the CCD pilot directory number
917
+ * @param pilotTransferQueryParam optional query criteria to filter results by agent number,
918
+ * priority transfer, supervised transfer, or call profile
889
919
  * @param loginName the login name
890
- * @returns the {@link PilotInfo} on success; `null` otherwise.
920
+ * @returns the {@link PilotInfo} describing the pilot's queue state and transfer possibilities
921
+ * on success; `null` otherwise.
891
922
  * @since 2.7
892
923
  */
893
924
  getPilotInfo(nodeId: number, pilotNumber: string, pilotTransferQueryParam?: PilotTransferQueryParameters | null, loginName?: string | null): Promise<PilotInfo | null>;