Push Notifications
The Snippbot mobile app uses native push notifications to keep you informed about agent activity, approval requests, and insights even when the app is in the background.
Notification categories
Section titled “Notification categories”The app registers six notification categories, each with actionable buttons:
| Category | Actions | Description |
|---|---|---|
| APPROVAL_NEEDED | Approve, Deny, View Details | Legacy approval requests |
| security_alert | Approve, Deny, View Details | Session join approval requests |
| SESSION_JOINED | Open Session, Dismiss | Notification when a device joins your session |
| INSIGHT | View, Dismiss, Snooze 1h | Proactive agent insights |
| TASK_FAILED | Retry, View Error | Failed task alerts |
| CHANNEL_MESSAGE | Reply, Open Chat | Messages from connected channels |
Approval notifications
Section titled “Approval notifications”When another device requests to join your session:
- A push notification arrives with the category
security_alert - The notification shows the requesting device name and platform
- You can respond directly from the notification:
- Approve — requires device authentication (Face ID / fingerprint)
- Deny — immediately rejects the request
- View Details — opens the app to the chat with the approval banner
Foreground handling
Section titled “Foreground handling”When the app is in the foreground and an approval notification arrives:
- The notification is intercepted before display
- An in-app approval banner slides in at the top of the chat
- You can approve or deny directly within the chat UI
- No system notification popup appears
Insight notifications
Section titled “Insight notifications”Proactive insights from your agents arrive as push notifications:
- View — opens the Insights tab
- Dismiss — clears the notification
- Snooze 1h — re-delivers the notification after one hour
Task notifications
Section titled “Task notifications”When a task fails:
- Retry — re-executes the failed task
- View Error — opens the task detail with the error message
Channel message notifications
Section titled “Channel message notifications”Messages from connected channels (Slack, Discord, etc.):
- Reply — opens an inline text input to respond directly from the notification
- Open Chat — opens the conversation in the app
Deep linking from notifications
Section titled “Deep linking from notifications”Tapping a notification body (not an action button) navigates to the relevant screen:
| Notification data | Navigation target |
|---|---|
conversationId | /chat/{conversationId} |
session_id (approval) | Chat tab |
insightId | Insights tab |
projectId | /projects/{projectId} |
| (none) | Chat tab (default) |
Android notification channels
Section titled “Android notification channels”On Android, notifications are organized into channels with configurable importance:
| Channel | Importance | Sound |
|---|---|---|
| Default | HIGH | Default |
| Approval Requests | MAX | Default |
| Security Alerts | MAX | Default |
| Insights | DEFAULT | None |
| Task Updates | HIGH | None |
| Channel Messages | HIGH | None |
You can customize notification behavior per channel in Android Settings > Apps > Snippbot > Notifications.
Push notifications are configured during initial app setup. To manage permissions later:
- Open device Settings > Snippbot > Notifications
- Toggle Allow Notifications
- Configure Sounds, Badges, and Banners as desired
- For approval notifications, ensure Critical Alerts is enabled
- Open device Settings > Apps > Snippbot > Notifications
- Toggle channels individually
- Set importance level per channel
- Configure Do Not Disturb exceptions for approval channels
Push token registration
Section titled “Push token registration”The app registers its push token with the daemon on login:
- Provider: Expo Push Notifications
- Token format:
ExponentPushToken[...] - Registration endpoint:
POST /devices/push/register - Unregistration: Automatic on logout, or manual in Settings > Connection > Unregister
Troubleshooting
Section titled “Troubleshooting”Not receiving notifications
Section titled “Not receiving notifications”- Check permissions: device Settings > Snippbot > Notifications must be enabled
- Verify daemon connection: Settings > Connection should show “Connected”
- Check push token: Settings > Connection should show a push token
- On Android, check that the relevant notification channel isn’t muted
- Ensure the daemon can reach Expo’s push service (requires internet access on the server)
Approval notifications not showing “Approve” button
Section titled “Approval notifications not showing “Approve” button”- On iOS, ensure notification categories are registered (restart the app if needed)
- On Android, expand the notification to see action buttons
- Check that you’re running the latest app version
Notifications arrive late
Section titled “Notifications arrive late”- iOS: Low Power Mode delays notifications — disable it for time-sensitive alerts
- Android: Battery optimization may defer notifications — exempt Snippbot in Settings > Battery > App battery usage
- Check your daemon’s push delivery logs