Sha256: 1f19d1a0132a51a11542dbe0e819c482512d3ab5fc527bc339010f14f95fc46a
Contents?: true
Size: 784 Bytes
Versions: 20
Compression:
Stored size: 784 Bytes
Contents
require "active_support/core_ext/object/to_param" module ActionCable module Channel module Broadcasting extend ActiveSupport::Concern delegate :broadcasting_for, to: :class class_methods do # Broadcast a hash to a unique broadcasting for this <tt>model</tt> in this channel. def broadcast_to(model, message) ActionCable.server.broadcast(broadcasting_for([ channel_name, model ]), message) end def broadcasting_for(model) #:nodoc: case when model.is_a?(Array) model.map { |m| broadcasting_for(m) }.join(":") when model.respond_to?(:to_gid_param) model.to_gid_param else model.to_param end end end end end end
Version data entries
20 entries across 20 versions & 1 rubygems