-
• #27
That's great! However it is a bit surprising - it'd be great to figure out why it's conflicting though as they should be able to run concurrently.
-
• #28
If I remember correctly only one Pebble module can be installed - Could the issue have something to do with it?
I noticed that the new app does not recognize installed apps (in Notifications->application list there are not WhatsApp, Protonmail, Calendar, Telegram... etc.) so all notifications are handled as generic message. Does it happen to others too?
Permissions seem to be ok.
1 Attachment
-
• #29
If I remember correctly only one Pebble module can be installed - Could the issue have something to do with it?
Well, I was pretty sure we had that one covered: https://github.com/gfwilliams/Gadgetbridge/blob/master/app/build.gradle#L157
It would conflict with the
nopebble
build, but shouldn't conflict withrelease
... -
• #30
Installed apps are recognized for me!
-
• #31
The App is working good for me, I really like not having to disconnect to use the app loader. That was annoying but now it's fixed.
-
• #32
:-/
I unistalled and reinstalled - same issue: none of the apps I have installed are on the Notifications -> Applications list :-(
-
• #33
@Alessandro you know when Gadgetbridge starts you have to give it permission for all of the different things it needs? Is there a chance you didn't give it permission for accessing notifications?
-
• #35
My app needed to clear storage to get notifications working after I pressed something and they stopped working. Now that it's working, I feel like the watch is getting really close to being something that is nice to use. I have swipe to clock enabled, which allows a right swipe to go to the clock all of the time and it's excellent. Then I have quick launch to open music from a swipe down, messages from a swipe up, timer or auth watch swipe right and launcher swipe left.
I love that the Bangle will just get better, and if you do a 3, this software will just keep getting better too. -
• #36
I don't know why but WhatsApp now appears in the application list... My other installed apps (Telegram, Protonmail, etc.) not yet.
1 Attachment
-
• #37
I think there's a setting for 'reset database' that you could try? I guess maybe the database got confused - I hope it's not sharing it with the normal gadgetbridge app, but if it is I made some changes for notifications to add a checkbox that allows you to add 'local' notifications (so you can push google maps through)
-
• #38
Also quick update on this - it's been rejected by the app store because of security concerns. It's still available to testers thouh.
So I have to spend a while rewording a 'privacy policy' document, app description, and adding a popup at app start before I'll be able to get it publically usable by everyone. Yay :)
-
• #39
I think there's a setting for 'reset database' that you could try?
I reset the app from the phone Settings, I also reinstalled the app, nothing :-/ Permissions are ok. After the reinstall I lost WhatsApp :-(
I guess maybe the database got confused - I hope it's not sharing it with the normal gadgetbridge app
I already deleted the normal GB app and in the internal memory nor microsd there is a GB folder.
Weird issue.
-
• #40
I just installed the banglejs version from the Playstore and i have the same Issue as @Alessandro
I cleared every Cache data i found. in the App List the internal Database, etc.
But i only have the apps available, that are instaled by default from the system.
I will try it later on a device with no other gadgetbridge installed before. -
• #41
Will new gadgetbridge be listening to http requests ?
In other words will gadgetbridge have hook url which i can trigger to send http requests from remote pcs ?Example: https://play.google.com/store/apps/details?id=com.joaomgcd.autoremote&hl=en_US&gl=US
-
• #42
The app alone cant offer that, you need access to a domain which the app continuesly queries to. Or maybe the app can integrate the push notification api, which either means you rely on googles api or some 3rd party to make the API call to your phone
-
• #43
Can I get into beta-testing too?
By the way, gadgetbridge has has a "device actions" settings; at least for amazfit bit. Basically, when you press a button, gadgetbridge sends an intent. This intent can be then read by another app.
Would it be possible to have something similar for bangle.js?
That would allow an easy way of connecting bangle.js to homeassistant.
- Bangle.js app sends something to gadgetbridge.
- Gadgetbridge broadcasts an intent.
- Homeassistant companion app listens for a broadcast (Last Update Trigger Sensor).
- Now homeassistant can perform any automation.
I know there's a raspberry pi + ble setup for integration. But a) it relies on BLE range; doesn't work for me from a different room b) it's nice to have a serverless solution.
- Bangle.js app sends something to gadgetbridge.
-
• #44
Yes there are multiple ways to implement this solution:
- Domains/Subdomains WS
- Realtime database ('firebase')
Application can have configuration for above in settings.
At the end of the day ideally this application should be bridge between pc/mobie/watch. and it is not just for comfort, PC servers could open up lots of possibilities for development.
Structure:
- PC = remote device
- Mobile = Bridge local
- Watch = End device local
- Domains/Subdomains WS
-
• #45
@iii Can you drop me a PM with the email address you use for your Google account and I'll add you?
gadgetbridge has has a "device actions" settings; at least for amazfit bit. Basically, when you press a button, gadgetbridge sends an intent.
Do you have a link? This is definitely something I'd have thought we could enable - and the more preexisting Gadgetbridge stuff we can lean on the better.
@user143850 if there were a way to integrate with an existing app (Tasker?) that does what you need already, I think that'd be preferable to just reimplementing everything - I just don't have the time available to implement (and maintain!) something scratch-built.
-
• #46
if there were a way to integrate with an existing app (Tasker?) that does what you need already, I think that'd be preferable to just reimplementing everything
So I went down a rabbit hole. Apparently, the way push notification works is the same boring long polling implementation one would suspect. The idea is just that it would be very resource consuming if every apps implements their own long polling service, so one uses the google api. This means its all routed through their servers where just one connection needs to be made to. And then then android takes care of relying the new push from that api to the correct app.
If we dont want to (soley) use googles api, one can also apparently implement https://unifiedpush.org/developers/intro/, in tandem with a distributor like https://github.com/binwiederhier/ntfy#ntfysh--send-push-notifications-to-your-phone-or-desktop-via-putpost. Not sure if there is a big need of writing simpler over head code, looks to me like one guide would be enough. Once the API is implemented in the app of course.
-
• #47
Do you have a link?
Button actions and device actions. I think button actions are a bit more general. But e.g., play pause music didn't work for me, I think it's android-version dependent. But broadcasts should work in any case.
-
• #48
@iii Thanks! I just dug into this and it seems handled by
processButtonAction
inHuamiSupport
. I was hoping it'd be easy to use, or at least to pull out into Bangle.js, but it seems heavily tied to Huami devices.Looking at the code, sending intents seems really easy, so I just added the ability to send intents direct from Bangle.js using
{"t":"intent","action":"....","extra":{"a":"1"}}
- it's not in the Play Store build yet but hopefully will be soon@Poolitzer honestly if it's just polling, it feels like we might as well have the current system of just letting Bangle.js itself do an HTTP request? I'm not sure the extra effort of trying to configure notification sources is really going to help...
-
• #49
it feels like we might as well have the current system of just letting Bangle.js itself do an HTTP request?
Yes, sure, that will be enough, especially for the beginning. If the notification generating process is not on a server, one can always use ntfy, with "just" http requests/websocket. What you can do with Bangle/the app though is to make sure it supports long polling/make that easy to access. It will be a bit more of a strain on the users data limit/phone battery ofc. I can always think about integrating the better version with Firebase, which should use less additional data/battery since your phone has already a connection to firebase.
-
• #50
Just an update - I pushed a new release.
This one has the ability to send Android Intents directly from Bangle.js (see above) and it also has settings to allow this and internet access (both off by default). It also allows you to keep the MTU at the default value (slower, but more reliable if your bluetooth is flakey).
And... you can now turn on 'text to bitmap' which converts any text that Bangle.js can't display to an image on the phone :)
I feel very stupid for not having already tried this.. It works!
Thank you!