#rest #raspberry-pi #radio-controlled #funksteckdose #wiringpi

nightly app funksteckdosen-rest-rs

一个用于使用wiringPi与无线电控制插座的小型REST服务器

1个不稳定版本

0.1.0 2022年9月24日

#1250 in HTTP服务器

Apache-2.0

16KB
97 代码行

funksteckdosen-rest-rs

一个用于在Raspberry PI中使用wiringPi和无线电控制插座的小型REST服务器。

此程序提供HTTP服务器以调用无线电控制插座。此程序使用funksteckdose crate,它使用wiringpi crate。您必须在系统上安装wiringPi库。

安装WiringPi

请在此处检查这里。可能已预先安装wiringPi。

编译

目前使用的库需要nightly rust编译器。

rustup override set nightly

启动服务器

在端口12345上启动服务器,绑定到IP 127.0.0.1(默认)

./funksteckdosen-rest-rs --port 12345

在端口12345上启动服务器,不绑定任何IP

./funksteckdosen-rest-rs --port 12345 --bind 0.0.0.0

切换插座

https://127.0.0.1:12345/pin/11100/3/0
  • 11100是系统代码

  • 3是单元代码

  • 0是命令(关闭)

作为服务运行

  • 更改funksteckdosen_rest_rs.service中的路径

  • 将文件复制到systemd

cp funksteckdosen_rest_rs.service /lib/systemd/system/
  • 命令
# start
sudo systemctl start funksteckdosen-rest-rs.service

# stop
sudo systemctl stop funksteckdosen-rest-rs.service

# show status
sudo systemctl status funksteckdosen-rest-rs.service
  • 重启后激活
sudo systemctl enable funksteckdosen-rest-rs.service 
  • 重启后禁用
sudo systemctl disable funksteckdosen-rest-rs.service 

用例

我用我的Home Assistant实例控制插座。为此,我使用rest命令

rest_command:
        socket_2:
                url: http://192.168.178.123:12345/pin/11100/2/0
        socket_3:
                url: http://192.168.178.123:12345/pin/11100/3/0

依赖项

~11MB
~213K SLoC