mirror of
https://github.com/Palakis/obs-websocket.git
synced 2024-08-30 18:12:16 +00:00
Requests: Add Sleep
New request to induce delay in the processing of `ExecuteBatch`
This commit is contained in:
parent
9bbfb73622
commit
bb0a0acbda
@ -43,6 +43,7 @@ const QHash<QString, RpcMethodHandler> WSRequestHandler::messageMap{
|
||||
{ "TriggerHotkeyByName", &WSRequestHandler::TriggerHotkeyByName },
|
||||
{ "TriggerHotkeyBySequence", &WSRequestHandler::TriggerHotkeyBySequence },
|
||||
{ "ExecuteBatch", &WSRequestHandler::ExecuteBatch },
|
||||
{ "Sleep", &WSRequestHandler::Sleep },
|
||||
|
||||
// Category: Media Control
|
||||
{ "PlayPauseMedia", &WSRequestHandler::PlayPauseMedia },
|
||||
|
@ -61,6 +61,7 @@ class WSRequestHandler {
|
||||
RpcResponse TriggerHotkeyByName(const RpcRequest&);
|
||||
RpcResponse TriggerHotkeyBySequence(const RpcRequest&);
|
||||
RpcResponse ExecuteBatch(const RpcRequest&);
|
||||
RpcResponse Sleep(const RpcRequest&);
|
||||
|
||||
// Category: Media Control
|
||||
RpcResponse PlayPauseMedia(const RpcRequest&);
|
||||
|
@ -474,3 +474,24 @@ RpcResponse WSRequestHandler::ExecuteBatch(const RpcRequest& request) {
|
||||
obs_data_set_array(response, "results", results);
|
||||
return request.success(response);
|
||||
}
|
||||
|
||||
/**
|
||||
* Waits for the specified delay. Designed to be used in `ExecuteBatch` operations.
|
||||
*
|
||||
* @param {int} `delayMillis` Delay in milliseconds to wait before continuing.
|
||||
*
|
||||
* @api requests
|
||||
* @name Sleep
|
||||
* @category general
|
||||
* @since unreleased
|
||||
*/
|
||||
RpcResponse WSRequestHandler::Sleep(const RpcRequest& request) {
|
||||
if (!request.hasField("delayMillis")) {
|
||||
return request.failed("missing request parameters");
|
||||
}
|
||||
|
||||
long long delayMillis = obs_data_get_int(request.parameters(), "delayMillis");
|
||||
std::this_thread::sleep_for(std::chrono::milliseconds(delayMillis));
|
||||
|
||||
return request.success();
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user