mirror of
https://github.com/Palakis/obs-websocket.git
synced 2024-08-30 18:12:16 +00:00
requesthandler: Reorder a filter request
This commit is contained in:
parent
29b2b1bd5d
commit
66c14dced5
@ -112,9 +112,9 @@ const std::unordered_map<std::string, RequestMethodHandler> RequestHandler::_han
|
|||||||
|
|
||||||
// Filters
|
// Filters
|
||||||
{"GetSourceFilterList", &RequestHandler::GetSourceFilterList},
|
{"GetSourceFilterList", &RequestHandler::GetSourceFilterList},
|
||||||
|
{"GetSourceFilterDefaultSettings", &RequestHandler::GetSourceFilterDefaultSettings},
|
||||||
{"CreateSourceFilter", &RequestHandler::CreateSourceFilter},
|
{"CreateSourceFilter", &RequestHandler::CreateSourceFilter},
|
||||||
{"RemoveSourceFilter", &RequestHandler::RemoveSourceFilter},
|
{"RemoveSourceFilter", &RequestHandler::RemoveSourceFilter},
|
||||||
{"GetSourceFilterDefaultSettings", &RequestHandler::GetSourceFilterDefaultSettings},
|
|
||||||
{"GetSourceFilter", &RequestHandler::GetSourceFilter},
|
{"GetSourceFilter", &RequestHandler::GetSourceFilter},
|
||||||
{"SetSourceFilterIndex", &RequestHandler::SetSourceFilterIndex},
|
{"SetSourceFilterIndex", &RequestHandler::SetSourceFilterIndex},
|
||||||
{"SetSourceFilterSettings", &RequestHandler::SetSourceFilterSettings},
|
{"SetSourceFilterSettings", &RequestHandler::SetSourceFilterSettings},
|
||||||
|
@ -130,9 +130,9 @@ class RequestHandler {
|
|||||||
|
|
||||||
// Filters
|
// Filters
|
||||||
RequestResult GetSourceFilterList(const Request&);
|
RequestResult GetSourceFilterList(const Request&);
|
||||||
|
RequestResult GetSourceFilterDefaultSettings(const Request&);
|
||||||
RequestResult CreateSourceFilter(const Request&);
|
RequestResult CreateSourceFilter(const Request&);
|
||||||
RequestResult RemoveSourceFilter(const Request&);
|
RequestResult RemoveSourceFilter(const Request&);
|
||||||
RequestResult GetSourceFilterDefaultSettings(const Request&);
|
|
||||||
RequestResult GetSourceFilter(const Request&);
|
RequestResult GetSourceFilter(const Request&);
|
||||||
RequestResult SetSourceFilterIndex(const Request&);
|
RequestResult SetSourceFilterIndex(const Request&);
|
||||||
RequestResult SetSourceFilterSettings(const Request&);
|
RequestResult SetSourceFilterSettings(const Request&);
|
||||||
|
@ -47,6 +47,41 @@ RequestResult RequestHandler::GetSourceFilterList(const Request& request)
|
|||||||
return RequestResult::Success(responseData);
|
return RequestResult::Success(responseData);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Gets the default settings for a filter kind.
|
||||||
|
*
|
||||||
|
* @requestField filterKind | String | Filter kind to get the default settings for
|
||||||
|
*
|
||||||
|
* @responseField defaultFilterSettings | Object | Object of default settings for the filter kind
|
||||||
|
*
|
||||||
|
* @requestType GetSourceFilterDefaultSettings
|
||||||
|
* @complexity 3
|
||||||
|
* @rpcVersion -1
|
||||||
|
* @initialVersion 5.0.0
|
||||||
|
* @api requests
|
||||||
|
* @category filters
|
||||||
|
*/
|
||||||
|
RequestResult RequestHandler::GetSourceFilterDefaultSettings(const Request& request)
|
||||||
|
{
|
||||||
|
RequestStatus::RequestStatus statusCode;
|
||||||
|
std::string comment;
|
||||||
|
if (!request.ValidateString("filterKind", statusCode, comment))
|
||||||
|
return RequestResult::Error(statusCode, comment);
|
||||||
|
|
||||||
|
std::string filterKind = request.RequestData["filterKind"];
|
||||||
|
auto kinds = Utils::Obs::ArrayHelper::GetFilterKindList();
|
||||||
|
if (std::find(kinds.begin(), kinds.end(), filterKind) == kinds.end())
|
||||||
|
return RequestResult::Error(RequestStatus::InvalidFilterKind);
|
||||||
|
|
||||||
|
OBSDataAutoRelease defaultSettings = obs_get_source_defaults(filterKind.c_str());
|
||||||
|
if (!defaultSettings)
|
||||||
|
return RequestResult::Error(RequestStatus::InvalidFilterKind);
|
||||||
|
|
||||||
|
json responseData;
|
||||||
|
responseData["defaultFilterSettings"] = Utils::Json::ObsDataToJson(defaultSettings, true);
|
||||||
|
return RequestResult::Success(responseData);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a new filter, adding it to the specified source.
|
* Creates a new filter, adding it to the specified source.
|
||||||
*
|
*
|
||||||
@ -123,41 +158,6 @@ RequestResult RequestHandler::RemoveSourceFilter(const Request& request)
|
|||||||
return RequestResult::Success();
|
return RequestResult::Success();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Gets the default settings for a filter kind.
|
|
||||||
*
|
|
||||||
* @requestField filterKind | String | Filter kind to get the default settings for
|
|
||||||
*
|
|
||||||
* @responseField defaultFilterSettings | Object | Object of default settings for the filter kind
|
|
||||||
*
|
|
||||||
* @requestType GetSourceFilterDefaultSettings
|
|
||||||
* @complexity 3
|
|
||||||
* @rpcVersion -1
|
|
||||||
* @initialVersion 5.0.0
|
|
||||||
* @api requests
|
|
||||||
* @category filters
|
|
||||||
*/
|
|
||||||
RequestResult RequestHandler::GetSourceFilterDefaultSettings(const Request& request)
|
|
||||||
{
|
|
||||||
RequestStatus::RequestStatus statusCode;
|
|
||||||
std::string comment;
|
|
||||||
if (!request.ValidateString("filterKind", statusCode, comment))
|
|
||||||
return RequestResult::Error(statusCode, comment);
|
|
||||||
|
|
||||||
std::string filterKind = request.RequestData["filterKind"];
|
|
||||||
auto kinds = Utils::Obs::ArrayHelper::GetFilterKindList();
|
|
||||||
if (std::find(kinds.begin(), kinds.end(), filterKind) == kinds.end())
|
|
||||||
return RequestResult::Error(RequestStatus::InvalidFilterKind);
|
|
||||||
|
|
||||||
OBSDataAutoRelease defaultSettings = obs_get_source_defaults(filterKind.c_str());
|
|
||||||
if (!defaultSettings)
|
|
||||||
return RequestResult::Error(RequestStatus::InvalidFilterKind);
|
|
||||||
|
|
||||||
json responseData;
|
|
||||||
responseData["defaultFilterSettings"] = Utils::Json::ObsDataToJson(defaultSettings, true);
|
|
||||||
return RequestResult::Success(responseData);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets the info for a specific source filter.
|
* Gets the info for a specific source filter.
|
||||||
*
|
*
|
||||||
|
Loading…
Reference in New Issue
Block a user