react-native-webrtc / react-native-webrtc/react-native-callkeep

Answer events lost when app launched from killed state - has anyone encountered this?

Open
#844 8 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
1.1k
Forks
511
Avg merge
9h 12m
Merged PRs (30d)
2

Description

Problem

Has anyone encountered an issue where answerCall events are lost when the app is launched from a killed state via VoIP push?

Scenario
  1. App is completely killed (not in background)
  2. VoIP push arrives → CallKit interface appears immediately
  3. User taps "Answer" quickly (within first few seconds)
  4. Bundle is still loading/initializing
  5. answerCall event is never received by RNApp
Why we need the answer event

We need to detect when user answers to notify our server that the client is ready to receive a SIP INVITE. Our flow is:

  1. User answers → Send "ready" signal to server
  2. Server receives "ready" → Initiates SIP INVITE
  3. SIP connection established

Without the answer event, we can't notify the server, so the SIP call never gets initiated.

Question
  • Has anyone experienced this issue with early answer events?
  • Are there recommended patterns for handling CallKit events when RNApp isn't ready yet?
  • Should events be buffered somehow until the JS bridge is fully initialized?

The issue only happens when app is killed and VoIP push launches it. When app is already running (background or foreground), answer events work perfectly.

Any insights would be appreciated!

Environment
  • iOS: Testing on physical devices

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No file or test is identified. Start by tracing the iOS CallKit answerCall event from a VoIP push launch through the React Native bridge, focusing on the killed-state initialization path. Done means an early Answer action is reliably delivered after the JS bridge initializes, with a documented verification scenario on a physical device.

Written by the indexing model from the issue text.

Assessment

Tech stack
ios, react-native
Domain
audio-video-rtc, mobile
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.