diff --git a/src/WSRequestHandler.cpp b/src/WSRequestHandler.cpp index cbc2bf08..2ab2d4fc 100644 --- a/src/WSRequestHandler.cpp +++ b/src/WSRequestHandler.cpp @@ -29,139 +29,21 @@ using namespace std::placeholders; const QHash<QString, RpcMethodHandler> WSRequestHandler::messageMap{ + // Category: General { "GetVersion", &WSRequestHandler::GetVersion }, { "GetAuthRequired", &WSRequestHandler::GetAuthRequired }, { "Authenticate", &WSRequestHandler::Authenticate }, - - { "GetStats", &WSRequestHandler::GetStats }, { "SetHeartbeat", &WSRequestHandler::SetHeartbeat }, - { "GetVideoInfo", &WSRequestHandler::GetVideoInfo }, - { "OpenProjector", &WSRequestHandler::OpenProjector }, - { "SetFilenameFormatting", &WSRequestHandler::SetFilenameFormatting }, { "GetFilenameFormatting", &WSRequestHandler::GetFilenameFormatting }, - + { "GetStats", &WSRequestHandler::GetStats }, { "BroadcastCustomMessage", &WSRequestHandler::BroadcastCustomMessage }, - + { "GetVideoInfo", &WSRequestHandler::GetVideoInfo }, + { "OpenProjector", &WSRequestHandler::OpenProjector }, { "TriggerHotkeyByName", &WSRequestHandler::TriggerHotkeyByName }, { "TriggerHotkeyBySequence", &WSRequestHandler::TriggerHotkeyBySequence }, - { "SetCurrentScene", &WSRequestHandler::SetCurrentScene }, - { "GetCurrentScene", &WSRequestHandler::GetCurrentScene }, - { "GetSceneList", &WSRequestHandler::GetSceneList }, - { "CreateScene", &WSRequestHandler::CreateScene }, - { "SetSceneTransitionOverride", &WSRequestHandler::SetSceneTransitionOverride }, - { "RemoveSceneTransitionOverride", &WSRequestHandler::RemoveSceneTransitionOverride }, - { "GetSceneTransitionOverride", &WSRequestHandler::GetSceneTransitionOverride }, - - { "SetSourceRender", &WSRequestHandler::SetSceneItemRender }, // Retrocompat - { "GetSceneItemList", &WSRequestHandler::GetSceneItemList }, - { "SetSceneItemRender", &WSRequestHandler::SetSceneItemRender }, - { "GetSceneItemProperties", &WSRequestHandler::GetSceneItemProperties }, - { "SetSceneItemProperties", &WSRequestHandler::SetSceneItemProperties }, - { "ResetSceneItem", &WSRequestHandler::ResetSceneItem }, - { "DeleteSceneItem", &WSRequestHandler::DeleteSceneItem }, - { "AddSceneItem", &WSRequestHandler::AddSceneItem }, - { "DuplicateSceneItem", &WSRequestHandler::DuplicateSceneItem }, - { "ReorderSceneItems", &WSRequestHandler::ReorderSceneItems }, - - { "GetStreamingStatus", &WSRequestHandler::GetStreamingStatus }, - { "StartStopStreaming", &WSRequestHandler::StartStopStreaming }, - { "StartStopRecording", &WSRequestHandler::StartStopRecording }, - - { "StartStreaming", &WSRequestHandler::StartStreaming }, - { "StopStreaming", &WSRequestHandler::StopStreaming }, - - { "GetRecordingStatus", &WSRequestHandler::GetRecordingStatus }, - { "StartRecording", &WSRequestHandler::StartRecording }, - { "StopRecording", &WSRequestHandler::StopRecording }, - { "PauseRecording", &WSRequestHandler::PauseRecording }, - { "ResumeRecording", &WSRequestHandler::ResumeRecording }, - - { "GetReplayBufferStatus", &WSRequestHandler::GetReplayBufferStatus }, - { "StartStopReplayBuffer", &WSRequestHandler::StartStopReplayBuffer }, - { "StartReplayBuffer", &WSRequestHandler::StartReplayBuffer }, - { "StopReplayBuffer", &WSRequestHandler::StopReplayBuffer }, - { "SaveReplayBuffer", &WSRequestHandler::SaveReplayBuffer }, - - { "SetRecordingFolder", &WSRequestHandler::SetRecordingFolder }, - { "GetRecordingFolder", &WSRequestHandler::GetRecordingFolder }, - - { "GetTransitionList", &WSRequestHandler::GetTransitionList }, - { "GetCurrentTransition", &WSRequestHandler::GetCurrentTransition }, - { "SetCurrentTransition", &WSRequestHandler::SetCurrentTransition }, - { "SetTransitionDuration", &WSRequestHandler::SetTransitionDuration }, - { "GetTransitionDuration", &WSRequestHandler::GetTransitionDuration }, - { "GetTransitionPosition", &WSRequestHandler::GetTransitionPosition }, - { "GetTransitionSettings", &WSRequestHandler::GetTransitionSettings }, - { "SetTransitionSettings", &WSRequestHandler::SetTransitionSettings }, - { "ReleaseTBar", &WSRequestHandler::ReleaseTBar }, - { "SetTBarPosition", &WSRequestHandler::SetTBarPosition }, - - { "CreateSource", &WSRequestHandler::CreateSource }, - { "SetVolume", &WSRequestHandler::SetVolume }, - { "GetVolume", &WSRequestHandler::GetVolume }, - { "ToggleMute", &WSRequestHandler::ToggleMute }, - { "SetMute", &WSRequestHandler::SetMute }, - { "GetMute", &WSRequestHandler::GetMute }, - { "GetAudioActive", &WSRequestHandler::GetAudioActive }, - { "SetSourceName", &WSRequestHandler::SetSourceName }, - { "SetSyncOffset", &WSRequestHandler::SetSyncOffset }, - { "GetSyncOffset", &WSRequestHandler::GetSyncOffset }, - { "GetSpecialSources", &WSRequestHandler::GetSpecialSources }, - { "GetSourcesList", &WSRequestHandler::GetSourcesList }, - { "GetSourceTypesList", &WSRequestHandler::GetSourceTypesList }, - { "GetSourceSettings", &WSRequestHandler::GetSourceSettings }, - { "SetSourceSettings", &WSRequestHandler::SetSourceSettings }, - { "GetAudioMonitorType", &WSRequestHandler::GetAudioMonitorType }, - { "SetAudioMonitorType", &WSRequestHandler::SetAudioMonitorType }, - { "GetSourceDefaultSettings", &WSRequestHandler::GetSourceDefaultSettings }, - { "TakeSourceScreenshot", &WSRequestHandler::TakeSourceScreenshot }, - - { "GetSourceFilters", &WSRequestHandler::GetSourceFilters }, - { "GetSourceFilterInfo", &WSRequestHandler::GetSourceFilterInfo }, - { "AddFilterToSource", &WSRequestHandler::AddFilterToSource }, - { "RemoveFilterFromSource", &WSRequestHandler::RemoveFilterFromSource }, - { "ReorderSourceFilter", &WSRequestHandler::ReorderSourceFilter }, - { "MoveSourceFilter", &WSRequestHandler::MoveSourceFilter }, - { "SetSourceFilterSettings", &WSRequestHandler::SetSourceFilterSettings }, - { "SetSourceFilterVisibility", &WSRequestHandler::SetSourceFilterVisibility }, - - { "SetCurrentSceneCollection", &WSRequestHandler::SetCurrentSceneCollection }, - { "GetCurrentSceneCollection", &WSRequestHandler::GetCurrentSceneCollection }, - { "ListSceneCollections", &WSRequestHandler::ListSceneCollections }, - - { "SetCurrentProfile", &WSRequestHandler::SetCurrentProfile }, - { "GetCurrentProfile", &WSRequestHandler::GetCurrentProfile }, - { "ListProfiles", &WSRequestHandler::ListProfiles }, - - { "SetStreamSettings", &WSRequestHandler::SetStreamSettings }, - { "GetStreamSettings", &WSRequestHandler::GetStreamSettings }, - { "SaveStreamSettings", &WSRequestHandler::SaveStreamSettings }, - { "SendCaptions", &WSRequestHandler::SendCaptions }, - - { "GetStudioModeStatus", &WSRequestHandler::GetStudioModeStatus }, - { "GetPreviewScene", &WSRequestHandler::GetPreviewScene }, - { "SetPreviewScene", &WSRequestHandler::SetPreviewScene }, - { "TransitionToProgram", &WSRequestHandler::TransitionToProgram }, - { "EnableStudioMode", &WSRequestHandler::EnableStudioMode }, - { "DisableStudioMode", &WSRequestHandler::DisableStudioMode }, - { "ToggleStudioMode", &WSRequestHandler::ToggleStudioMode }, - - { "SetTextGDIPlusProperties", &WSRequestHandler::SetTextGDIPlusProperties }, - { "GetTextGDIPlusProperties", &WSRequestHandler::GetTextGDIPlusProperties }, - - { "SetTextFreetype2Properties", &WSRequestHandler::SetTextFreetype2Properties }, - { "GetTextFreetype2Properties", &WSRequestHandler::GetTextFreetype2Properties }, - - { "GetBrowserSourceProperties", &WSRequestHandler::GetBrowserSourceProperties }, - { "SetBrowserSourceProperties", &WSRequestHandler::SetBrowserSourceProperties }, - - { "ListOutputs", &WSRequestHandler::ListOutputs }, - { "GetOutputInfo", &WSRequestHandler::GetOutputInfo }, - { "StartOutput", &WSRequestHandler::StartOutput }, - { "StopOutput", &WSRequestHandler::StopOutput }, - + // Category: Media Control { "PlayPauseMedia", &WSRequestHandler::PlayPauseMedia }, { "RestartMedia", &WSRequestHandler::RestartMedia }, { "StopMedia", &WSRequestHandler::StopMedia }, @@ -172,7 +54,127 @@ const QHash<QString, RpcMethodHandler> WSRequestHandler::messageMap{ { "SetMediaTime", &WSRequestHandler::SetMediaTime }, { "ScrubMedia", &WSRequestHandler::ScrubMedia }, { "GetMediaState", &WSRequestHandler::GetMediaState }, - { "GetMediaSourcesList", &WSRequestHandler::GetMediaSourcesList } + { "GetMediaSourcesList", &WSRequestHandler::GetMediaSourcesList }, + + // Category: Outputs + { "ListOutputs", &WSRequestHandler::ListOutputs }, + { "GetOutputInfo", &WSRequestHandler::GetOutputInfo }, + { "StartOutput", &WSRequestHandler::StartOutput }, + { "StopOutput", &WSRequestHandler::StopOutput }, + + // Category: Profiles + { "SetCurrentProfile", &WSRequestHandler::SetCurrentProfile }, + { "GetCurrentProfile", &WSRequestHandler::GetCurrentProfile }, + { "ListProfiles", &WSRequestHandler::ListProfiles }, + + // Category: Recording + { "GetRecordingStatus", &WSRequestHandler::GetRecordingStatus }, + { "StartStopRecording", &WSRequestHandler::StartStopRecording }, + { "StartRecording", &WSRequestHandler::StartRecording }, + { "StopRecording", &WSRequestHandler::StopRecording }, + { "PauseRecording", &WSRequestHandler::PauseRecording }, + { "ResumeRecording", &WSRequestHandler::ResumeRecording }, + { "SetRecordingFolder", &WSRequestHandler::SetRecordingFolder }, + { "GetRecordingFolder", &WSRequestHandler::GetRecordingFolder }, + + // Category: Replay Buffer + { "GetReplayBufferStatus", &WSRequestHandler::GetReplayBufferStatus }, + { "StartStopReplayBuffer", &WSRequestHandler::StartStopReplayBuffer }, + { "StartReplayBuffer", &WSRequestHandler::StartReplayBuffer }, + { "StopReplayBuffer", &WSRequestHandler::StopReplayBuffer }, + { "SaveReplayBuffer", &WSRequestHandler::SaveReplayBuffer }, + + // Category: Scene Collections + { "SetCurrentSceneCollection", &WSRequestHandler::SetCurrentSceneCollection }, + { "GetCurrentSceneCollection", &WSRequestHandler::GetCurrentSceneCollection }, + { "ListSceneCollections", &WSRequestHandler::ListSceneCollections }, + + // Category: Scene Items + { "GetSceneItemList", &WSRequestHandler::GetSceneItemList }, + { "GetSceneItemProperties", &WSRequestHandler::GetSceneItemProperties }, + { "SetSceneItemProperties", &WSRequestHandler::SetSceneItemProperties }, + { "ResetSceneItem", &WSRequestHandler::ResetSceneItem }, + { "SetSceneItemRender", &WSRequestHandler::SetSceneItemRender }, + { "SetSourceRender", &WSRequestHandler::SetSceneItemRender }, // Retrocompat TODO: Remove in 5.0.0 + { "DeleteSceneItem", &WSRequestHandler::DeleteSceneItem }, + { "AddSceneItem", &WSRequestHandler::AddSceneItem }, + { "DuplicateSceneItem", &WSRequestHandler::DuplicateSceneItem }, + + // Category: Scenes + { "SetCurrentScene", &WSRequestHandler::SetCurrentScene }, + { "GetCurrentScene", &WSRequestHandler::GetCurrentScene }, + { "GetSceneList", &WSRequestHandler::GetSceneList }, + { "CreateScene", &WSRequestHandler::CreateScene }, + { "ReorderSceneItems", &WSRequestHandler::ReorderSceneItems }, + { "SetSceneTransitionOverride", &WSRequestHandler::SetSceneTransitionOverride }, + { "RemoveSceneTransitionOverride", &WSRequestHandler::RemoveSceneTransitionOverride }, + { "GetSceneTransitionOverride", &WSRequestHandler::GetSceneTransitionOverride }, + + // Category: Sources + { "CreateSource", &WSRequestHandler::CreateSource }, + { "GetSourcesList", &WSRequestHandler::GetSourcesList }, + { "GetSourceTypesList", &WSRequestHandler::GetSourceTypesList }, + { "GetVolume", &WSRequestHandler::GetVolume }, + { "SetVolume", &WSRequestHandler::SetVolume }, + { "GetMute", &WSRequestHandler::GetMute }, + { "SetMute", &WSRequestHandler::SetMute }, + { "ToggleMute", &WSRequestHandler::ToggleMute }, + { "GetAudioActive", &WSRequestHandler::GetAudioActive }, + { "SetSourceName", &WSRequestHandler::SetSourceName }, + { "SetSyncOffset", &WSRequestHandler::SetSyncOffset }, + { "GetSyncOffset", &WSRequestHandler::GetSyncOffset }, + { "GetSourceSettings", &WSRequestHandler::GetSourceSettings }, + { "SetSourceSettings", &WSRequestHandler::SetSourceSettings }, + { "GetTextGDIPlusProperties", &WSRequestHandler::GetTextGDIPlusProperties }, + { "SetTextGDIPlusProperties", &WSRequestHandler::SetTextGDIPlusProperties }, + { "GetTextFreetype2Properties", &WSRequestHandler::GetTextFreetype2Properties }, + { "SetTextFreetype2Properties", &WSRequestHandler::SetTextFreetype2Properties }, + { "GetBrowserSourceProperties", &WSRequestHandler::GetBrowserSourceProperties }, + { "SetBrowserSourceProperties", &WSRequestHandler::SetBrowserSourceProperties }, + { "GetSpecialSources", &WSRequestHandler::GetSpecialSources }, + { "GetSourceFilters", &WSRequestHandler::GetSourceFilters }, + { "GetSourceFilterInfo", &WSRequestHandler::GetSourceFilterInfo }, + { "AddFilterToSource", &WSRequestHandler::AddFilterToSource }, + { "RemoveFilterFromSource", &WSRequestHandler::RemoveFilterFromSource }, + { "ReorderSourceFilter", &WSRequestHandler::ReorderSourceFilter }, + { "MoveSourceFilter", &WSRequestHandler::MoveSourceFilter }, + { "SetSourceFilterSettings", &WSRequestHandler::SetSourceFilterSettings }, + { "SetSourceFilterVisibility", &WSRequestHandler::SetSourceFilterVisibility }, + { "GetAudioMonitorType", &WSRequestHandler::GetAudioMonitorType }, + { "SetAudioMonitorType", &WSRequestHandler::SetAudioMonitorType }, + { "GetSourceDefaultSettings", &WSRequestHandler::GetSourceDefaultSettings }, + { "TakeSourceScreenshot", &WSRequestHandler::TakeSourceScreenshot }, + + // Category: Streaming + { "GetStreamingStatus", &WSRequestHandler::GetStreamingStatus }, + { "StartStopStreaming", &WSRequestHandler::StartStopStreaming }, + { "StartStreaming", &WSRequestHandler::StartStreaming }, + { "StopStreaming", &WSRequestHandler::StopStreaming }, + { "SetStreamSettings", &WSRequestHandler::SetStreamSettings }, + { "GetStreamSettings", &WSRequestHandler::GetStreamSettings }, + { "SaveStreamSettings", &WSRequestHandler::SaveStreamSettings }, + { "SendCaptions", &WSRequestHandler::SendCaptions }, + + // Category: Studio Mode + { "GetStudioModeStatus", &WSRequestHandler::GetStudioModeStatus }, + { "GetPreviewScene", &WSRequestHandler::GetPreviewScene }, + { "SetPreviewScene", &WSRequestHandler::SetPreviewScene }, + { "TransitionToProgram", &WSRequestHandler::TransitionToProgram }, + { "EnableStudioMode", &WSRequestHandler::EnableStudioMode }, + { "DisableStudioMode", &WSRequestHandler::DisableStudioMode }, + { "ToggleStudioMode", &WSRequestHandler::ToggleStudioMode }, + + // Category: Transitions + { "GetTransitionList", &WSRequestHandler::GetTransitionList }, + { "GetCurrentTransition", &WSRequestHandler::GetCurrentTransition }, + { "SetCurrentTransition", &WSRequestHandler::SetCurrentTransition }, + { "SetTransitionDuration", &WSRequestHandler::SetTransitionDuration }, + { "GetTransitionDuration", &WSRequestHandler::GetTransitionDuration }, + { "GetTransitionPosition", &WSRequestHandler::GetTransitionPosition }, + { "GetTransitionSettings", &WSRequestHandler::GetTransitionSettings }, + { "SetTransitionSettings", &WSRequestHandler::SetTransitionSettings }, + { "ReleaseTBar", &WSRequestHandler::ReleaseTBar }, + { "SetTBarPosition", &WSRequestHandler::SetTBarPosition } }; const QSet<QString> WSRequestHandler::authNotRequired { diff --git a/src/WSRequestHandler.h b/src/WSRequestHandler.h index 6d17e139..40207a4f 100644 --- a/src/WSRequestHandler.h +++ b/src/WSRequestHandler.h @@ -47,138 +47,21 @@ class WSRequestHandler { static const QHash<QString, RpcMethodHandler> messageMap; static const QSet<QString> authNotRequired; + // Category: General RpcResponse GetVersion(const RpcRequest&); RpcResponse GetAuthRequired(const RpcRequest&); RpcResponse Authenticate(const RpcRequest&); - - RpcResponse GetStats(const RpcRequest&); RpcResponse SetHeartbeat(const RpcRequest&); - RpcResponse GetVideoInfo(const RpcRequest&); - RpcResponse OpenProjector(const RpcRequest&); - RpcResponse SetFilenameFormatting(const RpcRequest&); RpcResponse GetFilenameFormatting(const RpcRequest&); - + RpcResponse GetStats(const RpcRequest&); RpcResponse BroadcastCustomMessage(const RpcRequest&); - + RpcResponse GetVideoInfo(const RpcRequest&); + RpcResponse OpenProjector(const RpcRequest&); RpcResponse TriggerHotkeyByName(const RpcRequest&); RpcResponse TriggerHotkeyBySequence(const RpcRequest&); - RpcResponse SetCurrentScene(const RpcRequest&); - RpcResponse GetCurrentScene(const RpcRequest&); - RpcResponse GetSceneList(const RpcRequest&); - RpcResponse CreateScene(const RpcRequest&); - RpcResponse SetSceneTransitionOverride(const RpcRequest&); - RpcResponse RemoveSceneTransitionOverride(const RpcRequest&); - RpcResponse GetSceneTransitionOverride(const RpcRequest&); - - RpcResponse GetSceneItemList(const RpcRequest&); - RpcResponse SetSceneItemRender(const RpcRequest&); - RpcResponse GetSceneItemProperties(const RpcRequest&); - RpcResponse SetSceneItemProperties(const RpcRequest&); - RpcResponse ResetSceneItem(const RpcRequest&); - RpcResponse DuplicateSceneItem(const RpcRequest&); - RpcResponse DeleteSceneItem(const RpcRequest&); - RpcResponse AddSceneItem(const RpcRequest&); - RpcResponse ReorderSceneItems(const RpcRequest&); - - RpcResponse GetStreamingStatus(const RpcRequest&); - RpcResponse StartStopStreaming(const RpcRequest&); - RpcResponse StartStopRecording(const RpcRequest&); - - RpcResponse StartStreaming(const RpcRequest&); - RpcResponse StopStreaming(const RpcRequest&); - - RpcResponse GetRecordingStatus(const RpcRequest&); - RpcResponse StartRecording(const RpcRequest&); - RpcResponse StopRecording(const RpcRequest&); - RpcResponse PauseRecording(const RpcRequest&); - RpcResponse ResumeRecording(const RpcRequest&); - - RpcResponse GetReplayBufferStatus(const RpcRequest&); - RpcResponse StartStopReplayBuffer(const RpcRequest&); - RpcResponse StartReplayBuffer(const RpcRequest&); - RpcResponse StopReplayBuffer(const RpcRequest&); - RpcResponse SaveReplayBuffer(const RpcRequest&); - - RpcResponse SetRecordingFolder(const RpcRequest&); - RpcResponse GetRecordingFolder(const RpcRequest&); - - RpcResponse GetTransitionList(const RpcRequest&); - RpcResponse GetCurrentTransition(const RpcRequest&); - RpcResponse SetCurrentTransition(const RpcRequest&); - RpcResponse SetTransitionDuration(const RpcRequest&); - RpcResponse GetTransitionDuration(const RpcRequest&); - RpcResponse GetTransitionPosition(const RpcRequest&); - RpcResponse GetTransitionSettings(const RpcRequest&); - RpcResponse SetTransitionSettings(const RpcRequest&); - RpcResponse ReleaseTBar(const RpcRequest&); - RpcResponse SetTBarPosition(const RpcRequest&); - - RpcResponse CreateSource(const RpcRequest&); - RpcResponse SetVolume(const RpcRequest&); - RpcResponse GetVolume(const RpcRequest&); - RpcResponse ToggleMute(const RpcRequest&); - RpcResponse SetMute(const RpcRequest&); - RpcResponse GetMute(const RpcRequest&); - RpcResponse GetAudioActive(const RpcRequest&); - RpcResponse SetSourceName(const RpcRequest&); - RpcResponse SetSyncOffset(const RpcRequest&); - RpcResponse GetSyncOffset(const RpcRequest&); - RpcResponse GetSpecialSources(const RpcRequest&); - RpcResponse GetSourcesList(const RpcRequest&); - RpcResponse GetSourceTypesList(const RpcRequest&); - RpcResponse GetSourceSettings(const RpcRequest&); - RpcResponse SetSourceSettings(const RpcRequest&); - RpcResponse GetAudioMonitorType(const RpcRequest&); - RpcResponse SetAudioMonitorType(const RpcRequest&); - RpcResponse GetSourceDefaultSettings(const RpcRequest&); - RpcResponse TakeSourceScreenshot(const RpcRequest&); - - RpcResponse GetSourceFilters(const RpcRequest&); - RpcResponse GetSourceFilterInfo(const RpcRequest&); - RpcResponse AddFilterToSource(const RpcRequest&); - RpcResponse RemoveFilterFromSource(const RpcRequest&); - RpcResponse ReorderSourceFilter(const RpcRequest&); - RpcResponse MoveSourceFilter(const RpcRequest&); - RpcResponse SetSourceFilterSettings(const RpcRequest&); - RpcResponse SetSourceFilterVisibility(const RpcRequest&); - - RpcResponse SetCurrentSceneCollection(const RpcRequest&); - RpcResponse GetCurrentSceneCollection(const RpcRequest&); - RpcResponse ListSceneCollections(const RpcRequest&); - - RpcResponse SetCurrentProfile(const RpcRequest&); - RpcResponse GetCurrentProfile(const RpcRequest&); - RpcResponse ListProfiles(const RpcRequest&); - - RpcResponse SetStreamSettings(const RpcRequest&); - RpcResponse GetStreamSettings(const RpcRequest&); - RpcResponse SaveStreamSettings(const RpcRequest&); - RpcResponse SendCaptions(const RpcRequest&); - - RpcResponse GetStudioModeStatus(const RpcRequest&); - RpcResponse GetPreviewScene(const RpcRequest&); - RpcResponse SetPreviewScene(const RpcRequest&); - RpcResponse TransitionToProgram(const RpcRequest&); - RpcResponse EnableStudioMode(const RpcRequest&); - RpcResponse DisableStudioMode(const RpcRequest&); - RpcResponse ToggleStudioMode(const RpcRequest&); - - RpcResponse SetTextGDIPlusProperties(const RpcRequest&); - RpcResponse GetTextGDIPlusProperties(const RpcRequest&); - - RpcResponse SetTextFreetype2Properties(const RpcRequest&); - RpcResponse GetTextFreetype2Properties(const RpcRequest&); - - RpcResponse SetBrowserSourceProperties(const RpcRequest&); - RpcResponse GetBrowserSourceProperties(const RpcRequest&); - - RpcResponse ListOutputs(const RpcRequest&); - RpcResponse GetOutputInfo(const RpcRequest&); - RpcResponse StartOutput(const RpcRequest&); - RpcResponse StopOutput(const RpcRequest&); - + // Category: Media Control RpcResponse PlayPauseMedia(const RpcRequest&); RpcResponse RestartMedia(const RpcRequest&); RpcResponse StopMedia(const RpcRequest&); @@ -190,4 +73,123 @@ class WSRequestHandler { RpcResponse ScrubMedia(const RpcRequest&); RpcResponse GetMediaState(const RpcRequest&); RpcResponse GetMediaSourcesList(const RpcRequest&); + + // Category: Outputs + RpcResponse ListOutputs(const RpcRequest&); + RpcResponse GetOutputInfo(const RpcRequest&); + RpcResponse StartOutput(const RpcRequest&); + RpcResponse StopOutput(const RpcRequest&); + + // Category: Profiles + RpcResponse SetCurrentProfile(const RpcRequest&); + RpcResponse GetCurrentProfile(const RpcRequest&); + RpcResponse ListProfiles(const RpcRequest&); + + // Category: Recording + RpcResponse GetRecordingStatus(const RpcRequest&); + RpcResponse StartStopRecording(const RpcRequest&); + RpcResponse StartRecording(const RpcRequest&); + RpcResponse StopRecording(const RpcRequest&); + RpcResponse PauseRecording(const RpcRequest&); + RpcResponse ResumeRecording(const RpcRequest&); + RpcResponse SetRecordingFolder(const RpcRequest&); + RpcResponse GetRecordingFolder(const RpcRequest&); + + // Category: Replay Buffer + RpcResponse GetReplayBufferStatus(const RpcRequest&); + RpcResponse StartStopReplayBuffer(const RpcRequest&); + RpcResponse StartReplayBuffer(const RpcRequest&); + RpcResponse StopReplayBuffer(const RpcRequest&); + RpcResponse SaveReplayBuffer(const RpcRequest&); + + // Category: Scene Collections + RpcResponse SetCurrentSceneCollection(const RpcRequest&); + RpcResponse GetCurrentSceneCollection(const RpcRequest&); + RpcResponse ListSceneCollections(const RpcRequest&); + + // Category: Scene Items + RpcResponse GetSceneItemList(const RpcRequest&); + RpcResponse GetSceneItemProperties(const RpcRequest&); + RpcResponse SetSceneItemProperties(const RpcRequest&); + RpcResponse ResetSceneItem(const RpcRequest&); + RpcResponse SetSceneItemRender(const RpcRequest&); + RpcResponse DeleteSceneItem(const RpcRequest&); + RpcResponse AddSceneItem(const RpcRequest&); + RpcResponse DuplicateSceneItem(const RpcRequest&); + + // Category: Scenes + RpcResponse SetCurrentScene(const RpcRequest&); + RpcResponse GetCurrentScene(const RpcRequest&); + RpcResponse GetSceneList(const RpcRequest&); + RpcResponse CreateScene(const RpcRequest&); + RpcResponse ReorderSceneItems(const RpcRequest&); + RpcResponse SetSceneTransitionOverride(const RpcRequest&); + RpcResponse RemoveSceneTransitionOverride(const RpcRequest&); + RpcResponse GetSceneTransitionOverride(const RpcRequest&); + + // Category: Sources + RpcResponse CreateSource(const RpcRequest&); + RpcResponse GetSourcesList(const RpcRequest&); + RpcResponse GetSourceTypesList(const RpcRequest&); + RpcResponse GetVolume(const RpcRequest&); + RpcResponse SetVolume(const RpcRequest&); + RpcResponse GetMute(const RpcRequest&); + RpcResponse SetMute(const RpcRequest&); + RpcResponse ToggleMute(const RpcRequest&); + RpcResponse GetAudioActive(const RpcRequest&); + RpcResponse SetSourceName(const RpcRequest&); + RpcResponse SetSyncOffset(const RpcRequest&); + RpcResponse GetSyncOffset(const RpcRequest&); + RpcResponse GetSourceSettings(const RpcRequest&); + RpcResponse SetSourceSettings(const RpcRequest&); + RpcResponse GetTextGDIPlusProperties(const RpcRequest&); + RpcResponse SetTextGDIPlusProperties(const RpcRequest&); + RpcResponse GetTextFreetype2Properties(const RpcRequest&); + RpcResponse SetTextFreetype2Properties(const RpcRequest&); + RpcResponse GetBrowserSourceProperties(const RpcRequest&); + RpcResponse SetBrowserSourceProperties(const RpcRequest&); + RpcResponse GetSpecialSources(const RpcRequest&); + RpcResponse GetSourceFilters(const RpcRequest&); + RpcResponse GetSourceFilterInfo(const RpcRequest&); + RpcResponse AddFilterToSource(const RpcRequest&); + RpcResponse RemoveFilterFromSource(const RpcRequest&); + RpcResponse ReorderSourceFilter(const RpcRequest&); + RpcResponse MoveSourceFilter(const RpcRequest&); + RpcResponse SetSourceFilterSettings(const RpcRequest&); + RpcResponse SetSourceFilterVisibility(const RpcRequest&); + RpcResponse GetAudioMonitorType(const RpcRequest&); + RpcResponse SetAudioMonitorType(const RpcRequest&); + RpcResponse GetSourceDefaultSettings(const RpcRequest&); + RpcResponse TakeSourceScreenshot(const RpcRequest&); + + // Category: Streaming + RpcResponse GetStreamingStatus(const RpcRequest&); + RpcResponse StartStopStreaming(const RpcRequest&); + RpcResponse StartStreaming(const RpcRequest&); + RpcResponse StopStreaming(const RpcRequest&); + RpcResponse SetStreamSettings(const RpcRequest&); + RpcResponse GetStreamSettings(const RpcRequest&); + RpcResponse SaveStreamSettings(const RpcRequest&); + RpcResponse SendCaptions(const RpcRequest&); + + // Category: Studio Mode + RpcResponse GetStudioModeStatus(const RpcRequest&); + RpcResponse GetPreviewScene(const RpcRequest&); + RpcResponse SetPreviewScene(const RpcRequest&); + RpcResponse TransitionToProgram(const RpcRequest&); + RpcResponse EnableStudioMode(const RpcRequest&); + RpcResponse DisableStudioMode(const RpcRequest&); + RpcResponse ToggleStudioMode(const RpcRequest&); + + // Category: Transitions + RpcResponse GetTransitionList(const RpcRequest&); + RpcResponse GetCurrentTransition(const RpcRequest&); + RpcResponse SetCurrentTransition(const RpcRequest&); + RpcResponse SetTransitionDuration(const RpcRequest&); + RpcResponse GetTransitionDuration(const RpcRequest&); + RpcResponse GetTransitionPosition(const RpcRequest&); + RpcResponse GetTransitionSettings(const RpcRequest&); + RpcResponse SetTransitionSettings(const RpcRequest&); + RpcResponse ReleaseTBar(const RpcRequest&); + RpcResponse SetTBarPosition(const RpcRequest&); };