# Push Notification Test Payloads Simulate push notifications on iOS Simulator without a server. ## Usage ```bash # Find booted simulator ID xcrun simctl list devices booted # Send message push (triggers NSE — mutable-content) xcrun simctl push booted com.rosetta.dev tools/push-test/message.apns # Send read push (triggers AppDelegate — content-available) xcrun simctl push booted com.rosetta.dev tools/push-test/read.apns # Send call push xcrun simctl push booted com.rosetta.dev tools/push-test/call.apns ``` ## Testing the read eligibility fix 1. Open a chat, scroll to bottom 2. Background the app (Cmd+Shift+H) 3. Send a message push: `xcrun simctl push booted com.rosetta.dev tools/push-test/message.apns` 4. Return to app 5. Verify: message should NOT be auto-marked as read ## Notes - `mutable-content: 1` — NSE processes (badge, sound, mute filter) - `content-available: 1` — AppDelegate `didReceiveRemoteNotification` fires - NSE does NOT run on Simulator — only AppDelegate path is testable - For full NSE testing, use a physical device with TestFlight