From 8360a3e4a2d698eebcf80299312fc3951d383bce Mon Sep 17 00:00:00 2001 From: Philip Abbey Date: Sun, 2 Nov 2025 12:20:46 +0000 Subject: [PATCH] Documentation update Mainly for the HTTP 410 error case. --- TroubleShooting.md | 10 ++++++++-- examples/Numeric.md | 6 +++--- images/http_410_error.jpg | Bin 0 -> 17859 bytes 3 files changed, 11 insertions(+), 5 deletions(-) create mode 100644 images/http_410_error.jpg diff --git a/TroubleShooting.md b/TroubleShooting.md index b484222..9158962 100644 --- a/TroubleShooting.md +++ b/TroubleShooting.md @@ -315,9 +315,15 @@ JSON for copy & paste: ![No JSON](images/NoJson.png) -When the application persists in reporting "No JSON returned from HTTP request." this might be due to a mismatch between the Webhook ID and the device settings on the HomeAssistant server. We have discovered that the Webhook ID is required for HomeAssistant API calls with templates in order to work in a non-privileged account. The application options include the ability to clear the Webhook ID in the application forcing a new one to be set up. This should prevent the above error being shown on startup. +When the application persists in reporting _"No JSON returned from HTTP request"_ this might be due to a mismatch between the Webhook ID and the device settings on the HomeAssistant server. We have discovered that the Webhook ID is required for HomeAssistant API calls with templates in order to work in a non-privileged account. The application options include the ability to clear the Webhook ID in the application forcing a new one to be set up. This should prevent the above error being shown on startup. -Look for this option in the application settings: +![HTTP 410](images/http_410_error.jpg) + +We now also have reports of an [HTTP 410](https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Status/410) error occurring after an application update. With thanks to [@Aaroneisele55](https://github.com/Aaroneisele55) for resolving this issue also by the clearing of the Webhook ID. The cause of the problem remains unknown as updates do not generally require this correction between the Home Assistant server and the watch settings. + +**Therefore, when the URL is known to work, any failure to return the JSON menu definition from an HTTPS request should try resetting the Webhook ID used with Home Assistant.** + +To reset the Webhook ID look for this option in the application settings: ![Nabu Casa Setup](images/delete_webhook_id.png) diff --git a/examples/Numeric.md b/examples/Numeric.md index 93c4ab9..558962b 100644 --- a/examples/Numeric.md +++ b/examples/Numeric.md @@ -96,19 +96,19 @@ For copy and paste, the Jinja2 fields are as follows: 1. Template rendering with conversion to dB: -``` +```jinja {{ state_attr('media_player.amplifier','volume_level') * 100 -80 }} ``` 2. Conversion from dB to range 0.0 to 1.0: -``` +```jinja {{ (value+80)/100 }} ``` 3. Availability template: -``` +```jinja {{ not is_state('media_player.amplifier','unavailable') }} ``` diff --git a/images/http_410_error.jpg b/images/http_410_error.jpg new file mode 100644 index 0000000000000000000000000000000000000000..fedb7710efbd78c29b6866e4e76c11e1e7091ab9 GIT binary patch literal 17859 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 literal 0 HcmV?d00001