MQTT client triggering shutdown on systemd-based systems
Project description
systemctl-mqtt
MQTT client triggering shutdown on systemd-based systems
Setup
$ pip3 install --user --upgrade systemctl-mqtt
$ systemctl-mqtt --mqtt-host HOSTNAME_OR_IP_ADDRESS
On debian-based systems, dependencies can optionally be installed via:
$ sudo apt-get install --no-install-recommends python3-dbus python3-paho-mqtt
Schedule poweroff by sending a MQTT message to topic systemctl/hostname/poweroff
.
$ mosquitto_pub -h MQTT_BROKER -t systemctl/hostname/poweroff -n
Home Assistant 🏡
Sample Setup
# https://www.home-assistant.io/docs/mqtt/broker/#configuration-variables
mqtt:
broker: BROKER_HOSTNAME_OR_IP_ADDRESS
# credentials, additional options…
script:
poweroff_raspberry_pi:
sequence:
service: mqtt.publish
data:
topic: systemctl/raspberrypi/poweroff
homeassistant:
customize:
script.poweroff_raspberry_pi:
friendly_name: poweroff pi
icon: mdi:power
Docker 🐳
- Clone this repository.
- Edit
docker-compose.yml
. - Load AppArmor profile:
sudo apparmor_parser ./docker-apparmor-profile
sudo docker-compose up --build
Pre-built docker image are available at https://hub.docker.com/r/fphammerle/systemctl-mqtt/tags
Annotation of signed tags docker/*
contains docker image digests: https://github.com/fphammerle/systemctl-mqtt/tags
MQTT Authentication
systemctl-mqtt --mqtt-username me --mqtt-password secret …
# or
systemctl-mqtt --mqtt-username me --mqtt-password-file /var/lib/secrets/mqtt/password …
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
systemctl-mqtt-0.1.1.tar.gz
(32.7 kB
view hashes)
Built Distribution
Close
Hashes for systemctl_mqtt-0.1.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 581810bc480a4776b6685d2f2c0bd99129e1522ede28836c237b9aeccbae73f7 |
|
MD5 | f92543a899acd7b7828eca378dee7dd0 |
|
BLAKE2b-256 | ce967338823f6c185cb92154e8a97d019b577b96f6886bcc044058765088834f |