RESTful API for the node-rcswitch binding based on Node.js/restify. Allows controlling of 433Mhz RC remote controlled power sockets with the raspberry-pi using HTTP Protocol. There is a german post on my blog describing the hardware requirements and schematics.
- To use node-rcswitch, WiringPi must be installed in order to compile.
- Tthe data and power Pins of the transmitter must be connected to the Raspberry Pi.
$ npm install raspi-rcswitch-api
transmitter_pin
defines the GIPO pin on which the transmitter is connected to the Raspberry Pi. Note the number of the WiringPi data Pin. (see http://wiringpi.com/pins/)retries
number of times the signal is send (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 3000
The server is running as deamon using daemonize2 by default. As alternative you can start with
$ node server.js
$ npm stop
http://host:port/api/v1/switch/systemCode/unitCode/state
systemCode
five character long binary system code identifying the rc switch system.unitCode
integer number between 1 and 4 identifying the power socket number in the system.state
can be eitheron
oroff
for the target state of the power socket.
For example a GET call to http://host:port/api/v1/switch/10101/2/on
will switch on the second power socket of the system 10101
.
You can specify named devices in the device_config.json
file to gain quick access to them.
The following example provides access the power socket with the system code 01001
and the unit code 1
under the name Living_Room_Ambient_Light
.
{
"Living_Room_Ambient_Light": {
"systemCode": "01001",
"unitCode": 1
}
}
Now you can quickly access the power plug using http://host:port/api/v1/switch/Living_Room_Ambient_Light/state. For the state
and the config values the same restrictions as mentioned in 'Direct device access' section apply.
Copyright (c) 2017 Chris Klinger. Licensed under MIT license, see LICENSE for the full license.
See https://github.com/c-klinger/node-raspi-rcswitch-api/issues.