diff --git a/app/src/main/java/com/inou/clawdnode/notifications/NotificationListener.kt b/app/src/main/java/com/inou/clawdnode/notifications/NotificationListener.kt index d618028..1219819 100644 --- a/app/src/main/java/com/inou/clawdnode/notifications/NotificationListener.kt +++ b/app/src/main/java/com/inou/clawdnode/notifications/NotificationListener.kt @@ -55,25 +55,41 @@ class NotificationListener : NotificationListenerService() { } override fun onNotificationPosted(sbn: StatusBarNotification) { + // Log immediately to confirm listener is working + Log.i(tag, "onNotificationPosted called: ${sbn.packageName}") + ClawdNodeApp.instance.auditLog.log( + "NOTIFICATION_RAW", + "Received: ${sbn.packageName}", + mapOf("id" to sbn.id.toString(), "key" to sbn.key) + ) + // Skip our own notifications - if (sbn.packageName == packageName) return + if (sbn.packageName == packageName) { + Log.d(tag, "Skipping own notification") + return + } // Skip ongoing/persistent notifications (media players, etc.) - if (sbn.isOngoing && !isImportantOngoing(sbn)) return + if (sbn.isOngoing && !isImportantOngoing(sbn)) { + Log.d(tag, "Skipping ongoing notification") + return + } - Log.d(tag, "Notification posted: ${sbn.packageName}") + Log.d(tag, "Processing notification: ${sbn.packageName}") val notificationId = generateNotificationId(sbn) activeNotifications[notificationId] = sbn val event = createNotificationEvent(sbn, notificationId) - nodeService?.sendEvent(event) ClawdNodeApp.instance.auditLog.logNotification( "NOTIFICATION_POSTED", sbn.packageName, event.title ) + + nodeService?.sendEvent(event) + Log.i(tag, "Notification event sent to gateway") } override fun onNotificationRemoved(sbn: StatusBarNotification) {