@stream-io/video-react-native-sdk 1.45.0 → 2.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/CHANGELOG.md +8 -7
  2. package/android/src/main/java/com/streamvideo/reactnative/keepalive/StreamCallKeepAliveHeadlessService.kt +112 -26
  3. package/android/src/main/java/com/streamvideo/reactnative/util/CallAlivePermissionsHelper.kt +68 -37
  4. package/dist/commonjs/hooks/push/useCallingExpWithCallingStateEffect.js +3 -1
  5. package/dist/commonjs/hooks/push/useCallingExpWithCallingStateEffect.js.map +1 -1
  6. package/dist/commonjs/hooks/useAndroidKeepCallAliveEffect.js +38 -11
  7. package/dist/commonjs/hooks/useAndroidKeepCallAliveEffect.js.map +1 -1
  8. package/dist/commonjs/utils/internal/callingx/callingx.js +37 -55
  9. package/dist/commonjs/utils/internal/callingx/callingx.js.map +1 -1
  10. package/dist/commonjs/utils/keepCallAliveHeadlessTask.js +43 -4
  11. package/dist/commonjs/utils/keepCallAliveHeadlessTask.js.map +1 -1
  12. package/dist/commonjs/utils/push/internal/android.js +28 -10
  13. package/dist/commonjs/utils/push/internal/android.js.map +1 -1
  14. package/dist/commonjs/version.js +1 -1
  15. package/dist/commonjs/version.js.map +1 -1
  16. package/dist/module/hooks/push/useCallingExpWithCallingStateEffect.js +3 -1
  17. package/dist/module/hooks/push/useCallingExpWithCallingStateEffect.js.map +1 -1
  18. package/dist/module/hooks/useAndroidKeepCallAliveEffect.js +39 -12
  19. package/dist/module/hooks/useAndroidKeepCallAliveEffect.js.map +1 -1
  20. package/dist/module/utils/internal/callingx/callingx.js +37 -55
  21. package/dist/module/utils/internal/callingx/callingx.js.map +1 -1
  22. package/dist/module/utils/keepCallAliveHeadlessTask.js +41 -3
  23. package/dist/module/utils/keepCallAliveHeadlessTask.js.map +1 -1
  24. package/dist/module/utils/push/internal/android.js +28 -10
  25. package/dist/module/utils/push/internal/android.js.map +1 -1
  26. package/dist/module/version.js +1 -1
  27. package/dist/module/version.js.map +1 -1
  28. package/dist/typescript/hooks/push/useCallingExpWithCallingStateEffect.d.ts.map +1 -1
  29. package/dist/typescript/hooks/useAndroidKeepCallAliveEffect.d.ts.map +1 -1
  30. package/dist/typescript/utils/StreamVideoRN/types.d.ts +1 -2
  31. package/dist/typescript/utils/StreamVideoRN/types.d.ts.map +1 -1
  32. package/dist/typescript/utils/internal/callingx/callingx.d.ts.map +1 -1
  33. package/dist/typescript/utils/keepCallAliveHeadlessTask.d.ts +9 -0
  34. package/dist/typescript/utils/keepCallAliveHeadlessTask.d.ts.map +1 -1
  35. package/dist/typescript/utils/push/internal/android.d.ts.map +1 -1
  36. package/dist/typescript/version.d.ts +1 -1
  37. package/dist/typescript/version.d.ts.map +1 -1
  38. package/expo-config-plugin/dist/withAndroidPermissions.js +1 -1
  39. package/package.json +4 -4
  40. package/src/hooks/push/useCallingExpWithCallingStateEffect.ts +13 -6
  41. package/src/hooks/useAndroidKeepCallAliveEffect.ts +59 -21
  42. package/src/utils/StreamVideoRN/types.ts +1 -2
  43. package/src/utils/internal/callingx/callingx.ts +47 -66
  44. package/src/utils/keepCallAliveHeadlessTask.ts +45 -3
  45. package/src/utils/push/internal/android.ts +31 -10
  46. package/src/version.ts +1 -1
@@ -41,8 +41,21 @@ function getCallDisplayName(callMembers, participants, currentUserId) {
41
41
  }
42
42
  return names.sort().join(', ');
43
43
  }
