abstract class Obsctl::TUI::SessionClient

Overview

Boundary used by TUI sessions for state, commands, and pushed events.

Direct Known Subclasses

Defined in:

obsctl/tui/session_client.cr

Instance Method Summary

Instance Method Detail

abstract def close : Nil #

Closes the underlying session.


[View source]
abstract def connect : Nil #

Opens the underlying session and prepares it for commands.


[View source]
abstract def dump_config : Nil #

Requests server-side config dumping.


[View source]
abstract def input_names : Array(String) #

Returns audio input names from the current snapshot/source.


[View source]
abstract def mute(target : String, muted : Bool) : Nil #

Requests a mute-state change by user target.


[View source]
abstract def next_event : OBS::Protocol::Event | Nil #

Returns the next pushed OBS event when available.


[View source]
abstract def next_log : String | Nil #

Returns the next pushed server log message when available.


[View source]
abstract def next_snapshot : OBS::State::ObsSnapshot | Nil #

Returns the next pushed state snapshot when available.


[View source]
abstract def reconnect_obs : Nil #

Requests server-owned OBS reconnection.


[View source]
abstract def reload_config : Nil #

Requests server-side config reload.


[View source]
abstract def scene_names : Array(String) #

Returns scene names from the current snapshot/source.


[View source]
abstract def set_scene(target : String) : Nil #

Requests a scene change by user target.


[View source]
abstract def set_volume(target : String, percent : Int32) : Nil #

Requests a volume change by user target and 0-100 percent.


[View source]
abstract def snapshot : OBS::State::ObsSnapshot #

Returns the current full OBS snapshot.


[View source]
abstract def toggle_mute(target : String) : Nil #

Requests a mute toggle by user target.


[View source]
abstract def validate_config : Nil #

Requests server-side config validation.


[View source]