214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
|
# File 'lib/message_bus.rb', line 214
def publish(channel, data, opts = nil)
return if @off
@mutex.synchronize do
raise ::MessageBus::BusDestroyed if @destroyed
end
user_ids = nil
group_ids = nil
client_ids = nil
if opts
user_ids = opts[:user_ids]
group_ids = opts[:group_ids]
client_ids = opts[:client_ids]
end
raise ::MessageBus::InvalidMessage if (user_ids || group_ids) && global?(channel)
encoded_data = JSON.dump(
data: data,
user_ids: user_ids,
group_ids: group_ids,
client_ids: client_ids
)
reliable_pub_sub.publish(encode_channel_name(channel), encoded_data)
end
|