diff --git a/typings/src/recording.model.ts b/typings/src/recording.model.ts index e103a32..60832a6 100644 --- a/typings/src/recording.model.ts +++ b/typings/src/recording.model.ts @@ -1,30 +1,31 @@ export const enum MeetRecordingStatus { STARTING = 'STARTING', - STARTED = 'STARTED', - STOPPING = 'STOPPING', - STOPPED = 'STOPPED', + ACTIVE = 'ACTIVE', + ENDING = 'ENDING', + COMPLETE = 'COMPLETE', FAILED = 'FAILED', - READY = 'READY' + ABORTED = 'ABORTED', + LIMITED_REACHED = 'LIMITED_REACHED', } export const enum MeetRecordingOutputMode { - COMPOSED = 'COMPOSED', - INDIVIDUAL = 'INDIVIDUAL' + COMPOSED = 'COMPOSED' } /** * Interface representing a recording */ export interface MeetRecordingInfo { - id: string; - roomName: string; - // TODO: Delete roomId + recordingId: string; roomId: string; outputMode: MeetRecordingOutputMode; status: MeetRecordingStatus; filename?: string; - startedAt?: number; - endedAt?: number; + startDate?: number; + endDate?: number; duration?: number; size?: number; + errorCode?: number; + error?: string; + details?: string; } diff --git a/typings/src/webhook.model.ts b/typings/src/webhook.model.ts index cd1c6dc..3475990 100644 --- a/typings/src/webhook.model.ts +++ b/typings/src/webhook.model.ts @@ -1,24 +1,19 @@ -import { MeetRecordingStatus } from './recording.model.js'; +/** THIS HEADER IS AUTOGENERATED. DO NOT MODIFY MANUALLY. For any changes, please update the '/openvidu-meet/typings' directory. */ -export interface OpenViduWebhookEvent { +import { MeetRecordingInfo } from './recording.model.js'; +import { OpenViduMeetRoom } from './room.js'; + +export type MeetWebhookPayload = MeetRecordingInfo | OpenViduMeetRoom; + +export const enum MeetWebhookEventType { + RECORDING_STARTED = 'recordingStarted', + RECORDING_UPDATED = 'recordingUpdated', + RECORDING_ENDED = 'recordingEnded', + ROOM_FINISHED = 'roomFinished', +} + +export interface MeetWebhookEvent { creationDate: number; - event: OpenViduWebhookEventType; - data: RoomWebhookData | RecordingWebhookData; -} - -export const enum OpenViduWebhookEventType { - RECORDING_STARTED = 'recording_started', - RECORDING_STOPPED = 'recording_stopped', - ROOM_FINISHED = 'room_finished' -} - -export interface RecordingWebhookData { - recordingId: string; - filename?: string; - roomName: string; - status: MeetRecordingStatus; -} - -export interface RoomWebhookData { - roomName: string; + event: MeetWebhookEventType; + data: MeetWebhookPayload; }