Your issue is a classic misconfiguration of the notification chain between workflows and mobile push services. Let me address all three components systematically:
Push Notification Configuration:
The mobile app settings you checked are client-side preferences, but the server-side configuration is what actually controls push delivery. Navigate to Mobile > Mobile Application Configuration and verify:
- Push notification service is enabled and properly connected
- APNs certificate (iOS) and FCM server key (Android) are valid and not expired
- Test the connection using the ‘Test Push Notification’ button for both platforms
Then check System Properties > com.snc.notify.push:
glide.push.notification.enabled = true
glide.push.notification.batch_size = 100
glide.push.notification.batch_delay = 0 // Set to 0 for immediate delivery
If batch_delay is set to anything higher than 0, workflow notifications will be queued and delayed, which explains why they appear not to trigger.
Workflow Event Triggers:
Your workflows need explicit push notification activities. Standard notification activities don’t automatically include push. Here’s how to fix it:
- Open your task assignment workflow in Flow Designer
- Find the notification activity (likely ‘Send Email’ or ‘Create Notification’)
- Replace it with ‘Send Push Notification’ activity or add it in parallel
- Configure the activity:
// Pseudocode - Push notification activity config:
1. Target: Assigned user's device tokens
2. Title: 'New Task Assigned: ' + task.number
3. Body: task.short_description
4. Action: Open task detail screen
5. Priority: High (ensures immediate delivery)
Alternatively, modify your existing notification record to enable push:
- Navigate to System Notifications > Notifications
- Find ‘Task Assigned’ notification
- Check ‘Send push notification’ checkbox
- Add condition: ‘User has mobile app installed’ (use field u_mobile_device_registered)
Device Permissions and Registration:
Even though test notifications work, workflow-triggered notifications might fail if device tokens aren’t properly registered for workflow events. Run this diagnostic script:
var user = gs.getUserID(); // Technician's sys_id
var devices = new GlideRecord('cmn_notif_device');
devices.addQuery('user', user);
devices.addQuery('active', true);
devices.query();
while (devices.next()) {
gs.info('Device: ' + devices.type + ', Token: ' + devices.device_id);
gs.info('Subscribed events: ' + devices.subscribed_events);
}
If ‘subscribed_events’ doesn’t include ‘task.assigned’ or ‘workflow.updated’, the devices aren’t registered for those event types. To fix this:
- Create a Mobile Push Subscription record for each technician
- Navigate to Mobile > Push Subscriptions > New
- Set User, Event Type (task.assigned), and ensure Active = true
- Repeat for workflow.updated event type
Root Cause Summary:
Based on your symptoms (test works, workflow doesn’t), the issue is that your notification records lack the push notification flag, or your workflow is using generic notification activities that don’t target mobile devices. The fact that email/SMS work confirms the workflow triggers correctly - it’s just not routing to the push notification service.
Implement all three fixes above, then test by assigning a task to a technician through the workflow. Monitor System Logs > Push Notifications for any errors during delivery. If you still see failures, check the APNs/FCM connection logs for authentication issues - expired certificates are a common culprit that affects workflow notifications but not admin test notifications.