IoT: DIY nyans ljus (8 / 9 steg)
Steg 8: Strömmande Data
För att starta streaming data till din PHue ljus, du behöver en publicera och prenumerera på nyckel. För att få din pub/sub nycklar, måste du först [registrera dig för ett PubNub konto] (http://www.pubnub.com/get-started/). När du registrerat dig, kan du hitta din unika PubNub nycklar i [PubNub Developer Dashboard] (https://admin.pubnub.com). I gratis sandlåda nivån bör ge dig all den bandbredd du behöver bygga och testa PHue glödlampa.
När du har dem, kommer att du behöva prenumerera på en kanal. Att lägga till följande rader med kod till din "viktigaste" funktion kommer att åstadkomma detta.
def main ():
# Instansiera Pubnub...
pubnub = Pubnub (publish_key = "ditt-pub-key",
subscribe_key = "din sub-nyckel")
# Detta är den kanal som din Pi kommer att lyssna på för RGB-värden
kanal = "phue"
# Återuppringning berättar pubnub vad göra när den fått ett meddelande.
def _callback (msg, n):
Print(MSG)
updateHue (msg ["RED"], msg ["grön"], msg["BLUE"])
def _error(m):
Print(m)
pubnub.subscribe (kanaler = kanal, återuppringning = _callback, fel = _error)
Först skapar vi en instans av Pubnub, allt detta kräver är din publicera och prenumerera på nycklar från instrumentpanelen. Då vi bestämmer vilken kanal vi vill ut Pi prenumerera. För att prenumerera behöver du en kanal att lyssna på, en motringning som kommer att anropas när ett meddelande tas emot och en fel motringning som kommer att utlösas om några problem uppstår.
Ta en titt på ut motringning. Det budskap vi får kommer att vara i JSON-format, och det kommer att ha tre fält, röd, grön och blå. Det meddelande som vi får för vitt ljus kan till exempel se ut så här:
{"RÖD": 255, "GRÖNT": 255, "BLUE": 255}
Så länge den JSON objekt vi strömma till Pi har dessa tre fält, kan vi nu skicka nyanser från någon av PubNubs 70 + SDKs, kontrollera det från någonstans.