Stap 2: Ruby Code
Voor deze oefening gebruiken we een test-apparaat met MC adres 000000fffff00001 en base-64 token kdTl6U1w + sR61NBiQjm8sw ==.
Omvatten de vereiste bibliotheken. libhelium is gebonden aan rbhelium, dus het hoeft niet te worden expliciet opgenomen.
require 'rbhelium' require 'base64' require 'msgpack'
Thread.abort_at_exception ingesteld op true
Thread.abort_on_exception = true
Instellen en decodeert het token dat overeenkomt met uw specifieke apparaat. Uw token kan worden gevonden door het registreren van uw Atom MAC-adres in het Helium Dashboard: LINK te komen. Het token wordt gebruikt voor het decoderen van de beveiligde gegevens afkomstig van het apparaat.
token = Base64.decode64("kdTl6U1w+sR61NBiQjm8sw==:")
Maak een nieuwe verbinding van Helium en afdrukken van de gegevens die worden ontvangen via deze verbinding.
conn = Helium::Connection.new("r01.sjc.helium.io") do |mac, datums| puts "Got data #{MessagePack.unpack(datums)} from mac #{mac}" end
Tot slot, zich abonneren op uw apparaat met behulp van het MAC-adres en gedecodeerde token overeenkomt.
status = conn.subscribe(0x000000fffff00001, token)
In mijn programma ik toegevoegd een functie van de slaap ter afsluiting van het programma in een uur tijd
sleep 3600
Volledige code kan worden gevonden in het bijgevoegde bestand of hier: RubySubscribe.rb op Github