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

answerCall not work in IOS 16.4.1

Open
#691 2 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

I have set the following settings

useEffect(() => {
    const options = {
      ios: {
        appName: 'App',
      },
      android: {
        alertTitle: 'Permissions required',
        alertDescription:
          'This application needs to access your phone accounts',
        cancelButton: 'Cancel',
        okButton: 'ok',
        imageName: 'phone_account_icon',
        additionalPermissions: [],
        // Required to get audio in background when using Android 11
        foregroundService: {
          channelId: 'com.app',
          channelName: 'Foreground service for App',
          notificationTitle: 'App is running on background',
          //notificationIcon: 'Path to the resource icon of the notification',
        },
      },
    };

    RNCallKeep.setup(options).then(accepted => {
      console.debug('[INIT SUCCESS ' + Platform.OS + ']');
    });
    RNCallKeep.addEventListener('didChangeAudioRoute', ({output}) => {});
    RNCallKeep.addEventListener('didLoadWithEvents', events => {
      console.log('[CallKeep ' + Platform.OS + ']', 'Events');
    });
  }, []);

Then I want to listen for events when the user accepts or rejects the call through the system window

RNCallKeep.addEventListener('answerCall', ({callUUID}) => {
      startCall();
    });
    RNCallKeep.addEventListener('endCall', ({callUUID}) => {
      endCall();
    });

But this event does not fire. It's the window I call when I get a push

RNCallKeep.displayIncomingCall(
      q.uuid,
      q.number,
      user === undefined ? q.number : user.label,
      'number',
      q.type === 'video',
      null,
    );

What could be the problem?

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

Start with the supplied RNCallKeep setup, addEventListener('answerCall'/'endCall'), and displayIncomingCall flow on iOS 16.4.1. Reproduce the system call UI and trace whether either callback is received after accepting or rejecting the call. Done means the missing event path or triggering condition is identified and documented.

Written by the indexing model from the issue text.

Assessment

Tech stack
ios, javascript, react-native
Domain
mobile
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.