Gadgetbridge: Error configuring AlarmNote watchapp - Uncaught TypeError: Cannot read property

Created on 12 Nov 2016  路  12Comments  路  Source: Freeyourgadget/Gadgetbridge

can now no longer configure this app - AlarmNote by Richard Johnson

since it was upgraded to v1.8 and this upgrade according to the version history now use the "Clay" configuration package, which means it no longer requires an Internet connection in order to configure alarms.

app is here - https://apps.getpebble.com/en_US/application/562c0dbdb5a93208f1000014?dev_settings=true

Error lines in log file:

12:40:56.455 [main] ERROR n.f.g.u.GB - Uncaught TypeError: Cannot read property 'mess1' of null
12:41:00.313 [main] ERROR n.f.g.u.GB - Uncaught TypeError: Cannot read property 'toString' of null

bug device pebble

All 12 comments

Confirmed

Watchapp needs Localstorage. This is indeed something we need to fix properly (instead of disabling it). Will fix #soon (TM).

Localsgorage support just landed in master. However this will not help with the app for (at least two reasons):

  • the watchface tries to load settings from the local storage and doesn't check if they are missing, hence the error message you are seeing (the keys are not there until the configuration page saves them)
  • the watchface uses pebble timeline api (internet server) to set the alarms: this is not going to work anyway

Marking as wontfix for the timeline api blocker. Thanks for reporting as this yielded to finally ship local storage support :)

@danielegobbetti

the watchface uses pebble timeline api (internet server) to set the alarms: this is not going to work anyway

i think this is incorrect as of v1.8 of this watchapp - as this version according to the version history now use the "Clay" configuration package, which means it no longer requires an Internet connection in order to configure alarms.

anyhow, thanks guys for all your hardwork!

  • you are the bee's knees for creating and maintaining such a very much needed app :smiley:

@andyb9 what you say is accurate, but what I say isn't wrong. :-)

Indeed the configuration is done locally, thanks to Clay. The pins however are sent over the online timeline API. You can check by yourself in the source code.

Thanks for the kind words!

Yes it is crazy:
All apps that send timeline pins are forced to do so through the internet.

No internet , no alarm pin. 馃

We could maybe live patch the js and send data directly... But that would lead to other problems like pin leakage (we would need to track pins in a local db)

@danielegobbetti

you got me there re the timeline pins :v:

however timeline pin (or timeline alarms) are secondary (afaik setting timeline pins are not possible yet with Gadgetbridge) - the app is an actual alarm app i use everyday, you can set up to 7 recurring alarms that are not dependent on timeline or the internet :yum:

@ashimokawa

We could maybe live patch the js and send data directly... But that would lead to other problems like pin leakage

that will be very useful :bulb: ...if the issue re possible pin leakage can be addressed, as many apps would like to send useful timeline pin but that is not happening for now...yet :smile_cat:

Quick question, if you're using this watchapp with the official pebble app, could you do a test (it's a bit destructive to be honest)?
Could you try installing the watchapp from scratch in its latest version (by really really making sure it's a new installation and there are no leftovers) and see if it works in the official app or if it shows an error? Because from the look of it the js of the watchapp expects some values to be set which are null, unless the official app initializes them at install time or they were set by an older version of it.
If it works from a fresh install then it means we need to create these values on app install.

@andyb9 nevermind the invasive test I proposed. Issue is fixed in current master and you will be able to configure this watchapp in the next release of GB.
Removing the wontfix label.

@danielegobbetti

sorry was late to see the request re the invasive test, but cldnt have done it anyway as im definitely not using the official pebble app at all - dont want internet connection built into the offical app and so reason why im using Gadgetbridge :stuck_out_tongue_closed_eyes:

Happy to see that the issue has been fixed though :clap: :bowing_man:

Was this page helpful?
0 / 5 - 0 ratings

Related issues

raku-cat picture raku-cat  路  7Comments

Jiack214 picture Jiack214  路  4Comments

RustyRaptor picture RustyRaptor  路  3Comments

robalvsan picture robalvsan  路  3Comments

UncleInf picture UncleInf  路  3Comments