@credal/actions 0.1.87 → 0.1.88
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.
@@ -5114,6 +5114,10 @@ exports.gongGetGongTranscriptsDefinition = {
|
|
5114
5114
|
type: "string",
|
5115
5115
|
description: "The name of the call",
|
5116
5116
|
},
|
5117
|
+
startTime: {
|
5118
|
+
type: "string",
|
5119
|
+
description: "The start time of the call in ISO 8601 format",
|
5120
|
+
},
|
5117
5121
|
transcript: {
|
5118
5122
|
type: "array",
|
5119
5123
|
description: "The transcript",
|
@@ -2304,6 +2304,7 @@ export declare const gongGetGongTranscriptsOutputSchema: z.ZodObject<{
|
|
2304
2304
|
callTranscripts: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
2305
2305
|
callId: z.ZodOptional<z.ZodString>;
|
2306
2306
|
callName: z.ZodOptional<z.ZodString>;
|
2307
|
+
startTime: z.ZodOptional<z.ZodString>;
|
2307
2308
|
transcript: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
2308
2309
|
speakerName: z.ZodOptional<z.ZodString>;
|
2309
2310
|
topic: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
@@ -2340,6 +2341,7 @@ export declare const gongGetGongTranscriptsOutputSchema: z.ZodObject<{
|
|
2340
2341
|
}, "strip", z.ZodTypeAny, {
|
2341
2342
|
callId?: string | undefined;
|
2342
2343
|
callName?: string | undefined;
|
2344
|
+
startTime?: string | undefined;
|
2343
2345
|
transcript?: {
|
2344
2346
|
speakerName?: string | undefined;
|
2345
2347
|
topic?: string | null | undefined;
|
@@ -2352,6 +2354,7 @@ export declare const gongGetGongTranscriptsOutputSchema: z.ZodObject<{
|
|
2352
2354
|
}, {
|
2353
2355
|
callId?: string | undefined;
|
2354
2356
|
callName?: string | undefined;
|
2357
|
+
startTime?: string | undefined;
|
2355
2358
|
transcript?: {
|
2356
2359
|
speakerName?: string | undefined;
|
2357
2360
|
topic?: string | null | undefined;
|
@@ -2369,6 +2372,7 @@ export declare const gongGetGongTranscriptsOutputSchema: z.ZodObject<{
|
|
2369
2372
|
callTranscripts?: {
|
2370
2373
|
callId?: string | undefined;
|
2371
2374
|
callName?: string | undefined;
|
2375
|
+
startTime?: string | undefined;
|
2372
2376
|
transcript?: {
|
2373
2377
|
speakerName?: string | undefined;
|
2374
2378
|
topic?: string | null | undefined;
|
@@ -2385,6 +2389,7 @@ export declare const gongGetGongTranscriptsOutputSchema: z.ZodObject<{
|
|
2385
2389
|
callTranscripts?: {
|
2386
2390
|
callId?: string | undefined;
|
2387
2391
|
callName?: string | undefined;
|
2392
|
+
startTime?: string | undefined;
|
2388
2393
|
transcript?: {
|
2389
2394
|
speakerName?: string | undefined;
|
2390
2395
|
topic?: string | null | undefined;
|
@@ -2069,6 +2069,7 @@ exports.gongGetGongTranscriptsOutputSchema = zod_1.z.object({
|
|
2069
2069
|
.object({
|
2070
2070
|
callId: zod_1.z.string().describe("The ID of the call").optional(),
|
2071
2071
|
callName: zod_1.z.string().describe("The name of the call").optional(),
|
2072
|
+
startTime: zod_1.z.string().describe("The start time of the call in ISO 8601 format").optional(),
|
2072
2073
|
transcript: zod_1.z
|
2073
2074
|
.array(zod_1.z
|
2074
2075
|
.object({
|
@@ -66,13 +66,6 @@ const UserSchema = zod_1.z
|
|
66
66
|
})
|
67
67
|
.partial()
|
68
68
|
.passthrough();
|
69
|
-
const TrackerSchema = zod_1.z
|
70
|
-
.object({
|
71
|
-
trackerId: zod_1.z.string(),
|
72
|
-
trackerName: zod_1.z.string(),
|
73
|
-
})
|
74
|
-
.partial()
|
75
|
-
.passthrough();
|
76
69
|
const CallSchema = zod_1.z
|
77
70
|
.object({
|
78
71
|
metaData: zod_1.z.object({
|
@@ -91,6 +84,12 @@ const CallSchema = zod_1.z
|
|
91
84
|
})
|
92
85
|
.partial()
|
93
86
|
.passthrough()),
|
87
|
+
content: zod_1.z.object({
|
88
|
+
trackers: zod_1.z.array(zod_1.z.object({
|
89
|
+
id: zod_1.z.string(),
|
90
|
+
name: zod_1.z.string(),
|
91
|
+
})),
|
92
|
+
}),
|
94
93
|
})
|
95
94
|
.partial()
|
96
95
|
.passthrough();
|
@@ -119,7 +118,6 @@ const TranscriptSchema = zod_1.z
|
|
119
118
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
120
119
|
const GongResponseSchema = zod_1.z.object({
|
121
120
|
users: zod_1.z.array(UserSchema).optional(),
|
122
|
-
keywordTrackers: zod_1.z.array(TrackerSchema).optional(),
|
123
121
|
calls: zod_1.z.array(CallSchema).optional(),
|
124
122
|
callTranscripts: zod_1.z.array(TranscriptSchema).optional(),
|
125
123
|
cursor: zod_1.z.string().optional(),
|
@@ -150,33 +148,6 @@ function getUsers(authToken) {
|
|
150
148
|
return results;
|
151
149
|
});
|
152
150
|
}
|
153
|
-
function getTrackers(authToken) {
|
154
|
-
return __awaiter(this, void 0, void 0, function* () {
|
155
|
-
let results = [];
|
156
|
-
let cursor = undefined;
|
157
|
-
do {
|
158
|
-
const response = yield axios_1.default.get(`https://api.gong.io/v2/settings/trackers` + (cursor ? `?cursor=${cursor}` : ""), {
|
159
|
-
headers: {
|
160
|
-
Authorization: `Bearer ${authToken}`,
|
161
|
-
"Content-Type": "application/json",
|
162
|
-
},
|
163
|
-
params: {},
|
164
|
-
});
|
165
|
-
if (!response) {
|
166
|
-
return results;
|
167
|
-
}
|
168
|
-
const parsedItems = zod_1.z.array(TrackerSchema).safeParse(response.data.keywordTrackers);
|
169
|
-
if (parsedItems.success) {
|
170
|
-
results = [...results, ...parsedItems.data];
|
171
|
-
}
|
172
|
-
else {
|
173
|
-
return results;
|
174
|
-
}
|
175
|
-
cursor = response.data.cursor;
|
176
|
-
} while (cursor);
|
177
|
-
return results;
|
178
|
-
});
|
179
|
-
}
|
180
151
|
function getCalls(authToken_1) {
|
181
152
|
return __awaiter(this, arguments, void 0, function* (authToken, params = {}) {
|
182
153
|
let results = [];
|
@@ -187,6 +158,9 @@ function getCalls(authToken_1) {
|
|
187
158
|
contentSelector: {
|
188
159
|
exposedFields: {
|
189
160
|
parties: true,
|
161
|
+
content: {
|
162
|
+
trackers: true,
|
163
|
+
},
|
190
164
|
},
|
191
165
|
},
|
192
166
|
}, {
|
@@ -270,22 +244,36 @@ const getGongTranscripts = (_a) => __awaiter(void 0, [_a], void 0, function* ({
|
|
270
244
|
error: "No Gong users found with the specified role",
|
271
245
|
};
|
272
246
|
}
|
273
|
-
const trackers = yield getTrackers(authParams.authToken);
|
274
|
-
const filteredTrackers = trackers.filter(tracker => { var _a, _b; return (_a = params.trackers) === null || _a === void 0 ? void 0 : _a.includes((_b = tracker.trackerName) !== null && _b !== void 0 ? _b : ""); });
|
275
247
|
const calls = yield getCalls(authParams.authToken, {
|
276
248
|
fromDateTime: (_b = params.startDate) !== null && _b !== void 0 ? _b : "",
|
277
249
|
toDateTime: (_c = params.endDate) !== null && _c !== void 0 ? _c : "",
|
278
250
|
primaryUserIds: filteredPrimaryIds,
|
279
|
-
trackerIds: filteredTrackers.length > 0
|
280
|
-
? filteredTrackers.map(tracker => tracker.trackerId).filter((id) => id !== undefined)
|
281
|
-
: undefined,
|
282
251
|
});
|
283
|
-
const
|
252
|
+
const callsWithTrackers = calls.filter(call => {
|
253
|
+
// If the user didn't provide any trackers to filter on, return all calls
|
254
|
+
if (!params.trackers || params.trackers.length === 0) {
|
255
|
+
return true;
|
256
|
+
}
|
257
|
+
// Filter out calls that don't have trackers if the user specified trackers
|
258
|
+
if (!call.content || !call.content.trackers) {
|
259
|
+
return false;
|
260
|
+
}
|
261
|
+
const trackerNames = call.content.trackers.map(tracker => tracker.name);
|
262
|
+
// Check if any of the trackers in the call match the ones provided by the user
|
263
|
+
return params.trackers.some(tr => trackerNames.includes(tr));
|
264
|
+
});
|
265
|
+
const publicCalls = callsWithTrackers.filter(call => {
|
284
266
|
if (!call.metaData) {
|
285
267
|
return false;
|
286
268
|
}
|
287
269
|
return !call.metaData.isPrivate;
|
288
270
|
});
|
271
|
+
if (publicCalls.length === 0) {
|
272
|
+
return {
|
273
|
+
success: true,
|
274
|
+
callTranscripts: [],
|
275
|
+
};
|
276
|
+
}
|
289
277
|
// Get transcripts for the calls we found
|
290
278
|
const callTranscripts = yield getTranscripts(authParams.authToken, {
|
291
279
|
fromDateTime: (_d = params.startDate) !== null && _d !== void 0 ? _d : "",
|
@@ -307,14 +295,14 @@ const getGongTranscripts = (_a) => __awaiter(void 0, [_a], void 0, function* ({
|
|
307
295
|
}
|
308
296
|
});
|
309
297
|
const callTranscriptsWithNames = callTranscripts.map(callTranscript => {
|
310
|
-
var _a, _b, _c, _d;
|
298
|
+
var _a, _b, _c, _d, _e, _f, _g;
|
311
299
|
const currTranscript = Object.assign({}, callTranscript);
|
312
300
|
currTranscript.transcript = (_a = callTranscript.transcript) === null || _a === void 0 ? void 0 : _a.map(transcript => {
|
313
301
|
var _a;
|
314
302
|
const { speakerId } = transcript, rest = __rest(transcript, ["speakerId"]);
|
315
303
|
return Object.assign(Object.assign({}, rest), { speakerName: (_a = userIdToNameMap[speakerId !== null && speakerId !== void 0 ? speakerId : ""]) !== null && _a !== void 0 ? _a : "Unknown" });
|
316
304
|
});
|
317
|
-
return Object.assign({ callName: (_d = (_c = (_b = publicCalls.find(call => { var _a; return ((_a = call.metaData) === null || _a === void 0 ? void 0 : _a.id) === callTranscript.callId; })) === null || _b === void 0 ? void 0 : _b.metaData) === null || _c === void 0 ? void 0 : _c.title) !== null && _d !== void 0 ? _d : "" }, currTranscript);
|
305
|
+
return Object.assign({ callName: (_d = (_c = (_b = publicCalls.find(call => { var _a; return ((_a = call.metaData) === null || _a === void 0 ? void 0 : _a.id) === callTranscript.callId; })) === null || _b === void 0 ? void 0 : _b.metaData) === null || _c === void 0 ? void 0 : _c.title) !== null && _d !== void 0 ? _d : "", startTime: (_g = (_f = (_e = publicCalls.find(call => { var _a; return ((_a = call.metaData) === null || _a === void 0 ? void 0 : _a.id) === callTranscript.callId; })) === null || _e === void 0 ? void 0 : _e.metaData) === null || _f === void 0 ? void 0 : _f.started) !== null && _g !== void 0 ? _g : "" }, currTranscript);
|
318
306
|
});
|
319
307
|
return {
|
320
308
|
success: true,
|