77 lines
2.8 KiB
YAML
77 lines
2.8 KiB
YAML
#:########################################################################################:#
|
|
# Firewall Internet Control Package #
|
|
#:########################################################################################:#
|
|
#
|
|
# TITLE:
|
|
# Firewall Internet Control
|
|
#
|
|
# FILE:
|
|
# packages/firewall_control.yaml
|
|
#
|
|
# VERSION:
|
|
# V1.1 2026-07-20
|
|
#
|
|
# VERSION HISTORY:
|
|
# V1.1 2026-07-20
|
|
# - Added structured MQTT and external-firewall documentation.
|
|
#
|
|
# V1.0
|
|
# - Initial persistent and temporary internet-blocking controls.
|
|
#
|
|
# PURPOSE:
|
|
# Provides Home Assistant controls for persistent and temporary internet
|
|
# blocking of Mollie's devices through an external MQTT firewall service.
|
|
#
|
|
# PERSISTENT CONTROL:
|
|
# - Blocked enables persistent internet blocking.
|
|
# - Unblocked disables persistent internet blocking.
|
|
# - The switch state is reported by the external firewall service.
|
|
#
|
|
# TEMPORARY CONTROLS:
|
|
# - One-hour block publishes Blocked to the temporary-block topic.
|
|
# - 15-minute unblock publishes Unblocked to the temporary-unblock topic.
|
|
# - One-hour unblock publishes Unblocked to its one-hour topic.
|
|
#
|
|
# EXTERNAL DEPENDENCY:
|
|
# - Home Assistant only publishes command requests.
|
|
# - The external firewall service implements temporary durations, restores the
|
|
# appropriate state afterward, and publishes persistent switch feedback.
|
|
#
|
|
# MQTT NOTES:
|
|
# - All commands are non-retained.
|
|
# - No availability topic is configured for these entities.
|
|
# - The persistent status topic retains the legacy device label
|
|
# block-unblock-mollie-iphone8.
|
|
#
|
|
#:########################################################################################:#
|
|
|
|
mqtt:
|
|
switch:
|
|
- unique_id: mollies.internet
|
|
name: "Mollie's Internet Blocking"
|
|
state_topic: "viewroad-status/firewall/block-unblock-mollie-iphone8"
|
|
command_topic: "viewroad-commands/firewall/block-unblock-mollie-devices"
|
|
payload_off: "Unblocked"
|
|
payload_on: "Blocked"
|
|
icon: mdi:web
|
|
retain: false
|
|
button:
|
|
- unique_id: mollies.internet.temp.block
|
|
name: "Mollie's Internet (1 hr Block)"
|
|
command_topic: "viewroad-commands/firewall/tempblock-mollie-devices"
|
|
payload_press: "Blocked"
|
|
icon: mdi:web
|
|
retain: false
|
|
- unique_id: mollies.internet.temp.unblock
|
|
name: "Mollie's Internet (15min Unblock)"
|
|
command_topic: "viewroad-commands/firewall/tempunblock-mollie-devices"
|
|
payload_press: "Unblocked"
|
|
icon: mdi:web
|
|
retain: false
|
|
- unique_id: mollies.internet.temp.unblock.1hr
|
|
name: "Mollie's Internet (1hr Unblock)"
|
|
command_topic: "viewroad-commands/firewall/tempunblock-mollie-devices-1hr"
|
|
payload_press: "Unblocked"
|
|
icon: mdi:web
|
|
retain: false
|