Open KorakSilvercloud opened 6 years ago
Could you please try again with AsteroidOSSync 0.9 ? It should be available on F-Droid in the upcoming days.
@KorakSilvercloud, AsteroidOSSync 0.10 has now been released on F-Droid. Could you give it a try? The feedback on notifications has been very positive so far.
I'm having the same issue as @KorakSilvercloud
Running 0.11 on lineageos 14.1. I do have privacyguard enabled by default and thought that was it but it doesn't seem like that was it.
This is an issue for me as well under 0.13 sync. The issue persists across multiple messaging apps. I am using Republic Wireless for my carrier on an Android One moto x4.
I played a bit around with messaging apps. The issue seems to be only with apps that update their notification instead of sending a new one. We have onNotificationPosted() and onNotificationRemoved().
I think we're missing an onNotificationUpdated() method.
Well, this is exciting progress! 🤓
I am ever-so-slightly familiar with Java. Could a third method simply loop back to the onNotificationPosted() to make the watch recognize every notification as a new one, even if the app sending the notification sees it as an update to an extant notification?
@LarksTonguesInAspic you would probably have to send a remove request followed by the new notification. I haven't checked if an update
event value option is built into AsteroidOS like the posted
and removed
event value. Before changing anything: I'm checking another theory right now. So don't over-engineer a solution yet :D
NLService.java is definitely getting the second message and broadcasting the intent including the second/updated notification.
body of the first intent extra:
body="Name:Message 1"
body of the second intent extra:
body="Name:Message 2\nName:Message 1"
The bug is, instead of what I thought before, probably not in NLService.java. Maybe the Watch does not update the notification if a second one comes in with the same identifier ("id")?
@jrtberlin maybe you can use "notificationtool" to try to update a notification and see if lipstick/asteroid-launcher do this correctly https://asteroidos.org/wiki/useful-commands/#notifications (it has a --id option as well)
asteroid-btsyncd should already have code to update notifications https://github.com/AsteroidOS/asteroid-btsyncd/blob/master/notificationservice.cpp#L75
I get 2 distinct notifications for 2 with the same id.
root@dory:ceres# notificationtool -o add -i=1337 --application="Super App" "Great Title" "Amazing content 1"
root@dory:ceres# notificationtool -o add -i=1337 --application="Super App" "Great Title" "Amazing content 2"
@FlorentRevest any idea how to log the notification stack on the watch?
@jrtberlin notificationtool just issues a Notify dbus function call sorta following the freedesktop notifications standard. The Notify dbus call ends up here in lipstick: https://github.com/AsteroidOS/lipstick/blob/master/src/notifications/notificationmanager.cpp#L234 You will most likely have to recompile lipstick with debugging messages to trace what's going on from there.
asteroid-launcher directly gets notifications from the NotificationListModel https://github.com/AsteroidOS/lipstick/blob/master/src/notifications/notificationlistmodel.cpp https://github.com/AsteroidOS/asteroid-launcher/blob/master/qml/notifications/NotificationsPanel.qml#L44
Well, some Linux user I am; I just thought to turn on the Developer Mode in AsteroidOS, and can ssh in fine now. XD
I am sending myself some texts and trying to find some logging thereof in /var/log/messages. What should the standard logging of a notification look like in AsteroidOS?
One more item: I have had MAC address randomization set to On in my Android developer settings. I noticed these lines of the logs which may be related(?):
Jun 10 12:44:24 dory daemon.warn systemd-udevd[257]: Could not generate persistent MAC address for ifb0: No such file or directory Jun 10 12:44:24 dory daemon.warn systemd-udevd[303]: Could not generate persistent MAC address for ifb1: No such file or directory
Is this useful troubleshooting or should I just leave this to the people who know better than me? XD
Okay, I think I found the specific logging of a text notification: `): notification begin from name=:1.38 owner=:1.38 pid=403 uid=1000 gid=1000 priv=0 cmd= /usr/bin/asteroid-launcher -plugin evdevtouch:/dev/input/event1
Jun 10 13:02:15 dory daemon.notice mce[280]: tklock.c: tklock_datapipe_exceptionstate cb(): exception_state = none -> notif
Jun 10 13:02:15 dory daemon.notice mce[280]: tklock.c: tklock_uiexcept_rethink(): displ ay state req: ON
Jun 10 13:02:15 dory daemon.notice mce[280]: modules/display.c: mdy_display_state_leave (): current display state = POWER_UP
Jun 10 13:02:15 dory daemon.info asteroid-launcher[403]: unsleepDisplay
Jun 10 13:02:15 dory daemon.notice mce[280]: modules/display.c: mdy_display_state_enter (): current display state = ON
Jun 10 13:02:15 dory daemon.info statefs[301]: Display: "on"
Jun 10 13:02:21 dory daemon.notice mce[280]: tklock.c: tklock_dbus_notification_end_cb( ): notification end from name=:1.38 owner=:1.38 pid=403 uid=1000 gid=1000 priv=0 cmd=/u sr/bin/asteroid-launcher -plugin evdevtouch:/dev/input/event1
Jun 10 13:02:21 dory daemon.notice mce[280]: tklock.c: tklock_datapipe_exceptionstate cb(): exception_state = notif -> linger
Jun 10 13:02:22 dory daemon.notice mce[280]: tklock.c: tklock_datapipe_exceptionstate cb(): exception_state = linger -> none `
Hi guys,
Any news on this particular issue?
Once I connect the watch I will get the first text notification, every text after the first though will not trigger a notification on the watch.
This is with the stock Messaging app on LineageOS.