0
New Recording Trigger
One script reply has been approved by the moderators Verified

Trigger when a new call recording is created

Created by hugo697 438 days ago Viewed 9145 times
0
Submitted by hugo697 Bun
Verified 438 days ago
1
import { Twilio } from "twilio";
2
import { getState, setState } from "windmill-client@1";
3

4
type Twilio = {
5
  accountSid: string;
6
  token: string;
7
};
8

9
export async function main(auth: Twilio) {
10
  const client = new Twilio(auth.accountSid, auth.token);
11

12
  const lastCheckedTime: number | null = await getState();
13

14
  const recordings = await client.recordings.list();
15

16
  const newRecordings = lastCheckedTime
17
    ? recordings.filter(
18
        (recording) => recording.dateCreated.getTime() > lastCheckedTime
19
      )
20
    : recordings;
21

22
  if (newRecordings.length > 0) {
23
    await setState(newRecordings[0].dateCreated.getTime());
24
  }
25

26
  return newRecordings;
27
}
28