18 Commits

Author SHA1 Message Date
Philip Abbey
3934ca53ba New glance and widget views
Added ability to test if we're a widget or a watch-app. Added troubleshooting documentation.
2023-12-21 11:37:30 +00:00
Philip Abbey
4ab25ef860 Comment header update
Corrected spelling of username of contributor.
2023-12-17 12:46:20 +00:00
Philip Abbey
16383f61a4 Added SomeoneOnEarth to all source headers
Give credit to a co-author.
2023-12-16 17:07:43 +00:00
Philip Abbey
f086d0d03b Bug fix for devices with API 3.1.0
1) Removed WatchUi.getCurrentView() API call in favour of a new method of ensuring only one ErrorView is pushed at a time.
2) Any error view will be cancelled when responses start working again, e.g. watch gets in Bluetooth range of the phone again.
3) Added error message decoding for misspelled entities.

Co-Authored-By: Joseph Abbey <me@josephabbey.dev>
2023-12-16 17:03:38 +00:00
Philip Abbey
71c1ccc229 Code review comment
Removed debug
Fixed manifest App ID for release
2023-11-21 17:58:18 +00:00
Philip Abbey
ce90d9d47f Single HomeAssistantService for all Taps
1. Amended code for a single HomeAssistantService for all 'tap's
2. Removed now redundant GET request for taps without a service now that having a service is enforced.
3. Determined that migrating API code from 'toggle's to the HomeAssistantService is awkward due to the close coupling with other methods in the class.
2023-11-20 21:32:35 +00:00
Philip Abbey
b90e6c7130 Connection reporting improvements and update resumption
Separation of phone connectivity and Internet access tests for finer grained feedback to the user.
Updates no longer stop on absence of Internet connectivity.
2023-11-18 15:52:02 +00:00
Philip Abbey
4b320086ee Tap menu items without a service tag will be ignored.
The JSON schema checker is relied on to highlight this error.
2023-11-17 17:51:01 +00:00
Philip Abbey
d540fb576a Bugfixes
Do not crash on zero items to update
Report unreachable URLs
Verify API URL does not have a trailing slash '/'
Increased HTTP response diagnosis
2023-11-12 16:24:56 +00:00
Philip Abbey
765d7f7f50 Removed timer based update mechanism
Instead chaining calls from the previous update is a slightly close coupled way that might need to be refined.
2023-11-11 20:00:26 +00:00
Philip Abbey
fde270ff34 Renamed class variables
There's a Monkey C convention to have class variable names start with 'm', then be camel case. 'm' for 'member' according to https://developer.garmin.com/connect-iq/reference-guides/monkey-c-reference/.
2023-11-11 13:58:35 +00:00
Philip Abbey
e7c4411dd2 Fix for the update rate
Now perform a "round robin" of all toggle menu items. The delay is currently 100 ms to avoid Communications.BLE_QUEUE_FULL errors.
2023-11-11 13:36:08 +00:00
Philip Abbey
1653569e8f Added 54 devices
Added vibrate knowledgement
Fall back to a home made alert if no toast or vibrate
Support for 80 devices, 54 new ones added
2023-11-10 18:22:14 +00:00
Philip Abbey
ebb89cd4b4 Amended display of "no Internet" errors 2023-11-04 10:44:08 +00:00
Philip Abbey
816b0dc890 Internationalisation & Multi-watch support
Copied two methods from GarminThermoNest to translate languages and manage different sized icons for the various sizes of watch. Also copied ErrorView for smaller wrapped text for error messages.
2023-11-02 21:32:42 +00:00
Philip Abbey
2b06e63c03 Added alerts on error
And removed (and changed) API key... doh!
2023-10-31 21:22:14 +00:00
Philip Abbey
7dd3ccc670 Configurable Menu
Uses a JSON file served by a URL.
2023-10-31 20:49:38 +00:00
Philip Abbey
8a4f514e6b Initial basic application 2023-10-31 13:32:42 +00:00