Skip to content

Commit 02735fa

Browse files
committed
Room Automation Update
1 parent 3d22a89 commit 02735fa

3 files changed

Lines changed: 43 additions & 17 deletions

File tree

docs/smart-home/dashboards/dashboard-persons/evis.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,14 @@ tags:
1111
**Path:** `evis`
1212

1313
<!-- START_DESCRIPTION -->
14-
No description provided.
14+
Personal dashboard for Evis displaying status, device tracking, and notification preferences.
1515
<!-- END_DESCRIPTION -->
1616

1717
![View Screenshot](../../../assets/images/dashboards/dashboard_evis.png)
1818

1919
## Summary
2020
<!-- START_SUMMARY -->
21-
*No summary generated yet.*
21+
This dashboard serves as a personal hub for Evis. It features a profile card using the `family_member_card` template to display status and tracked device (`sm_f966b`) information. Additionally, it includes a dynamic "My Notification Settings" list automatically generated by `custom:auto-entities`. This section captures all notification switches associated with Evis (filtered by `_notification_Evis`), allowing for granular control over various notification categories.
2222
<!-- END_SUMMARY -->
2323

2424

docs/smart-home/dashboards/notification-center/management.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,14 @@ tags:
1111
**Path:** `management`
1212

1313
<!-- START_DESCRIPTION -->
14-
No description provided.
14+
Centralized administration interface for managing notification users, categories, and subscription preferences.
1515
<!-- END_DESCRIPTION -->
1616

1717
![View Screenshot](../../../assets/images/dashboards/dashboard_management.png)
1818

1919
## Summary
2020
<!-- START_SUMMARY -->
21-
*No summary generated yet.*
21+
This dashboard acts as the administrative backend for the Smart Notification System. It is divided into four key sections: **User Management** for onboarding and offboarding notification recipients; **Category Management** for creating and deleting system-wide notification channels; **Delivery Settings** for defining global rules (e.g., presence-based delivery); and **Subscription Management**, allowing individual users to toggle their subscriptions to specific notification categories. Additionally, it provides an overview of all automations tagged with notification labels.
2222
<!-- END_SUMMARY -->
2323

2424
## Related Packages

docs/smart-home/packages/room_automation.md

Lines changed: 39 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -16,38 +16,64 @@ version: 1.0.0
1616

1717
## Executive Summary
1818
<!-- START_SUMMARY -->
19-
> ⚠️ **Update Required:** Analysis for v0.0.0. Code is v1.0.0.
20-
21-
*No executive summary generated yet.*
19+
The **Room Automation** package provides a standardized, scalable framework for managing room states (e.g., Occupied, Idle, Sleep) and automation parameters (e.g., lighting delays, lux thresholds) dynamically. It utilizes **MQTT discovery** to generate entities for each room on-the-fly, allowing for decentralized configuration without restarting Home Assistant. Admin users can "initialize" a room from a dashboard, which triggers scripts to publish MQTT configuration payloads, creating a suite of helpers (timers, selects, sensors) specific to that room. It effectively acts as a "factory" for room controllers.
2220
<!-- END_SUMMARY -->
2321

2422
## Process Description (Non-Technical)
2523
<!-- START_DETAILED -->
26-
> ⚠️ **Update Required:** Analysis for v0.0.0. Code is v1.0.0.
27-
28-
*No detailed non-technical description generated yet.*
24+
This system allows you to turn any "Area" in your home into a Smart Room without writing code.
25+
1. **Creation:** You select a room (like "Kitchen") from a list in the Settings Dashboard.
26+
2. **Generation:** The system instantly creates a set of controls for that room, including:
27+
* **Mode Selector:** Choose how the room behaves (e.g., "Presence Control" vs. "Manual").
28+
* **Timers:** Set how long lights stay on after you leave.
29+
* **Sensors:** Link motion sensors and light sensors to the room.
30+
3. **Operation:** Once created, these controls appear in your dashboards, letting you tweak settings like "turn off lights after 5 minutes" individually for every room.
2931
<!-- END_DETAILED -->
3032

3133
## Dashboard Connections
3234
<!-- START_DASHBOARD -->
3335
This package powers the following dashboard views:
3436

3537
* **[Living Room](../dashboards/main/living_room.md)** (Uses 1 entities)
36-
* **[Management](../dashboards/notification-center/management.md)** (Uses 1 entities)
38+
* **[Management](../dashboards/notification-center/management.md)**: *This dashboard acts as the administrative backend for the Smart Notification System. It is divided into four key sections: **User Management** for onboarding and offboarding notification recipients; **Category Management** for creating and deleting system-wide notification channels; **Delivery Settings** for defining global rules (e.g., presence-based delivery); and **Subscription Management**, allowing individual users to toggle their subscriptions to specific notification categories. Additionally, it provides an overview of all automations tagged with notification labels.* (Uses 1 entities)
3739
* **[Settings](../dashboards/room-management/settings.md)** (Uses 4 entities)
3840
<!-- END_DASHBOARD -->
3941

4042
## Architecture Diagram
4143
<!-- START_MERMAID_DESC -->
42-
> ⚠️ **Update Required:** Analysis for v0.0.0. Code is v1.0.0.
43-
44-
*No architecture explanation generated yet.*
44+
The sequence diagram below illustrates the "Room Initialization" process. When a user selects a room (e.g., "Kitchen") and clicks "Initialize", the `create_room_settings` script is triggered. This script iterates through a predefined list of required entities (Mode Select, Idle Timer, Occupancy Sensor, etc.) and publishes **MQTT Configuration Payloads** to the `homeassistant/` discovery topic. Home Assistant's MQTT integration detects these payloads and dynamically duplicates the "Room Controller" entity structure for the new room. Finally, the script sets default values (e.g., 120s delay) via retained MQTT messages, ensuring the room is ready for immediate use.
4545
<!-- END_MERMAID_DESC -->
4646

4747
<!-- START_MERMAID -->
48-
> ⚠️ **Update Required:** Analysis for v0.0.0. Code is v1.0.0.
49-
50-
*No architecture diagram generated yet.*
48+
```mermaid
49+
sequenceDiagram
50+
participant Admin as 👤 Admin
51+
participant Dash as 📱 Dashboard (Settings)
52+
participant Script as 📜 Script: create_room_settings
53+
participant MQTT as 📡 MQTT Broker
54+
participant HA as 🏠 Home Assistant (Discovery)
55+
56+
Admin->>Dash: Selects "Kitchen" & Clicks Initialize
57+
Dash->>Script: Run(room_slug="kitchen")
58+
59+
rect rgb(20, 20, 20)
60+
note right of Script: Entity Generation Loop
61+
Script->>MQTT: Publish config: select.room_kitchen_mode
62+
MQTT-->>HA: Discovery: New Entity (select.room_kitchen_mode)
63+
Script->>MQTT: Publish config: number.room_kitchen_idle
64+
MQTT-->>HA: Discovery: New Entity (number.room_kitchen_idle)
65+
Script->>MQTT: Publish config: binary_sensor.room_kitchen_occupancy
66+
MQTT-->>HA: Discovery: New Entity (binary_sensor...occupancy)
67+
end
68+
69+
rect rgb(30, 30, 50)
70+
note right of Script: Default Values
71+
Script->>MQTT: Publish state: mode = "presence-control"
72+
Script->>MQTT: Publish state: delay = 120s
73+
end
74+
75+
HA-->>Dash: UI Updates with new Kitchen Controls
76+
```
5177
<!-- END_MERMAID -->
5278

5379
## Configuration (Source Code)

0 commit comments

Comments
 (0)