diff --git a/backend/src/services/openvidu-webhook.service.ts b/backend/src/services/openvidu-webhook.service.ts index 9802df9..81a1e25 100644 --- a/backend/src/services/openvidu-webhook.service.ts +++ b/backend/src/services/openvidu-webhook.service.ts @@ -3,7 +3,7 @@ import { inject, injectable } from '../config/dependency-injector.config.js'; import { Room } from 'livekit-server-sdk'; import { LoggerService } from './logger.service.js'; import { MEET_API_KEY, MEET_WEBHOOK_ENABLED, MEET_WEBHOOK_URL } from '../environment.js'; -import { OpenViduWebhookEvent, OpenViduWebhookEventType } from '../models/webhook.model.js'; +import { OpenViduWebhookEvent, OpenViduWebhookEventType } from '@typings-ce'; import { RecordingInfo } from '../models/recording.model.js'; @injectable() @@ -13,7 +13,7 @@ export class OpenViduWebhookService { async sendRoomFinishedWebhook(room: Room) { const data: OpenViduWebhookEvent = { event: OpenViduWebhookEventType.ROOM_FINISHED, - createdAt: Date.now(), + creationDate: Date.now(), data: { roomName: room.name } @@ -24,7 +24,7 @@ export class OpenViduWebhookService { async sendRecordingStartedWebhook(recordingInfo: RecordingInfo) { const data: OpenViduWebhookEvent = { event: OpenViduWebhookEventType.RECORDING_STARTED, - createdAt: Date.now(), + creationDate: Date.now(), data: { recordingId: recordingInfo.id, filename: recordingInfo.filename, @@ -38,7 +38,7 @@ export class OpenViduWebhookService { async sendRecordingStoppedWebhook(recordingInfo: RecordingInfo) { const data: OpenViduWebhookEvent = { event: OpenViduWebhookEventType.RECORDING_STOPPED, - createdAt: Date.now(), + creationDate: Date.now(), data: { recordingId: recordingInfo.id, filename: recordingInfo.filename, @@ -52,7 +52,7 @@ export class OpenViduWebhookService { private async sendWebhookEvent(data: OpenViduWebhookEvent) { if (!this.isWebhookEnabled()) return; - const timestamp = data.createdAt; + const timestamp = data.creationDate; const signature = this.generateWebhookSignature(timestamp, data); this.logger.info(`Sending webhook event ${data.event}`); diff --git a/typings/src/index.ts b/typings/src/index.ts index 2ee3be4..81a1bf4 100644 --- a/typings/src/index.ts +++ b/typings/src/index.ts @@ -3,6 +3,7 @@ export * from './room-preferences.js'; export * from './participant.js'; export * from './token.js'; export * from './room.js'; +export * from './webhook.model.js'; export * from './permissions/livekit-permissions.js'; export * from './permissions/openvidu-permissions.js'; diff --git a/backend/src/models/webhook.model.ts b/typings/src/webhook.model.ts similarity index 87% rename from backend/src/models/webhook.model.ts rename to typings/src/webhook.model.ts index c73dd2e..e222e39 100644 --- a/backend/src/models/webhook.model.ts +++ b/typings/src/webhook.model.ts @@ -1,12 +1,12 @@ import { RecordingStatus } from './recording.model.js'; export interface OpenViduWebhookEvent { - createdAt: number; + creationDate: number; event: OpenViduWebhookEventType; data: RoomWebhookData | RecordingWebhookData; } -export enum OpenViduWebhookEventType { +export const enum OpenViduWebhookEventType { RECORDING_STARTED = 'recording_started', RECORDING_STOPPED = 'recording_stopped', ROOM_FINISHED = 'room_finished'