@guava-ai/guava-sdk 0.29.0 → 0.30.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/examples/multiple-agents.js +2 -1
- package/dist/examples/multiple-agents.js.map +1 -1
- package/dist/examples/property-insurance.d.ts +2 -0
- package/dist/examples/property-insurance.js +8 -7
- package/dist/examples/property-insurance.js.map +1 -1
- package/dist/examples/restaurant-waitlist.d.ts +2 -0
- package/dist/examples/restaurant-waitlist.js +10 -9
- package/dist/examples/restaurant-waitlist.js.map +1 -1
- package/dist/src/agent.d.ts +2 -2
- package/dist/src/agent.js +68 -43
- package/dist/src/agent.js.map +1 -1
- package/dist/src/runner.d.ts +10 -1
- package/dist/src/runner.js +16 -5
- package/dist/src/runner.js.map +1 -1
- package/dist/src/socket/client.js +19 -2
- package/dist/src/socket/client.js.map +1 -1
- package/dist/src/testing/session.d.ts +2 -1
- package/dist/src/testing/session.js +3 -1
- package/dist/src/testing/session.js.map +1 -1
- package/dist/src/utils.d.ts +4 -0
- package/dist/src/utils.js +35 -1
- package/dist/src/utils.js.map +1 -1
- package/dist/src/version.d.ts +1 -1
- package/dist/src/version.js +1 -1
- package/examples/multiple-agents.ts +2 -1
- package/examples/property-insurance.ts +1 -1
- package/examples/restaurant-waitlist.ts +1 -1
- package/package.json +11 -2
- package/src/agent.ts +43 -18
- package/src/runner.ts +28 -5
- package/src/socket/client.ts +31 -13
- package/src/testing/session.ts +3 -1
- package/src/utils.ts +38 -0
- package/src/version.ts +1 -1
|
@@ -110,6 +110,16 @@ class GuavaSocketConnectionFailed extends Error {
|
|
|
110
110
|
}
|
|
111
111
|
}
|
|
112
112
|
exports.GuavaSocketConnectionFailed = GuavaSocketConnectionFailed;
|
|
113
|
+
/** Raised when the server rejects the websocket handshake with an HTTP response. */
|
|
114
|
+
class UnexpectedResponseError extends Error {
|
|
115
|
+
statusCode;
|
|
116
|
+
body;
|
|
117
|
+
constructor(statusCode, body) {
|
|
118
|
+
super(`Unexpected server response: ${statusCode ?? "unknown"}. Body: ${body || "<empty>"}`);
|
|
119
|
+
this.statusCode = statusCode;
|
|
120
|
+
this.body = body;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
113
123
|
const HandshakeResponse = z.union([protocol_ts_1.GuavaOpenAck, protocol_ts_1.GuavaClose]);
|
|
114
124
|
function _sendMessage(ws, message) {
|
|
115
125
|
ws.send(JSON.stringify(message));
|
|
@@ -213,7 +223,7 @@ let GuavaSocket = (() => {
|
|
|
213
223
|
body += chunk.toString();
|
|
214
224
|
});
|
|
215
225
|
res.on("end", () => {
|
|
216
|
-
settle(() => reject(new
|
|
226
|
+
settle(() => reject(new UnexpectedResponseError(res.statusCode, body)));
|
|
217
227
|
});
|
|
218
228
|
});
|
|
219
229
|
socket.once("close", () => settle(() => reject(new Error("Connection closed before open-ack"))));
|
|
@@ -268,10 +278,17 @@ let GuavaSocket = (() => {
|
|
|
268
278
|
if (e instanceof GuavaSocketClosedError)
|
|
269
279
|
throw e;
|
|
270
280
|
if (attempt >= MAX_RECONNECT_ATTEMPTS) {
|
|
281
|
+
this._logger.error("Couldn't connect to server after %d attempts.", attempt);
|
|
271
282
|
this._setCloseReason("reconnection-failed", `Couldn't connect after ${attempt} attempts.`);
|
|
272
283
|
throw new GuavaSocketConnectionFailed();
|
|
273
284
|
}
|
|
274
|
-
|
|
285
|
+
if (e instanceof UnexpectedResponseError) {
|
|
286
|
+
const interpretation = e.statusCode === 401 || e.statusCode === 403 ? "Authentication Failure" : "HTTP error";
|
|
287
|
+
this._logger.error("Failed to connect to websocket endpoint %s due to %s. HTTP %s, Body: %s. Retrying in a few seconds...", this._connectionUrl, interpretation, e.statusCode ?? "unknown", e.body || "No response body.");
|
|
288
|
+
}
|
|
289
|
+
else {
|
|
290
|
+
this._logger.error("Failed to connect to %s (attempt %d/%d). Retrying in a few seconds...\n", this._connectionUrl, attempt, MAX_RECONNECT_ATTEMPTS, e);
|
|
291
|
+
}
|
|
275
292
|
await sleep(reconnectDelay(attempt));
|
|
276
293
|
}
|
|
277
294
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/socket/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/socket/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,9 +17,10 @@ export declare class TestSession {
|
|
|
17
17
|
private _closed;
|
|
18
18
|
executedActions: string[];
|
|
19
19
|
terminationReason: string | null;
|
|
20
|
+
readonly id: string;
|
|
20
21
|
/** @internal */
|
|
21
22
|
get _events(): ReadonlyArray<InjectASR | BotTTS>;
|
|
22
|
-
constructor(ws: WebSocket, client: Client);
|
|
23
|
+
constructor(ws: WebSocket, client: Client, id: string);
|
|
23
24
|
private _rawSend;
|
|
24
25
|
say(utterance: string): void;
|
|
25
26
|
recv(): Promise<TestingEvent>;
|
|
@@ -53,13 +53,15 @@ class TestSession {
|
|
|
53
53
|
_closed = false;
|
|
54
54
|
executedActions = [];
|
|
55
55
|
terminationReason = null;
|
|
56
|
+
id;
|
|
56
57
|
/** @internal */
|
|
57
58
|
get _events() {
|
|
58
59
|
return this._sessionEvents;
|
|
59
60
|
}
|
|
60
|
-
constructor(ws, client) {
|
|
61
|
+
constructor(ws, client, id) {
|
|
61
62
|
this._ws = ws;
|
|
62
63
|
this._client = client;
|
|
64
|
+
this.id = id;
|
|
63
65
|
ws.on("message", (data) => {
|
|
64
66
|
let event;
|
|
65
67
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/testing/session.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,6CAA0C;AAC1C,uCAAyB;AACzB,+CAA0E;AAE1E,8CAA8C;AAIjC,QAAA,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,OAAO,EAAE,CAAC,CAAC,KAAK,CACd,CAAC,CAAC,MAAM,CAAC;QACP,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;QACnB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;KACjC,CAAC,CACH;CACF,CAAC,CAAC;AAEH,MAAa,WAAW;IACL,GAAG,CAAY;IACf,OAAO,CAAS;IACzB,cAAc,GAAmB,EAAE,CAAC;IACpC,WAAW,GAAmB,EAAE,CAAC;IACjC,YAAY,GAGf,EAAE,CAAC;IACA,OAAO,GAAG,KAAK,CAAC;IAExB,eAAe,GAAa,EAAE,CAAC;IAC/B,iBAAiB,GAAkB,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/testing/session.ts"],"names":[],"mappings":"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"}
|
package/dist/src/utils.d.ts
CHANGED
|
@@ -4,3 +4,7 @@ export declare function getCliConfigPath(): string;
|
|
|
4
4
|
export declare function getBaseUrl(): string;
|
|
5
5
|
export declare function sleep(ms: number): Promise<void>;
|
|
6
6
|
export declare function fetchOrThrow(input: RequestInfo | URL, init?: RequestInit): Promise<Response>;
|
|
7
|
+
/** A Disposable whose disposal does nothing. Useful as a conditional no-op. */
|
|
8
|
+
export declare const nullDisposable: Disposable;
|
|
9
|
+
export declare function onAbort(signal: AbortSignal, listener: () => void): Disposable;
|
|
10
|
+
export declare function onSignal(handler: (signal: "SIGINT" | "SIGTERM") => void): Disposable;
|
package/dist/src/utils.js
CHANGED
|
@@ -33,12 +33,14 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.DEFAULT_BASE_URL = void 0;
|
|
36
|
+
exports.nullDisposable = exports.DEFAULT_BASE_URL = void 0;
|
|
37
37
|
exports.getPlatformConfigDir = getPlatformConfigDir;
|
|
38
38
|
exports.getCliConfigPath = getCliConfigPath;
|
|
39
39
|
exports.getBaseUrl = getBaseUrl;
|
|
40
40
|
exports.sleep = sleep;
|
|
41
41
|
exports.fetchOrThrow = fetchOrThrow;
|
|
42
|
+
exports.onAbort = onAbort;
|
|
43
|
+
exports.onSignal = onSignal;
|
|
42
44
|
const fs = __importStar(require("node:fs"));
|
|
43
45
|
const os = __importStar(require("node:os"));
|
|
44
46
|
const path = __importStar(require("node:path"));
|
|
@@ -98,4 +100,36 @@ async function fetchOrThrow(input, init) {
|
|
|
98
100
|
}
|
|
99
101
|
return res;
|
|
100
102
|
}
|
|
103
|
+
/** A Disposable whose disposal does nothing. Useful as a conditional no-op. */
|
|
104
|
+
exports.nullDisposable = { [Symbol.dispose]() { } };
|
|
105
|
+
function onAbort(signal, listener) {
|
|
106
|
+
signal.throwIfAborted();
|
|
107
|
+
signal.addEventListener("abort", listener, { once: true });
|
|
108
|
+
return {
|
|
109
|
+
[Symbol.dispose]() {
|
|
110
|
+
signal.removeEventListener("abort", listener);
|
|
111
|
+
},
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
function onSignal(handler) {
|
|
115
|
+
// Remove both handlers on the first signal so any second signal (of either
|
|
116
|
+
// type) falls through to Node's default behavior and terminates the process.
|
|
117
|
+
const remove = () => {
|
|
118
|
+
process.off("SIGINT", sigint);
|
|
119
|
+
process.off("SIGTERM", sigterm);
|
|
120
|
+
};
|
|
121
|
+
const sigint = () => {
|
|
122
|
+
remove();
|
|
123
|
+
handler("SIGINT");
|
|
124
|
+
};
|
|
125
|
+
const sigterm = () => {
|
|
126
|
+
remove();
|
|
127
|
+
handler("SIGTERM");
|
|
128
|
+
};
|
|
129
|
+
process.on("SIGINT", sigint);
|
|
130
|
+
process.on("SIGTERM", sigterm);
|
|
131
|
+
return {
|
|
132
|
+
[Symbol.dispose]: remove,
|
|
133
|
+
};
|
|
134
|
+
}
|
|
101
135
|
//# sourceMappingURL=utils.js.map
|
package/dist/src/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,oDAUC;AAED,4CAEC;AAED,gCAWC;AAcD,sBAEC;AAED,oCAaC;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
|
package/dist/src/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const SDK_VERSION = "0.
|
|
1
|
+
export declare const SDK_VERSION = "0.30.0";
|
package/dist/src/version.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as guava from "@guava-ai/guava-sdk";
|
|
2
|
+
import { getAgentNumber } from "@guava-ai/guava-sdk/example-utils";
|
|
2
3
|
|
|
3
4
|
const agentA = new guava.Agent({
|
|
4
5
|
name: "Grace",
|
|
@@ -12,7 +13,7 @@ const agentB = new guava.Agent({
|
|
|
12
13
|
|
|
13
14
|
export async function run(_prog: string, _args: string[]) {
|
|
14
15
|
const runner = new guava.Runner();
|
|
15
|
-
runner.listenPhone(agentA,
|
|
16
|
+
runner.listenPhone(agentA, await getAgentNumber());
|
|
16
17
|
runner.listenWebrtc(agentB);
|
|
17
18
|
await runner.run();
|
|
18
19
|
}
|
|
@@ -4,7 +4,7 @@ import { DocumentQA } from "@guava-ai/guava-sdk/helpers";
|
|
|
4
4
|
import { PROPERTY_INSURANCE_POLICY } from "@guava-ai/guava-sdk/example-data";
|
|
5
5
|
import { getAgentNumber } from "@guava-ai/guava-sdk/example-utils";
|
|
6
6
|
|
|
7
|
-
const agent = new guava.Agent({
|
|
7
|
+
export const agent = new guava.Agent({
|
|
8
8
|
organization: "Harper Valley Property Insurance",
|
|
9
9
|
purpose: "Answer questions regarding property insurance policy until there are no more questions",
|
|
10
10
|
});
|
|
@@ -5,7 +5,7 @@ import { getAgentNumber } from "@guava-ai/guava-sdk/example-utils";
|
|
|
5
5
|
|
|
6
6
|
const logger = getDefaultLogger();
|
|
7
7
|
|
|
8
|
-
const agent = new guava.Agent({
|
|
8
|
+
export const agent = new guava.Agent({
|
|
9
9
|
name: "Mia",
|
|
10
10
|
organization: "Thai Palace",
|
|
11
11
|
purpose: "Helping callers join the restaurant waitlist",
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@guava-ai/guava-sdk",
|
|
3
3
|
"description": "The official TypeScript SDK for building Guava voice agents.",
|
|
4
4
|
"homepage": "https://docs.goguava.ai/typescript-sdk/",
|
|
5
|
-
"version": "0.
|
|
5
|
+
"version": "0.30.0",
|
|
6
6
|
"type": "commonjs",
|
|
7
7
|
"main": "dist/src/index.js",
|
|
8
8
|
"types": "dist/src/index.d.ts",
|
|
@@ -38,16 +38,24 @@
|
|
|
38
38
|
"@types/node": "^25.0.7",
|
|
39
39
|
"@types/ws": "^8.18.1",
|
|
40
40
|
"jest": "^30.4.2",
|
|
41
|
+
"openai": "^6.16.0",
|
|
41
42
|
"ts-jest": "^29.4.11",
|
|
42
43
|
"tsx": "^4.21.0",
|
|
43
44
|
"typescript": "^5.9.3"
|
|
44
45
|
},
|
|
46
|
+
"peerDependencies": {
|
|
47
|
+
"openai": "^6.16.0"
|
|
48
|
+
},
|
|
49
|
+
"peerDependenciesMeta": {
|
|
50
|
+
"openai": {
|
|
51
|
+
"optional": true
|
|
52
|
+
}
|
|
53
|
+
},
|
|
45
54
|
"bin": {
|
|
46
55
|
"guava-example": "dist/bin/example-runner.js"
|
|
47
56
|
},
|
|
48
57
|
"dependencies": {
|
|
49
58
|
"commander": "^15.0.0",
|
|
50
|
-
"openai": "^6.16.0",
|
|
51
59
|
"ws": "^8.19.0",
|
|
52
60
|
"zod": "^4.3.5"
|
|
53
61
|
},
|
|
@@ -59,6 +67,7 @@
|
|
|
59
67
|
"check-format": "biome format ./src ./examples",
|
|
60
68
|
"format": "biome format --write ./src ./examples",
|
|
61
69
|
"test": "jest",
|
|
70
|
+
"test:e2e": "jest --config jest.e2e.config.cjs",
|
|
62
71
|
"check": "npm run typecheck && npm audit --omit=dev && npm run lint && npm run check-format",
|
|
63
72
|
"clean": "rm -rf ./dist",
|
|
64
73
|
"build": "tsx scripts/update-version.ts && tsc && chmod +x ./dist/bin/example-runner.js",
|
package/src/agent.ts
CHANGED
|
@@ -34,7 +34,7 @@ import { runChat } from "./testing/chat.ts";
|
|
|
34
34
|
import { SessionStarted } from "./testing/protocol.ts";
|
|
35
35
|
import { TestSession } from "./testing/session.ts";
|
|
36
36
|
import * as z from "zod";
|
|
37
|
-
import { fetchOrThrow, getBaseUrl } from "./utils.ts";
|
|
37
|
+
import { fetchOrThrow, getBaseUrl, onAbort } from "./utils.ts";
|
|
38
38
|
import { runWebrtcHelper } from "./webrtc-helper.ts";
|
|
39
39
|
|
|
40
40
|
export const _roleplayActionSchema = z.object({
|
|
@@ -580,6 +580,7 @@ export class Agent {
|
|
|
580
580
|
healthCtx: HealthContext,
|
|
581
581
|
conn: InboundConnection,
|
|
582
582
|
initialVariables: Record<string, any> = {},
|
|
583
|
+
drainSignal: AbortSignal = new AbortController().signal,
|
|
583
584
|
): Promise<void> {
|
|
584
585
|
const url = new URL("v2/listen-inbound", this._client.getWebsocketBase());
|
|
585
586
|
if ("agent_number" in conn) {
|
|
@@ -590,6 +591,8 @@ export class Agent {
|
|
|
590
591
|
url.searchParams.set("sip_code", conn.sip_code);
|
|
591
592
|
}
|
|
592
593
|
|
|
594
|
+
const activeCalls: Promise<void>[] = [];
|
|
595
|
+
|
|
593
596
|
try {
|
|
594
597
|
await using socket = await new GuavaSocket<
|
|
595
598
|
ListenInbound.ClientMessage,
|
|
@@ -602,6 +605,10 @@ export class Agent {
|
|
|
602
605
|
ListenInbound.decodeServerMessage,
|
|
603
606
|
).connect();
|
|
604
607
|
|
|
608
|
+
using _ = onAbort(drainSignal, () => {
|
|
609
|
+
socket.close();
|
|
610
|
+
});
|
|
611
|
+
|
|
605
612
|
try {
|
|
606
613
|
for await (const msg of socket) {
|
|
607
614
|
switch (msg.message_type) {
|
|
@@ -638,10 +645,13 @@ export class Agent {
|
|
|
638
645
|
case "assign-call": {
|
|
639
646
|
const { call_id, call_info } = msg;
|
|
640
647
|
this._logger.info("Received call (session ID: %s)", call_id);
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
648
|
+
// TODO: Possible memory leak.
|
|
649
|
+
activeCalls.push(
|
|
650
|
+
this._handleAssignedCall(call_id, call_info, socket, initialVariables).catch(
|
|
651
|
+
(err) => {
|
|
652
|
+
this._logger.error("Error handling assigned call %s: %s", call_id, err);
|
|
653
|
+
},
|
|
654
|
+
),
|
|
645
655
|
);
|
|
646
656
|
break;
|
|
647
657
|
}
|
|
@@ -651,6 +661,10 @@ export class Agent {
|
|
|
651
661
|
if (!(e instanceof GuavaSocketClosedError)) throw e;
|
|
652
662
|
}
|
|
653
663
|
} finally {
|
|
664
|
+
this._logger.debug("Listener disconnected. Starting drain...");
|
|
665
|
+
healthCtx.draining();
|
|
666
|
+
await Promise.all(activeCalls);
|
|
667
|
+
|
|
654
668
|
healthCtx.stopped();
|
|
655
669
|
}
|
|
656
670
|
}
|
|
@@ -735,7 +749,7 @@ export class Agent {
|
|
|
735
749
|
});
|
|
736
750
|
|
|
737
751
|
const sessionStarted = SessionStarted.parse(JSON.parse(rawFirst));
|
|
738
|
-
const testSession = new TestSession(ws, this._client);
|
|
752
|
+
const testSession = new TestSession(ws, this._client, sessionStarted.session_id);
|
|
739
753
|
|
|
740
754
|
const testCallInfo: CallInfo = {
|
|
741
755
|
call_type: "pstn",
|
|
@@ -898,24 +912,32 @@ Choose "speak" and provide your next utterance, or choose "hangup" if the conver
|
|
|
898
912
|
return cloned;
|
|
899
913
|
}
|
|
900
914
|
|
|
901
|
-
async _serveCampaign(
|
|
902
|
-
|
|
903
|
-
|
|
915
|
+
async _serveCampaign(
|
|
916
|
+
healthCtx: HealthContext,
|
|
917
|
+
campaignCode: string,
|
|
918
|
+
drainSignal: AbortSignal = new AbortController().signal,
|
|
919
|
+
): Promise<void> {
|
|
920
|
+
const campaign = await this._client.getCampaign(campaignCode);
|
|
904
921
|
|
|
905
|
-
|
|
906
|
-
|
|
922
|
+
const url = new URL(`v1/serve-campaign/${campaign.id}`, this._client.getWebsocketBase());
|
|
923
|
+
this._logger.info("Connecting to campaign '%s' (id: %s).", campaign.name, campaign.id);
|
|
907
924
|
|
|
925
|
+
const activeCalls: Promise<void>[] = [];
|
|
926
|
+
|
|
927
|
+
try {
|
|
908
928
|
await using socket = await new GuavaSocket<DialerClientMessage, DialerServerMessage>(
|
|
909
929
|
"serve-campaign",
|
|
910
|
-
|
|
930
|
+
url.toString(),
|
|
911
931
|
this._client,
|
|
912
932
|
(msg) => msg as unknown as Record<string, unknown>,
|
|
913
933
|
decodeDialerServerMessage,
|
|
914
934
|
).connect();
|
|
915
935
|
|
|
916
|
-
const activeCalls: Promise<void>[] = [];
|
|
917
|
-
|
|
918
936
|
try {
|
|
937
|
+
using _ = onAbort(drainSignal, () => {
|
|
938
|
+
socket.close();
|
|
939
|
+
});
|
|
940
|
+
|
|
919
941
|
for await (const msg of socket) {
|
|
920
942
|
switch (msg.message_type) {
|
|
921
943
|
case "listen-started":
|
|
@@ -931,6 +953,7 @@ Choose "speak" and provide your next utterance, or choose "hangup" if the conver
|
|
|
931
953
|
call_id,
|
|
932
954
|
logPhone,
|
|
933
955
|
);
|
|
956
|
+
// TODO: Possible memory leak.
|
|
934
957
|
activeCalls.push(
|
|
935
958
|
(async () => {
|
|
936
959
|
socket.send({ message_type: "controller-ready", call_id });
|
|
@@ -948,7 +971,9 @@ Choose "speak" and provide your next utterance, or choose "hangup" if the conver
|
|
|
948
971
|
undefined,
|
|
949
972
|
"v2/connect-campaign-call",
|
|
950
973
|
);
|
|
951
|
-
})()
|
|
974
|
+
})().catch((err) => {
|
|
975
|
+
this._logger.error("Error handling campaign call %s: %s", call_id, err);
|
|
976
|
+
}),
|
|
952
977
|
);
|
|
953
978
|
break;
|
|
954
979
|
}
|
|
@@ -956,11 +981,11 @@ Choose "speak" and provide your next utterance, or choose "hangup" if the conver
|
|
|
956
981
|
}
|
|
957
982
|
} catch (e) {
|
|
958
983
|
if (!(e instanceof GuavaSocketClosedError)) throw e;
|
|
959
|
-
this._logger.info("Campaign '%s' disconnected.", campaign.name);
|
|
960
984
|
}
|
|
961
|
-
|
|
962
|
-
await Promise.all(activeCalls);
|
|
963
985
|
} finally {
|
|
986
|
+
this._logger.info("Campaign '%s' disconnected. Starting drain...", campaign.name);
|
|
987
|
+
healthCtx.draining();
|
|
988
|
+
await Promise.all(activeCalls);
|
|
964
989
|
healthCtx.stopped();
|
|
965
990
|
}
|
|
966
991
|
}
|
package/src/runner.ts
CHANGED
|
@@ -1,13 +1,27 @@
|
|
|
1
1
|
import type { Agent } from "./agent.ts";
|
|
2
2
|
import { MultiHealthContext, getHealthServer } from "./health.ts";
|
|
3
|
+
import { nullDisposable, onSignal } from "./utils.ts";
|
|
4
|
+
import { getDefaultLogger, type Logger } from "./logging.ts";
|
|
5
|
+
|
|
6
|
+
export interface RunOptions {
|
|
7
|
+
/**
|
|
8
|
+
* Install SIGINT/SIGTERM handlers that drain in-flight calls on the first
|
|
9
|
+
* signal; a second signal terminates the process. Defaults to `true`.
|
|
10
|
+
*/
|
|
11
|
+
handleSignals?: boolean;
|
|
12
|
+
}
|
|
3
13
|
|
|
4
14
|
export class Runner {
|
|
5
15
|
private _healthCtx = new MultiHealthContext();
|
|
6
16
|
private _tasks: Array<() => Promise<void>> = [];
|
|
17
|
+
private _drainController: AbortController = new AbortController();
|
|
18
|
+
private _logger: Logger = getDefaultLogger();
|
|
7
19
|
|
|
8
20
|
listenPhone(agent: Agent, agentNumber: string): this {
|
|
9
21
|
const ctx = this._healthCtx.createCtx();
|
|
10
|
-
this._tasks.push(() =>
|
|
22
|
+
this._tasks.push(() =>
|
|
23
|
+
agent._listenInbound(ctx, { agent_number: agentNumber }, {}, this._drainController.signal),
|
|
24
|
+
);
|
|
11
25
|
return this;
|
|
12
26
|
}
|
|
13
27
|
|
|
@@ -15,25 +29,34 @@ export class Runner {
|
|
|
15
29
|
const ctx = this._healthCtx.createCtx();
|
|
16
30
|
this._tasks.push(async () => {
|
|
17
31
|
const code = webrtcCode ?? (await agent._client.createWebrtcAgent(3600));
|
|
18
|
-
return agent._listenInbound(ctx, { webrtc_code: code });
|
|
32
|
+
return agent._listenInbound(ctx, { webrtc_code: code }, {}, this._drainController.signal);
|
|
19
33
|
});
|
|
20
34
|
return this;
|
|
21
35
|
}
|
|
22
36
|
|
|
23
37
|
listenSip(agent: Agent, sipCode: string): this {
|
|
24
38
|
const ctx = this._healthCtx.createCtx();
|
|
25
|
-
this._tasks.push(() =>
|
|
39
|
+
this._tasks.push(() =>
|
|
40
|
+
agent._listenInbound(ctx, { sip_code: sipCode }, {}, this._drainController.signal),
|
|
41
|
+
);
|
|
26
42
|
return this;
|
|
27
43
|
}
|
|
28
44
|
|
|
29
45
|
attachCampaign(agent: Agent, campaignCode: string): this {
|
|
30
46
|
const ctx = this._healthCtx.createCtx();
|
|
31
|
-
this._tasks.push(() => agent._serveCampaign(ctx, campaignCode));
|
|
47
|
+
this._tasks.push(() => agent._serveCampaign(ctx, campaignCode, this._drainController.signal));
|
|
32
48
|
return this;
|
|
33
49
|
}
|
|
34
50
|
|
|
35
|
-
async run(): Promise<void> {
|
|
51
|
+
async run({ handleSignals = true }: RunOptions = {}): Promise<void> {
|
|
36
52
|
await using _server = await getHealthServer(this._healthCtx);
|
|
53
|
+
using _ = handleSignals
|
|
54
|
+
? onSignal((signal) => {
|
|
55
|
+
this._logger.info(`Received ${signal} - draining calls. Send signal again to terminate.`);
|
|
56
|
+
this._drainController.abort();
|
|
57
|
+
})
|
|
58
|
+
: nullDisposable;
|
|
37
59
|
await Promise.all(this._tasks.map((task) => task()));
|
|
60
|
+
this._logger.info("All tasks done.");
|
|
38
61
|
}
|
|
39
62
|
}
|
package/src/socket/client.ts
CHANGED
|
@@ -49,6 +49,16 @@ export class GuavaSocketConnectionFailed extends Error {
|
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
51
|
|
|
52
|
+
/** Raised when the server rejects the websocket handshake with an HTTP response. */
|
|
53
|
+
class UnexpectedResponseError extends Error {
|
|
54
|
+
constructor(
|
|
55
|
+
readonly statusCode: number | undefined,
|
|
56
|
+
readonly body: string,
|
|
57
|
+
) {
|
|
58
|
+
super(`Unexpected server response: ${statusCode ?? "unknown"}. Body: ${body || "<empty>"}`);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
|
|
52
62
|
const HandshakeResponse = z.union([GuavaOpenAck, GuavaClose]);
|
|
53
63
|
|
|
54
64
|
function _sendMessage(ws: WebSocket, message: GuavaClientMessage): void {
|
|
@@ -160,13 +170,7 @@ export class GuavaSocket<SendT, RecvT> {
|
|
|
160
170
|
body += chunk.toString();
|
|
161
171
|
});
|
|
162
172
|
res.on("end", () => {
|
|
163
|
-
settle(() =>
|
|
164
|
-
reject(
|
|
165
|
-
new Error(
|
|
166
|
-
`Unexpected server response: ${res.statusCode}. Body: ${body || "<empty>"}`,
|
|
167
|
-
),
|
|
168
|
-
),
|
|
169
|
-
);
|
|
173
|
+
settle(() => reject(new UnexpectedResponseError(res.statusCode, body)));
|
|
170
174
|
});
|
|
171
175
|
});
|
|
172
176
|
socket.once("close", () =>
|
|
@@ -225,6 +229,7 @@ export class GuavaSocket<SendT, RecvT> {
|
|
|
225
229
|
if (e instanceof GuavaSocketClosedError) throw e;
|
|
226
230
|
|
|
227
231
|
if (attempt >= MAX_RECONNECT_ATTEMPTS) {
|
|
232
|
+
this._logger.error("Couldn't connect to server after %d attempts.", attempt);
|
|
228
233
|
this._setCloseReason(
|
|
229
234
|
"reconnection-failed",
|
|
230
235
|
`Couldn't connect after ${attempt} attempts.`,
|
|
@@ -232,12 +237,25 @@ export class GuavaSocket<SendT, RecvT> {
|
|
|
232
237
|
throw new GuavaSocketConnectionFailed();
|
|
233
238
|
}
|
|
234
239
|
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
240
|
+
if (e instanceof UnexpectedResponseError) {
|
|
241
|
+
const interpretation =
|
|
242
|
+
e.statusCode === 401 || e.statusCode === 403 ? "Authentication Failure" : "HTTP error";
|
|
243
|
+
this._logger.error(
|
|
244
|
+
"Failed to connect to websocket endpoint %s due to %s. HTTP %s, Body: %s. Retrying in a few seconds...",
|
|
245
|
+
this._connectionUrl,
|
|
246
|
+
interpretation,
|
|
247
|
+
e.statusCode ?? "unknown",
|
|
248
|
+
e.body || "No response body.",
|
|
249
|
+
);
|
|
250
|
+
} else {
|
|
251
|
+
this._logger.error(
|
|
252
|
+
"Failed to connect to %s (attempt %d/%d). Retrying in a few seconds...\n",
|
|
253
|
+
this._connectionUrl,
|
|
254
|
+
attempt,
|
|
255
|
+
MAX_RECONNECT_ATTEMPTS,
|
|
256
|
+
e,
|
|
257
|
+
);
|
|
258
|
+
}
|
|
241
259
|
await sleep(reconnectDelay(attempt));
|
|
242
260
|
}
|
|
243
261
|
}
|
package/src/testing/session.ts
CHANGED
|
@@ -29,15 +29,17 @@ export class TestSession {
|
|
|
29
29
|
|
|
30
30
|
executedActions: string[] = [];
|
|
31
31
|
terminationReason: string | null = null;
|
|
32
|
+
readonly id: string;
|
|
32
33
|
|
|
33
34
|
/** @internal */
|
|
34
35
|
get _events(): ReadonlyArray<InjectASR | BotTTS> {
|
|
35
36
|
return this._sessionEvents;
|
|
36
37
|
}
|
|
37
38
|
|
|
38
|
-
constructor(ws: WebSocket, client: Client) {
|
|
39
|
+
constructor(ws: WebSocket, client: Client, id: string) {
|
|
39
40
|
this._ws = ws;
|
|
40
41
|
this._client = client;
|
|
42
|
+
this.id = id;
|
|
41
43
|
|
|
42
44
|
ws.on("message", (data) => {
|
|
43
45
|
let event: TestingEvent;
|