60 Commits

Author SHA1 Message Date
Philip Abbey
c1cddc54e4 Initial attempt
Lacking an end to end test on this code presently.
2025-08-08 11:40:13 +01:00
Philip Abbey
8868f2152c Comments & Dictionaries
Reformatted comments to work in VSCode and converted `dict.get(:key)` to `dict[:key]` syntax as its nicer.
2025-07-24 18:54:27 +01:00
Philip Abbey
70f05e8912 Added missing code headers
And included vincentezw in headers for the code he touched.
2025-07-22 22:14:46 +01:00
Vincent Elger Zwanenburg
d32135af63 fix setting toggleItem, periodic pulling 2025-07-21 19:45:14 +01:00
Vincent Elger Zwanenburg
db3fbd9886 timers as statics, defensive popviews, no double confirmation, add pin
screen onBack, toggle state tweaks
2025-07-19 10:35:35 +01:00
Vincent Elger Zwanenburg
576f8c4a64 HomeAssistantConfirmationDelegate and HomeAssistantPinConfirmationDelegate undo toggles on timeout and reject 2025-07-19 10:35:35 +01:00
Vincent Elger Zwanenburg
ac899ff784 simplify delegate, toggle switch for empty response body 2025-07-19 10:35:35 +01:00
Vincent Elger Zwanenburg
b45f02ef7b move popview up so it does not close wifi dialog 2025-07-19 10:35:35 +01:00
Vincent Elger Zwanenburg
172d4ad1e4 add Wifi LTE command execution 2025-07-19 10:35:34 +01:00
Philip Abbey
ee9da24592 Fix for too many arguments to a function call on some devices 2025-07-11 01:06:15 +01:00
Philip Abbey
906cdf7371 Code documentation comments were not updated 2025-07-10 23:54:05 +01:00
Philip Abbey
d141c03104 Review comment
Moved point of application exit for the menu item option.
2025-07-10 19:46:04 +01:00
Philip Abbey
ec044c5408 Added two new options to menu items
1. The ability to disable a menu item without deleting it.
2. The option to quit the application on item selection.
2025-07-08 22:48:42 +01:00
Philip Abbey
f2d65aa6e3 Added correctly formatted code comments
The newer SDK support tooltips to show the function prototype and help text, so best to make good use of it.
2025-07-04 16:57:25 +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
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
155649f162 Fix for 2 bugs in issue 221
Template rendering and Webhook ID on initial start.
2025-03-26 22:37:33 +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
Matthias Oesterheld
e8e2e02086 move pin validation to settings 2024-11-17 11:21:26 +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
Philip Abbey
b5140ce8b4 Added vibrate to confirm toggle items tapped 2024-08-29 21:13:55 +01:00
Philip Abbey
bbd9119a07 Update HomeAssistantToggleMenuItem.mc
Prevent multiple toggles for initiating one action. Only set the state when the called service returns with the confirmed value.
2024-08-28 23:01:28 +01:00
Joseph Abbey
bd37d5f2a8 Allow toggles to work if template fails 2024-08-26 20:11:19 +01:00
Joseph Abbey
2a48790f9c Individual errors 2024-08-26 20:09:24 +01:00
Joseph Abbey
e9a0c5d137 Single request to update 2024-08-26 18:59:17 +01:00
Philip Abbey
685cda7924 Added template option to toggle menu items 2024-08-25 19:34:29 +01:00
Philip Abbey
a49dd6554f More responsive status when using a polling delay
When using a polling delay, an action will trigger an immediate round of updates.
2024-07-20 19:16:42 +01:00
Philip Abbey
0b80e4546d Corrected a previous incomplete commit
All now "WatchUi.loadResource($.Rez.Strings.WebhookFailed) as Lang.String"
2024-01-21 20:43:11 +00:00
Philip Abbey
6e67c4cf2a Removed RezStrings.mc
And in-lined the resource strings fetching.
2024-01-21 20:38:01 +00:00
Philip Abbey
d9ecaf34ee Removed Debug
On some devices it looks like removing the System.println() statements from inside an 'if' clause whose condition is a constant (static constant Globals.scDebug) makes a memory saving. This would suggest the compiler does not propagate constants and prune unreachable code. However in the device of greatest interest debug removal has made no difference to the memory usage. Here the conditional clauses have been turned into comments that can be removed on a case-by-case basis otherwise the debug printing is too voluminous anyway.
2024-01-21 17:53:37 +00:00
Philip Abbey
44ec2e2eb1 Initial Solution 2024-01-19 19:26:02 +00:00
Philip Abbey
2be255bb71 Removal of menu identifiers as not actually required
Toggle menu is now consistent with the use of data objects in tap and template. HA 'notify' actions now work.

Co-Authored-By: Joseph Abbey <me@josephabbey.dev>
2024-01-19 18:04:55 +00:00
Philip Abbey
4e96036d66 Removed code to dismiss the ErrorView
The automatic ErrorView.unShow() when the HTTP Request callback success was preventing errors being read. Removing to see if they are really required.
2024-01-18 21:15:59 +00:00
Restyled.io
c1103d9325 Restyled by whitespace 2024-01-09 10:56:20 +00:00
Philip Abbey
0a2d257421 Initial solution 2024-01-08 00:08:12 +00:00
Philip Abbey
9a268eaf02 Updated RezStrings.mc
Variables are now read only via getters.
2024-01-01 14:17:04 +00:00
Philip Abbey
b039dfbc3b Added RezStrings.mc
The intention is to factorise out many copies of the same string to a central location. Now need to deal with making the variables read-only.
2024-01-01 12:57:50 +00:00
Philip Abbey
ae72313f5e Settings reverted to a static class 2023-12-31 15:55:59 +00:00
Philip Abbey
56155f5f5c Added Watch Battery transmission
Added a background service to send the watch battery level to Home Assistant.
Changed the Glance View as requested by a user.
Updated to new HA icon using SVG in stead of PNG.
2023-12-31 15:22:21 +00:00
Philip Abbey
76c2aaa249 Finishing off widget+app code changes.
Glance now updates the status.
Fix for quitting the application when persistently displaying an ErrorView.
Added option for Widget RootView to immediately start HomeAssistant without waiting for a tap as requested by a user.
2023-12-23 14:30:58 +00:00
Philip Abbey
332a10867d Made RootView updateable
Changed the group/menu icon to be thicker.
2023-12-21 15:38:29 +00:00
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