Table of Contents

Method ToggleAsync

Namespace
OBSStudioClient.Model
Assembly
OBSClient.dll

ToggleAsync(CancellationToken)

Starts the output when it is not running, and stops it when it is, and returns when OBS Studio has begun.

public Task<bool> ToggleAsync(CancellationToken cancellationToken = default)

Parameters

cancellationToken CancellationToken

A token that ends the wait. A change that was not sent yet is not sent.

Returns

Task<bool>

A task that completes with true when the output was started, and with false when it was stopped.

Remarks

OBS Studio decides by itself what to do, so two toggles that are asked for one after the other make two toggles. See StartAsync(CancellationToken) and StopAsync(CancellationToken) for what "begun" means, and SetEnabledAsync(bool, CancellationToken) for the order of changes and the wait.

Exceptions

ObsNotConnectedException

There is no connection to OBS Studio. Nothing was changed.

ObsNotReadyException

OBS Studio is changing its scene collection, or did so after the call. Nothing was changed.

ObsUnknownOutcomeException

OBS Studio did not answer in time, or the connection ended: it is not known whether it made the change.

ObsNotConfirmedException

OBS Studio made the change, and the model does not show it. Do not send the change again.

ObsResponseException

OBS Studio refused the change.