Class: OBS::WebSocket::Protocol::Event

Inherits:
ServerMessage show all
Defined in:
lib/obs/websocket.rb

Direct Known Subclasses

OBS::WebSocket::Protocol::Events::BroadcastCustomMessage, OBS::WebSocket::Protocol::Events::Exiting, OBS::WebSocket::Protocol::Events::Heartbeat, OBS::WebSocket::Protocol::Events::MediaEnded, OBS::WebSocket::Protocol::Events::MediaNext, OBS::WebSocket::Protocol::Events::MediaPaused, OBS::WebSocket::Protocol::Events::MediaPlaying, OBS::WebSocket::Protocol::Events::MediaPrevious, OBS::WebSocket::Protocol::Events::MediaRestarted, OBS::WebSocket::Protocol::Events::MediaStarted, OBS::WebSocket::Protocol::Events::MediaStopped, OBS::WebSocket::Protocol::Events::PreviewSceneChanged, OBS::WebSocket::Protocol::Events::ProfileChanged, OBS::WebSocket::Protocol::Events::ProfileListChanged, OBS::WebSocket::Protocol::Events::RecordingPaused, OBS::WebSocket::Protocol::Events::RecordingResumed, OBS::WebSocket::Protocol::Events::RecordingStarted, OBS::WebSocket::Protocol::Events::RecordingStarting, OBS::WebSocket::Protocol::Events::RecordingStopped, OBS::WebSocket::Protocol::Events::RecordingStopping, OBS::WebSocket::Protocol::Events::ReplayStarted, OBS::WebSocket::Protocol::Events::ReplayStarting, OBS::WebSocket::Protocol::Events::ReplayStopped, OBS::WebSocket::Protocol::Events::ReplayStopping, OBS::WebSocket::Protocol::Events::SceneCollectionChanged, OBS::WebSocket::Protocol::Events::SceneCollectionListChanged, OBS::WebSocket::Protocol::Events::SceneItemAdded, OBS::WebSocket::Protocol::Events::SceneItemDeselected, OBS::WebSocket::Protocol::Events::SceneItemLockChanged, OBS::WebSocket::Protocol::Events::SceneItemRemoved, OBS::WebSocket::Protocol::Events::SceneItemSelected, OBS::WebSocket::Protocol::Events::SceneItemTransformChanged, OBS::WebSocket::Protocol::Events::SceneItemVisibilityChanged, OBS::WebSocket::Protocol::Events::ScenesChanged, OBS::WebSocket::Protocol::Events::SourceAudioActivated, OBS::WebSocket::Protocol::Events::SourceAudioDeactivated, OBS::WebSocket::Protocol::Events::SourceAudioMixersChanged, OBS::WebSocket::Protocol::Events::SourceAudioSyncOffsetChanged, OBS::WebSocket::Protocol::Events::SourceCreated, OBS::WebSocket::Protocol::Events::SourceDestroyed, OBS::WebSocket::Protocol::Events::SourceFilterAdded, OBS::WebSocket::Protocol::Events::SourceFilterRemoved, OBS::WebSocket::Protocol::Events::SourceFilterVisibilityChanged, OBS::WebSocket::Protocol::Events::SourceFiltersReordered, OBS::WebSocket::Protocol::Events::SourceMuteStateChanged, OBS::WebSocket::Protocol::Events::SourceOrderChanged, OBS::WebSocket::Protocol::Events::SourceRenamed, OBS::WebSocket::Protocol::Events::SourceVolumeChanged, OBS::WebSocket::Protocol::Events::StreamStarted, OBS::WebSocket::Protocol::Events::StreamStarting, OBS::WebSocket::Protocol::Events::StreamStatus, OBS::WebSocket::Protocol::Events::StreamStopped, OBS::WebSocket::Protocol::Events::StreamStopping, OBS::WebSocket::Protocol::Events::StudioModeSwitched, OBS::WebSocket::Protocol::Events::SwitchScenes, OBS::WebSocket::Protocol::Events::SwitchTransition, OBS::WebSocket::Protocol::Events::TransitionBegin, OBS::WebSocket::Protocol::Events::TransitionDurationChanged, OBS::WebSocket::Protocol::Events::TransitionEnd, OBS::WebSocket::Protocol::Events::TransitionListChanged, OBS::WebSocket::Protocol::Events::TransitionVideoEnd, OBS::WebSocket::Protocol::Events::VirtualCamStarted, OBS::WebSocket::Protocol::Events::VirtualCamStopped, UnknownEvent

Defined Under Namespace

Modules: Mixin

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(json) ⇒ Event

Returns a new instance of Event.



372
373
374
# File 'lib/obs/websocket.rb', line 372

def initialize(json)
  @json = json
end

Class Method Details

.create(type, payload) ⇒ Object



367
368
369
370
# File 'lib/obs/websocket.rb', line 367

def self.create(type, payload)
  cls = CLASSES_BY_JSON_NAME[type] || UnknownEvent
  cls.new(payload)
end

.json_name(json_name) ⇒ Object



363
364
365
# File 'lib/obs/websocket.rb', line 363

def self.json_name(json_name)
  CLASSES_BY_JSON_NAME[json_name] = self
end

Instance Method Details

#rec_timecodeObject



390
391
392
# File 'lib/obs/websocket.rb', line 390

def rec_timecode
  get_field('rec-timecode', Types::Optional[Types::String])
end

#stream_timecodeObject



387
388
389
# File 'lib/obs/websocket.rb', line 387

def stream_timecode;
  get_field('stream-timecode', Types::Optional[Types::String])
end

#to_hObject



380
381
382
# File 'lib/obs/websocket.rb', line 380

def to_h
  @json
end

#update_typeObject



384
385
386
# File 'lib/obs/websocket.rb', line 384

def update_type
  get_field('update-type', Types::String)
end