563 Commits

Author SHA1 Message Date
__JosephAbbey
5f34f870d9 Support for Vivoactive 6 device (#230)
This required an update to the SDK to version 8.1.0. The new SDK found
some new code warnings for unreachable code previously known to be
reached based on stricter type checking, so fixed in this commit too.
v2.28
2025-04-25 07:59:58 +01:00
Philip Abbey
ada18f8323 Update export.cmd
'--api-level' command line switch removed from SDK 8.1.0
2025-04-24 22:38:10 +01:00
Philip Abbey
f74a3168de Update manifest.xml
The App ID should not have been changed from the test app.
2025-04-24 22:30:43 +01:00
Philip Abbey
7e58e5416d Support for Vivoactive 6 device
This required an update to the SDK to version 8.1.0. The new SDK found some new code warnings for unreachable code previously known to be reached based on stricter type checking, so fixed in this commit too.
2025-04-24 22:26:18 +01:00
Philip Abbey
1f7090092f 227 enhancement glance info cachingprevious results instead of unconfigured (#228)
Not as the issue requested, but instead pulling the settings from
persistent storage before checking the URL status, preventing
"Unconfigured" being initially displayed when it should be "Checking..."
as coded.
v2.27
2025-04-21 15:31:30 +01:00
Philip Abbey
4ed132b9ca Update HISTORY.md
Added ver 2.27 text.
2025-04-21 13:59:13 +01:00
Philip Abbey
fd213cc210 Update HomeAssistantApp.mc
Update the Settings object from persistent storage before checking the URLs work and reporting the status to the Glance view.
2025-04-21 13:56:08 +01:00
Philip Abbey
7423e609d8 Update TroubleShooting.md
SSL Certificate Validation Issues

Signed-off-by: Philip Abbey <philipabbey@users.noreply.github.com>
2025-04-21 09:26:33 +01:00
Philip Abbey
9df43cdb01 Explaining HTTPS Certificate Problems
Partial and Full chain certificates.

Signed-off-by: Philip Abbey <philipabbey@users.noreply.github.com>
2025-04-21 09:15:55 +01:00
__JosephAbbey
5ee8a6cc6a Update index.html
Signed-off-by: __JosephAbbey <me@josephabbey.dev>
2025-03-30 15:25:54 +01:00
__JosephAbbey
5e35276628 Update main.js
Signed-off-by: __JosephAbbey <me@josephabbey.dev>
2025-03-30 15:22:49 +01:00
Philip Abbey
28f4ffc70b 223 code refactoring (#224)
Code refactoring and amended fix for responsive menu that was removed by
bug fix in v2.25.
v2.26
2025-03-28 19:37:15 +00:00
Philip Abbey
e8f2c0d3bb Amended menu item class inheritance 2025-03-28 00:22:09 +00:00
Philip Abbey
71cba8c21c Code attribution for author of PIN entry.
Prior to sorting out inheritance.
2025-03-28 00:20:53 +00:00
Philip Abbey
236a4969d7 Menu item code tidy
Prior to sorting out inheritance.
2025-03-27 20:45:51 +00:00
Philip Abbey
e41f451fbc Update HomeAssistantApp.mc
Fix for lost speedup from v2.24 when fixing a bug in v2.25.
2025-03-27 20:45:02 +00:00
Philip Abbey
c13e898e59 Update HISTORY.md
v2.25
2025-03-27 07:35:44 +00:00
Philip Abbey
a77870c2eb Fix for 2 bugs in issue 221 (#222)
Template rendering and Webhook ID on initial start.

Please review and (hopefully) approve, but don't merge as I need to
deploy to the beta app.
v2.25
2025-03-27 06:32:27 +00:00
Philip Abbey
155649f162 Fix for 2 bugs in issue 221
Template rendering and Webhook ID on initial start.
2025-03-26 22:37:33 +00:00
__JosephAbbey
1ae4085113 219 new garmin device keeps replacing previous device (#220) v2.24 2025-03-23 16:59:52 +00:00
Philip Abbey
7a14a65ba3 Update HISTORY.md
2.24 text
2025-03-23 16:54:52 +00:00
Philip Abbey
adf69d7dec Rearranging Web API Requests
Making sure the menu update API call is completed before the Webhook IDs are fetched in order to reduce latency to usefulness.
2025-03-23 16:54:13 +00:00
Philip Abbey
d105e69484 Update WebhookManager.mc
Removed Settings.unsetWebhookId() where it might be causing problems with replacement "Garmin Device" in Home Assistant.
2025-03-23 16:01:53 +00:00
Philip Abbey
184e2ac80e Add 4 new devices
approachs50, descentg2, descentmk1, and gpsmap66
2025-03-23 15:59:29 +00:00
__JosephAbbey
12c5766818 208 provide display only menu items with no actions (#210)
Please take some care with checking any documentation where `template`
has been amended to either `info` to `tap`. Some of the documentation
was out of date, hopefully this fixes it.
v2.23
2025-01-19 20:37:11 +00:00
Philip Abbey
b82e63d191 Documentation update 2025-01-19 19:47:42 +00:00
Philip Abbey
ed4646511f Added 5 new Instinct devices
Small (imperfect) fix for 2 colour device icons.
2025-01-19 18:47:38 +00:00
Philip Abbey
fd58625640 Info only menu item 2025-01-19 13:44:53 +00:00
Philip Abbey
816f2e6399 Update Actions.md
Documentation for the `service` field after a recently uncovered issue with its value. See https://github.com/house-of-abbey/GarminHomeAssistant/issues/205.

Signed-off-by: Philip Abbey <philipabbey@users.noreply.github.com>
2024-12-31 18:02:03 +00:00
Philip Abbey
f171f913ac Update README.md (#202)
Documented a workaround to communicate with Home Assistant using HTTP.
2024-12-08 21:57:51 +00:00
Tomer
cca73a4069 Update README.md
Documented a workaround to communicate with Home Assistant using HTTP.

Signed-off-by: Tomer <55205856+TomerMir@users.noreply.github.com>
2024-12-03 18:47:06 +02:00
Philip Abbey
2a3514de64 Update HISTORY.md
Version number typo.

Signed-off-by: Philip Abbey <philipabbey@users.noreply.github.com>
v2.22
2024-11-20 17:59:11 +00:00
__JosephAbbey
fbcf2d4c8d Changes as per issue. (#200)
Trivial one this.
2024-11-20 17:23:43 +00:00
Philip Abbey
b6719365b2 Changes as per issue. 2024-11-19 21:56:32 +00:00
__JosephAbbey
ad73971758 197 cosmetic changes (#198)
Just a bit of tidying, no major functionality changes.
2024-11-19 11:29:18 +00:00
philipabbey
2a7528ea86 Apply automatic changes 2024-11-18 19:57:22 +00:00
Philip Abbey
11ecf88ee2 An assortment of cosmetic changes
JSON schema fix to remove 'template' as a valid option, punctuation in strings, whitespace, and a new application history entry.
2024-11-18 19:39:13 +00:00
Philip Abbey
fb68ce2fba Feature: PIN confirmation dialog (#192)
## About this PR:
Being one of those incorrigible fools who want to open and unlock stuff
using my watch, I thought of a way to improve security when calling a
HomeAssistant service from the Garmin App.

This change adds a PIN confirmation dialog that is displayed whenever a
`pin` property has been set in the `tap_action`. Because of the size of
the screen, PINs consist of a sequence of abritrary length using the
digits 1-4.

![2024-10-16 11_16_09-CIQ Simulator - Venu® Sq 2 Music (5 0
0)](https://github.com/user-attachments/assets/f6e09c00-5dde-4972-b7dc-256d4d94e99e)

Due to public visibility of the dashboard config, a pin mask can be
configured in the app's settings to transcode the PIN on the watch for
additional security. Using a cipher for PIN encryption has been
discarded due to the complexity involved in generating the encrypted
PINs for the end user.

The PIN dialog is configured to allow up to 4 erraneous PIN inputs in 2
minutes, a 5th failure will lock the PIN dialog (for all actions) for 10
minutes. Entering a correct PIN will reset the failure count.

## Changes included in this PR:
- PIN confirmation screen
- called whenever a `pin` has been configured in a `tap_action`. This
overrides the `confirm` property. Users without a touchscreen will be
routed to the regular confirmation dialog.
- optional `pin_mask` configuration setting, which will be used to
transcode the digits of the PIN (see documentation change)
	- german translation of the `pin_mask` label
	- failed attemps and PIN lock are stored in application storage
- Addition of `pin` field to the JSON Schema
- Additions to the docs

Tested on a few devices in the simulator, tested and running as a beta
on a Venu 2 Sq Music.

## Disclaimer:
This is my first attempt at a Monkey C project.
I probably learned more from looking at the existing app than from the
sdk samples. Awesome work!

I added this mainly because I wanted a feature like that for myself,
thought it is a good thing to add and because I was interested in
developing for Garmin devices.
I would be glad if you like the idea and are open to review it and
include it in the app.

I have tried to use coding style and conventions from the existing
project as far as I could see them.
2024-11-18 19:00:05 +00:00
Matthias Oesterheld
796be5b960 add trailing period to be consistent with other messages 2024-11-18 17:43:10 +01:00
Matthias Oesterheld
b6acec0672 move pin validation error screen to initial view resolution 2024-11-18 17:38:30 +01:00
Matthias Oesterheld
e8e2e02086 move pin validation to settings 2024-11-17 11:21:26 +01:00
Matthias Oesterheld
f3e6879540 move PIN constants to Globals.mc 2024-11-17 11:00:45 +01:00
Matthias Oesterheld
666854c5c6 fix translation 2024-11-17 10:51:56 +01:00
Matthias Oesterheld
e0418a0ae6 improve docs 2024-11-17 10:49:58 +01:00
Matthias Oesterheld
f51197ff75 adjust docs 2024-11-14 21:32:38 +01:00
Matthias Oesterheld
97b5371a0e add "pin": true JSON config property, add default pin, add pin confirmation to toggle, adjust JSON schema 2024-11-13 21:30:36 +01:00
Matthias Oesterheld
51d4f68688 preliminary doc changes 2024-11-12 19:35:15 +01:00
Matthias Oesterheld
0ac8e11287 use full numpad, validate 4-digit pin, add visual feedback on click, show toast on error 2024-11-12 19:24:15 +01:00
Matthias Oesterheld
73219c6864 add class/method to debug messages 2024-11-11 21:06:38 +01:00
Matthias Oesterheld
f24d79e41a Merge branch 'main' into feature/pin-confirmation 2024-11-11 20:58:52 +01:00