Stap 5: Sommige nota's van de code: The Power of THE CLOUD
OK, krijgt het oog-rollen uit de weg. 'De Cloud' is zo groot een modewoord als ieder ander en soms hoor je doofuses gaan over 'de cloud' die een goed inzicht in waar ze het niet hebben over. U kan zelfs werken voor iemand als dat.
Let's focus even op wat de Spark.io wolk is en wat het geeft ons. Wanneer wij onze Cores met onze account registreren en hen te voorzien van wifi toegangsreferenties, zijn ze meer dan alleen Arduino-ish dingen met WiFi Radio's gelijmd op. Er is een service beschikbaar voor ons dat, allereerst, ons toelaat om de kernen draadloos program. Buiten dat kunnen wij 'publiceren' variabelen (zoals 'temperatuur' of 'isItSafeToUseTheBloominglabsBathroom' (volgens de docs, namen van variabelen worden afgekapt bij het 12e teken, dus wees beknopt)), en een programma met de juiste referenties beschikt die waarde door te bellen naar een URL, zonder ons te kappen van een li'l webserver met tonnen gnarly String handling en socket programmering alleen voor deze ene zaak kunt lezen.
Evenzo kunnen we functies die kunnen worden opgeroepen via een URL en haken voorzien van smartphone-apps, websites of services voor het verzenden van opdrachten draadloos aan onze Core, waar we kiezen om het te zetten (mits er draadloos) registreren.
Ook kunnen wij publiceren en abonneren op diensten, zodat we niet hoeven te toevlucht nemen tot polling voor een wijziging van de waarde (echter, er zijn stem op beperkingen van publiceren, ongeveer één bericht per seconde, dus kijk uit).
Onze badkamer-indicator is een goed geschikt voor publiceren/abonneren. De indicator is geabonneerd op de service die ons weten laat als de badkamer open is. Het doet iets alleen als het een bericht krijgt.
Dus terwijl in vele opzichten dit een heel simpel ding is, geeft het ons een voorproefje van de macht en mogelijkheden. De indicator kan een API en kan worden gebruikt door een draadloze deurbel of een ander systeem van kennisgeving naast haar nu bescheiden rol laten weten als de badkamer ocupado is.
Onze sensor publiceert wanneer de bezetting staat veranderd is, zodat we dit in Setup opgeven:
Wanneer we publiceren een verandering voor onze enthousiaste luisteraars willen, doen we dit:
Ook publiceren we de waarde van de bezetting als een variabele:
Maken gebruik van deze updates op de indicator is eenvoudig. In setup declareren we we zijn u te abonneren op deze info en geef het aan te roepen wanneer we een update krijgen functie:
Spark.Subscribe ("bathroomStateToggle", bathroomStateToggle, MY_DEVICES);
De functie is heel simpel: