class Rcom::Topic
Attributes
channel[R]
node[R]
Public Class Methods
new(params)
click to toggle source
# File lib/rcom/topic.rb, line 5 def initialize(params) @node = params[:node] @key = params[:channel] end
Public Instance Methods
publish(message)
click to toggle source
# File lib/rcom/topic.rb, line 10 def publish(message) begin node.publish(channel, message.to_msgpack) return true rescue return nil end end
subscribe() { |message| ... }
click to toggle source
# File lib/rcom/topic.rb, line 19 def subscribe begin node.subscribe(channel) do |on| on.message do |channel, message| message = MessagePack.unpack( message, symbolize_keys: true ) yield message end end rescue sleep 1 retry rescue Interrupt => _ end end