44
- function getCallDisplayNameFromCall(call) {
45
- return call.state.custom?.display_name || getCallDisplayName(call.state.members, call.state.participants, call.currentUserId);
44
+
45
+ /**
46
+ * Args shared by the callingx call registration APIs:
47
+ * `(callId, phoneNumber, callerName, hasVideo)`.
48
+ */
49
+ function getCallingxCallArgs(call) {
50
+ const callDisplayName = call.state.custom?.display_name || getCallDisplayName(call.state.members, call.state.participants, call.currentUserId);
51
+ return [call.cid,
52
+ // unique id for call
53
+ call.state.createdBy?.id ?? callDisplayName,
54
+ // handle for native call UI (prefer createdBy user id, fallback to call display name)
55
+ callDisplayName,
56
+ // display name for display in call screen
57
+ call.state.settings?.video?.enabled ?? false // is video call?
58
+ ];
46
59
  }
47
60
  async function registerOutgoingCall(call) {
48
61
  if (!CallingxModule || !CallingxModule.isSetup || call.isOwnTracksLoopbackAllowed) {
@@ -55,15 +68,7 @@ async function registerOutgoingCall(call) {
55
68
  const logger = _videoClient.videoLoggerSystem.getLogger('callingx');
56
69
  try {
57
70
  logger.debug(`registerOutgoingCall: Registering outgoing call ${call.cid}`);
58
- const callDisplayName = getCallDisplayNameFromCall(call);
59
- await CallingxModule.startCall(call.cid,
60
- // unique id for call
61
- call.state.createdBy?.id ?? callDisplayName,
62
- // handle for native call UI (prefer createdBy user id, fallback to call display name)
63
- callDisplayName,
64
- // display name for display in call screen
65
- call.state.settings?.video?.enabled ?? false // is video call?
66
- );
71
+ await CallingxModule.startCall(...getCallingxCallArgs(call));
67
72
  } catch (error) {
68
73
  logger.error(`registerOutgoingCall: Error registering outgoing call in callingx: ${call.cid}`, error);
69
74
  }
@@ -84,53 +89,30 @@ async function joinCallingxCall(call, activeCalls) {
84
89
  const logger = _videoClient.videoLoggerSystem.getLogger('callingx');
85
90
  const isOutcomingCall = call.ringing && call.isCreatedByMe;
86
91
  const isIncomingCall = call.ringing && !call.isCreatedByMe;
87
- const startCallInCallingx = async () => {
88
- logger.debug(`joinCallingxCall: Joining call ${call.cid}`);
89
- const callDisplayName = getCallDisplayNameFromCall(call);
90
- await CallingxModule.startCall(call.cid,
91
- // unique id for call
92
- call.state.createdBy?.id ?? callDisplayName,
93
- // handle for native call UI (prefer createdBy user id, fallback to call display name)
94
- callDisplayName,
95
- // display name for display in call screen
96
- call.state.settings?.video?.enabled ?? false // is video call?
97
- );
98
- };
99
- if (isOutcomingCall || !call.ringing && CallingxModule.isOngoingCallsEnabled) {
100
- try {
101
- await startCallInCallingx();
102
- } catch (error) {
103
- logger.error(`startCallingxCall: Error starting call in callingx: ${call.cid}`, error);
92
+ const isOngoingCall = c => !c.ringing && CallingxModule.isOngoingCallsEnabled && !c.isOwnTracksLoopbackAllowed;
93
+ if (!isIncomingCall && !isOutcomingCall && !isOngoingCall(call)) {
94
+ return;
95
+ }
96
+ try {
97
+ const activeCallsToLeave = activeCalls.filter(c => c.cid !== call.cid && (c.ringing || isOngoingCall(c)) && c.state.callingState !== _videoClient.CallingState.LEFT);
98
+ for (const activeCall of activeCallsToLeave) {
99
+ logger.debug(`leaving currently-active-call:${activeCall.cid} before joining the call:${call.cid}`);
100
+ await activeCall.leave({
101
+ reason: 'cancel'
102
+ }).catch(e => {
103
+ logger.error(`failed to leave active call ${activeCall.cid}`, e);
104
+ });
104
105
  }
105
- } else if (isIncomingCall) {
106
- logger.debug(`joinCallingxCall: Joining incoming call ${call.cid}`);
107
- try {
108
- // Leave any existing active ringing calls before joining a new ringing call
109
- const activeCallsToLeave = activeCalls.filter(c => c.cid !== call.cid && c.ringing && c.state.callingState !== _videoClient.CallingState.LEFT);
110
- for (const activeCall of activeCallsToLeave) {
111
- logger.debug(`leaving active call ${activeCall.cid} before joining ${call.cid}`);
112
- await activeCall.leave({
113
- reason: 'cancel'
114
- }).catch(e => {
115
- logger.error(`failed to leave active call ${activeCall.cid}`, e);
116
- });
117
- }
118
- // Awaits native CallKit/Telecom registration before answering.
119
- // Safe to call even if the call is already registered (e.g. from VoIP push) --
120
- // iOS early-returns with no error, Android sends the registered broadcast.
121
- const callDisplayName = getCallDisplayNameFromCall(call);
122
- await CallingxModule.displayIncomingCall(call.cid,
123
- // unique id for call
124
- call.state.createdBy?.id ?? callDisplayName,
125
- // handle for native call UI (prefer createdBy user id, fallback to call display name)
126
- callDisplayName,
127
- // display name for display in call screen
128
- call.state.settings?.video?.enabled ?? false // is video call?
129
- );
106
+ logger.debug(`joinCallingxCall: Joining call ${call.cid} isIncoming: ${isIncomingCall} isOutgoing: ${isOutcomingCall}`);
107
+ const callArgs = getCallingxCallArgs(call);
108
+ if (isIncomingCall) {
109
+ await CallingxModule.displayIncomingCall(...callArgs);
130
110
  await CallingxModule.answerIncomingCall(call.cid);
131
- } catch (error) {
132
- logger.error(`Error joining incoming call in callingx: ${call.cid}`, error);
111
+ } else {
112
+ await CallingxModule.startCall(...callArgs);
133
113
  }
114
+ } catch (error) {
115
+ logger.error(`startCallingxCall: Error starting call in callingx: ${call.cid} isIncoming: ${isIncomingCall} isOutgoing: ${isOutcomingCall}`, error);
134
116
  }
135
117
  }
136
118
  async function endCallingxCall(call, reason) {
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_callingx","_videoClient","CallingxModule","getCallingxLibIfAvailable","getCallDisplayName","callMembers","participants","currentUserId","names","length","flatMap","member","user","id","name","participant","userId","find","sort","join","getCallDisplayNameFromCall","call","state","custom","display_name","members","registerOutgoingCall","isSetup","isOwnTracksLoopbackAllowed","isOutcomingCall","ringing","isCreatedByMe","logger","videoLoggerSystem","getLogger","debug","cid","callDisplayName","startCall","createdBy","settings","video","enabled","error","joinCallingxCall","activeCalls","isIncomingCall","startCallInCallingx","isOngoingCallsEnabled","activeCallsToLeave","filter","c","callingState","CallingState","LEFT","activeCall","leave","reason","catch","e","displayIncomingCall","answerIncomingCall","endCallingxCall","isCallTracked","endCallWithReason","wireAudioEngineSubscription","Platform","OS","unwireAudioEngineSubscription"],"sourceRoot":"../../../../../src","sources":["utils/internal/callingx/callingx.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_callingx","_videoClient","CallingxModule","getCallingxLibIfAvailable","getCallDisplayName","callMembers","participants","currentUserId","names","length","flatMap","member","user","id","name","participant","userId","find","sort","join","getCallingxCallArgs","call","callDisplayName","state","custom","display_name","members","cid","createdBy","settings","video","enabled","registerOutgoingCall","isSetup","isOwnTracksLoopbackAllowed","isOutcomingCall","ringing","isCreatedByMe","logger","videoLoggerSystem","getLogger","debug","startCall","error","joinCallingxCall","activeCalls","isIncomingCall","isOngoingCall","c","isOngoingCallsEnabled","activeCallsToLeave","filter","callingState","CallingState","LEFT","activeCall","leave","reason","catch","e","callArgs","displayIncomingCall","answerIncomingCall","endCallingxCall","isCallTracked","endCallWithReason","wireAudioEngineSubscription","Platform","OS","unwireAudioEngineSubscription"],"sourceRoot":"../../../../../src","sources":["utils/internal/callingx/callingx.ts"],"mappings":"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","ignoreList":[]}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.keepCallAliveCallRef = exports.KEEP_CALL_ALIVE_HEADLESS_TASK_NAME = void 0;
6
+ exports.keepCallAliveCallRef = exports.endKeepCallAliveHeadlessTask = exports.KEEP_CALL_ALIVE_HEADLESS_TASK_NAME = void 0;
7
7
  var _reactNative = require("react-native");
8
8
  var _videoClient = require("@stream-io/video-client");
9
9
  var _StreamVideoRN = require("./StreamVideoRN");
@@ -16,6 +16,21 @@ const KEEP_CALL_ALIVE_HEADLESS_TASK_NAME = exports.KEEP_CALL_ALIVE_HEADLESS_TASK
16
16
  const keepCallAliveCallRef = exports.keepCallAliveCallRef = {
17
17
  current: undefined
18
18
  };
19
+ let resolveRunningTask;
20
+
21
+ /**
22
+ * Ends the currently running keep-alive headless task.
23
+ *
24
+ * The task's promise is app-provided (`foregroundService.android.taskToRun`) and by default never
25
+ * resolves, so stopping the native service alone would leave the task registered in
26
+ * `HeadlessJsTaskContext` forever - which keeps RN's timer choreographer callback posted for the
27
+ * rest of the process lifetime. Resolving it here lets React Native unwind the task properly.
28
+ */
29
+ const endKeepCallAliveHeadlessTask = () => {
30
+ resolveRunningTask?.();
31
+ resolveRunningTask = undefined;
32
+ };
33
+ exports.endKeepCallAliveHeadlessTask = endKeepCallAliveHeadlessTask;
19
34
  function registerKeepCallAliveHeadlessTaskOnce() {
20
35
  if (_reactNative.Platform.OS !== 'android') return;
21
36
  _reactNative.AppRegistry.registerHeadlessTask(KEEP_CALL_ALIVE_HEADLESS_TASK_NAME, () => async data => {
@@ -37,10 +52,34 @@ function registerKeepCallAliveHeadlessTaskOnce() {
37
52
  }
38
53
  const config = _StreamVideoRN.StreamVideoRN.getConfig();
39
54
  const taskToRun = config.foregroundService.android.taskToRun;
55
+ // A previous task (if any) must not keep hanging around.
56
+ endKeepCallAliveHeadlessTask();
57
+ const taskEnded = new Promise(resolve => {
58
+ resolveRunningTask = resolve;
59
+ });
60
+ const ownResolver = resolveRunningTask;
61
+
62
+ // React Native stops the foreground service as soon as the promise returned from here
63
+ // settles. `taskToRun` is app-provided and may resolve early - or immediately - so its
64
+ // completion must not end the keep-alive: that would drop the call's background protection
65
+ // while the call is still ongoing. The task's lifetime is owned by the SDK instead, and ends
66
+ // via endKeepCallAliveHeadlessTask() when the call is left.
67
+ (async () => {
68
+ try {
69
+ await taskToRun(call);
70
+ logger.debug('Keep-alive taskToRun completed, keeping the call alive until the call ends');
71
+ } catch (e) {
72
+ logger.error('Keep-alive headless task failed', e);
73
+ }
74
+ })();
40
75
  try {
41
- await taskToRun(call);
42
- } catch (e) {
43
- logger.error('Keep-alive headless task failed', e);
76
+ await taskEnded;
77
+ } finally {
78
+ // a newer task may already have installed its own resolver - clearing it here would leave
79
+ // that task with no way to be ended.
80
+ if (resolveRunningTask === ownResolver) {
81
+ resolveRunningTask = undefined;
82
+ }
44
83
  }
45
84
  });
46
85
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_videoClient","_StreamVideoRN","KEEP_CALL_ALIVE_HEADLESS_TASK_NAME","exports","keepCallAliveCallRef","current","undefined","registerKeepCallAliveHeadlessTaskOnce","Platform","OS","AppRegistry","registerHeadlessTask","data","logger","videoLoggerSystem","getLogger","callCid","call","warn","cid","activeCallCid","config","StreamVideoRN","getConfig","taskToRun","foregroundService","android","e","error"],"sourceRoot":"../../../src","sources":["utils/keepCallAliveHeadlessTask.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AAEO,MAAMG,kCAAkC,GAAAC,OAAA,CAAAD,kCAAA,GAAG,0BAA0B;;AAE5E;AACA;AACA;AACA;AACO,MAAME,oBAAmD,GAAAD,OAAA,CAAAC,oBAAA,GAAG;EACjEC,OAAO,EAAEC;AACX,CAAC;AAED,SAASC,qCAAqCA,CAAA,EAAG;EAC/C,IAAIC,qBAAQ,CAACC,EAAE,KAAK,SAAS,EAAE;EAE/BC,wBAAW,CAACC,oBAAoB,CAC9BT,kCAAkC,EAClC,MAAM,MAAOU,IAAsC,IAAK;IACtD,MAAMC,MAAM,GAAGC,8BAAiB,CAACC,SAAS,CACxC,+BACF,CAAC;IACD,MAAMC,OAAO,GAAGJ,IAAI,EAAEI,OAAO;IAE7B,MAAMC,IAAI,GAAGb,oBAAoB,CAACC,OAAO;IACzC,IAAI,CAACY,IAAI,EAAE;MACTJ,MAAM,CAACK,IAAI,CACT,kEAAkE,EAClE;QAAEF;MAAQ,CACZ,CAAC;MACD;IACF;IACA,IAAIA,OAAO,IAAIC,IAAI,CAACE,GAAG,IAAIF,IAAI,CAACE,GAAG,KAAKH,OAAO,EAAE;MAC/CH,MAAM,CAACK,IAAI,CACT,+DAA+D,EAC/D;QAAEF,OAAO;QAAEI,aAAa,EAAEH,IAAI,CAACE;MAAI,CACrC,CAAC;MACD;IACF;IAEA,MAAME,MAAM,GAAGC,4BAAa,CAACC,SAAS,CAAC,CAAC;IACxC,MAAMC,SAAS,GAAGH,MAAM,CAACI,iBAAiB,CAACC,OAAO,CAACF,SAAS;IAC5D,IAAI;MACF,MAAMA,SAAS,CAACP,IAAI,CAAC;IACvB,CAAC,CAAC,OAAOU,CAAC,EAAE;MACVd,MAAM,CAACe,KAAK,CAAC,iCAAiC,EAAED,CAAC,CAAC;IACpD;EACF,CACF,CAAC;AACH;AAEApB,qCAAqC,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_videoClient","_StreamVideoRN","KEEP_CALL_ALIVE_HEADLESS_TASK_NAME","exports","keepCallAliveCallRef","current","undefined","resolveRunningTask","endKeepCallAliveHeadlessTask","registerKeepCallAliveHeadlessTaskOnce","Platform","OS","AppRegistry","registerHeadlessTask","data","logger","videoLoggerSystem","getLogger","callCid","call","warn","cid","activeCallCid","config","StreamVideoRN","getConfig","taskToRun","foregroundService","android","taskEnded","Promise","resolve","ownResolver","debug","e","error"],"sourceRoot":"../../../src","sources":["utils/keepCallAliveHeadlessTask.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,cAAA,GAAAF,OAAA;AAEO,MAAMG,kCAAkC,GAAAC,OAAA,CAAAD,kCAAA,GAAG,0BAA0B;;AAE5E;AACA;AACA;AACA;AACO,MAAME,oBAAmD,GAAAD,OAAA,CAAAC,oBAAA,GAAG;EACjEC,OAAO,EAAEC;AACX,CAAC;AAED,IAAIC,kBAA4C;;AAEhD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMC,4BAA4B,GAAGA,CAAA,KAAM;EAChDD,kBAAkB,GAAG,CAAC;EACtBA,kBAAkB,GAAGD,SAAS;AAChC,CAAC;AAACH,OAAA,CAAAK,4BAAA,GAAAA,4BAAA;AAEF,SAASC,qCAAqCA,CAAA,EAAG;EAC/C,IAAIC,qBAAQ,CAACC,EAAE,KAAK,SAAS,EAAE;EAE/BC,wBAAW,CAACC,oBAAoB,CAC9BX,kCAAkC,EAClC,MAAM,MAAOY,IAAsC,IAAK;IACtD,MAAMC,MAAM,GAAGC,8BAAiB,CAACC,SAAS,CACxC,+BACF,CAAC;IACD,MAAMC,OAAO,GAAGJ,IAAI,EAAEI,OAAO;IAE7B,MAAMC,IAAI,GAAGf,oBAAoB,CAACC,OAAO;IACzC,IAAI,CAACc,IAAI,EAAE;MACTJ,MAAM,CAACK,IAAI,CACT,kEAAkE,EAClE;QAAEF;MAAQ,CACZ,CAAC;MACD;IACF;IACA,IAAIA,OAAO,IAAIC,IAAI,CAACE,GAAG,IAAIF,IAAI,CAACE,GAAG,KAAKH,OAAO,EAAE;MAC/CH,MAAM,CAACK,IAAI,CACT,+DAA+D,EAC/D;QAAEF,OAAO;QAAEI,aAAa,EAAEH,IAAI,CAACE;MAAI,CACrC,CAAC;MACD;IACF;IAEA,MAAME,MAAM,GAAGC,4BAAa,CAACC,SAAS,CAAC,CAAC;IACxC,MAAMC,SAAS,GAAGH,MAAM,CAACI,iBAAiB,CAACC,OAAO,CAACF,SAAS;IAC5D;IACAlB,4BAA4B,CAAC,CAAC;IAC9B,MAAMqB,SAAS,GAAG,IAAIC,OAAO,CAAQC,OAAO,IAAK;MAC/CxB,kBAAkB,GAAGwB,OAAO;IAC9B,CAAC,CAAC;IACF,MAAMC,WAAW,GAAGzB,kBAAkB;;IAEtC;IACA;IACA;IACA;IACA;IACA,CAAC,YAAY;MACX,IAAI;QACF,MAAMmB,SAAS,CAACP,IAAI,CAAC;QACrBJ,MAAM,CAACkB,KAAK,CACV,4EACF,CAAC;MACH,CAAC,CAAC,OAAOC,CAAC,EAAE;QACVnB,MAAM,CAACoB,KAAK,CAAC,iCAAiC,EAAED,CAAC,CAAC;MACpD;IACF,CAAC,EAAE,CAAC;IAEJ,IAAI;MACF,MAAML,SAAS;IACjB,CAAC,SAAS;MACR;MACA;MACA,IAAItB,kBAAkB,KAAKyB,WAAW,EAAE;QACtCzB,kBAAkB,GAAGD,SAAS;MAChC;IACF;EACF,CACF,CAAC;AACH;AAEAG,qCAAqC,CAAC,CAAC","ignoreList":[]}
@@ -50,6 +50,32 @@ const onRingNotificationReceived = async data => {
50
50
  nativeLog(`Finishing background task for callCid: ${call_cid}`);
51
51
  callingx.releaseBackgroundTask(backgroundTaskOwner);
52
52
  };
53
+
54
+ /**
55
+ * Gives up on this push: dismisses the call the native push path already displayed, then asks
56
+ * the call service to stop. `stopService` is only a request — it no-ops while any other call is
57
+ * registered or being registered — so this call must be ended explicitly rather than relying on
58
+ * the service teardown to wipe it.
59
+ */
60
+ const abandonPush = async () => {
61
+ if (asForegroundService) {
62
+ finishBackgroundTask();
63
+ }
64
+ // Each step is contained on its own: failing to dismiss the call must not skip the stop
65
+ // request, and neither may skip the unsubscription cleanup — a stale entry makes every later
66
+ // push for this cid look like a duplicate and get discarded.
67
+ try {
68
+ await callingx.endCallWithReason(call_cid, 'error');
69
+ } catch (error) {
70
+ nativeLog(`Failed to end call ${call_cid}: ${error}`, 'error');
71
+ }
72
+ try {
73
+ await callingx.stopService();
74
+ } catch (error) {
75
+ nativeLog(`Failed to stop the call service for ${call_cid}: ${error}`, 'error');
76
+ }
77
+ _constants.pushUnsubscriptionCallbacks.delete(call_cid);
78
+ };
53
79
  if (asForegroundService) {
54
80
  // initialize the callback array immediately to avoid race condition
55
81
  _constants.pushUnsubscriptionCallbacks.set(call_cid, []);
@@ -65,21 +91,13 @@ const onRingNotificationReceived = async data => {
65
91
  client = await pushConfig.createStreamVideoClient();
66
92
  if (!client) {
67
93
  nativeLog(`video client not found, skipping the call.ring notification`);
68
- if (asForegroundService) {
69
- finishBackgroundTask();
70
- }
71
- await callingx.stopService();
72
- _constants.pushUnsubscriptionCallbacks.delete(call_cid);
94
+ await abandonPush();
73
95
  return;
74
96
  }
75
97
  } catch (error) {
76
98
  //we need to release the background task and stop the service to avoid stale owner
77
99
  nativeLog(`Failed to create video client: ${error}`, 'error');
78
- if (asForegroundService) {
79
- finishBackgroundTask();
80
- }
81
- await callingx.stopService();
82
- _constants.pushUnsubscriptionCallbacks.delete(call_cid);
100
+ await abandonPush();
83
101
  return;
84
102
  }
85
103
  if (asForegroundService) {
@@ -1 +1 @@
1
- {"version":3,"names":["_videoClient","require","_reactNative","_libs","_StreamVideoRN","_constants","_utils","onRingNotificationReceived","data","Platform","OS","nativeLog","message","level","getCallingxLibIfAvailable","log","pushConfig","StreamVideoRN","getConfig","push","sender","type","call_cid","callingx","getCallingxLib","pushUnsubscriptionCallbacks","has","asForegroundService","canListenToWS","backgroundTaskOwner","finishBackgroundTask","releaseBackgroundTask","set","acquireBackgroundTask","catch","e","client","createStreamVideoClient","stopService","delete","error","callFromPush","onRingingCall","mustEndCall","endCallReason","shouldCallBeClosed","endCallWithReason","leave","reject","unsubscribeFunctions","get","unsubscribe","on","event","_canListenToWS","forEach","fn","mustEndCallFromEvent","endCallReasonFromEvent","stateSubscription","state","callingState$","subscribe","callingState","CallingState","IDLE","LEFT","appStateSubscription","AppState","addEventListener","nextAppState","remove","exports"],"sourceRoot":"../../../../../src","sources":["utils/push/internal/android.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAMA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AAKA,IAAAG,cAAA,GAAAH,OAAA;AACA,IAAAI,UAAA,GAAAJ,OAAA;AACA,IAAAK,MAAA,GAAAL,OAAA;AAEA;AACA;AACA;AACA;AACA;AACO,MAAMM,0BAA0B,GAAG,MACxCC,IAAmC,IAChC;EACH;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACE,IAAIC,qBAAQ,CAACC,EAAE,KAAK,SAAS,EAAE;EAE/B,MAAMC,SAAS,GAAGA,CAChBC,OAAe,EACfC,KAA0C,GAAG,OAAO,KAEpD,IAAAC,+BAAyB,EAAC,CAAC,EAAEC,GAAG,CAC9B,4CAA4CH,OAAO,EAAE,EACrDC,KACF,CAAC;EAEH,MAAMG,UAAU,GAAGC,4BAAa,CAACC,SAAS,CAAC,CAAC,CAACC,IAAI;EACjD,IACE,CAACH,UAAU,IACX,CAACR,IAAI,IACLA,IAAI,CAACY,MAAM,KAAK,cAAc,IAC9BZ,IAAI,CAACa,IAAI,KAAK,WAAW,EACzB;IACA;EACF;EAEA,MAAMC,QAAQ,GAAGd,IAAI,CAACc,QAAkB;EACxC,MAAMC,QAAQ,GAAG,IAAAC,oBAAc,EAAC,CAAC;EAEjC,IAAIC,sCAA2B,CAACC,GAAG,CAACJ,QAAQ,CAAC,EAAE;IAC7CX,SAAS,CACP,YAAYW,QAAQ,0EACtB,CAAC;IACD;EACF;EAEA,MAAMK,mBAAmB,GAAG,IAAAC,oBAAa,EAAC,CAAC;EAC3C,MAAMC,mBAAmB,GAAG,QAAQP,QAAQ,EAAE;EAC9CX,SAAS,CACP,0BAA0BW,QAAQ,wBAAwBK,mBAAmB,EAC/E,CAAC;EAED,MAAMG,oBAAoB,GAAGA,CAAA,KAAM;IACjCnB,SAAS,CAAC,0CAA0CW,QAAQ,EAAE,CAAC;IAC/DC,QAAQ,CAACQ,qBAAqB,CAACF,mBAAmB,CAAC;EACrD,CAAC;EAED,IAAIF,mBAAmB,EAAE;IACvB;IACAF,sCAA2B,CAACO,GAAG,CAACV,QAAQ,EAAE,EAAE,CAAC;IAC7C;IACA;IACAX,SAAS,CAAC,0CAA0CW,QAAQ,EAAE,CAAC;IAC/DC,QAAQ,CAACU,qBAAqB,CAACJ,mBAAmB,CAAC,CAACK,KAAK,CAAEC,CAAC,IAAK;MAC/DxB,SAAS,CACP,kDAAkDW,QAAQ,WAAWa,CAAC,EAAE,EACxE,OACF,CAAC;IACH,CAAC,CAAC;EACJ;EAEA,IAAIC,MAAqC;EACzC,IAAI;IACFA,MAAM,GAAG,MAAMpB,UAAU,CAACqB,uBAAuB,CAAC,CAAC;IACnD,IAAI,CAACD,MAAM,EAAE;MACXzB,SAAS,CAAC,6DAA6D,CAAC;MACxE,IAAIgB,mBAAmB,EAAE;QACvBG,oBAAoB,CAAC,CAAC;MACxB;MACA,MAAMP,QAAQ,CAACe,WAAW,CAAC,CAAC;MAC5Bb,sCAA2B,CAACc,MAAM,CAACjB,QAAQ,CAAC;MAC5C;IACF;EACF,CAAC,CAAC,OAAOkB,KAAK,EAAE;IACd;IACA7B,SAAS,CAAC,kCAAkC6B,KAAK,EAAE,EAAE,OAAO,CAAC;IAC7D,IAAIb,mBAAmB,EAAE;MACvBG,oBAAoB,CAAC,CAAC;IACxB;IACA,MAAMP,QAAQ,CAACe,WAAW,CAAC,CAAC;IAC5Bb,sCAA2B,CAACc,MAAM,CAACjB,QAAQ,CAAC;IAC5C;EACF;EAEA,IAAIK,mBAAmB,EAAE;IACvB;IACA,CAAC,YAAY;MACX,IAAI;QACFhB,SAAS,CAAC,2CAA2CW,QAAQ,EAAE,CAAC;QAChE,MAAMmB,YAAY,GAAG,MAAML,MAAM,CAACM,aAAa,CAACpB,QAAQ,CAAC;QACzD,MAAM;UAAEqB,WAAW;UAAEC;QAAc,CAAC,GAAG,IAAAC,yBAAkB,EACvDJ,YAAY,EACZjC,IACF,CAAC;QACD,IAAImC,WAAW,EAAE;UACfhC,SAAS,CACP,+BAA+BW,QAAQ,mBAAmBsB,aAAa,EACzE,CAAC;UACDrB,QAAQ,CAACuB,iBAAiB,CAACxB,QAAQ,EAAEsB,aAAa,CAAC;UACnDH,YAAY,CAACM,KAAK,CAAC;YAAEC,MAAM,EAAE;UAAM,CAAC,CAAC,CAACd,KAAK,CAAEM,KAAK,IAAK;YACrD7B,SAAS,CACP,8CAA8CW,QAAQ,KAAKkB,KAAK,EAAE,EAClE,OACF,CAAC;UACH,CAAC,CAAC;UACFV,oBAAoB,CAAC,CAAC;UACtBL,sCAA2B,CAACc,MAAM,CAACjB,QAAQ,CAAC;UAC5C;QACF;;QAEA;QACA,MAAM2B,oBAAoB,GAAGxB,sCAA2B,CAACyB,GAAG,CAAC5B,QAAQ,CAAC;QACtE,IAAI,CAAC2B,oBAAoB,EAAE;UACzBtC,SAAS,CACP,oDAAoDW,QAAQ,6BAC9D,CAAC;UACDQ,oBAAoB,CAAC,CAAC;UACtB;QACF;QACAnB,SAAS,CAAC,oCAAoCW,QAAQ,EAAE,CAAC;QACzD;QACA,MAAM6B,WAAW,GAAGV,YAAY,CAACW,EAAE,CACjC,KAAK,EACJC,KAAyC,IAAK;UAC7C,MAAMC,cAAc,GAAG,IAAA1B,oBAAa,EAAC,CAAC;UACtC,IAAI,CAAC0B,cAAc,EAAE;YACnB3C,SAAS,CACP,iCAAiC0C,KAAK,CAAChC,IAAI,aAAaC,QAAQ,mBAAmBgC,cAAc,EACnG,CAAC;YACDL,oBAAoB,CAACM,OAAO,CAAEC,EAAE,IAAKA,EAAE,CAAC,CAAC,CAAC;YAC1C;UACF;UAEA,MAAM;YACJb,WAAW,EAAEc,oBAAoB;YACjCb,aAAa,EAAEc;UACjB,CAAC,GAAG,IAAAb,yBAAkB,EAACJ,YAAY,EAAEjC,IAAI,CAAC;UAC1C,IAAIiD,oBAAoB,EAAE;YACxB9C,SAAS,CACP,iCAAiC0C,KAAK,CAAChC,IAAI,aAAaC,QAAQ,qBAClE,CAAC;YACDC,QAAQ,CAACuB,iBAAiB,CAACxB,QAAQ,EAAEoC,sBAAsB,CAAC;YAC5DT,oBAAoB,CAACM,OAAO,CAAEC,EAAE,IAAKA,EAAE,CAAC,CAAC,CAAC;UAC5C;QACF,CACF,CAAC;;QAED;QACA,MAAMG,iBAAiB,GAAGlB,YAAY,CAACmB,KAAK,CAACC,aAAa,CAACC,SAAS,CACjEC,YAAY,IAAK;UAChB,IACEA,YAAY,KAAKC,yBAAY,CAACC,IAAI,IAClCF,YAAY,KAAKC,yBAAY,CAACE,IAAI,EAClC;YACAvD,SAAS,CACP,iDAAiDW,QAAQ,kBAAkByC,YAAY,EACzF,CAAC;YACDd,oBAAoB,CAACM,OAAO,CAAEC,EAAE,IAAKA,EAAE,CAAC,CAAC,CAAC;UAC5C;QACF,CACF,CAAC;;QAED;QACA,MAAMW,oBAAoB,GAAGC,qBAAQ,CAACC,gBAAgB,CACpD,QAAQ,EACPC,YAAY,IAAK;UAChB,MAAMhB,cAAc,GAAG,IAAA1B,oBAAa,EAAC,CAAC;UACtCjB,SAAS,CACP,wBAAwB2D,YAAY,iBAAiBhD,QAAQ,mBAAmBgC,cAAc,EAChG,CAAC;UACD,IAAI,CAACA,cAAc,EAAE;YACnBL,oBAAoB,CAACM,OAAO,CAAEC,EAAE,IAAKA,EAAE,CAAC,CAAC,CAAC;YAC1C;UACF;QACF,CACF,CAAC;QAEDP,oBAAoB,CAAC9B,IAAI,CAACgC,WAAW,CAAC;QACtCF,oBAAoB,CAAC9B,IAAI,CAAC,MAAMwC,iBAAiB,CAACR,WAAW,CAAC,CAAC,CAAC;QAChEF,oBAAoB,CAAC9B,IAAI,CAAC,MAAMgD,oBAAoB,CAACI,MAAM,CAAC,CAAC,CAAC;QAC9DtB,oBAAoB,CAAC9B,IAAI,CAACW,oBAAoB,CAAC;QAC/CmB,oBAAoB,CAAC9B,IAAI,CAAC,MACxBM,sCAA2B,CAACc,MAAM,CAACjB,QAAQ,CAC7C,CAAC;QACDX,SAAS,CAAC,4CAA4CW,QAAQ,EAAE,CAAC;MACnE,CAAC,CAAC,OAAOkB,KAAK,EAAE;QACd7B,SAAS,CACP,iDAAiDW,QAAQ,WAAWkB,KAAK,EAAE,EAC3E,OACF,CAAC;QACDf,sCAA2B,CAACc,MAAM,CAACjB,QAAQ,CAAC;QAC5CQ,oBAAoB,CAAC,CAAC;MACxB;IACF,CAAC,EAAE,CAAC;EACN;EAEA,IAAIH,mBAAmB,EAAE;IACvB;IACA;EACF;EAEAhB,SAAS,CAAC,2CAA2CW,QAAQ,EAAE,CAAC;EAChE,MAAMmB,YAAY,GAAG,MAAML,MAAM,CAACM,aAAa,CAACpB,QAAQ,CAAC;EAEzD,MAAM;IAAEqB,WAAW;IAAEC;EAAc,CAAC,GAAG,IAAAC,yBAAkB,EAACJ,YAAY,EAAEjC,IAAI,CAAC;EAC7E,IAAImC,WAAW,EAAE;IACfhC,SAAS,CACP,iEAAiEW,QAAQ,yBAC3E,CAAC;IACDC,QAAQ,CAACuB,iBAAiB,CAACxB,QAAQ,EAAEsB,aAAa,CAAC;IACnDH,YAAY,CAACM,KAAK,CAAC;MAAEC,MAAM,EAAE;IAAM,CAAC,CAAC,CAACd,KAAK,CAAEM,KAAK,IAAK;MACrD7B,SAAS,CACP,8CAA8CW,QAAQ,KAAKkB,KAAK,EAAE,EAClE,OACF,CAAC;IACH,CAAC,CAAC;EACJ;AACF,CAAC;AAACgC,OAAA,CAAAjE,0BAAA,GAAAA,0BAAA","ignoreList":[]}
1
+ {"version":3,"names":["_videoClient","require","_reactNative","_libs","_StreamVideoRN","_constants","_utils","onRingNotificationReceived","data","Platform","OS","nativeLog","message","level","getCallingxLibIfAvailable","log","pushConfig","StreamVideoRN","getConfig","push","sender","type","call_cid","callingx","getCallingxLib","pushUnsubscriptionCallbacks","has","asForegroundService","canListenToWS","backgroundTaskOwner","finishBackgroundTask","releaseBackgroundTask","abandonPush","endCallWithReason","error","stopService","delete","set","acquireBackgroundTask","catch","e","client","createStreamVideoClient","callFromPush","onRingingCall","mustEndCall","endCallReason","shouldCallBeClosed","leave","reject","unsubscribeFunctions","get","unsubscribe","on","event","_canListenToWS","forEach","fn","mustEndCallFromEvent","endCallReasonFromEvent","stateSubscription","state","callingState$","subscribe","callingState","CallingState","IDLE","LEFT","appStateSubscription","AppState","addEventListener","nextAppState","remove","exports"],"sourceRoot":"../../../../../src","sources":["utils/push/internal/android.ts"],"mappings":"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","ignoreList":[]}
@@ -4,5 +4,5 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.version = void 0;
7
- const version = exports.version = '1.45.0';
7
+ const version = exports.version = '2.0.0-beta.0';
8
8
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["version","exports"],"sourceRoot":"../../src","sources":["version.ts"],"mappings":";;;;;;AAAO,MAAMA,OAAO,GAAAC,OAAA,CAAAD,OAAA,GAAG,QAAQ","ignoreList":[]}
1
+ {"version":3,"names":["version","exports"],"sourceRoot":"../../src","sources":["version.ts"],"mappings":";;;;;;AAAO,MAAMA,OAAO,GAAAC,OAAA,CAAAD,OAAA,GAAG,cAAc","ignoreList":[]}
@@ -81,7 +81,9 @@ export const useCallingExpWithCallingStateEffect = () => {
81
81
  logger.debug(`useCallingExpWithCallingStateEffect:No active call cid to update callingx: ${activeCallCid} isCallTracked: ${isCallTracked}`);
82
82
  return;
83
83
  }
84
- callingx.updateDisplay(activeCallCid, createdByUserId ?? callDisplayName, callDisplayName, isIncoming);
84
+ callingx.updateDisplay(activeCallCid, createdByUserId ?? callDisplayName, callDisplayName, isIncoming).catch(error => {
85
+ logger.debug(`useCallingExpWithCallingStateEffect: Error updating display in callingx: ${activeCallCid}`, error);
86
+ });
85
87
  }, [activeCallCid, createdByUserId, callDisplayName, isIncoming]);
86
88
 
87
89
  // Sync microphone mute state from app → CallKit
@@ -1 +1 @@
1
- {"version":3,"names":["CallingState","videoLoggerSystem","useCall","useCallStateHooks","useEffect","useMemo","Platform","AudioDeviceModule","filter","take","getCallDisplayName","getCallingxLibIfAvailable","logger","getLogger","useCallingExpWithCallingStateEffect","useMicrophoneState","useParticipants","useCallMembers","activeCall","optimisticStatus","microphone","callMembers","participants","activeCallCid","cid","createdByUserId","state","createdBy","id","callCustomDisplayName","custom","display_name","currentUserId","isIncoming","ringing","isCreatedByMe","callDisplayName","callingx","isSetup","shouldMakeCallActive","call","isOngoingCallsEnabled","subscription","callingState$","pipe","callingState","JOINED","isCallTracked","subscribe","setCurrentCallActive","unsubscribe","debug","endCallWithReason","catch","error","updateDisplay","undefined","setMutedCall","addEventListener","event","callId","muted","isCurrentlyMuted","disable","enable","remove","activateSubscription","tracer","trace","deactivateSubscription","OS","timeouts","Set","traceRecordingState","trigger","status","isRecording","isEngineRunning","isMicrophoneMuted","warn","scheduleCheck","delayMs","timeout","setTimeout","delete","add","joinedSubscription","activationSubscription","forEach","clearTimeout","clear"],"sourceRoot":"../../../../src","sources":["hooks/push/useCallingExpWithCallingStateEffect.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["CallingState","videoLoggerSystem","useCall","useCallStateHooks","useEffect","useMemo","Platform","AudioDeviceModule","filter","take","getCallDisplayName","getCallingxLibIfAvailable","logger","getLogger","useCallingExpWithCallingStateEffect","useMicrophoneState","useParticipants","useCallMembers","activeCall","optimisticStatus","microphone","callMembers","participants","activeCallCid","cid","createdByUserId","state","createdBy","id","callCustomDisplayName","custom","display_name","currentUserId","isIncoming","ringing","isCreatedByMe","callDisplayName","callingx","isSetup","shouldMakeCallActive","call","isOngoingCallsEnabled","subscription","callingState$","pipe","callingState","JOINED","isCallTracked","subscribe","setCurrentCallActive","unsubscribe","debug","endCallWithReason","catch","error","updateDisplay","undefined","setMutedCall","addEventListener","event","callId","muted","isCurrentlyMuted","disable","enable","remove","activateSubscription","tracer","trace","deactivateSubscription","OS","timeouts","Set","traceRecordingState","trigger","status","isRecording","isEngineRunning","isMicrophoneMuted","warn","scheduleCheck","delayMs","timeout","setTimeout","delete","add","joinedSubscription","activationSubscription","forEach","clearTimeout","clear"],"sourceRoot":"../../../../src","sources":["hooks/push/useCallingExpWithCallingStateEffect.ts"],"mappings":";;AAAA,SAAeA,YAAY,EAAEC,iBAAiB,QAAQ,yBAAyB;AAC/E,SAASC,OAAO,EAAEC,iBAAiB,QAAQ,iCAAiC;AAC5E,SAASC,SAAS,EAAEC,OAAO,QAAQ,OAAO;AAC1C,SAASC,QAAQ,QAAQ,cAAc;AACvC,SAASC,iBAAiB,QAAQ,gCAAgC;AAClE,SAASC,MAAM,EAAEC,IAAI,QAAQ,gBAAgB;AAC7C,SAASC,kBAAkB,QAAQ,wCAAwC;AAC3E,SAASC,yBAAyB,QAAQ,gCAAgC;AAE1E,MAAMC,MAAM,GAAGX,iBAAiB,CAACY,SAAS,CAAC,UAAU,CAAC;;AAEtD;AACA;AACA;AACA,OAAO,MAAMC,mCAAmC,GAAGA,CAAA,KAAM;EACvD,MAAM;IAAEC,kBAAkB;IAAEC,eAAe;IAAEC;EAAe,CAAC,GAC3Dd,iBAAiB,CAAC,CAAC;EAErB,MAAMe,UAAU,GAAGhB,OAAO,CAAC,CAAC;EAC5B,MAAM;IAAEiB,gBAAgB;IAAEC;EAAW,CAAC,GAAGL,kBAAkB,CAAC,CAAC;EAC7D,MAAMM,WAAW,GAAGJ,cAAc,CAAC,CAAC;EACpC,MAAMK,YAAY,GAAGN,eAAe,CAAC,CAAC;EAEtC,MAAMO,aAAa,GAAGL,UAAU,EAAEM,GAAG;EACrC,MAAMC,eAAe,GAAGP,UAAU,EAAEQ,KAAK,CAACC,SAAS,EAAEC,EAAE;EACvD,MAAMC,qBAAqB,GAAGX,UAAU,EAAEQ,KAAK,CAACI,MAAM,EAAEC,YAAY;EACpE,MAAMC,aAAa,GAAGd,UAAU,EAAEc,aAAa;EAC/C,MAAMC,UAAU,GACbf,UAAU,EAAEgB,OAAO,IAAI,CAAChB,UAAU,EAAEiB,aAAa,IAAK,KAAK;EAE9D,MAAMC,eAAe,GAAG/B,OAAO,CAC7B,MACEwB,qBAAqB,IACrBnB,kBAAkB,CAACW,WAAW,EAAEC,YAAY,EAAEU,aAAa,CAAC,EAC9D,CAACX,WAAW,EAAEC,YAAY,EAAEU,aAAa,EAAEH,qBAAqB,CAClE,CAAC;EAEDzB,SAAS,CAAC,MAAM;IACd,MAAMiC,QAAQ,GAAG1B,yBAAyB,CAAC,CAAC;IAC5C,IAAI,CAAC0B,QAAQ,EAAEC,OAAO,IAAI,CAACpB,UAAU,EAAE;MACrC;IACF;IACA;IACA;IACA,MAAMqB,oBAAoB,GAAIC,IAAU,IAAc;MACpD;MACA;MACA,OACGA,IAAI,CAACN,OAAO,IAAIM,IAAI,CAACL,aAAa,IAClC,CAACK,IAAI,CAACN,OAAO,IAAIG,QAAQ,CAACI,qBAAsB;IAErD,CAAC;IACD,MAAMC,YAAY,GAAGxB,UAAU,CAACQ,KAAK,CAACiB,aAAa,CAChDC,IAAI,CACHpC,MAAM,CACHqC,YAAY,IACXN,oBAAoB,CAACrB,UAAU,CAAC,IAChC2B,YAAY,KAAK7C,YAAY,CAAC8C,MAAM,IACpCT,QAAQ,CAACU,aAAa,CAAC7B,UAAU,CAACM,GAAG,CACzC,CAAC,EACDf,IAAI,CAAC,CAAC,CAAC,CAAE;IACT;IACF,CAAC,CACAuC,SAAS,CAAC,MAAM;MACfX,QAAQ,CAACY,oBAAoB,CAAC/B,UAAU,CAACM,GAAG,CAAC;IAC/C,CAAC,CAAC;IACJ,OAAO,MAAM;MACXkB,YAAY,CAACQ,WAAW,CAAC,CAAC;IAC5B,CAAC;EACH,CAAC,EAAE,CAAChC,UAAU,CAAC,CAAC;EAEhBd,SAAS,CAAC,MAAM;IACd,OAAO,MAAM;MACX,MAAMiC,QAAQ,GAAG1B,yBAAyB,CAAC,CAAC;MAC5C,IAAI,CAAC0B,QAAQ,EAAEC,OAAO,IAAI,CAACf,aAAa,EAAE;QACxC;MACF;MAEA,MAAMwB,aAAa,GAAGV,QAAQ,CAACU,aAAa,CAACxB,aAAa,CAAC;MAC3D,IAAI,CAACwB,aAAa,EAAE;QAClBnC,MAAM,CAACuC,KAAK,CACV,iFAAiF5B,aAAa,mBAAmBwB,aAAa,EAChI,CAAC;QACD;MACF;MACA;MACAnC,MAAM,CAACuC,KAAK,CACV,iEAAiE5B,aAAa,EAChF,CAAC;MACDc,QAAQ,CACLe,iBAAiB,CAAC7B,aAAa,EAAE,OAAO,CAAC,CACzC8B,KAAK,CAAEC,KAAc,IAAK;QACzB1C,MAAM,CAAC0C,KAAK,CACV,uEAAuE/B,aAAa,EAAE,EACtF+B,KACF,CAAC;MACH,CAAC,CAAC;IACN,CAAC;EACH,CAAC,EAAE,CAAC/B,aAAa,CAAC,CAAC;EAEnBnB,SAAS,CAAC,MAAM;IACd,MAAMiC,QAAQ,GAAG1B,yBAAyB,CAAC,CAAC;IAC5C,IAAI,CAAC0B,QAAQ,EAAEC,OAAO,IAAI,CAACf,aAAa,EAAE;MACxC;IACF;IAEA,MAAMwB,aAAa,GAAGV,QAAQ,CAACU,aAAa,CAACxB,aAAa,CAAC;IAC3D,IAAI,CAACwB,aAAa,EAAE;MAClBnC,MAAM,CAACuC,KAAK,CACV,8EAA8E5B,aAAa,mBAAmBwB,aAAa,EAC7H,CAAC;MACD;IACF;IAEAV,QAAQ,CACLkB,aAAa,CACZhC,aAAa,EACbE,eAAe,IAAIW,eAAe,EAClCA,eAAe,EACfH,UACF,CAAC,CACAoB,KAAK,CAAEC,KAAc,IAAK;MACzB1C,MAAM,CAACuC,KAAK,CACV,4EAA4E5B,aAAa,EAAE,EAC3F+B,KACF,CAAC;IACH,CAAC,CAAC;EACN,CAAC,EAAE,CAAC/B,aAAa,EAAEE,eAAe,EAAEW,eAAe,EAAEH,UAAU,CAAC,CAAC;;EAEjE;EACA7B,SAAS,CAAC,MAAM;IACd,MAAMiC,QAAQ,GAAG1B,yBAAyB,CAAC,CAAC;IAC5C,IAAI,CAAC0B,QAAQ,EAAEC,OAAO,IAAI,CAACf,aAAa,EAAE;MACxC;IACF;IAEA,MAAMwB,aAAa,GAAGV,QAAQ,CAACU,aAAa,CAACxB,aAAa,CAAC;IAC3D,IAAI,CAACwB,aAAa,EAAE;MAClBnC,MAAM,CAACuC,KAAK,CACV,wFAAwF5B,aAAa,mBAAmBwB,aAAa,EACvI,CAAC;MACD;IACF;IAEA,IAAI5B,gBAAgB,KAAKqC,SAAS,EAAE;MAClC5C,MAAM,CAACuC,KAAK,CACV,gGAAgG5B,aAAa,EAC/G,CAAC;MACD;IACF;IACAc,QAAQ,CAACoB,YAAY,CAAClC,aAAa,EAAEJ,gBAAgB,KAAK,UAAU,CAAC;EACvE,CAAC,EAAE,CAACI,aAAa,EAAEJ,gBAAgB,CAAC,CAAC;;EAErC;EACAf,SAAS,CAAC,MAAM;IACd,MAAMiC,QAAQ,GAAG1B,yBAAyB,CAAC,CAAC;IAC5C,IAAI,CAAC0B,QAAQ,EAAEC,OAAO,IAAI,CAACf,aAAa,EAAE;MACxCX,MAAM,CAACuC,KAAK,CACV,wFAAwF5B,aAAa,sBAAsBc,QAAQ,EAAEC,OAAO,EAC9I,CAAC;MACD;IACF;;IAEA;IACA;IACA;IACA;IACA,MAAMI,YAAY,GAAGL,QAAQ,CAACqB,gBAAgB,CAC5C,8BAA8B,EAC9B,MAAOC,KAAyC,IAAK;MACnD,MAAM;QAAEC,MAAM;QAAEC;MAAM,CAAC,GAAGF,KAAK;MAE/B,MAAMZ,aAAa,GAAGV,QAAQ,CAACU,aAAa,CAACxB,aAAa,CAAC;MAC3D,IAAI,CAACwB,aAAa,IAAIa,MAAM,KAAKrC,aAAa,EAAE;QAC9CX,MAAM,CAACuC,KAAK,CACV,wFAAwF5B,aAAa,mBAAmBwB,aAAa,YAAYa,MAAM,EACzJ,CAAC;QACD;MACF;MAEA,MAAME,gBAAgB,GACpB1C,UAAU,CAACM,KAAK,CAACP,gBAAgB,KAAK,UAAU;MAClD,IAAI2C,gBAAgB,KAAKD,KAAK,EAAE;QAC9BjD,MAAM,CAACuC,KAAK,CACV,oFAAoFU,KAAK,cAActC,aAAa,EACtH,CAAC;QACD;MACF;MAEA,IAAI;QACF,IAAIsC,KAAK,EAAE;UACT,MAAMzC,UAAU,CAAC2C,OAAO,CAAC,CAAC;QAC5B,CAAC,MAAM;UACL,MAAM3C,UAAU,CAAC4C,MAAM,CAAC,CAAC;QAC3B;MACF,CAAC,CAAC,OAAOV,KAAc,EAAE;QACvB1C,MAAM,CAAC0C,KAAK,CACV,2EAA2E/B,aAAa,EAAE,EAC1F+B,KACF,CAAC;MACH;IACF,CACF,CAAC;IAED,OAAO,MAAM;MACXZ,YAAY,CAACuB,MAAM,CAAC,CAAC;IACvB,CAAC;EACH,CAAC,EAAE,CAAC1C,aAAa,EAAEH,UAAU,CAAC,CAAC;;EAE/B;EACAhB,SAAS,CAAC,MAAM;IACd,MAAMiC,QAAQ,GAAG1B,yBAAyB,CAAC,CAAC;IAC5C,IAAI,CAAC0B,QAAQ,EAAEC,OAAO,IAAI,CAACpB,UAAU,EAAE;MACrC;IACF;IAEA,MAAMgD,oBAAoB,GAAG7B,QAAQ,CAACqB,gBAAgB,CACpD,yBAAyB,EACzB,MAAM;MACJxC,UAAU,CAACiD,MAAM,CAACC,KAAK,CAAC,kCAAkC,EAAE,IAAI,CAAC;IACnE,CACF,CAAC;IACD,MAAMC,sBAAsB,GAAGhC,QAAQ,CAACqB,gBAAgB,CACtD,2BAA2B,EAC3B,MAAM;MACJxC,UAAU,CAACiD,MAAM,CAACC,KAAK,CAAC,oCAAoC,EAAE,IAAI,CAAC;IACrE,CACF,CAAC;IAED,OAAO,MAAM;MACXF,oBAAoB,CAACD,MAAM,CAAC,CAAC;MAC7BI,sBAAsB,CAACJ,MAAM,CAAC,CAAC;IACjC,CAAC;EACH,CAAC,EAAE,CAAC/C,UAAU,CAAC,CAAC;;EAEhB;EACA;EACA;EACA;EACA;EACA;EACAd,SAAS,CAAC,MAAM;IACd,MAAMiC,QAAQ,GAAG1B,yBAAyB,CAAC,CAAC;IAC5C,IAAIL,QAAQ,CAACgE,EAAE,KAAK,KAAK,IAAI,CAACjC,QAAQ,EAAEC,OAAO,IAAI,CAACpB,UAAU,EAAE;MAC9D;IACF;IAEA,MAAMqD,QAAQ,GAAG,IAAIC,GAAG,CAAgC,CAAC;IAEzD,MAAMC,mBAAmB,GAAIC,OAAe,IAAK;MAC/C,IAAIxD,UAAU,CAACQ,KAAK,CAACmB,YAAY,KAAK7C,YAAY,CAAC8C,MAAM,EAAE;MAC3D,IAAI5B,UAAU,CAACE,UAAU,CAACM,KAAK,CAACiD,MAAM,KAAK,SAAS,EAAE;MAEtD,IAAIjD,KAAK;MACT,IAAI;QACFA,KAAK,GAAG;UACNgD,OAAO;UACPE,WAAW,EAAErE,iBAAiB,CAACqE,WAAW,CAAC,CAAC;UAC5CC,eAAe,EAAEtE,iBAAiB,CAACsE,eAAe,CAAC,CAAC;UACpDC,iBAAiB,EAAEvE,iBAAiB,CAACuE,iBAAiB,CAAC;QACzD,CAAC;MACH,CAAC,CAAC,OAAOxB,KAAc,EAAE;QACvB1C,MAAM,CAACmE,IAAI,CAAC,wCAAwC,EAAEzB,KAAK,CAAC;QAC5D;MACF;MAEApC,UAAU,CAACiD,MAAM,CAACC,KAAK,CAAC,0BAA0B,EAAE1C,KAAK,CAAC;MAC1D,IAAI,CAACA,KAAK,CAACkD,WAAW,EAAE;QACtBhE,MAAM,CAACmE,IAAI,CAAC,yCAAyC,EAAErD,KAAK,CAAC;MAC/D;IACF,CAAC;IAED,MAAMsD,aAAa,GAAGA,CAACN,OAAe,EAAEO,OAAe,KAAK;MAC1D,MAAMC,OAAO,GAAGC,UAAU,CAAC,MAAM;QAC/BZ,QAAQ,CAACa,MAAM,CAACF,OAAO,CAAC;QACxBT,mBAAmB,CAACC,OAAO,CAAC;MAC9B,CAAC,EAAEO,OAAO,CAAC;MACXV,QAAQ,CAACc,GAAG,CAACH,OAAO,CAAC;IACvB,CAAC;IAED,MAAMI,kBAAkB,GAAGpE,UAAU,CAACQ,KAAK,CAACiB,aAAa,CACtDC,IAAI,CACHpC,MAAM,CAAEqC,YAAY,IAAKA,YAAY,KAAK7C,YAAY,CAAC8C,MAAM,CAAC,EAC9DrC,IAAI,CAAC,CAAC,CACR;IACA;IAAA,CACCuC,SAAS,CAAC,MAAMgC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAEjD,MAAMO,sBAAsB,GAAGlD,QAAQ,CAACqB,gBAAgB,CACtD,yBAAyB;IACzB;IACA,MAAMsB,aAAa,CAAC,uBAAuB,EAAE,IAAI,CACnD,CAAC;IAED,OAAO,MAAM;MACXM,kBAAkB,CAACpC,WAAW,CAAC,CAAC;MAChCqC,sBAAsB,CAACtB,MAAM,CAAC,CAAC;MAC/BM,QAAQ,CAACiB,OAAO,CAACC,YAAY,CAAC;MAC9BlB,QAAQ,CAACmB,KAAK,CAAC,CAAC;IAClB,CAAC;EACH,CAAC,EAAE,CAACxE,UAAU,CAAC,CAAC;AAClB,CAAC","ignoreList":[]}
@@ -5,7 +5,7 @@ import { useEffect, useRef } from 'react';
5
5
  import { StreamVideoRN } from '../utils';
6
6
  import { AppState, NativeModules, PermissionsAndroid, Platform } from 'react-native';
7
7
  import { CallingState, videoLoggerSystem } from '@stream-io/video-client';
8
- import { keepCallAliveCallRef } from '../utils/keepCallAliveHeadlessTask';
8
+ import { endKeepCallAliveHeadlessTask, keepCallAliveCallRef } from '../utils/keepCallAliveHeadlessTask';
9
9
  import { getCallingxLibIfAvailable } from '../utils/push/libs';
10
10
  async function stopForegroundServiceNoThrow() {
11
11
  const logger = videoLoggerSystem.getLogger('stopForegroundServiceNoThrow');
@@ -15,6 +15,10 @@ async function stopForegroundServiceNoThrow() {
15
15
  logger.warn('Failed to stop keep-call-alive foreground service', e);
16
16
  }
17
17
  }
18
+
19
+ /**
20
+ * @returns true when the native foreground service was asked to start.
21
+ */
18
22
  async function startForegroundService(call_cid) {
19
23
  const logger = videoLoggerSystem.getLogger('startForegroundService');
20
24
  const isCallAliveConfigured = await (async () => {
@@ -26,14 +30,14 @@ async function startForegroundService(call_cid) {
26
30
  }
27
31
  })();
28
32
  if (!isCallAliveConfigured) {
29
- logger.info('KeepCallAlive is not configured. Skipping foreground service setup.');
30
- return;
33
+ logger.warn('KeepCallAlive is not configured, the call will not survive the app going to the ' + 'background: audio publishing stops and the user is eventually dropped from the call. ' + 'Declare android.permission.FOREGROUND_SERVICE and ' + 'android.permission.FOREGROUND_SERVICE_MEDIA_PLAYBACK in the app manifest (see logcat, ' + 'tag StreamVideoReactNative, for the exact list of missing permissions).');
34
+ return false;
31
35
  }
32
36
  // Check for notification permission (Android 13+) before starting the service.
33
37
  const hasPostNotificationsPermission = Number(Platform.Version) < 33 || (await PermissionsAndroid.check(PermissionsAndroid.PERMISSIONS.POST_NOTIFICATIONS));
34
38
  if (!hasPostNotificationsPermission) {
35
39
  logger.info('Notification permission not granted, can not start foreground service to keep the call alive');
36
- return;
40
+ return false;
37
41
  }
38
42
  const videoConfig = StreamVideoRN.getConfig();
39
43
  const foregroundServiceConfig = videoConfig.foregroundService;
@@ -44,12 +48,25 @@ async function startForegroundService(call_cid) {
44
48
  // NOTE: we use requestAnimationFrame to ensure that the foreground service is started after all the current UI operations are done
45
49
  // this is a workaround for the crash - android.app.RemoteServiceException$ForegroundServiceDidNotStartInTimeException: Context.startForegroundService() did not then call Service.startForeground()
46
50
  // this crash was reproducible only in some android devices
47
- requestAnimationFrame(async () => {
48
- try {
49
- await NativeModules.StreamVideoReactNative.startKeepCallAliveService(call_cid, channel.id, channel.name, notificationTexts.title, notificationTexts.body, smallIconName ?? null);
50
- } catch (e) {
51
- logger.warn('Failed to start keep-call-alive foreground service', e);
52
- }
51
+ return new Promise(resolve => {
52
+ requestAnimationFrame(async () => {
53
+ // The service declares the camera/microphone foreground service types, which are
54
+ // while-in-use permissions: Android requires startForegroundService() to be called while the
55
+ // app has a visible activity, otherwise the start is rejected. The frame we deferred to can
56
+ // land after the app left the foreground, so re-check before calling native.
57
+ if (AppState.currentState !== 'active') {
58
+ logger.info('App is no longer in the foreground, not starting the keep-call-alive foreground service');
59
+ resolve(false);
60
+ return;
61
+ }
62
+ try {
63
+ await NativeModules.StreamVideoReactNative.startKeepCallAliveService(call_cid, channel.id, channel.name, notificationTexts.title, notificationTexts.body, smallIconName ?? null);
64
+ resolve(true);
65
+ } catch (e) {
66
+ logger.warn('Failed to start keep-call-alive foreground service', e);
67
+ resolve(false);
68
+ }
69
+ });
53
70
  });
54
71
  }
55
72
 
@@ -110,8 +127,15 @@ export const useAndroidKeepCallAliveEffect = () => {
110
127
  if (foregroundServiceStartedRef.current) {
111
128
  return;
112
129
  }
113
- await startForegroundService(activeCallCid);
114
- foregroundServiceStartedRef.current = true;
130
+ try {
131
+ // only mark as started when native actually accepted the start, so that a later render
132
+ // while still joined can retry.
133
+ foregroundServiceStartedRef.current = await startForegroundService(activeCallCid);
134
+ } catch (e) {
135
+ // run() is intentionally not awaited, so anything thrown here would surface as an
136
+ // unhandled rejection. Leave the ref false so a later render can retry.
137
+ videoLoggerSystem.getLogger('useAndroidKeepCallAliveEffect').warn('Failed to start the keep-call-alive foreground service', e);
138
+ }
115
139
  };
116
140
 
117
141
  // ensure that app is active before running the function
@@ -130,6 +154,8 @@ export const useAndroidKeepCallAliveEffect = () => {
130
154
  } else if (isCallEnded) {
131
155
  if (foregroundServiceStartedRef.current) {
132
156
  keepCallAliveCallRef.current = undefined;
157
+ // let the headless task resolve so RN unwinds it, then stop the foreground service
158
+ endKeepCallAliveHeadlessTask();
133
159
  // stop foreground service when the call is not active
134
160
  stopForegroundServiceNoThrow();
135
161
  foregroundServiceStartedRef.current = false;
@@ -142,6 +168,7 @@ export const useAndroidKeepCallAliveEffect = () => {
142
168
  // stop foreground service when this effect is unmounted
143
169
  if (foregroundServiceStartedRef.current) {
144
170
  keepCallAliveCallRef.current = undefined;
171
+ endKeepCallAliveHeadlessTask();
145
172
  stopForegroundServiceNoThrow();
146
173
  foregroundServiceStartedRef.current = false;
147
174
  }
@@ -1 +1 @@
1
- {"version":3,"names":["useCall","useCallStateHooks","useEffect","useRef","StreamVideoRN","AppState","NativeModules","PermissionsAndroid","Platform","CallingState","videoLoggerSystem","keepCallAliveCallRef","getCallingxLibIfAvailable","stopForegroundServiceNoThrow","logger","getLogger","StreamVideoReactNative","stopKeepCallAliveService","e","warn","startForegroundService","call_cid","isCallAliveConfigured","info","hasPostNotificationsPermission","Number","Version","check","PERMISSIONS","POST_NOTIFICATIONS","videoConfig","getConfig","foregroundServiceConfig","foregroundService","notificationTexts","android","channel","smallIconName","push","smallIcon","requestAnimationFrame","startKeepCallAliveService","id","name","title","body","useAndroidKeepCallAliveEffect","foregroundServiceStartedRef","callingxKeepAliveOwnerRef","undefined","call","current","activeCallCid","cid","useCallCallingState","callingState","isCallJoined","JOINED","isRingingCall","ringing","shouldStartForegroundService","OS","callingx","isCallingxManaged","isSetup","isOngoingCallsEnabled","isCallEnded","IDLE","LEFT","currentOwner","releaseBackgroundTask","catch","owner","acquireBackgroundTask","run","currentState","sub","addEventListener","nextAppState","remove"],"sourceRoot":"../../../src","sources":["hooks/useAndroidKeepCallAliveEffect.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["useCall","useCallStateHooks","useEffect","useRef","StreamVideoRN","AppState","NativeModules","PermissionsAndroid","Platform","CallingState","videoLoggerSystem","endKeepCallAliveHeadlessTask","keepCallAliveCallRef","getCallingxLibIfAvailable","stopForegroundServiceNoThrow","logger","getLogger","StreamVideoReactNative","stopKeepCallAliveService","e","warn","startForegroundService","call_cid","isCallAliveConfigured","hasPostNotificationsPermission","Number","Version","check","PERMISSIONS","POST_NOTIFICATIONS","info","videoConfig","getConfig","foregroundServiceConfig","foregroundService","notificationTexts","android","channel","smallIconName","push","smallIcon","Promise","resolve","requestAnimationFrame","currentState","startKeepCallAliveService","id","name","title","body","useAndroidKeepCallAliveEffect","foregroundServiceStartedRef","callingxKeepAliveOwnerRef","undefined","call","current","activeCallCid","cid","useCallCallingState","callingState","isCallJoined","JOINED","isRingingCall","ringing","shouldStartForegroundService","OS","callingx","isCallingxManaged","isSetup","isOngoingCallsEnabled","isCallEnded","IDLE","LEFT","currentOwner","releaseBackgroundTask","catch","owner","acquireBackgroundTask","run","sub","addEventListener","nextAppState","remove"],"sourceRoot":"../../../src","sources":["hooks/useAndroidKeepCallAliveEffect.ts"],"mappings":"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","ignoreList":[]}