No Description

Fabian Peter Hammerle 1574063886 mqtt message on topic systemctl/hostname/poweroff schedules poweroff with delay of 4 seconds 3 years ago
.github 1574063886 mqtt message on topic systemctl/hostname/poweroff schedules poweroff with delay of 4 seconds 3 years ago
systemctl_mqtt 1574063886 mqtt message on topic systemctl/hostname/poweroff schedules poweroff with delay of 4 seconds 3 years ago
tests 1574063886 mqtt message on topic systemctl/hostname/poweroff schedules poweroff with delay of 4 seconds 3 years ago
.gitignore 1574063886 mqtt message on topic systemctl/hostname/poweroff schedules poweroff with delay of 4 seconds 3 years ago
.pylintrc 1574063886 mqtt message on topic systemctl/hostname/poweroff schedules poweroff with delay of 4 seconds 3 years ago
CHANGELOG.md 1574063886 mqtt message on topic systemctl/hostname/poweroff schedules poweroff with delay of 4 seconds 3 years ago
COPYING 1574063886 mqtt message on topic systemctl/hostname/poweroff schedules poweroff with delay of 4 seconds 3 years ago
Pipfile 1574063886 mqtt message on topic systemctl/hostname/poweroff schedules poweroff with delay of 4 seconds 3 years ago
Pipfile.lock 1574063886 mqtt message on topic systemctl/hostname/poweroff schedules poweroff with delay of 4 seconds 3 years ago
README.md 1574063886 mqtt message on topic systemctl/hostname/poweroff schedules poweroff with delay of 4 seconds 3 years ago
mypy.ini 1574063886 mqtt message on topic systemctl/hostname/poweroff schedules poweroff with delay of 4 seconds 3 years ago
setup.py 1574063886 mqtt message on topic systemctl/hostname/poweroff schedules poweroff with delay of 4 seconds 3 years ago

README.md

systemctl-mqtt

CI Pipeline Status Coverage Status Last Release Compatible Python Versions

MQTT client triggering shutdown on systemd-based systems

Setup

$ pip3 install --user --upgrade systemctl-mqtt
$ systemctl-mqtt --mqtt-host HOSTNAME_OR_IP_ADDRESS

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

MQTT Authentication

systemctl-mqtt --mqtt-username me --mqtt-password secret …
# or
systemctl-mqtt --mqtt-username me --mqtt-password-file /var/lib/secrets/mqtt/password …