Closed FelixMalfait closed 2 weeks ago
WDYT of this UX? (Will need advice for the wording that are mostly placeholders for now)
hey :)
Came back to this.
Would you like for us to implement this?
We definitely can, but would perhaps need a small onboarding on the code-base @FelixMalfait @Bonapara
This can 100% be our scope
1. Define env vars and pass them as client config MEETING_BOT_PROVIDER=aimeetingbot MEETING_BOT_API_KEY=xxxx Pass the meeting bot provider to the frontend in clientConfig.
Note this is a standard across our codebase, we use a “driver based” approach for all external providers, even if there’s just 1 provider implemented.
2. Add an option to opt-in in integration page Frontend: design will be confirmed by @Bonapara
Backend: we need to add a new billingSubscriptionItem to the subscription, which will track that the user has opted-in to the meeting bot extension. I think we need a custom resolver for that.
Related: #5247
3. Add an option to opt-in to MeetingBots in calendar settings Frontend: design will be confirmed by @Bonapara. Conditionally display section "meeting bot" with a setting to define when meeting bots should be automatically added to meetings Backend: we need to introduce a new column on
calendarChannel
table, which we can callmeetingBotAutoAttendance
, values =NEVER
,EXTERNAL_MEETINGS
,ALL_MEETINGS
4. Add an option to toggle bot at the calendarEvent level Frontend: basic dropdown/enum field (should come for free) Backend: add field on
calendarEvent
,meetingBotShouldJoin
, with valuesTRUE, FALSE, CHANNEL_SETTINGS
6. Call MeetingBot API for events to be logged Create a listener on calendarEvent.created/updated/deleted and call the meeting bot API accordingly. Meeting provider and link can be found on
calendarEvent.conferenceLink
andcalendarEvent.conferenceSolution
5. Webhook at the end of calls Create an endpoint
/apps/aimeetingbot/webhook
to receive webhook notifications At the end of calls, we will create a newactivity
withtype=note
We can easily import markdown to thebody
: https://www.blocknotejs.org/docs/editor-api/converting-blocks#parsing-markdown-to-blocks We also need to call the Stripe API tu update usage metrics: https://docs.stripe.com/api/billing/meter-event/create