🖤 Integrates any Linux machine into your Home Assistant ecosystem
Find a file
2023-03-07 19:23:13 +01:00
.idea And again 2023-02-28 23:25:58 +01:00
src fix, fmt, refactor, document 2023-03-07 19:23:13 +01:00
.gitignore It’s time for a commit 2023-02-20 20:14:20 +01:00
Cargo.lock Implement system stats 2023-03-06 22:59:28 +01:00
Cargo.toml Implement system stats 2023-03-06 22:59:28 +01:00
Hassliebe.iml It’s time for a commit 2023-02-20 20:14:20 +01:00
LICENSE.md It’s time for a commit 2023-02-20 20:14:20 +01:00
README.md fix, fmt, refactor, document 2023-03-07 19:23:13 +01:00
rustfmt.toml And again 2023-02-24 01:32:08 +01:00

Hassliebe

Integrates any Linux machine into your Home Assistant ecosystem.

Features

  • Fallback MQTT broker address
  • Command buttons
  • Notifications
    • Actions
  • System stats
    • CPU usage
    • RAM usage
    • Battery: level, charging status
  • Media control (MPRIS)
  • PipeWire
  • File watcher

Ideas:

  • Camera video stream
  • Idle time (→ libseat)

Installation

TBD

Modules

Notifications

Two MQTT topics can be used for sending notifications:

  • [unique_id]/notifications/simple — for plain-text messages
  • [unique_id]/notifications/json — for JSON-encoded messages matching the schema described below

Complex messages have these properties:

  • id (optional) — A string identifying this notification. If an ID is used multiple times, later notifications replacer earlier ones.
  • timeout (optional) — Controls how long the notification will stay.
    • "default" (default) — use the default value of the notification server
    • "never" — stay until manually dismissed
    • { ms: [millseconds] } — stay for [milliseconds]
  • urgency (optional) — One of: "low", "normal" (default), "critical".
  • summary_text — The primary text content, often used as title. Must not be empty.
  • long_content (optional) — Optional additional content which supports a subset of HTML.
  • transient (optional) — Boolean indicating whether to bypass the notification servers persistence capability.
  • encoded_image — Optional padded base64-encoded image attached to the notification.
  • actions (optional) — Object with the keys being IDs and the values being labels.

Actions

When a notification action is invoked, the ID of the action is sent to the MQTT topic with the following name: [unique_id]/notifications/actions/[notification_id].

When a notification is dismissed, closed is sent into the topic.

License

Hassliebe is licensed under the Blue Oak Model License 1.0.0.