agentphone 1.0.5 → 1.0.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.
- package/dist/cjs/BaseClient.js +2 -2
- package/dist/cjs/api/resources/agents/client/requests/CreateAgentRequest.d.ts +18 -0
- package/dist/cjs/api/resources/agents/client/requests/CreateAgentRequest.js +12 -0
- package/dist/cjs/api/resources/agents/client/requests/UpdateAgentRequest.d.ts +18 -0
- package/dist/cjs/api/resources/agents/client/requests/UpdateAgentRequest.js +12 -0
- package/dist/cjs/api/resources/calls/client/Client.d.ts +26 -0
- package/dist/cjs/api/resources/calls/client/Client.js +61 -0
- package/dist/cjs/api/resources/calls/client/requests/CreateOutboundCallRequest.d.ts +2 -0
- package/dist/cjs/api/resources/calls/client/requests/CreateWebCallRequest.d.ts +2 -0
- package/dist/cjs/api/resources/calls/client/requests/GetCallRecordingV1CallsCallIdRecordingGetRequest.d.ts +9 -0
- package/dist/cjs/api/resources/calls/client/requests/GetCallRecordingV1CallsCallIdRecordingGetRequest.js +3 -0
- package/dist/cjs/api/resources/calls/client/requests/index.d.ts +1 -0
- package/dist/cjs/api/resources/conversations/client/Client.d.ts +19 -0
- package/dist/cjs/api/resources/conversations/client/Client.js +55 -0
- package/dist/cjs/api/resources/conversations/client/requests/SendTypingIndicatorV1ConversationsConversationIdTypingPostRequest.d.ts +9 -0
- package/dist/cjs/api/resources/conversations/client/requests/SendTypingIndicatorV1ConversationsConversationIdTypingPostRequest.js +3 -0
- package/dist/cjs/api/resources/conversations/client/requests/index.d.ts +1 -0
- package/dist/cjs/api/resources/usage/client/Client.d.ts +10 -0
- package/dist/cjs/api/resources/usage/client/Client.js +40 -0
- package/dist/cjs/api/types/AgentResponse.d.ts +18 -0
- package/dist/cjs/api/types/AgentResponse.js +12 -0
- package/dist/cjs/api/types/NumberUsageItem.d.ts +10 -0
- package/dist/cjs/api/types/NumberUsageItem.js +3 -0
- package/dist/cjs/api/types/NumberUsageResponse.d.ts +4 -0
- package/dist/cjs/api/types/NumberUsageResponse.js +3 -0
- package/dist/cjs/api/types/SendTypingResponse.d.ts +5 -0
- package/dist/cjs/api/types/SendTypingResponse.js +3 -0
- package/dist/cjs/api/types/index.d.ts +3 -0
- package/dist/cjs/api/types/index.js +3 -0
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/esm/BaseClient.mjs +2 -2
- package/dist/esm/api/resources/agents/client/requests/CreateAgentRequest.d.mts +18 -0
- package/dist/esm/api/resources/agents/client/requests/CreateAgentRequest.mjs +12 -0
- package/dist/esm/api/resources/agents/client/requests/UpdateAgentRequest.d.mts +18 -0
- package/dist/esm/api/resources/agents/client/requests/UpdateAgentRequest.mjs +12 -0
- package/dist/esm/api/resources/calls/client/Client.d.mts +26 -0
- package/dist/esm/api/resources/calls/client/Client.mjs +61 -0
- package/dist/esm/api/resources/calls/client/requests/CreateOutboundCallRequest.d.mts +2 -0
- package/dist/esm/api/resources/calls/client/requests/CreateWebCallRequest.d.mts +2 -0
- package/dist/esm/api/resources/calls/client/requests/GetCallRecordingV1CallsCallIdRecordingGetRequest.d.mts +9 -0
- package/dist/esm/api/resources/calls/client/requests/GetCallRecordingV1CallsCallIdRecordingGetRequest.mjs +2 -0
- package/dist/esm/api/resources/calls/client/requests/index.d.mts +1 -0
- package/dist/esm/api/resources/conversations/client/Client.d.mts +19 -0
- package/dist/esm/api/resources/conversations/client/Client.mjs +55 -0
- package/dist/esm/api/resources/conversations/client/requests/SendTypingIndicatorV1ConversationsConversationIdTypingPostRequest.d.mts +9 -0
- package/dist/esm/api/resources/conversations/client/requests/SendTypingIndicatorV1ConversationsConversationIdTypingPostRequest.mjs +2 -0
- package/dist/esm/api/resources/conversations/client/requests/index.d.mts +1 -0
- package/dist/esm/api/resources/usage/client/Client.d.mts +10 -0
- package/dist/esm/api/resources/usage/client/Client.mjs +40 -0
- package/dist/esm/api/types/AgentResponse.d.mts +18 -0
- package/dist/esm/api/types/AgentResponse.mjs +12 -0
- package/dist/esm/api/types/NumberUsageItem.d.mts +10 -0
- package/dist/esm/api/types/NumberUsageItem.mjs +2 -0
- package/dist/esm/api/types/NumberUsageResponse.d.mts +4 -0
- package/dist/esm/api/types/NumberUsageResponse.mjs +2 -0
- package/dist/esm/api/types/SendTypingResponse.d.mts +5 -0
- package/dist/esm/api/types/SendTypingResponse.mjs +2 -0
- package/dist/esm/api/types/index.d.mts +3 -0
- package/dist/esm/api/types/index.mjs +3 -0
- package/dist/esm/version.d.mts +1 -1
- package/dist/esm/version.mjs +1 -1
- package/package.json +1 -1
- package/reference.md +200 -0
|
@@ -17,6 +17,10 @@ export interface UpdateAgentRequest {
|
|
|
17
17
|
voicemailMessage?: string | null;
|
|
18
18
|
/** Speech-to-text mode. 'fast' optimizes for latency, 'accurate' optimizes for transcription accuracy (~200ms additional latency). */
|
|
19
19
|
sttMode?: UpdateAgentRequest.SttMode;
|
|
20
|
+
/** Background ambience to mask synthetic silence between turns. 'none' disables; 'office', 'coffee-shop', 'outdoor' enable a quiet bed. */
|
|
21
|
+
ambientSound?: UpdateAgentRequest.AmbientSound;
|
|
22
|
+
/** Audio denoising. 'noise-cancellation' (default) handles general noise. 'noise-and-background-speech-cancellation' is more aggressive for callers in cars, cafes, or near TVs ($0.005/min surcharge). */
|
|
23
|
+
denoisingMode?: UpdateAgentRequest.DenoisingMode;
|
|
20
24
|
}
|
|
21
25
|
export declare namespace UpdateAgentRequest {
|
|
22
26
|
const VoiceMode: {
|
|
@@ -36,4 +40,18 @@ export declare namespace UpdateAgentRequest {
|
|
|
36
40
|
readonly Accurate: "accurate";
|
|
37
41
|
};
|
|
38
42
|
type SttMode = (typeof SttMode)[keyof typeof SttMode];
|
|
43
|
+
/** Background ambience to mask synthetic silence between turns. 'none' disables; 'office', 'coffee-shop', 'outdoor' enable a quiet bed. */
|
|
44
|
+
const AmbientSound: {
|
|
45
|
+
readonly None: "none";
|
|
46
|
+
readonly Office: "office";
|
|
47
|
+
readonly CoffeeShop: "coffee-shop";
|
|
48
|
+
readonly Outdoor: "outdoor";
|
|
49
|
+
};
|
|
50
|
+
type AmbientSound = (typeof AmbientSound)[keyof typeof AmbientSound];
|
|
51
|
+
/** Audio denoising. 'noise-cancellation' (default) handles general noise. 'noise-and-background-speech-cancellation' is more aggressive for callers in cars, cafes, or near TVs ($0.005/min surcharge). */
|
|
52
|
+
const DenoisingMode: {
|
|
53
|
+
readonly NoiseCancellation: "noise-cancellation";
|
|
54
|
+
readonly NoiseAndBackgroundSpeechCancellation: "noise-and-background-speech-cancellation";
|
|
55
|
+
};
|
|
56
|
+
type DenoisingMode = (typeof DenoisingMode)[keyof typeof DenoisingMode];
|
|
39
57
|
}
|
|
@@ -15,4 +15,16 @@ export var UpdateAgentRequest;
|
|
|
15
15
|
Fast: "fast",
|
|
16
16
|
Accurate: "accurate",
|
|
17
17
|
};
|
|
18
|
+
/** Background ambience to mask synthetic silence between turns. 'none' disables; 'office', 'coffee-shop', 'outdoor' enable a quiet bed. */
|
|
19
|
+
UpdateAgentRequest.AmbientSound = {
|
|
20
|
+
None: "none",
|
|
21
|
+
Office: "office",
|
|
22
|
+
CoffeeShop: "coffee-shop",
|
|
23
|
+
Outdoor: "outdoor",
|
|
24
|
+
};
|
|
25
|
+
/** Audio denoising. 'noise-cancellation' (default) handles general noise. 'noise-and-background-speech-cancellation' is more aggressive for callers in cars, cafes, or near TVs ($0.005/min surcharge). */
|
|
26
|
+
UpdateAgentRequest.DenoisingMode = {
|
|
27
|
+
NoiseCancellation: "noise-cancellation",
|
|
28
|
+
NoiseAndBackgroundSpeechCancellation: "noise-and-background-speech-cancellation",
|
|
29
|
+
};
|
|
18
30
|
})(UpdateAgentRequest || (UpdateAgentRequest = {}));
|
|
@@ -90,6 +90,32 @@ export declare class CallsClient {
|
|
|
90
90
|
*/
|
|
91
91
|
getCall(request: AgentPhone.GetCallV1CallsCallIdGetRequest, requestOptions?: CallsClient.RequestOptions): core.HttpResponsePromise<unknown>;
|
|
92
92
|
private __getCall;
|
|
93
|
+
/**
|
|
94
|
+
* Returns the audio file (WAV format) for a completed call.
|
|
95
|
+
*
|
|
96
|
+
* This is a public endpoint -- no authentication is required. The call ID acts as the access token. The `recordingUrl` field in the call response already contains this URL when recording is enabled.
|
|
97
|
+
*
|
|
98
|
+
* Recording must be enabled on your account via `POST /credits/recording/enable` ($5/mo add-on). Returns `404` if the call doesn't exist or has no recording.
|
|
99
|
+
*
|
|
100
|
+
* **Response:** Binary audio file (`audio/wav`), auto-downloads with filename `recording-{call_id}.wav`.
|
|
101
|
+
*
|
|
102
|
+
* **Notes:**
|
|
103
|
+
* - Recording is available shortly after a call completes
|
|
104
|
+
* - Check `recordingAvailable: true` in the call response before fetching
|
|
105
|
+
* - The URL can be shared or embedded directly since it requires no authentication
|
|
106
|
+
*
|
|
107
|
+
* @param {AgentPhone.GetCallRecordingV1CallsCallIdRecordingGetRequest} request
|
|
108
|
+
* @param {CallsClient.RequestOptions} requestOptions - Request-specific configuration.
|
|
109
|
+
*
|
|
110
|
+
* @throws {@link AgentPhone.UnprocessableEntityError}
|
|
111
|
+
*
|
|
112
|
+
* @example
|
|
113
|
+
* await client.calls.getCallRecording({
|
|
114
|
+
* call_id: "call_id"
|
|
115
|
+
* })
|
|
116
|
+
*/
|
|
117
|
+
getCallRecording(request: AgentPhone.GetCallRecordingV1CallsCallIdRecordingGetRequest, requestOptions?: CallsClient.RequestOptions): core.HttpResponsePromise<unknown>;
|
|
118
|
+
private __getCallRecording;
|
|
93
119
|
/**
|
|
94
120
|
* Get the full transcript for a call.
|
|
95
121
|
*
|
|
@@ -255,6 +255,67 @@ export class CallsClient {
|
|
|
255
255
|
return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v1/calls/{call_id}");
|
|
256
256
|
});
|
|
257
257
|
}
|
|
258
|
+
/**
|
|
259
|
+
* Returns the audio file (WAV format) for a completed call.
|
|
260
|
+
*
|
|
261
|
+
* This is a public endpoint -- no authentication is required. The call ID acts as the access token. The `recordingUrl` field in the call response already contains this URL when recording is enabled.
|
|
262
|
+
*
|
|
263
|
+
* Recording must be enabled on your account via `POST /credits/recording/enable` ($5/mo add-on). Returns `404` if the call doesn't exist or has no recording.
|
|
264
|
+
*
|
|
265
|
+
* **Response:** Binary audio file (`audio/wav`), auto-downloads with filename `recording-{call_id}.wav`.
|
|
266
|
+
*
|
|
267
|
+
* **Notes:**
|
|
268
|
+
* - Recording is available shortly after a call completes
|
|
269
|
+
* - Check `recordingAvailable: true` in the call response before fetching
|
|
270
|
+
* - The URL can be shared or embedded directly since it requires no authentication
|
|
271
|
+
*
|
|
272
|
+
* @param {AgentPhone.GetCallRecordingV1CallsCallIdRecordingGetRequest} request
|
|
273
|
+
* @param {CallsClient.RequestOptions} requestOptions - Request-specific configuration.
|
|
274
|
+
*
|
|
275
|
+
* @throws {@link AgentPhone.UnprocessableEntityError}
|
|
276
|
+
*
|
|
277
|
+
* @example
|
|
278
|
+
* await client.calls.getCallRecording({
|
|
279
|
+
* call_id: "call_id"
|
|
280
|
+
* })
|
|
281
|
+
*/
|
|
282
|
+
getCallRecording(request, requestOptions) {
|
|
283
|
+
return core.HttpResponsePromise.fromPromise(this.__getCallRecording(request, requestOptions));
|
|
284
|
+
}
|
|
285
|
+
__getCallRecording(request, requestOptions) {
|
|
286
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
287
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
288
|
+
const { call_id: callId } = request;
|
|
289
|
+
const _headers = mergeHeaders((_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
|
|
290
|
+
const _response = yield core.fetcher({
|
|
291
|
+
url: core.url.join((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.AgentPhoneEnvironment.Production, `v1/calls/${core.url.encodePathParam(callId)}/recording`),
|
|
292
|
+
method: "GET",
|
|
293
|
+
headers: _headers,
|
|
294
|
+
queryParameters: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams,
|
|
295
|
+
timeoutMs: ((_f = (_d = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) !== null && _d !== void 0 ? _d : (_e = this._options) === null || _e === void 0 ? void 0 : _e.timeoutInSeconds) !== null && _f !== void 0 ? _f : 60) * 1000,
|
|
296
|
+
maxRetries: (_g = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries) !== null && _g !== void 0 ? _g : (_h = this._options) === null || _h === void 0 ? void 0 : _h.maxRetries,
|
|
297
|
+
abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
|
|
298
|
+
fetchFn: (_j = this._options) === null || _j === void 0 ? void 0 : _j.fetch,
|
|
299
|
+
logging: this._options.logging,
|
|
300
|
+
});
|
|
301
|
+
if (_response.ok) {
|
|
302
|
+
return { data: _response.body, rawResponse: _response.rawResponse };
|
|
303
|
+
}
|
|
304
|
+
if (_response.error.reason === "status-code") {
|
|
305
|
+
switch (_response.error.statusCode) {
|
|
306
|
+
case 422:
|
|
307
|
+
throw new AgentPhone.UnprocessableEntityError(_response.error.body, _response.rawResponse);
|
|
308
|
+
default:
|
|
309
|
+
throw new errors.AgentPhoneError({
|
|
310
|
+
statusCode: _response.error.statusCode,
|
|
311
|
+
body: _response.error.body,
|
|
312
|
+
rawResponse: _response.rawResponse,
|
|
313
|
+
});
|
|
314
|
+
}
|
|
315
|
+
}
|
|
316
|
+
return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v1/calls/{call_id}/recording");
|
|
317
|
+
});
|
|
318
|
+
}
|
|
258
319
|
/**
|
|
259
320
|
* Get the full transcript for a call.
|
|
260
321
|
*
|
|
@@ -18,4 +18,6 @@ export interface CreateOutboundCallRequest {
|
|
|
18
18
|
voice?: string | null;
|
|
19
19
|
/** When provided, uses a built-in LLM for the conversation instead of forwarding to a webhook. The prompt defines the AI's personality and conversation topic. */
|
|
20
20
|
systemPrompt?: string | null;
|
|
21
|
+
/** Optional per-call dynamic variables. Values are substituted into ``{{var_name}}`` placeholders in the agent's system prompt and initial greeting at call time. Requires either ``systemPrompt`` or a hosted-mode agent. */
|
|
22
|
+
variables?: Record<string, string | null> | null;
|
|
21
23
|
}
|
|
@@ -9,4 +9,6 @@ export interface CreateWebCallRequest {
|
|
|
9
9
|
agentId: string;
|
|
10
10
|
/** Optional metadata to attach to the call */
|
|
11
11
|
metadata?: Record<string, unknown> | null;
|
|
12
|
+
/** Optional per-call dynamic variables. Values are substituted into ``{{var_name}}`` placeholders in the agent's system prompt and begin message at call time. Requires a hosted-mode agent. */
|
|
13
|
+
variables?: Record<string, string | null> | null;
|
|
12
14
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export type { CreateOutboundCallRequest } from "./CreateOutboundCallRequest.mjs";
|
|
2
2
|
export type { CreateWebCallRequest } from "./CreateWebCallRequest.mjs";
|
|
3
|
+
export type { GetCallRecordingV1CallsCallIdRecordingGetRequest } from "./GetCallRecordingV1CallsCallIdRecordingGetRequest.mjs";
|
|
3
4
|
export type { GetCallTranscriptV1CallsCallIdTranscriptGetRequest } from "./GetCallTranscriptV1CallsCallIdTranscriptGetRequest.mjs";
|
|
4
5
|
export type { GetCallV1CallsCallIdGetRequest } from "./GetCallV1CallsCallIdGetRequest.mjs";
|
|
5
6
|
export type { ListCallsForNumberV1NumbersNumberIdCallsGetRequest } from "./ListCallsForNumberV1NumbersNumberIdCallsGetRequest.mjs";
|
|
@@ -79,4 +79,23 @@ export declare class ConversationsClient {
|
|
|
79
79
|
*/
|
|
80
80
|
getConversationMessages(request: AgentPhone.GetConversationMessagesV1ConversationsConversationIdMessagesGetRequest, requestOptions?: ConversationsClient.RequestOptions): core.HttpResponsePromise<AgentPhone.MessagesListResponse>;
|
|
81
81
|
private __getConversationMessages;
|
|
82
|
+
/**
|
|
83
|
+
* Show a typing indicator in the conversation (iMessage only).
|
|
84
|
+
*
|
|
85
|
+
* Best-effort: providers may silently drop the indicator if the chat hasn't
|
|
86
|
+
* had recent activity, the recipient isn't on iMessage, or it's a group chat.
|
|
87
|
+
* Indicators auto-expire after a few seconds — no "stop typing" call needed.
|
|
88
|
+
*
|
|
89
|
+
* @param {AgentPhone.SendTypingIndicatorV1ConversationsConversationIdTypingPostRequest} request
|
|
90
|
+
* @param {ConversationsClient.RequestOptions} requestOptions - Request-specific configuration.
|
|
91
|
+
*
|
|
92
|
+
* @throws {@link AgentPhone.UnprocessableEntityError}
|
|
93
|
+
*
|
|
94
|
+
* @example
|
|
95
|
+
* await client.conversations.sendTypingIndicator({
|
|
96
|
+
* conversation_id: "conversation_id"
|
|
97
|
+
* })
|
|
98
|
+
*/
|
|
99
|
+
sendTypingIndicator(request: AgentPhone.SendTypingIndicatorV1ConversationsConversationIdTypingPostRequest, requestOptions?: ConversationsClient.RequestOptions): core.HttpResponsePromise<AgentPhone.SendTypingResponse>;
|
|
100
|
+
private __sendTypingIndicator;
|
|
82
101
|
}
|
|
@@ -261,4 +261,59 @@ export class ConversationsClient {
|
|
|
261
261
|
return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v1/conversations/{conversation_id}/messages");
|
|
262
262
|
});
|
|
263
263
|
}
|
|
264
|
+
/**
|
|
265
|
+
* Show a typing indicator in the conversation (iMessage only).
|
|
266
|
+
*
|
|
267
|
+
* Best-effort: providers may silently drop the indicator if the chat hasn't
|
|
268
|
+
* had recent activity, the recipient isn't on iMessage, or it's a group chat.
|
|
269
|
+
* Indicators auto-expire after a few seconds — no "stop typing" call needed.
|
|
270
|
+
*
|
|
271
|
+
* @param {AgentPhone.SendTypingIndicatorV1ConversationsConversationIdTypingPostRequest} request
|
|
272
|
+
* @param {ConversationsClient.RequestOptions} requestOptions - Request-specific configuration.
|
|
273
|
+
*
|
|
274
|
+
* @throws {@link AgentPhone.UnprocessableEntityError}
|
|
275
|
+
*
|
|
276
|
+
* @example
|
|
277
|
+
* await client.conversations.sendTypingIndicator({
|
|
278
|
+
* conversation_id: "conversation_id"
|
|
279
|
+
* })
|
|
280
|
+
*/
|
|
281
|
+
sendTypingIndicator(request, requestOptions) {
|
|
282
|
+
return core.HttpResponsePromise.fromPromise(this.__sendTypingIndicator(request, requestOptions));
|
|
283
|
+
}
|
|
284
|
+
__sendTypingIndicator(request, requestOptions) {
|
|
285
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
286
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
287
|
+
const { conversation_id: conversationId } = request;
|
|
288
|
+
const _authRequest = yield this._options.authProvider.getAuthRequest();
|
|
289
|
+
const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
|
|
290
|
+
const _response = yield core.fetcher({
|
|
291
|
+
url: core.url.join((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.AgentPhoneEnvironment.Production, `v1/conversations/${core.url.encodePathParam(conversationId)}/typing`),
|
|
292
|
+
method: "POST",
|
|
293
|
+
headers: _headers,
|
|
294
|
+
queryParameters: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams,
|
|
295
|
+
timeoutMs: ((_f = (_d = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) !== null && _d !== void 0 ? _d : (_e = this._options) === null || _e === void 0 ? void 0 : _e.timeoutInSeconds) !== null && _f !== void 0 ? _f : 60) * 1000,
|
|
296
|
+
maxRetries: (_g = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries) !== null && _g !== void 0 ? _g : (_h = this._options) === null || _h === void 0 ? void 0 : _h.maxRetries,
|
|
297
|
+
abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
|
|
298
|
+
fetchFn: (_j = this._options) === null || _j === void 0 ? void 0 : _j.fetch,
|
|
299
|
+
logging: this._options.logging,
|
|
300
|
+
});
|
|
301
|
+
if (_response.ok) {
|
|
302
|
+
return { data: _response.body, rawResponse: _response.rawResponse };
|
|
303
|
+
}
|
|
304
|
+
if (_response.error.reason === "status-code") {
|
|
305
|
+
switch (_response.error.statusCode) {
|
|
306
|
+
case 422:
|
|
307
|
+
throw new AgentPhone.UnprocessableEntityError(_response.error.body, _response.rawResponse);
|
|
308
|
+
default:
|
|
309
|
+
throw new errors.AgentPhoneError({
|
|
310
|
+
statusCode: _response.error.statusCode,
|
|
311
|
+
body: _response.error.body,
|
|
312
|
+
rawResponse: _response.rawResponse,
|
|
313
|
+
});
|
|
314
|
+
}
|
|
315
|
+
}
|
|
316
|
+
return handleNonStatusCodeError(_response.error, _response.rawResponse, "POST", "/v1/conversations/{conversation_id}/typing");
|
|
317
|
+
});
|
|
318
|
+
}
|
|
264
319
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export type { GetConversationMessagesV1ConversationsConversationIdMessagesGetRequest } from "./GetConversationMessagesV1ConversationsConversationIdMessagesGetRequest.mjs";
|
|
2
2
|
export type { GetConversationV1ConversationsConversationIdGetRequest } from "./GetConversationV1ConversationsConversationIdGetRequest.mjs";
|
|
3
3
|
export type { ListConversationsV1ConversationsGetRequest } from "./ListConversationsV1ConversationsGetRequest.mjs";
|
|
4
|
+
export type { SendTypingIndicatorV1ConversationsConversationIdTypingPostRequest } from "./SendTypingIndicatorV1ConversationsConversationIdTypingPostRequest.mjs";
|
|
4
5
|
export type { UpdateConversationRequest } from "./UpdateConversationRequest.mjs";
|
|
@@ -54,4 +54,14 @@ export declare class UsageClient {
|
|
|
54
54
|
*/
|
|
55
55
|
getMonthlyUsage(request?: AgentPhone.GetMonthlyUsageV1UsageMonthlyGetRequest, requestOptions?: UsageClient.RequestOptions): core.HttpResponsePromise<AgentPhone.MonthlyUsageResponse>;
|
|
56
56
|
private __getMonthlyUsage;
|
|
57
|
+
/**
|
|
58
|
+
* Get usage statistics broken down by phone number, with linked agent info.
|
|
59
|
+
*
|
|
60
|
+
* @param {UsageClient.RequestOptions} requestOptions - Request-specific configuration.
|
|
61
|
+
*
|
|
62
|
+
* @example
|
|
63
|
+
* await client.usage.getUsageByNumber()
|
|
64
|
+
*/
|
|
65
|
+
getUsageByNumber(requestOptions?: UsageClient.RequestOptions): core.HttpResponsePromise<AgentPhone.NumberUsageResponse>;
|
|
66
|
+
private __getUsageByNumber;
|
|
57
67
|
}
|
|
@@ -171,4 +171,44 @@ export class UsageClient {
|
|
|
171
171
|
return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v1/usage/monthly");
|
|
172
172
|
});
|
|
173
173
|
}
|
|
174
|
+
/**
|
|
175
|
+
* Get usage statistics broken down by phone number, with linked agent info.
|
|
176
|
+
*
|
|
177
|
+
* @param {UsageClient.RequestOptions} requestOptions - Request-specific configuration.
|
|
178
|
+
*
|
|
179
|
+
* @example
|
|
180
|
+
* await client.usage.getUsageByNumber()
|
|
181
|
+
*/
|
|
182
|
+
getUsageByNumber(requestOptions) {
|
|
183
|
+
return core.HttpResponsePromise.fromPromise(this.__getUsageByNumber(requestOptions));
|
|
184
|
+
}
|
|
185
|
+
__getUsageByNumber(requestOptions) {
|
|
186
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
187
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j;
|
|
188
|
+
const _authRequest = yield this._options.authProvider.getAuthRequest();
|
|
189
|
+
const _headers = mergeHeaders(_authRequest.headers, (_a = this._options) === null || _a === void 0 ? void 0 : _a.headers, requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.headers);
|
|
190
|
+
const _response = yield core.fetcher({
|
|
191
|
+
url: core.url.join((_c = (_b = (yield core.Supplier.get(this._options.baseUrl))) !== null && _b !== void 0 ? _b : (yield core.Supplier.get(this._options.environment))) !== null && _c !== void 0 ? _c : environments.AgentPhoneEnvironment.Production, "v1/usage/by-number"),
|
|
192
|
+
method: "GET",
|
|
193
|
+
headers: _headers,
|
|
194
|
+
queryParameters: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.queryParams,
|
|
195
|
+
timeoutMs: ((_f = (_d = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.timeoutInSeconds) !== null && _d !== void 0 ? _d : (_e = this._options) === null || _e === void 0 ? void 0 : _e.timeoutInSeconds) !== null && _f !== void 0 ? _f : 60) * 1000,
|
|
196
|
+
maxRetries: (_g = requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.maxRetries) !== null && _g !== void 0 ? _g : (_h = this._options) === null || _h === void 0 ? void 0 : _h.maxRetries,
|
|
197
|
+
abortSignal: requestOptions === null || requestOptions === void 0 ? void 0 : requestOptions.abortSignal,
|
|
198
|
+
fetchFn: (_j = this._options) === null || _j === void 0 ? void 0 : _j.fetch,
|
|
199
|
+
logging: this._options.logging,
|
|
200
|
+
});
|
|
201
|
+
if (_response.ok) {
|
|
202
|
+
return { data: _response.body, rawResponse: _response.rawResponse };
|
|
203
|
+
}
|
|
204
|
+
if (_response.error.reason === "status-code") {
|
|
205
|
+
throw new errors.AgentPhoneError({
|
|
206
|
+
statusCode: _response.error.statusCode,
|
|
207
|
+
body: _response.error.body,
|
|
208
|
+
rawResponse: _response.rawResponse,
|
|
209
|
+
});
|
|
210
|
+
}
|
|
211
|
+
return handleNonStatusCodeError(_response.error, _response.rawResponse, "GET", "/v1/usage/by-number");
|
|
212
|
+
});
|
|
213
|
+
}
|
|
174
214
|
}
|
|
@@ -12,6 +12,10 @@ export interface AgentResponse {
|
|
|
12
12
|
voicemailMessage?: string | null;
|
|
13
13
|
/** Speech-to-text mode. 'fast' optimizes for latency, 'accurate' optimizes for transcription accuracy (~200ms additional latency). */
|
|
14
14
|
sttMode?: AgentResponse.SttMode;
|
|
15
|
+
/** Background ambience to mask synthetic silence between turns. 'none' disables; 'office', 'coffee-shop', 'outdoor' enable a quiet bed. */
|
|
16
|
+
ambientSound?: AgentResponse.AmbientSound;
|
|
17
|
+
/** Audio denoising. 'noise-cancellation' (default) handles general noise. 'noise-and-background-speech-cancellation' is more aggressive for callers in cars, cafes, or near TVs ($0.005/min surcharge). */
|
|
18
|
+
denoisingMode?: AgentResponse.DenoisingMode;
|
|
15
19
|
createdAt: string;
|
|
16
20
|
numbers?: AgentPhone.AgentNumberResponse[] | null;
|
|
17
21
|
}
|
|
@@ -33,4 +37,18 @@ export declare namespace AgentResponse {
|
|
|
33
37
|
readonly Accurate: "accurate";
|
|
34
38
|
};
|
|
35
39
|
type SttMode = (typeof SttMode)[keyof typeof SttMode];
|
|
40
|
+
/** Background ambience to mask synthetic silence between turns. 'none' disables; 'office', 'coffee-shop', 'outdoor' enable a quiet bed. */
|
|
41
|
+
const AmbientSound: {
|
|
42
|
+
readonly None: "none";
|
|
43
|
+
readonly Office: "office";
|
|
44
|
+
readonly CoffeeShop: "coffee-shop";
|
|
45
|
+
readonly Outdoor: "outdoor";
|
|
46
|
+
};
|
|
47
|
+
type AmbientSound = (typeof AmbientSound)[keyof typeof AmbientSound];
|
|
48
|
+
/** Audio denoising. 'noise-cancellation' (default) handles general noise. 'noise-and-background-speech-cancellation' is more aggressive for callers in cars, cafes, or near TVs ($0.005/min surcharge). */
|
|
49
|
+
const DenoisingMode: {
|
|
50
|
+
readonly NoiseCancellation: "noise-cancellation";
|
|
51
|
+
readonly NoiseAndBackgroundSpeechCancellation: "noise-and-background-speech-cancellation";
|
|
52
|
+
};
|
|
53
|
+
type DenoisingMode = (typeof DenoisingMode)[keyof typeof DenoisingMode];
|
|
36
54
|
}
|
|
@@ -15,4 +15,16 @@ export var AgentResponse;
|
|
|
15
15
|
Fast: "fast",
|
|
16
16
|
Accurate: "accurate",
|
|
17
17
|
};
|
|
18
|
+
/** Background ambience to mask synthetic silence between turns. 'none' disables; 'office', 'coffee-shop', 'outdoor' enable a quiet bed. */
|
|
19
|
+
AgentResponse.AmbientSound = {
|
|
20
|
+
None: "none",
|
|
21
|
+
Office: "office",
|
|
22
|
+
CoffeeShop: "coffee-shop",
|
|
23
|
+
Outdoor: "outdoor",
|
|
24
|
+
};
|
|
25
|
+
/** Audio denoising. 'noise-cancellation' (default) handles general noise. 'noise-and-background-speech-cancellation' is more aggressive for callers in cars, cafes, or near TVs ($0.005/min surcharge). */
|
|
26
|
+
AgentResponse.DenoisingMode = {
|
|
27
|
+
NoiseCancellation: "noise-cancellation",
|
|
28
|
+
NoiseAndBackgroundSpeechCancellation: "noise-and-background-speech-cancellation",
|
|
29
|
+
};
|
|
18
30
|
})(AgentResponse || (AgentResponse = {}));
|
|
@@ -23,6 +23,8 @@ export * from "./MessagesListResponse.mjs";
|
|
|
23
23
|
export * from "./MonthlyUsagePoint.mjs";
|
|
24
24
|
export * from "./MonthlyUsageResponse.mjs";
|
|
25
25
|
export * from "./NumberLimits.mjs";
|
|
26
|
+
export * from "./NumberUsageItem.mjs";
|
|
27
|
+
export * from "./NumberUsageResponse.mjs";
|
|
26
28
|
export * from "./PaginatedDeliveriesResponse.mjs";
|
|
27
29
|
export * from "./PhoneNumberListResponse.mjs";
|
|
28
30
|
export * from "./PhoneNumberResponse.mjs";
|
|
@@ -31,6 +33,7 @@ export * from "./PlanLimits.mjs";
|
|
|
31
33
|
export * from "./ReactionInConversation.mjs";
|
|
32
34
|
export * from "./SendMessageResponse.mjs";
|
|
33
35
|
export * from "./SendReactionResponse.mjs";
|
|
36
|
+
export * from "./SendTypingResponse.mjs";
|
|
34
37
|
export * from "./UsageResponse.mjs";
|
|
35
38
|
export * from "./UsageStats.mjs";
|
|
36
39
|
export * from "./ValidationError.mjs";
|
|
@@ -23,6 +23,8 @@ export * from "./MessagesListResponse.mjs";
|
|
|
23
23
|
export * from "./MonthlyUsagePoint.mjs";
|
|
24
24
|
export * from "./MonthlyUsageResponse.mjs";
|
|
25
25
|
export * from "./NumberLimits.mjs";
|
|
26
|
+
export * from "./NumberUsageItem.mjs";
|
|
27
|
+
export * from "./NumberUsageResponse.mjs";
|
|
26
28
|
export * from "./PaginatedDeliveriesResponse.mjs";
|
|
27
29
|
export * from "./PhoneNumberListResponse.mjs";
|
|
28
30
|
export * from "./PhoneNumberResponse.mjs";
|
|
@@ -31,6 +33,7 @@ export * from "./PlanLimits.mjs";
|
|
|
31
33
|
export * from "./ReactionInConversation.mjs";
|
|
32
34
|
export * from "./SendMessageResponse.mjs";
|
|
33
35
|
export * from "./SendReactionResponse.mjs";
|
|
36
|
+
export * from "./SendTypingResponse.mjs";
|
|
34
37
|
export * from "./UsageResponse.mjs";
|
|
35
38
|
export * from "./UsageStats.mjs";
|
|
36
39
|
export * from "./ValidationError.mjs";
|
package/dist/esm/version.d.mts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const SDK_VERSION = "1.0.
|
|
1
|
+
export declare const SDK_VERSION = "1.0.6";
|
package/dist/esm/version.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const SDK_VERSION = "1.0.
|
|
1
|
+
export const SDK_VERSION = "1.0.6";
|