@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 publicCalls = calls.filter(call => {
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,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@credal/actions",
3
- "version": "0.1.87",
3
+ "version": "0.1.88",
4
4
  "description": "AI Actions by Credal AI",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",