i’m exploring using net-mdns 0.2 (written by sam roberts) to do some
bonjour work. i’m curious if anyone has figured out how to make a
bonjour service dynamically update its TXT record.
i’m starting to write a dummy chat client/server just to test the apis
out, and while i can easily find lists of all the servers out there, i’m
having difficulty getting my servers to broadcast updates about their
here’s a hack i did in order to simulate dynamic updates, i just create
a new service each time i want to send an update:
args = [“service1”, “_chatter._tcp”, 8000, nil]
i = 0
announce = nil
announce.stop unless announce.nil?
announce = Net::DNS::MDNS::Service.new(*args) do |s|
s.ttl = 5
s[“status”] = i.to_s
i += 1
i’m using mdns-watch.rb from net-mdns’s samples/ directory, and i see
the proper TXT updates going out, but i’m wondering if there’s a way to
do this without having to stop the service every time.
i tried just doing ‘announce[“status”] = i.to_s’ inside my loop, but i
never see updates, the only way i could make the bonjour records get
broadcast was to create a new service object every time.
does anyone have any suggestions? btw, thanks to sam for creating such
a cool module, i’m having a lot of fun working with it.