Sha256: 2c9dcc92700d544369c0e97f55e680a0c2e2ec175ae54ac92e843e8fc4a7e4bd
Contents?: true
Size: 910 Bytes
Versions: 14
Compression:
Stored size: 910 Bytes
Contents
require 'rubygems' require 'dripdrop/node' Thread.abort_on_exception = true #Define our handlers DripDrop::Node.new do route :pub, :zmq_publish, 'tcp://localhost:2200', :bind route :sub1, :zmq_subscribe, pub.address, :connect, :topic_filter => /[13579]$/ route :sub2, :zmq_subscribe, pub.address, :connect, :topic_filter => /[02468]$/ route :sub3, :zmq_subscribe, pub.address, :connect sub1.on_recv do |message| puts "Receiver 1 #{message.inspect}" end sub2.on_recv do |message| puts "Receiver 2 #{message.inspect}" end sub3.on_recv do |message| puts "Receiver 3 #{message.inspect}" end zm_reactor.periodical_timer(500) do puts "Sending!" #Sending a hash as a message implicitly transforms it into a DripDrop::Message pub.send_message(:name => Time.now.to_i.to_s, :body => 'Test Payload') end end.start! #Start the reactor and block until complete
Version data entries
14 entries across 14 versions & 1 rubygems