forked from Manuel/meeting-assistant
feat(macos): enable meeting integrations
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
using MeetingAssistant.Calendar;
|
||||
using MeetingAssistant.MeetingNotes;
|
||||
using MeetingAssistant.Screenshots;
|
||||
using MeetingAssistant.Workflow;
|
||||
|
||||
namespace MeetingAssistant;
|
||||
|
||||
public sealed record PlatformCapabilityReport(
|
||||
string Host,
|
||||
string MeetingMetadataProvider,
|
||||
string CalendarMeetingProvider,
|
||||
string MeetingStartPromptProvider,
|
||||
string ScreenshotProvider,
|
||||
string WorkflowEditorProvider,
|
||||
bool WorkflowEditorAvailable,
|
||||
bool CalendarRecordingPromptsEnabled,
|
||||
bool SpeakerIdentificationEnabled,
|
||||
bool ScreenshotOcrEnabled,
|
||||
bool FunAsrBackendEnabled,
|
||||
bool FunAsrDiarizationEnabled,
|
||||
bool WhisperLocalDiarizationEnabled)
|
||||
{
|
||||
public static PlatformCapabilityReport Create(
|
||||
HostOperatingSystem host,
|
||||
MeetingAssistantOptions options,
|
||||
IMeetingMetadataProvider meetingMetadataProvider,
|
||||
ICalendarMeetingProvider calendarMeetingProvider,
|
||||
IMeetingStartPromptService meetingStartPromptProvider,
|
||||
IActiveWindowScreenshotCapture screenshotProvider,
|
||||
IWorkflowRulesEditorWindowService workflowEditorProvider)
|
||||
{
|
||||
return new PlatformCapabilityReport(
|
||||
host.Kind switch
|
||||
{
|
||||
HostOperatingSystemKind.Windows => "Windows",
|
||||
HostOperatingSystemKind.MacOS => "macOS",
|
||||
_ => "Unsupported"
|
||||
},
|
||||
meetingMetadataProvider.GetType().Name,
|
||||
calendarMeetingProvider.GetType().Name,
|
||||
meetingStartPromptProvider.GetType().Name,
|
||||
screenshotProvider.GetType().Name,
|
||||
workflowEditorProvider.GetType().Name,
|
||||
workflowEditorProvider is not NoopWorkflowRulesEditorWindowService,
|
||||
options.CalendarRecordingPrompts.Enabled,
|
||||
options.SpeakerIdentification.Enabled,
|
||||
options.Screenshots.Ocr.Enabled,
|
||||
options.FunAsr.Backend.Enabled,
|
||||
options.FunAsr.Diarization.Enabled,
|
||||
options.WhisperLocal.Diarization.Enabled);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user