Module: Archipelago::Broadcasts

Defined in:
lib/archipelago/broadcasts.rb

Class Method Summary collapse

Class Method Details

.broadcast(stream_name, props:, version: Archipelago.next_version) ⇒ Object



7
8
9
10
11
12
13
14
15
# File 'lib/archipelago/broadcasts.rb', line 7

def broadcast(stream_name, props:, version: Archipelago.next_version)
  payload = Archipelago::Response.ok(props: props, version: version)
  unless defined?(ActionCable) && ActionCable.respond_to?(:server)
    raise LoadError, "ActionCable is required for streaming broadcasts"
  end

  ActionCable.server.broadcast(stream_name, payload)
  payload
end