diff --git a/lib/emails/EventMail.ts b/lib/emails/EventMail.ts index 90cee0b5..1c9253fc 100644 --- a/lib/emails/EventMail.ts +++ b/lib/emails/EventMail.ts @@ -4,7 +4,7 @@ import { CalendarEvent, ConferenceData } from "../calendarClient"; import { serverConfig } from "../serverConfig"; import nodemailer from "nodemailer"; -interface EntryPoint { +export interface EntryPoint { entryPointType?: string; uri?: string; label?: string; @@ -15,7 +15,7 @@ interface EntryPoint { password?: string; } -interface AdditionInformation { +export interface AdditionInformation { conferenceData?: ConferenceData; entryPoints?: EntryPoint[]; hangoutLink?: string; @@ -34,6 +34,7 @@ export default abstract class EventMail { * * @param calEvent * @param uid + * @param additionInformation */ constructor(calEvent: CalendarEvent, uid: string, additionInformation: AdditionInformation = null) { this.calEvent = calEvent; diff --git a/lib/emails/VideoEventAttendeeMail.ts b/lib/emails/VideoEventAttendeeMail.ts index 7855f36d..2a8aa58e 100644 --- a/lib/emails/VideoEventAttendeeMail.ts +++ b/lib/emails/VideoEventAttendeeMail.ts @@ -1,14 +1,21 @@ -import {CalendarEvent} from "../calendarClient"; +import { CalendarEvent } from "../calendarClient"; import EventAttendeeMail from "./EventAttendeeMail"; -import {getFormattedMeetingId, getIntegrationName} from "./helpers"; -import {VideoCallData} from "../videoClient"; +import { getFormattedMeetingId, getIntegrationName } from "./helpers"; +import { VideoCallData } from "../videoClient"; +import { AdditionInformation } from "@lib/emails/EventMail"; export default class VideoEventAttendeeMail extends EventAttendeeMail { videoCallData: VideoCallData; - constructor(calEvent: CalendarEvent, uid: string, videoCallData: VideoCallData) { + constructor( + calEvent: CalendarEvent, + uid: string, + videoCallData: VideoCallData, + additionInformation: AdditionInformation = null + ) { super(calEvent, uid); this.videoCallData = videoCallData; + this.additionInformation = additionInformation; } /** @@ -24,4 +31,4 @@ export default class VideoEventAttendeeMail extends EventAttendeeMail { Meeting URL: ${this.videoCallData.url}
`; } -} \ No newline at end of file +} diff --git a/lib/emails/VideoEventOrganizerMail.ts b/lib/emails/VideoEventOrganizerMail.ts index 1f5b2384..cfb11e05 100644 --- a/lib/emails/VideoEventOrganizerMail.ts +++ b/lib/emails/VideoEventOrganizerMail.ts @@ -2,13 +2,20 @@ import { CalendarEvent } from "../calendarClient"; import EventOrganizerMail from "./EventOrganizerMail"; import { VideoCallData } from "../videoClient"; import { getFormattedMeetingId, getIntegrationName } from "./helpers"; +import { AdditionInformation } from "@lib/emails/EventMail"; export default class VideoEventOrganizerMail extends EventOrganizerMail { videoCallData: VideoCallData; - constructor(calEvent: CalendarEvent, uid: string, videoCallData: VideoCallData) { + constructor( + calEvent: CalendarEvent, + uid: string, + videoCallData: VideoCallData, + additionInformation: AdditionInformation = null + ) { super(calEvent, uid); this.videoCallData = videoCallData; + this.additionInformation = additionInformation; } /** diff --git a/lib/videoClient.ts b/lib/videoClient.ts index ec1b48ce..faea7d0b 100644 --- a/lib/videoClient.ts +++ b/lib/videoClient.ts @@ -8,6 +8,8 @@ import EventAttendeeRescheduledMail from "./emails/EventAttendeeRescheduledMail" import EventOrganizerRescheduledMail from "./emails/EventOrganizerRescheduledMail"; import { EventResult } from "@lib/events/EventManager"; import logger from "@lib/logger"; +import { AdditionInformation, EntryPoint } from "@lib/emails/EventMail"; +import { getIntegrationName } from "@lib/emails/helpers"; const log = logger.getChildLogger({ prefix: ["[lib] videoClient"] }); @@ -224,8 +226,19 @@ const createMeeting = async (credential, calEvent: CalendarEvent): Promise