IoT Workshop: Lab 4 - skicka Data till molnet (7 / 9 steg)
Steg 7: Anslut till kväve och skicka Data
Inuti board.on() samtalet tillbaka (där du lagt till TODO kommentar i föregående steg) måste du använda serviceobjektet kväve att ansluta till tjänsten (api.nitrogen.com) och skicka ett kväve-meddelande varje gång du får en behandling från fotomotstånd.
Johnny fem Sensor objektet du skapat (fotomotstånd) kommer att åberopa en callback-funktion (Sensor.on()) en gång per sekund och passera behandlingen till funktionen.
Anslut lightSensor enheten definieras ovan
att kväve tjänstinstansen.
service.connect (lightSensor, funktion (fela, session, lightSensor) {
om (err) {återvända console.log ("misslyckades med att ansluta lightSensor: ' + fela);}
Definiera callback-funktionen för fotomotstånd läsning
Freq värdet används när fotomotstånd definierades
bestämmer hur ofta detta åberopas, således kontrollera
frekvensen av kväve meddelanden.
photoresistor.on ('data', function() {
Fånga den omgivande ljusnivån från fotomotstånd
var lightLevel = this.value;
Skapa ett kväve-meddelande
var meddelande = nya kväve. Meddelandet ({
typ: "_lightLevel",
kropp: {
ambientLight: lightLevel
}
});
Logga det ljus värdet för felsökning
session.log.info ("Skicka ambientLight:" + lightLevel);
Skicka meddelandet
Message.send(session);
});
});
I den här koden definierar du ett meddelande för kväve. Typdefinitionen används för att definiera vilken typ av enhet detta meddelande är till. Genom konventionen du använda understreck i början av anpassade typer (kväve har några fördefinierade typer, men ett fotomotstånd är inte en av dem).
Förkroppsliga av meddelandet är där du sätter data du spårar. I detta fall spårar du omgivande ljus med hjälp av läsningen kommer från fotomotstånd.
När du ringer message.send() skickas detta meddelande till tjänsten konfigurerad kväve. När du kör app, skickas den omgivande ljusa behandlingen till kväve en gång per sekund.