RESTful-API für die Node-RCSwitch-Bindung basierend auf Node.js/restify. Ermöglicht die Steuerung ferngesteuerter 433-MHz-RC-Steckdosen mit dem Raspberry-Pi über das HTTP-Protokoll. Auf meinem Blog gibt es einen deutschen Beitrag, der die Hardwareanforderungen und Schaltpläne beschreibt.
$ npm install raspi-rcswitch-apitransmitter_pin definiert den GIPO-Pin, an dem der Sender mit dem Raspberry Pi verbunden ist. Notieren Sie sich die Nummer des WiringPi-Daten-Pins. (siehe http://wiringpi.com/pins/)retries mit denen das Signal gesendet wird (optional) $ npm start
> [email protected] start /home/pi/node-raspi-rcswitch-api
> node daemon.js start
raspi-rcswitch-api Server started. PID: 9082
raspi-rcswitch-api listening at port 3000Der Server läuft standardmäßig als Deamon und verwendet daemonize2. Als Alternative können Sie mit beginnen
$ node server.js$ npm stophttp://host:port/api/v1/switch/systemCode/unitCode/state
systemCode Fünf Zeichen langer binärer Systemcode, der das RC-Switch-System identifiziert.unitCode Ganzzahl zwischen 1 und 4, die die Steckdosennummer im System identifiziert.state kann für den Zielstatus der Steckdose entweder on oder off sein. Beispielsweise schaltet ein GET-Aufruf an http://host:port/api/v1/switch/10101/2/on die zweite Steckdose des Systems 10101 ein.
Sie können in der Datei device_config.json benannte Geräte angeben, um schnell darauf zuzugreifen.
Das folgende Beispiel ermöglicht den Zugriff auf die Steckdose mit dem Systemcode 01001 und dem Gerätecode 1 unter dem Namen Living_Room_Ambient_Light .
{
"Living_Room_Ambient_Light" : {
"systemCode" : " 01001 " ,
"unitCode" : 1
}
} Jetzt können Sie über http://host:port/api/v1/switch/Living_Room_Ambient_Light/state schnell auf den Netzstecker zugreifen. Für den state und die Konfigurationswerte gelten die gleichen Einschränkungen wie im Abschnitt „Direkter Gerätezugriff“ erwähnt.
Copyright (c) 2017 Chris Klinger. Lizenziert unter MIT-Lizenz, die vollständige Lizenz finden Sie unter LIZENZ.
Siehe https://github.com/c-klinger/node-raspi-rcswitch-api/issues.