93c789dc48
Four Home Assistant events change a screen the way the app's own editor does: esp_screens_add_tile (add or change), esp_screens_remove_tile, esp_screens_move_tile and esp_screens_order_tiles. An event names the screen by device name, shown name, area or title, and may set the size, the direct control, the display, the icon, the colour and the spot; a tile with a control or a forecast becomes double-width by itself. apply_tile_event returns the new layout and Manager.save does the validating and the pushing, so nothing can get past the twenty-tile limit, a duplicate entity or an occupied spot. Every event is answered with esp_screens_tile_result, and every screen publishes what it shows as sensor.esp_screens_<node>, with the page, row, column, width, control and display per tile. So an assistant can read a screen before it moves anything, and a refused event says why and changes nothing. The Claude skill gains a Tiles section with the events, the fields, what each kind of entity can do, how to read a screen first, and the rule to show the plan and wait for a yes. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
27 lines
626 B
YAML
27 lines
626 B
YAML
name: ESP Screen Manager
|
|
version: "0.2.51"
|
|
slug: esp_screen_manager
|
|
description: Choose tiles for your CYD and Guition touchscreen, without reflashing.
|
|
url: https://github.com/MaxGramser/homeassistant_espscreen
|
|
arch: [aarch64, amd64]
|
|
startup: application
|
|
boot: auto
|
|
init: false
|
|
homeassistant_api: true
|
|
ingress: true
|
|
ingress_port: 8099
|
|
panel_icon: mdi:monitor-dashboard
|
|
panel_title: ESP Screens
|
|
panel_admin: true
|
|
options: {}
|
|
schema: {}
|
|
|
|
map:
|
|
- homeassistant_config:rw
|
|
uart: true
|
|
usb: true
|
|
# Reproducible compiler/download caches; retain screens.json and user configuration.
|
|
backup_exclude:
|
|
- '*/build/'
|
|
- '*/platformio/'
|