From 1df64286f075091c1c71390fb232f835bb1bfbec Mon Sep 17 00:00:00 2001 From: Philip Abbey Date: Fri, 1 Dec 2023 09:54:23 +0000 Subject: [PATCH] Updated README Also missed schema changes of the previous commit. Added a photo of the confirmation view. --- README.md | 50 ++++++++++++++++++++++++++++++----- config.schema.json | 30 ++++++++++++++++++--- images/confirmation_view.jpg | Bin 0 -> 43043 bytes 3 files changed, 70 insertions(+), 10 deletions(-) create mode 100644 images/confirmation_view.jpg diff --git a/README.md b/README.md index 3bb0874..bee6556 100644 --- a/README.md +++ b/README.md @@ -35,7 +35,10 @@ Example schema as shown in the images: "entity": "script.food_on_table", "name": "Food is Ready!", "type": "tap", - "service" : "script.turn_on" + "tap_action": { + "service": "script.turn_on", + "confirm": true + } }, { "entity": "light.bedside_light_switch", @@ -84,13 +87,17 @@ Example schema as shown in the images: "entity": "automation.turn_off_usb_chargers", "name": "Turn off USBs", "type": "tap", - "service" : "automation.trigger" + "tap_action": { + "service": "automation.trigger" + } }, { "entity": "scene.tv_light", "name": "TV Lights Scene", "type": "tap", - "service": "scene.turn_on" + "tap_action": { + "service": "scene.turn_on" + } } ] } @@ -112,9 +119,9 @@ The example JSON shows an example usage of each of these Home Assistance entity |------------|:---:|:------:| | Switch | ❌ | ✅ | | Light | ❌ | ✅ | -| Automation | ✅ | ✅ | -| Script | ✅ | ❌ | -| Scene | ✅ | ❌ | +| Automation | ✅ | ✅ | +| Script | ✅ | ❌ | +| Scene | ✅ | ❌ | NB. All 'tap' items must specify a 'service' tag. @@ -122,6 +129,34 @@ Possible future extensions might include specifying the alternative texts to use The [schema](https://raw.githubusercontent.com/house-of-abbey/GarminHomeAssistant/main/config.schema.json) is checked by using a URL directly back to this GitHub source repository, so you do not need to install that file. You can just copy & paste your entity names from the YAML configuration files used to configure Home Assistant. With a submenu, there's a difference between "title" and "name". The "name" goes on the menu item, and the "title" at the head of the submenu. If your dashboard definition fails to meet the schema, the application will simply drop items with the wrong field names without warning. +### Old depricated format + +Version 1.5 brought in a change to the JSON schema so the follow old format remains useable but is no longer favoured. The schema now marks it as 'depracated' to nudge people over. + +```json + { + "entity": "scene.tv_light", + "name": "TV Lights Scene", + "type": "tap", + "service": "scene.turn_on" + } +``` + +The above should be replaced by the following: + +```json + { + "entity": "scene.tv_light", + "name": "TV Lights Scene", + "type": "tap", + "tap_action": { + "service": "scene.turn_on" + } + } +``` + +This allows the `confirm` field to be accommodated in the `tap_action` along side the `service` tag, and follows the Home Assistant YAML format more closely. + ## Editing the JSON file You have options. The first is what we use. @@ -185,4 +220,5 @@ When you change the JSON file defining your dashboard, you must exit the applica | 1.1 | Updated for 54 more devices, 80 in total. Scene support. Added vibrate acknowledgement for tap-based menu items. Falls back to a custom visual confirmation in the absence of 'toast' and vibrate support. Bug fix for large menus needing status updates. | | 1.2 | Do not crash on zero items to update. Report unreachable URLs. Verify API URL does not have a trailing slash '/'. Increased HTTP response diagnosis. Reduced minimum API Level required from 3.3.0 to 3.1.0 to allow more device "part numbers" to be satisfied. | | 1.3 | Tap for scripts was working in emulation but not on some phones. Decision is to make the 'service' field in the JSON compulsory for 'tap' menu items. This is a breaking change, but for many might be a fix for something not working correctly. Improve language support, we can now accept language corrections and prevent the automated translation of strings from clobbering manually refined entries. Thank you to two new contributors. | -| 1.4 | New lean user Interface with thanks to [SomeoneOnEarth](https://github.com/Someone0nEarth) for their contribution which is now the default. If you prefer the old style you can still select it in the settings. The provision of a 'service' tag is now not just heavily suggested by the JSON schema, it is enforced in code. With appologies to anyone suffering a breakage as a result. | +| 1.4 | New lean user Interface with thanks to [SomeoneOnEarth](https://github.com/Someone0nEarth) for their contribution which is now the default. If you prefer the old style you can still select it in the settings. The provision of a 'service' tag is now not just heavily suggested by the JSON schema, it is enforced in code. With apologies to anyone suffering a breakage as a result. | +| 1.5 | Added an optional confirmation dialogue view to prevent accidental execution of actions on mistaken tap. This also brings a change in the JSON schema to allow an optional field to specify that the confirmation should be used for a menu item. As we are now maturing and adding features we have decided to mitigate breaking changes to the JSON schema by being more careful to adopt the Home Assistant schema (noting there is a 1:1 mapping between YAML and JSON). This change does deprecate the top level `service` tag in favour of `tag_action` containing multiple fields including `service` & `confirm`. Users should migrate to the new format for the new functionality, but the timescale for actual deprecation are long and undecided. | diff --git a/config.schema.json b/config.schema.json index 1edd1e9..ea65969 100644 --- a/config.schema.json +++ b/config.schema.json @@ -22,11 +22,20 @@ "type": "object", "properties": { "entity": { "$ref": "#/$defs/entity" }, - "name": { "type": "string" }, + "name": { "title": "Your familiar name", "type": "string" }, "type": { "const": "tap" }, - "service": { "$ref": "#/$defs/entity" } + "service": { + "$ref": "#/$defs/entity", + "deprecated": true, + "title": "Schema change:", + "description": "Use 'tap_action' instead to mirror Home Assistant." + }, + "tap_action": { "$ref": "#/$defs/action" } }, - "required": ["entity", "name", "type", "service"], + "oneOf": [ + { "required": ["entity", "name", "type", "service"] }, + { "required": ["entity", "name", "type", "tap_action"] } + ], "additionalProperties": false }, "menu": { @@ -52,8 +61,23 @@ } }, "entity": { + "title": "Home Assistant entity name", "type": "string", "pattern": "^[^.]+\\.[^.]+$" + }, + "action": { + "title": "Action", + "description": "Field 'confirm' is optional.", + "type": "object", + "properties": { + "service": { "$ref": "#/$defs/entity" }, + "confirm": { + "type": "boolean", + "default": false, + "description": "Confirm the action before execution as a precaution." + } + }, + "required": ["service"] } } } diff --git a/images/confirmation_view.jpg b/images/confirmation_view.jpg new file mode 100644 index 0000000000000000000000000000000000000000..c90828344a8cebdf6d4c125b6042b7e78118bd3b GIT binary patch literal 43043 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