@stream-io/video-react-native-sdk 1.45.0 → 1.45.2

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 (55) hide show
  1. package/CHANGELOG.md +31 -7
  2. package/android/build.gradle +7 -1
  3. package/android/src/main/java/com/streamvideo/reactnative/audio/AudioDeviceManager.kt +110 -58
  4. package/android/src/main/java/com/streamvideo/reactnative/audio/CommunicationModeKeepAlive.kt +247 -0
  5. package/android/src/main/java/com/streamvideo/reactnative/callmanager/StreamInCallManagerModule.kt +16 -5
  6. package/android/src/main/java/com/streamvideo/reactnative/keepalive/StreamCallKeepAliveHeadlessService.kt +112 -26
  7. package/android/src/main/java/com/streamvideo/reactnative/util/CallAlivePermissionsHelper.kt +68 -37
  8. package/dist/commonjs/hooks/push/useCallingExpWithCallingStateEffect.js +3 -1
  9. package/dist/commonjs/hooks/push/useCallingExpWithCallingStateEffect.js.map +1 -1
  10. package/dist/commonjs/hooks/useAndroidKeepCallAliveEffect.js +38 -11
  11. package/dist/commonjs/hooks/useAndroidKeepCallAliveEffect.js.map +1 -1
  12. package/dist/commonjs/utils/StreamVideoRN/index.js +23 -0
  13. package/dist/commonjs/utils/StreamVideoRN/index.js.map +1 -1
  14. package/dist/commonjs/utils/internal/callingx/callingx.js +37 -55
  15. package/dist/commonjs/utils/internal/callingx/callingx.js.map +1 -1
  16. package/dist/commonjs/utils/keepCallAliveHeadlessTask.js +43 -4
  17. package/dist/commonjs/utils/keepCallAliveHeadlessTask.js.map +1 -1
  18. package/dist/commonjs/utils/push/internal/android.js +28 -10
  19. package/dist/commonjs/utils/push/internal/android.js.map +1 -1
  20. package/dist/commonjs/version.js +1 -1
  21. package/dist/module/hooks/push/useCallingExpWithCallingStateEffect.js +3 -1
  22. package/dist/module/hooks/push/useCallingExpWithCallingStateEffect.js.map +1 -1
  23. package/dist/module/hooks/useAndroidKeepCallAliveEffect.js +39 -12
  24. package/dist/module/hooks/useAndroidKeepCallAliveEffect.js.map +1 -1
  25. package/dist/module/utils/StreamVideoRN/index.js +23 -0
  26. package/dist/module/utils/StreamVideoRN/index.js.map +1 -1
  27. package/dist/module/utils/internal/callingx/callingx.js +37 -55
  28. package/dist/module/utils/internal/callingx/callingx.js.map +1 -1
  29. package/dist/module/utils/keepCallAliveHeadlessTask.js +41 -3
  30. package/dist/module/utils/keepCallAliveHeadlessTask.js.map +1 -1
  31. package/dist/module/utils/push/internal/android.js +28 -10
  32. package/dist/module/utils/push/internal/android.js.map +1 -1
  33. package/dist/module/version.js +1 -1
  34. package/dist/typescript/hooks/push/useCallingExpWithCallingStateEffect.d.ts.map +1 -1
  35. package/dist/typescript/hooks/useAndroidKeepCallAliveEffect.d.ts.map +1 -1
  36. package/dist/typescript/utils/StreamVideoRN/index.d.ts +13 -0
  37. package/dist/typescript/utils/StreamVideoRN/index.d.ts.map +1 -1
  38. package/dist/typescript/utils/StreamVideoRN/types.d.ts +1 -2
  39. package/dist/typescript/utils/StreamVideoRN/types.d.ts.map +1 -1
  40. package/dist/typescript/utils/internal/callingx/callingx.d.ts.map +1 -1
  41. package/dist/typescript/utils/keepCallAliveHeadlessTask.d.ts +9 -0
  42. package/dist/typescript/utils/keepCallAliveHeadlessTask.d.ts.map +1 -1
  43. package/dist/typescript/utils/push/internal/android.d.ts.map +1 -1
  44. package/dist/typescript/version.d.ts +1 -1
  45. package/expo-config-plugin/dist/withAndroidPermissions.js +1 -1
  46. package/package.json +6 -6
  47. package/src/hooks/push/useCallingExpWithCallingStateEffect.ts +13 -6
  48. package/src/hooks/useAndroidKeepCallAliveEffect.ts +59 -21
  49. package/src/modules/call-manager/native-module.d.ts +14 -0
  50. package/src/utils/StreamVideoRN/index.ts +27 -0
  51. package/src/utils/StreamVideoRN/types.ts +1 -2
  52. package/src/utils/internal/callingx/callingx.ts +47 -66
  53. package/src/utils/keepCallAliveHeadlessTask.ts +45 -3
  54. package/src/utils/push/internal/android.ts +31 -10
  55. package/src/version.ts +1 -1
@@ -31,8 +31,21 @@ export function getCallDisplayName(callMembers, participants, currentUserId) {
31
31
  }
32
32
  return names.sort().join(', ');
33
33
  }
34
- function getCallDisplayNameFromCall(call) {
35
- return call.state.custom?.display_name || getCallDisplayName(call.state.members, call.state.participants, call.currentUserId);
34
+
35
+ /**
36
+ * Args shared by the callingx call registration APIs:
37
+ * `(callId, phoneNumber, callerName, hasVideo)`.
38
+ */
39
+ function getCallingxCallArgs(call) {
40
+ const callDisplayName = call.state.custom?.display_name || getCallDisplayName(call.state.members, call.state.participants, call.currentUserId);
41
+ return [call.cid,
42
+ // unique id for call
43
+ call.state.createdBy?.id ?? callDisplayName,
44
+ // handle for native call UI (prefer createdBy user id, fallback to call display name)
45
+ callDisplayName,
46
+ // display name for display in call screen
47
+ call.state.settings?.video?.enabled ?? false // is video call?
48
+ ];
36
49
  }
37
50
  export async function registerOutgoingCall(call) {
38
51
  if (!CallingxModule || !CallingxModule.isSetup || call.isOwnTracksLoopbackAllowed) {
@@ -45,15 +58,7 @@ export async function registerOutgoingCall(call) {
45
58
  const logger = videoLoggerSystem.getLogger('callingx');
46
59
  try {
47
60
  logger.debug(`registerOutgoingCall: Registering outgoing call ${call.cid}`);
48
- const callDisplayName = getCallDisplayNameFromCall(call);
49
- await CallingxModule.startCall(call.cid,
50
- // unique id for call
51
- call.state.createdBy?.id ?? callDisplayName,
52
- // handle for native call UI (prefer createdBy user id, fallback to call display name)
53
- callDisplayName,
54
- // display name for display in call screen
55
- call.state.settings?.video?.enabled ?? false // is video call?
56
- );
61
+ await CallingxModule.startCall(...getCallingxCallArgs(call));
57
62
  } catch (error) {
58
63
  logger.error(`registerOutgoingCall: Error registering outgoing call in callingx: ${call.cid}`, error);
59
64
  }
@@ -74,53 +79,30 @@ export async function joinCallingxCall(call, activeCalls) {
74
79
  const logger = videoLoggerSystem.getLogger('callingx');
75
80
  const isOutcomingCall = call.ringing && call.isCreatedByMe;
76
81
  const isIncomingCall = call.ringing && !call.isCreatedByMe;
77
- const startCallInCallingx = async () => {
78
- logger.debug(`joinCallingxCall: Joining call ${call.cid}`);
79
- const callDisplayName = getCallDisplayNameFromCall(call);
80
- await CallingxModule.startCall(call.cid,
81
- // unique id for call
82
- call.state.createdBy?.id ?? callDisplayName,
83
- // handle for native call UI (prefer createdBy user id, fallback to call display name)
84
- callDisplayName,
85
- // display name for display in call screen
86
- call.state.settings?.video?.enabled ?? false // is video call?
87
- );
88
- };
89
- if (isOutcomingCall || !call.ringing && CallingxModule.isOngoingCallsEnabled) {
90
- try {
91
- await startCallInCallingx();
92
- } catch (error) {
93
- logger.error(`startCallingxCall: Error starting call in callingx: ${call.cid}`, error);
82
+ const isOngoingCall = c => !c.ringing && CallingxModule.isOngoingCallsEnabled && !c.isOwnTracksLoopbackAllowed;
83
+ if (!isIncomingCall && !isOutcomingCall && !isOngoingCall(call)) {
84
+ return;
85
+ }
86
+ try {
87
+ const activeCallsToLeave = activeCalls.filter(c => c.cid !== call.cid && (c.ringing || isOngoingCall(c)) && c.state.callingState !== CallingState.LEFT);
88
+ for (const activeCall of activeCallsToLeave) {
89
+ logger.debug(`leaving currently-active-call:${activeCall.cid} before joining the call:${call.cid}`);
90
+ await activeCall.leave({
91
+ reason: 'cancel'
92
+ }).catch(e => {
93
+ logger.error(`failed to leave active call ${activeCall.cid}`, e);
94
+ });
94
95
  }
95
- } else if (isIncomingCall) {
96
- logger.debug(`joinCallingxCall: Joining incoming call ${call.cid}`);
97
- try {
98
- // Leave any existing active ringing calls before joining a new ringing call
99
- const activeCallsToLeave = activeCalls.filter(c => c.cid !== call.cid && c.ringing && c.state.callingState !== CallingState.LEFT);
100
- for (const activeCall of activeCallsToLeave) {
101
- logger.debug(`leaving active call ${activeCall.cid} before joining ${call.cid}`);
102
- await activeCall.leave({
103
- reason: 'cancel'
104
- }).catch(e => {
105
- logger.error(`failed to leave active call ${activeCall.cid}`, e);
106
- });
107
- }
108
- // Awaits native CallKit/Telecom registration before answering.
109
- // Safe to call even if the call is already registered (e.g. from VoIP push) --
110
- // iOS early-returns with no error, Android sends the registered broadcast.
111
- const callDisplayName = getCallDisplayNameFromCall(call);
112
- await CallingxModule.displayIncomingCall(call.cid,
113
- // unique id for call
114
- call.state.createdBy?.id ?? callDisplayName,
115
- // handle for native call UI (prefer createdBy user id, fallback to call display name)
116
- callDisplayName,
117
- // display name for display in call screen
118
- call.state.settings?.video?.enabled ?? false // is video call?
119
- );
96
+ logger.debug(`joinCallingxCall: Joining call ${call.cid} isIncoming: ${isIncomingCall} isOutgoing: ${isOutcomingCall}`);
97
+ const callArgs = getCallingxCallArgs(call);
98
+ if (isIncomingCall) {
99
+ await CallingxModule.displayIncomingCall(...callArgs);
120
100
  await CallingxModule.answerIncomingCall(call.cid);
121
- } catch (error) {
122
- logger.error(`Error joining incoming call in callingx: ${call.cid}`, error);
101
+ } else {
102
+ await CallingxModule.startCall(...callArgs);
123
103
  }
104
+ } catch (error) {
105
+ logger.error(`startCallingxCall: Error starting call in callingx: ${call.cid} isIncoming: ${isIncomingCall} isOutgoing: ${isOutcomingCall}`, error);
124
106
  }
125
107
  }
126
108
  export async function endCallingxCall(call, reason) {
@@ -1 +1 @@
1
- {"version":3,"names":["Platform","getCallingxLibIfAvailable","CallingState","videoLoggerSystem","CallingxModule","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","getLogger","debug","cid","callDisplayName","startCall","createdBy","settings","video","enabled","error","joinCallingxCall","activeCalls","isIncomingCall","startCallInCallingx","isOngoingCallsEnabled","activeCallsToLeave","filter","c","callingState","LEFT","activeCall","leave","reason","catch","e","displayIncomingCall","answerIncomingCall","endCallingxCall","isCallTracked","endCallWithReason","wireAudioEngineSubscription","OS","unwireAudioEngineSubscription"],"sourceRoot":"../../../../../src","sources":["utils/internal/callingx/callingx.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Platform","getCallingxLibIfAvailable","CallingState","videoLoggerSystem","CallingxModule","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","getLogger","debug","startCall","error","joinCallingxCall","activeCalls","isIncomingCall","isOngoingCall","c","isOngoingCallsEnabled","activeCallsToLeave","filter","callingState","LEFT","activeCall","leave","reason","catch","e","callArgs","displayIncomingCall","answerIncomingCall","endCallingxCall","isCallTracked","endCallWithReason","wireAudioEngineSubscription","OS","unwireAudioEngineSubscription"],"sourceRoot":"../../../../../src","sources":["utils/internal/callingx/callingx.ts"],"mappings":"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","ignoreList":[]}
@@ -12,6 +12,20 @@ export const KEEP_CALL_ALIVE_HEADLESS_TASK_NAME = 'StreamVideoKeepCallAlive';
12
12
  export const keepCallAliveCallRef = {
13
13
  current: undefined
14
14
  };
15
+ let resolveRunningTask;
16
+
17
+ /**
18
+ * Ends the currently running keep-alive headless task.
19
+ *
20
+ * The task's promise is app-provided (`foregroundService.android.taskToRun`) and by default never
21
+ * resolves, so stopping the native service alone would leave the task registered in
22
+ * `HeadlessJsTaskContext` forever - which keeps RN's timer choreographer callback posted for the
23
+ * rest of the process lifetime. Resolving it here lets React Native unwind the task properly.
24
+ */
25
+ export const endKeepCallAliveHeadlessTask = () => {
26
+ resolveRunningTask?.();
27
+ resolveRunningTask = undefined;
28
+ };
15
29
  function registerKeepCallAliveHeadlessTaskOnce() {
16
30
  if (Platform.OS !== 'android') return;
17
31
  AppRegistry.registerHeadlessTask(KEEP_CALL_ALIVE_HEADLESS_TASK_NAME, () => async data => {
@@ -33,10 +47,34 @@ function registerKeepCallAliveHeadlessTaskOnce() {
33
47
  }
34
48
  const config = StreamVideoRN.getConfig();
35
49
  const taskToRun = config.foregroundService.android.taskToRun;
50
+ // A previous task (if any) must not keep hanging around.
51
+ endKeepCallAliveHeadlessTask();
52
+ const taskEnded = new Promise(resolve => {
53
+ resolveRunningTask = resolve;
54
+ });
55
+ const ownResolver = resolveRunningTask;
56
+
57
+ // React Native stops the foreground service as soon as the promise returned from here
58
+ // settles. `taskToRun` is app-provided and may resolve early - or immediately - so its
59
+ // completion must not end the keep-alive: that would drop the call's background protection
60
+ // while the call is still ongoing. The task's lifetime is owned by the SDK instead, and ends
61
+ // via endKeepCallAliveHeadlessTask() when the call is left.
62
+ (async () => {
63
+ try {
64
+ await taskToRun(call);
65
+ logger.debug('Keep-alive taskToRun completed, keeping the call alive until the call ends');
66
+ } catch (e) {
67
+ logger.error('Keep-alive headless task failed', e);
68
+ }
69
+ })();
36
70
  try {
37
- await taskToRun(call);
38
- } catch (e) {
39
- logger.error('Keep-alive headless task failed', e);
71
+ await taskEnded;
72
+ } finally {
73
+ // a newer task may already have installed its own resolver - clearing it here would leave
74
+ // that task with no way to be ended.
75
+ if (resolveRunningTask === ownResolver) {
76
+ resolveRunningTask = undefined;
77
+ }
40
78
  }
41
79
  });
42
80
  }
@@ -1 +1 @@
1
- {"version":3,"names":["AppRegistry","Platform","videoLoggerSystem","StreamVideoRN","KEEP_CALL_ALIVE_HEADLESS_TASK_NAME","keepCallAliveCallRef","current","undefined","registerKeepCallAliveHeadlessTaskOnce","OS","registerHeadlessTask","data","logger","getLogger","callCid","call","warn","cid","activeCallCid","config","getConfig","taskToRun","foregroundService","android","e","error"],"sourceRoot":"../../../src","sources":["utils/keepCallAliveHeadlessTask.ts"],"mappings":";;AAAA,SAASA,WAAW,EAAEC,QAAQ,QAAQ,cAAc;AAEpD,SAASC,iBAAiB,QAAQ,yBAAyB;AAC3D,SAASC,aAAa,QAAQ,iBAAiB;AAE/C,OAAO,MAAMC,kCAAkC,GAAG,0BAA0B;;AAE5E;AACA;AACA;AACA;AACA,OAAO,MAAMC,oBAAmD,GAAG;EACjEC,OAAO,EAAEC;AACX,CAAC;AAED,SAASC,qCAAqCA,CAAA,EAAG;EAC/C,IAAIP,QAAQ,CAACQ,EAAE,KAAK,SAAS,EAAE;EAE/BT,WAAW,CAACU,oBAAoB,CAC9BN,kCAAkC,EAClC,MAAM,MAAOO,IAAsC,IAAK;IACtD,MAAMC,MAAM,GAAGV,iBAAiB,CAACW,SAAS,CACxC,+BACF,CAAC;IACD,MAAMC,OAAO,GAAGH,IAAI,EAAEG,OAAO;IAE7B,MAAMC,IAAI,GAAGV,oBAAoB,CAACC,OAAO;IACzC,IAAI,CAACS,IAAI,EAAE;MACTH,MAAM,CAACI,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/CF,MAAM,CAACI,IAAI,CACT,+DAA+D,EAC/D;QAAEF,OAAO;QAAEI,aAAa,EAAEH,IAAI,CAACE;MAAI,CACrC,CAAC;MACD;IACF;IAEA,MAAME,MAAM,GAAGhB,aAAa,CAACiB,SAAS,CAAC,CAAC;IACxC,MAAMC,SAAS,GAAGF,MAAM,CAACG,iBAAiB,CAACC,OAAO,CAACF,SAAS;IAC5D,IAAI;MACF,MAAMA,SAAS,CAACN,IAAI,CAAC;IACvB,CAAC,CAAC,OAAOS,CAAC,EAAE;MACVZ,MAAM,CAACa,KAAK,CAAC,iCAAiC,EAAED,CAAC,CAAC;IACpD;EACF,CACF,CAAC;AACH;AAEAhB,qCAAqC,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["AppRegistry","Platform","videoLoggerSystem","StreamVideoRN","KEEP_CALL_ALIVE_HEADLESS_TASK_NAME","keepCallAliveCallRef","current","undefined","resolveRunningTask","endKeepCallAliveHeadlessTask","registerKeepCallAliveHeadlessTaskOnce","OS","registerHeadlessTask","data","logger","getLogger","callCid","call","warn","cid","activeCallCid","config","getConfig","taskToRun","foregroundService","android","taskEnded","Promise","resolve","ownResolver","debug","e","error"],"sourceRoot":"../../../src","sources":["utils/keepCallAliveHeadlessTask.ts"],"mappings":";;AAAA,SAASA,WAAW,EAAEC,QAAQ,QAAQ,cAAc;AAEpD,SAASC,iBAAiB,QAAQ,yBAAyB;AAC3D,SAASC,aAAa,QAAQ,iBAAiB;AAE/C,OAAO,MAAMC,kCAAkC,GAAG,0BAA0B;;AAE5E;AACA;AACA;AACA;AACA,OAAO,MAAMC,oBAAmD,GAAG;EACjEC,OAAO,EAAEC;AACX,CAAC;AAED,IAAIC,kBAA4C;;AAEhD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,4BAA4B,GAAGA,CAAA,KAAM;EAChDD,kBAAkB,GAAG,CAAC;EACtBA,kBAAkB,GAAGD,SAAS;AAChC,CAAC;AAED,SAASG,qCAAqCA,CAAA,EAAG;EAC/C,IAAIT,QAAQ,CAACU,EAAE,KAAK,SAAS,EAAE;EAE/BX,WAAW,CAACY,oBAAoB,CAC9BR,kCAAkC,EAClC,MAAM,MAAOS,IAAsC,IAAK;IACtD,MAAMC,MAAM,GAAGZ,iBAAiB,CAACa,SAAS,CACxC,+BACF,CAAC;IACD,MAAMC,OAAO,GAAGH,IAAI,EAAEG,OAAO;IAE7B,MAAMC,IAAI,GAAGZ,oBAAoB,CAACC,OAAO;IACzC,IAAI,CAACW,IAAI,EAAE;MACTH,MAAM,CAACI,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/CF,MAAM,CAACI,IAAI,CACT,+DAA+D,EAC/D;QAAEF,OAAO;QAAEI,aAAa,EAAEH,IAAI,CAACE;MAAI,CACrC,CAAC;MACD;IACF;IAEA,MAAME,MAAM,GAAGlB,aAAa,CAACmB,SAAS,CAAC,CAAC;IACxC,MAAMC,SAAS,GAAGF,MAAM,CAACG,iBAAiB,CAACC,OAAO,CAACF,SAAS;IAC5D;IACAd,4BAA4B,CAAC,CAAC;IAC9B,MAAMiB,SAAS,GAAG,IAAIC,OAAO,CAAQC,OAAO,IAAK;MAC/CpB,kBAAkB,GAAGoB,OAAO;IAC9B,CAAC,CAAC;IACF,MAAMC,WAAW,GAAGrB,kBAAkB;;IAEtC;IACA;IACA;IACA;IACA;IACA,CAAC,YAAY;MACX,IAAI;QACF,MAAMe,SAAS,CAACN,IAAI,CAAC;QACrBH,MAAM,CAACgB,KAAK,CACV,4EACF,CAAC;MACH,CAAC,CAAC,OAAOC,CAAC,EAAE;QACVjB,MAAM,CAACkB,KAAK,CAAC,iCAAiC,EAAED,CAAC,CAAC;MACpD;IACF,CAAC,EAAE,CAAC;IAEJ,IAAI;MACF,MAAML,SAAS;IACjB,CAAC,SAAS;MACR;MACA;MACA,IAAIlB,kBAAkB,KAAKqB,WAAW,EAAE;QACtCrB,kBAAkB,GAAGD,SAAS;MAChC;IACF;EACF,CACF,CAAC;AACH;AAEAG,qCAAqC,CAAC,CAAC","ignoreList":[]}
@@ -47,6 +47,32 @@ export const onRingNotificationReceived = async data => {
47
47
  nativeLog(`Finishing background task for callCid: ${call_cid}`);
48
48
  callingx.releaseBackgroundTask(backgroundTaskOwner);
49
49
  };
50
+
51
+ /**
52
+ * Gives up on this push: dismisses the call the native push path already displayed, then asks
53
+ * the call service to stop. `stopService` is only a request — it no-ops while any other call is
54
+ * registered or being registered — so this call must be ended explicitly rather than relying on
55
+ * the service teardown to wipe it.
56
+ */
57
+ const abandonPush = async () => {
58
+ if (asForegroundService) {
59
+ finishBackgroundTask();
60
+ }
61
+ // Each step is contained on its own: failing to dismiss the call must not skip the stop
62
+ // request, and neither may skip the unsubscription cleanup — a stale entry makes every later
63
+ // push for this cid look like a duplicate and get discarded.
64
+ try {
65
+ await callingx.endCallWithReason(call_cid, 'error');
66
+ } catch (error) {
67
+ nativeLog(`Failed to end call ${call_cid}: ${error}`, 'error');
68
+ }
69
+ try {
70
+ await callingx.stopService();
71
+ } catch (error) {
72
+ nativeLog(`Failed to stop the call service for ${call_cid}: ${error}`, 'error');
73
+ }
74
+ pushUnsubscriptionCallbacks.delete(call_cid);
75
+ };
50
76
  if (asForegroundService) {
51
77
  // initialize the callback array immediately to avoid race condition
52
78
  pushUnsubscriptionCallbacks.set(call_cid, []);
@@ -62,21 +88,13 @@ export const onRingNotificationReceived = async data => {
62
88
  client = await pushConfig.createStreamVideoClient();
63
89
  if (!client) {
64
90
  nativeLog(`video client not found, skipping the call.ring notification`);
65
- if (asForegroundService) {
66
- finishBackgroundTask();
67
- }
68
- await callingx.stopService();
69
- pushUnsubscriptionCallbacks.delete(call_cid);
91
+ await abandonPush();
70
92
  return;
71
93
  }
72
94
  } catch (error) {
73
95
  //we need to release the background task and stop the service to avoid stale owner
74
96
  nativeLog(`Failed to create video client: ${error}`, 'error');
75
- if (asForegroundService) {
76
- finishBackgroundTask();
77
- }
78
- await callingx.stopService();
79
- pushUnsubscriptionCallbacks.delete(call_cid);
97
+ await abandonPush();
80
98
  return;
81
99
  }
82
100
  if (asForegroundService) {
@@ -1 +1 @@
1
- {"version":3,"names":["CallingState","AppState","Platform","getCallingxLib","getCallingxLibIfAvailable","StreamVideoRN","pushUnsubscriptionCallbacks","canListenToWS","shouldCallBeClosed","onRingNotificationReceived","data","OS","nativeLog","message","level","log","pushConfig","getConfig","push","sender","type","call_cid","callingx","has","asForegroundService","backgroundTaskOwner","finishBackgroundTask","releaseBackgroundTask","set","acquireBackgroundTask","catch","e","client","createStreamVideoClient","stopService","delete","error","callFromPush","onRingingCall","mustEndCall","endCallReason","endCallWithReason","leave","reject","unsubscribeFunctions","get","unsubscribe","on","event","_canListenToWS","forEach","fn","mustEndCallFromEvent","endCallReasonFromEvent","stateSubscription","state","callingState$","subscribe","callingState","IDLE","LEFT","appStateSubscription","addEventListener","nextAppState","remove"],"sourceRoot":"../../../../../src","sources":["utils/push/internal/android.ts"],"mappings":";;AAAA,SAGEA,YAAY,QAEP,yBAAyB;AAChC,SAASC,QAAQ,EAAEC,QAAQ,QAAQ,cAAc;AACjD,SAEEC,cAAc,EACdC,yBAAyB,QACpB,SAAS;AAChB,SAASC,aAAa,QAAQ,qBAAqB;AACnD,SAASC,2BAA2B,QAAQ,aAAa;AACzD,SAASC,aAAa,EAAEC,kBAAkB,QAAQ,SAAS;;AAE3D;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,0BAA0B,GAAG,MACxCC,IAAmC,IAChC;EACH;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACE,IAAIR,QAAQ,CAACS,EAAE,KAAK,SAAS,EAAE;EAE/B,MAAMC,SAAS,GAAGA,CAChBC,OAAe,EACfC,KAA0C,GAAG,OAAO,KAEpDV,yBAAyB,CAAC,CAAC,EAAEW,GAAG,CAC9B,4CAA4CF,OAAO,EAAE,EACrDC,KACF,CAAC;EAEH,MAAME,UAAU,GAAGX,aAAa,CAACY,SAAS,CAAC,CAAC,CAACC,IAAI;EACjD,IACE,CAACF,UAAU,IACX,CAACN,IAAI,IACLA,IAAI,CAACS,MAAM,KAAK,cAAc,IAC9BT,IAAI,CAACU,IAAI,KAAK,WAAW,EACzB;IACA;EACF;EAEA,MAAMC,QAAQ,GAAGX,IAAI,CAACW,QAAkB;EACxC,MAAMC,QAAQ,GAAGnB,cAAc,CAAC,CAAC;EAEjC,IAAIG,2BAA2B,CAACiB,GAAG,CAACF,QAAQ,CAAC,EAAE;IAC7CT,SAAS,CACP,YAAYS,QAAQ,0EACtB,CAAC;IACD;EACF;EAEA,MAAMG,mBAAmB,GAAGjB,aAAa,CAAC,CAAC;EAC3C,MAAMkB,mBAAmB,GAAG,QAAQJ,QAAQ,EAAE;EAC9CT,SAAS,CACP,0BAA0BS,QAAQ,wBAAwBG,mBAAmB,EAC/E,CAAC;EAED,MAAME,oBAAoB,GAAGA,CAAA,KAAM;IACjCd,SAAS,CAAC,0CAA0CS,QAAQ,EAAE,CAAC;IAC/DC,QAAQ,CAACK,qBAAqB,CAACF,mBAAmB,CAAC;EACrD,CAAC;EAED,IAAID,mBAAmB,EAAE;IACvB;IACAlB,2BAA2B,CAACsB,GAAG,CAACP,QAAQ,EAAE,EAAE,CAAC;IAC7C;IACA;IACAT,SAAS,CAAC,0CAA0CS,QAAQ,EAAE,CAAC;IAC/DC,QAAQ,CAACO,qBAAqB,CAACJ,mBAAmB,CAAC,CAACK,KAAK,CAAEC,CAAC,IAAK;MAC/DnB,SAAS,CACP,kDAAkDS,QAAQ,WAAWU,CAAC,EAAE,EACxE,OACF,CAAC;IACH,CAAC,CAAC;EACJ;EAEA,IAAIC,MAAqC;EACzC,IAAI;IACFA,MAAM,GAAG,MAAMhB,UAAU,CAACiB,uBAAuB,CAAC,CAAC;IACnD,IAAI,CAACD,MAAM,EAAE;MACXpB,SAAS,CAAC,6DAA6D,CAAC;MACxE,IAAIY,mBAAmB,EAAE;QACvBE,oBAAoB,CAAC,CAAC;MACxB;MACA,MAAMJ,QAAQ,CAACY,WAAW,CAAC,CAAC;MAC5B5B,2BAA2B,CAAC6B,MAAM,CAACd,QAAQ,CAAC;MAC5C;IACF;EACF,CAAC,CAAC,OAAOe,KAAK,EAAE;IACd;IACAxB,SAAS,CAAC,kCAAkCwB,KAAK,EAAE,EAAE,OAAO,CAAC;IAC7D,IAAIZ,mBAAmB,EAAE;MACvBE,oBAAoB,CAAC,CAAC;IACxB;IACA,MAAMJ,QAAQ,CAACY,WAAW,CAAC,CAAC;IAC5B5B,2BAA2B,CAAC6B,MAAM,CAACd,QAAQ,CAAC;IAC5C;EACF;EAEA,IAAIG,mBAAmB,EAAE;IACvB;IACA,CAAC,YAAY;MACX,IAAI;QACFZ,SAAS,CAAC,2CAA2CS,QAAQ,EAAE,CAAC;QAChE,MAAMgB,YAAY,GAAG,MAAML,MAAM,CAACM,aAAa,CAACjB,QAAQ,CAAC;QACzD,MAAM;UAAEkB,WAAW;UAAEC;QAAc,CAAC,GAAGhC,kBAAkB,CACvD6B,YAAY,EACZ3B,IACF,CAAC;QACD,IAAI6B,WAAW,EAAE;UACf3B,SAAS,CACP,+BAA+BS,QAAQ,mBAAmBmB,aAAa,EACzE,CAAC;UACDlB,QAAQ,CAACmB,iBAAiB,CAACpB,QAAQ,EAAEmB,aAAa,CAAC;UACnDH,YAAY,CAACK,KAAK,CAAC;YAAEC,MAAM,EAAE;UAAM,CAAC,CAAC,CAACb,KAAK,CAAEM,KAAK,IAAK;YACrDxB,SAAS,CACP,8CAA8CS,QAAQ,KAAKe,KAAK,EAAE,EAClE,OACF,CAAC;UACH,CAAC,CAAC;UACFV,oBAAoB,CAAC,CAAC;UACtBpB,2BAA2B,CAAC6B,MAAM,CAACd,QAAQ,CAAC;UAC5C;QACF;;QAEA;QACA,MAAMuB,oBAAoB,GAAGtC,2BAA2B,CAACuC,GAAG,CAACxB,QAAQ,CAAC;QACtE,IAAI,CAACuB,oBAAoB,EAAE;UACzBhC,SAAS,CACP,oDAAoDS,QAAQ,6BAC9D,CAAC;UACDK,oBAAoB,CAAC,CAAC;UACtB;QACF;QACAd,SAAS,CAAC,oCAAoCS,QAAQ,EAAE,CAAC;QACzD;QACA,MAAMyB,WAAW,GAAGT,YAAY,CAACU,EAAE,CACjC,KAAK,EACJC,KAAyC,IAAK;UAC7C,MAAMC,cAAc,GAAG1C,aAAa,CAAC,CAAC;UACtC,IAAI,CAAC0C,cAAc,EAAE;YACnBrC,SAAS,CACP,iCAAiCoC,KAAK,CAAC5B,IAAI,aAAaC,QAAQ,mBAAmB4B,cAAc,EACnG,CAAC;YACDL,oBAAoB,CAACM,OAAO,CAAEC,EAAE,IAAKA,EAAE,CAAC,CAAC,CAAC;YAC1C;UACF;UAEA,MAAM;YACJZ,WAAW,EAAEa,oBAAoB;YACjCZ,aAAa,EAAEa;UACjB,CAAC,GAAG7C,kBAAkB,CAAC6B,YAAY,EAAE3B,IAAI,CAAC;UAC1C,IAAI0C,oBAAoB,EAAE;YACxBxC,SAAS,CACP,iCAAiCoC,KAAK,CAAC5B,IAAI,aAAaC,QAAQ,qBAClE,CAAC;YACDC,QAAQ,CAACmB,iBAAiB,CAACpB,QAAQ,EAAEgC,sBAAsB,CAAC;YAC5DT,oBAAoB,CAACM,OAAO,CAAEC,EAAE,IAAKA,EAAE,CAAC,CAAC,CAAC;UAC5C;QACF,CACF,CAAC;;QAED;QACA,MAAMG,iBAAiB,GAAGjB,YAAY,CAACkB,KAAK,CAACC,aAAa,CAACC,SAAS,CACjEC,YAAY,IAAK;UAChB,IACEA,YAAY,KAAK1D,YAAY,CAAC2D,IAAI,IAClCD,YAAY,KAAK1D,YAAY,CAAC4D,IAAI,EAClC;YACAhD,SAAS,CACP,iDAAiDS,QAAQ,kBAAkBqC,YAAY,EACzF,CAAC;YACDd,oBAAoB,CAACM,OAAO,CAAEC,EAAE,IAAKA,EAAE,CAAC,CAAC,CAAC;UAC5C;QACF,CACF,CAAC;;QAED;QACA,MAAMU,oBAAoB,GAAG5D,QAAQ,CAAC6D,gBAAgB,CACpD,QAAQ,EACPC,YAAY,IAAK;UAChB,MAAMd,cAAc,GAAG1C,aAAa,CAAC,CAAC;UACtCK,SAAS,CACP,wBAAwBmD,YAAY,iBAAiB1C,QAAQ,mBAAmB4B,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,CAAC1B,IAAI,CAAC4B,WAAW,CAAC;QACtCF,oBAAoB,CAAC1B,IAAI,CAAC,MAAMoC,iBAAiB,CAACR,WAAW,CAAC,CAAC,CAAC;QAChEF,oBAAoB,CAAC1B,IAAI,CAAC,MAAM2C,oBAAoB,CAACG,MAAM,CAAC,CAAC,CAAC;QAC9DpB,oBAAoB,CAAC1B,IAAI,CAACQ,oBAAoB,CAAC;QAC/CkB,oBAAoB,CAAC1B,IAAI,CAAC,MACxBZ,2BAA2B,CAAC6B,MAAM,CAACd,QAAQ,CAC7C,CAAC;QACDT,SAAS,CAAC,4CAA4CS,QAAQ,EAAE,CAAC;MACnE,CAAC,CAAC,OAAOe,KAAK,EAAE;QACdxB,SAAS,CACP,iDAAiDS,QAAQ,WAAWe,KAAK,EAAE,EAC3E,OACF,CAAC;QACD9B,2BAA2B,CAAC6B,MAAM,CAACd,QAAQ,CAAC;QAC5CK,oBAAoB,CAAC,CAAC;MACxB;IACF,CAAC,EAAE,CAAC;EACN;EAEA,IAAIF,mBAAmB,EAAE;IACvB;IACA;EACF;EAEAZ,SAAS,CAAC,2CAA2CS,QAAQ,EAAE,CAAC;EAChE,MAAMgB,YAAY,GAAG,MAAML,MAAM,CAACM,aAAa,CAACjB,QAAQ,CAAC;EAEzD,MAAM;IAAEkB,WAAW;IAAEC;EAAc,CAAC,GAAGhC,kBAAkB,CAAC6B,YAAY,EAAE3B,IAAI,CAAC;EAC7E,IAAI6B,WAAW,EAAE;IACf3B,SAAS,CACP,iEAAiES,QAAQ,yBAC3E,CAAC;IACDC,QAAQ,CAACmB,iBAAiB,CAACpB,QAAQ,EAAEmB,aAAa,CAAC;IACnDH,YAAY,CAACK,KAAK,CAAC;MAAEC,MAAM,EAAE;IAAM,CAAC,CAAC,CAACb,KAAK,CAAEM,KAAK,IAAK;MACrDxB,SAAS,CACP,8CAA8CS,QAAQ,KAAKe,KAAK,EAAE,EAClE,OACF,CAAC;IACH,CAAC,CAAC;EACJ;AACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["CallingState","AppState","Platform","getCallingxLib","getCallingxLibIfAvailable","StreamVideoRN","pushUnsubscriptionCallbacks","canListenToWS","shouldCallBeClosed","onRingNotificationReceived","data","OS","nativeLog","message","level","log","pushConfig","getConfig","push","sender","type","call_cid","callingx","has","asForegroundService","backgroundTaskOwner","finishBackgroundTask","releaseBackgroundTask","abandonPush","endCallWithReason","error","stopService","delete","set","acquireBackgroundTask","catch","e","client","createStreamVideoClient","callFromPush","onRingingCall","mustEndCall","endCallReason","leave","reject","unsubscribeFunctions","get","unsubscribe","on","event","_canListenToWS","forEach","fn","mustEndCallFromEvent","endCallReasonFromEvent","stateSubscription","state","callingState$","subscribe","callingState","IDLE","LEFT","appStateSubscription","addEventListener","nextAppState","remove"],"sourceRoot":"../../../../../src","sources":["utils/push/internal/android.ts"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,4 @@
1
1
  "use strict";
2
2
 
3
- export const version = '1.45.0';
3
+ export const version = '1.45.2';
4
4
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useCallingExpWithCallingStateEffect.d.ts","sourceRoot":"","sources":["../../../../src/hooks/push/useCallingExpWithCallingStateEffect.ts"],"names":[],"mappings":"AAWA;;GAEG;AACH,eAAO,MAAM,mCAAmC,YAwR/C,CAAC"}
1
+ {"version":3,"file":"useCallingExpWithCallingStateEffect.d.ts","sourceRoot":"","sources":["../../../../src/hooks/push/useCallingExpWithCallingStateEffect.ts"],"names":[],"mappings":"AAWA;;GAEG;AACH,eAAO,MAAM,mCAAmC,YA+R/C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"useAndroidKeepCallAliveEffect.d.ts","sourceRoot":"","sources":["../../../src/hooks/useAndroidKeepCallAliveEffect.ts"],"names":[],"mappings":"AA4EA;;;;;GAKG;AACH,eAAO,MAAM,6BAA6B,YAgIzC,CAAC"}
1
+ {"version":3,"file":"useAndroidKeepCallAliveEffect.d.ts","sourceRoot":"","sources":["../../../src/hooks/useAndroidKeepCallAliveEffect.ts"],"names":[],"mappings":"AAqGA;;;;;GAKG;AACH,eAAO,MAAM,6BAA6B,YA6IzC,CAAC"}
@@ -54,6 +54,19 @@ export declare class StreamVideoRN {
54
54
  */
55
55
  static onPushLogout(): Promise<void>;
56
56
  static clearPushLogoutCallbacks(): void;
57
+ /**
58
+ * Android only. Opt out of the Android 11+ communication-mode keep-alive.
59
+ *
60
+ * By default the SDK plays a silent voice-communication track for the duration of a
61
+ * communicator-role call, so Android does not reset `MODE_IN_COMMUNICATION` ~6s after it is
62
+ * set (which breaks audio routing and echo cancellation).
63
+ * See {@link https://issuetracker.google.com/issues/209493718}
64
+ *
65
+ * Call this at app start, alongside {@link setPushConfig} — the native audio manager
66
+ * rejects the change once it has been activated for a call. No-op on iOS and on
67
+ * Android below API 30.
68
+ */
69
+ static setDisableCommunicationModeWorkaround(disabled: boolean): void;
57
70
  /**
58
71
  * Play native busy tone for call rejection
59
72
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/StreamVideoRN/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAajD,KAAK,WAAW,CAAC,CAAC,IAAI;KACnB,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAChE,CAAC;AAgDF,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAC,MAAM,CAA+B;IAEpD;;;;OAIG;IACH,MAAM,CAAC,YAAY,CACjB,YAAY,EAAE,WAAW,CAAC,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;IAK5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmCG;IACH,MAAM,CAAC,aAAa,CAAC,UAAU,EAAE,WAAW,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IA0BvE,MAAM,CAAC,SAAS;IAIhB;;;OAGG;IACH,MAAM,CAAC,YAAY;IASnB,MAAM,CAAC,wBAAwB;IAI/B;;OAEG;WACU,YAAY;IAIzB;;OAEG;WACU,YAAY;IAIzB;;;OAGG;WACU,6BAA6B,IAAI,OAAO,CAAC,OAAO,CAAC;IAQ9D;;;OAGG;WACU,4BAA4B,IAAI,OAAO,CAAC,OAAO,CAAC;IAQ7D;;;OAGG;WACU,wBAAwB,IAAI,OAAO,CAAC,OAAO,CAAC;CAO1D"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/StreamVideoRN/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAajD,KAAK,WAAW,CAAC,CAAC,IAAI;KACnB,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAChE,CAAC;AAgDF,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAC,MAAM,CAA+B;IAEpD;;;;OAIG;IACH,MAAM,CAAC,YAAY,CACjB,YAAY,EAAE,WAAW,CAAC,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;IAK5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAmCG;IACH,MAAM,CAAC,aAAa,CAAC,UAAU,EAAE,WAAW,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IA0BvE,MAAM,CAAC,SAAS;IAIhB;;;OAGG;IACH,MAAM,CAAC,YAAY;IASnB,MAAM,CAAC,wBAAwB;IAI/B;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,qCAAqC,CAAC,QAAQ,EAAE,OAAO;IAe9D;;OAEG;WACU,YAAY;IAIzB;;OAEG;WACU,YAAY;IAIzB;;;OAGG;WACU,6BAA6B,IAAI,OAAO,CAAC,OAAO,CAAC;IAQ9D;;;OAGG;WACU,4BAA4B,IAAI,OAAO,CAAC,OAAO,CAAC;IAQ7D;;;OAGG;WACU,wBAAwB,IAAI,OAAO,CAAC,OAAO,CAAC;CAO1D"}
@@ -166,8 +166,7 @@ export type StreamVideoConfig = {
166
166
  */
167
167
  notificationTexts: KeepAliveAndroidNotificationTexts;
168
168
  /**
169
- * The task to run in the foreground service
170
- * The task must resolve a promise once complete
169
+ * The task to run in the foreground service.
171
170
  */
172
171
  taskToRun: (call: Call) => Promise<void>;
173
172
  };
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/utils/StreamVideoRN/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,oBAAoB,EACzB,iBAAiB,EACjB,KAAK,IAAI,EACV,MAAM,yBAAyB,CAAC;AAEjC,MAAM,MAAM,oBAAoB,GAAG;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAC7B,mBAAmB,GAAG,mBAAmB,GAAG,aAAa,CAAC;AAE5D,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;;;OAIG;IACH,IAAI,CAAC,EAAE;QACL;;WAEG;QACH,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB;;;;WAIG;QACH,cAAc,CAAC,EAAE,oBAAoB,CAAC;QAEtC,GAAG,CAAC,EAAE;YACJ;;;;eAIG;YACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;YAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;YACxB;;;eAGG;YACH,KAAK,CAAC,EAAE,MAAM,CAAC;YACf;;;eAGG;YACH,SAAS,CAAC,EAAE,MAAM,CAAC;YACnB;;;eAGG;YACH,YAAY,CAAC,EAAE,OAAO,CAAC;YACvB;;;eAGG;YACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;YAC5B;;;eAGG;YACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;YAC7B;;;;;;eAMG;YACH,4BAA4B,CAAC,EAAE,OAAO,CAAC;YACvC;;;;;eAKG;YACH,yBAAyB,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;SACpD,CAAC;QACF,OAAO,CAAC,EAAE;YACR;;;;eAIG;YACH,SAAS,CAAC,EAAE,MAAM,CAAC;YACnB;;;;eAIG;YACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;YAC1B;;;;;;;;;eASG;YACH,eAAe,CAAC,EAAE,oBAAoB,CAAC;YACvC;;;;;;;;eAQG;YACH,iBAAiB,CAAC,EAAE;gBAClB,SAAS,CAAC,EAAE,MAAM,CAAC;gBACnB,SAAS,CAAC,EAAE,MAAM,CAAC;aACpB,CAAC;YACF;;eAEG;YACH,gBAAgB,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,KAAK,MAAM,CAAC;YACrE,kBAAkB,CAAC,EAAE,OAAO,CAAC;YAC7B;;;;eAIG;YACH,4BAA4B,CAAC,EAAE,OAAO,CAAC;YACvC;;;eAGG;YACH,yBAAyB,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;SACpD,CAAC;QACF;;;WAGG;QACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;QACnC;;;;;;;;;;;;;;;;;WAiBG;QACH,uBAAuB,EAAE,MAAM,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC,CAAC;KACvE,CAAC;IACF,iBAAiB,EAAE;QACjB,OAAO,EAAE;YACP;;eAEG;YACH,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE,OAAO,GAAG,WAAW,CAAC,CAAC;YAC3D;;eAEG;YACH,iBAAiB,EAAE,iCAAiC,CAAC;YACrD;;;eAGG;YACH,SAAS,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;SAC1C,CAAC;KACH,CAAC;CACH,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/utils/StreamVideoRN/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,oBAAoB,EACzB,iBAAiB,EACjB,KAAK,IAAI,EACV,MAAM,yBAAyB,CAAC;AAEjC,MAAM,MAAM,oBAAoB,GAAG;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAC7B,mBAAmB,GAAG,mBAAmB,GAAG,aAAa,CAAC;AAE5D,MAAM,MAAM,iBAAiB,GAAG;IAC9B;;;;OAIG;IACH,IAAI,CAAC,EAAE;QACL;;WAEG;QACH,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB;;;;WAIG;QACH,cAAc,CAAC,EAAE,oBAAoB,CAAC;QAEtC,GAAG,CAAC,EAAE;YACJ;;;;eAIG;YACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;YAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;YACxB;;;eAGG;YACH,KAAK,CAAC,EAAE,MAAM,CAAC;YACf;;;eAGG;YACH,SAAS,CAAC,EAAE,MAAM,CAAC;YACnB;;;eAGG;YACH,YAAY,CAAC,EAAE,OAAO,CAAC;YACvB;;;eAGG;YACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;YAC5B;;;eAGG;YACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;YAC7B;;;;;;eAMG;YACH,4BAA4B,CAAC,EAAE,OAAO,CAAC;YACvC;;;;;eAKG;YACH,yBAAyB,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;SACpD,CAAC;QACF,OAAO,CAAC,EAAE;YACR;;;;eAIG;YACH,SAAS,CAAC,EAAE,MAAM,CAAC;YACnB;;;;eAIG;YACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;YAC1B;;;;;;;;;eASG;YACH,eAAe,CAAC,EAAE,oBAAoB,CAAC;YACvC;;;;;;;;eAQG;YACH,iBAAiB,CAAC,EAAE;gBAClB,SAAS,CAAC,EAAE,MAAM,CAAC;gBACnB,SAAS,CAAC,EAAE,MAAM,CAAC;aACpB,CAAC;YACF;;eAEG;YACH,gBAAgB,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,KAAK,MAAM,CAAC;YACrE,kBAAkB,CAAC,EAAE,OAAO,CAAC;YAC7B;;;;eAIG;YACH,4BAA4B,CAAC,EAAE,OAAO,CAAC;YACvC;;;eAGG;YACH,yBAAyB,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;SACpD,CAAC;QACF;;;WAGG;QACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;QACnC;;;;;;;;;;;;;;;;;WAiBG;QACH,uBAAuB,EAAE,MAAM,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC,CAAC;KACvE,CAAC;IACF,iBAAiB,EAAE;QACjB,OAAO,EAAE;YACP;;eAEG;YACH,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE,OAAO,GAAG,WAAW,CAAC,CAAC;YAC3D;;eAEG;YACH,iBAAiB,EAAE,iCAAiC,CAAC;YACrD;;eAEG;YACH,SAAS,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;SAC1C,CAAC;KACH,CAAC;CACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"callingx.d.ts","sourceRoot":"","sources":["../../../../../src/utils/internal/callingx/callingx.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAEtE,OAAO,KAAK,EACV,IAAI,EACJ,cAAc,EACd,sBAAsB,EACvB,MAAM,yBAAyB,CAAC;AAKjC;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,cAAc,EAAE,GAAG,SAAS,EACzC,YAAY,EAAE,sBAAsB,EAAE,GAAG,SAAS,EAClD,aAAa,EAAE,MAAM,GAAG,SAAS,GAChC,MAAM,CAgCR;AAaD,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,IAAI,iBA+BpD;AAED;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,iBA0ErE;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,aAAa,iBAmBvE;AAED,wBAAsB,2BAA2B,kBAehD;AAED,wBAAgB,6BAA6B,SAe5C"}
1
+ {"version":3,"file":"callingx.d.ts","sourceRoot":"","sources":["../../../../../src/utils/internal/callingx/callingx.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAEtE,OAAO,KAAK,EACV,IAAI,EACJ,cAAc,EACd,sBAAsB,EACvB,MAAM,yBAAyB,CAAC;AAKjC;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,cAAc,EAAE,GAAG,SAAS,EACzC,YAAY,EAAE,sBAAsB,EAAE,GAAG,SAAS,EAClD,aAAa,EAAE,MAAM,GAAG,SAAS,GAChC,MAAM,CAgCR;AAsBD,wBAAsB,oBAAoB,CAAC,IAAI,EAAE,IAAI,iBAyBpD;AAED;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,iBAoDrE;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,aAAa,iBAmBvE;AAED,wBAAsB,2BAA2B,kBAehD;AAED,wBAAgB,6BAA6B,SAe5C"}
@@ -7,4 +7,13 @@ export declare const KEEP_CALL_ALIVE_HEADLESS_TASK_NAME = "StreamVideoKeepCallAl
7
7
  export declare const keepCallAliveCallRef: {
8
8
  current: Call | undefined;
9
9
  };
10
+ /**
11
+ * Ends the currently running keep-alive headless task.
12
+ *
13
+ * The task's promise is app-provided (`foregroundService.android.taskToRun`) and by default never
14
+ * resolves, so stopping the native service alone would leave the task registered in
15
+ * `HeadlessJsTaskContext` forever - which keeps RN's timer choreographer callback posted for the
16
+ * rest of the process lifetime. Resolving it here lets React Native unwind the task properly.
17
+ */
18
+ export declare const endKeepCallAliveHeadlessTask: () => void;
10
19
  //# sourceMappingURL=keepCallAliveHeadlessTask.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"keepCallAliveHeadlessTask.d.ts","sourceRoot":"","sources":["../../../src/utils/keepCallAliveHeadlessTask.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAIpD,eAAO,MAAM,kCAAkC,6BAA6B,CAAC;AAE7E;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE;IAAE,OAAO,EAAE,IAAI,GAAG,SAAS,CAAA;CAE7D,CAAC"}
1
+ {"version":3,"file":"keepCallAliveHeadlessTask.d.ts","sourceRoot":"","sources":["../../../src/utils/keepCallAliveHeadlessTask.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAIpD,eAAO,MAAM,kCAAkC,6BAA6B,CAAC;AAE7E;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE;IAAE,OAAO,EAAE,IAAI,GAAG,SAAS,CAAA;CAE7D,CAAC;AAIF;;;;;;;GAOG;AACH,eAAO,MAAM,4BAA4B,YAGxC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"android.d.ts","sourceRoot":"","sources":["../../../../../src/utils/push/internal/android.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,KAAK,qBAAqB,EAG3B,MAAM,SAAS,CAAC;AAKjB;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,GACrC,MAAM,qBAAqB,CAAC,MAAM,CAAC,kBAqOpC,CAAC"}
1
+ {"version":3,"file":"android.d.ts","sourceRoot":"","sources":["../../../../../src/utils/push/internal/android.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,KAAK,qBAAqB,EAG3B,MAAM,SAAS,CAAC;AAKjB;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,GACrC,MAAM,qBAAqB,CAAC,MAAM,CAAC,kBA0PpC,CAAC"}
@@ -1,2 +1,2 @@
1
- export declare const version = "1.45.0";
1
+ export declare const version = "1.45.2";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -15,7 +15,7 @@ const withStreamVideoReactNativeSDKAndroidPermissions = (configuration, props) =
15
15
  }
16
16
  }
17
17
  if (props?.androidKeepCallAlive) {
18
- permissions.push('android.permission.FOREGROUND_SERVICE_CAMERA', 'android.permission.FOREGROUND_SERVICE_MICROPHONE', 'android.permission.FOREGROUND_SERVICE_TYPE_MEDIA_PLAYBACK');
18
+ permissions.push('android.permission.FOREGROUND_SERVICE_CAMERA', 'android.permission.FOREGROUND_SERVICE_MICROPHONE', 'android.permission.FOREGROUND_SERVICE_MEDIA_PLAYBACK');
19
19
  }
20
20
  const config = config_plugins_1.AndroidConfig.Permissions.withPermissions(configuration, permissions);
21
21
  return config;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stream-io/video-react-native-sdk",
3
- "version": "1.45.0",
3
+ "version": "1.45.2",
4
4
  "description": "Stream Video SDK for React Native",
5
5
  "author": "https://getstream.io",
6
6
  "homepage": "https://getstream.io/video/docs/react-native/",
@@ -52,8 +52,8 @@
52
52
  "!**/.*"
53
53
  ],
54
54
  "dependencies": {
55
- "@stream-io/video-client": "1.59.0",
56
- "@stream-io/video-react-bindings": "1.20.1",
55
+ "@stream-io/video-client": "1.60.0",
56
+ "@stream-io/video-react-bindings": "1.20.3",
57
57
  "intl-pluralrules": "2.0.1",
58
58
  "react-native-url-polyfill": "^3.0.0",
59
59
  "rxjs": "~7.8.2",
@@ -117,11 +117,11 @@
117
117
  "@react-native/babel-preset": "0.86.2",
118
118
  "@react-native/jest-preset": "0.86.2",
119
119
  "@react-native/metro-config": "0.86.2",
120
- "@stream-io/noise-cancellation-react-native": "^0.11.0",
121
- "@stream-io/react-native-callingx": "^0.11.0",
120
+ "@stream-io/noise-cancellation-react-native": "^0.11.1",
121
+ "@stream-io/react-native-callingx": "^0.11.4",
122
122
  "@stream-io/react-native-webrtc": "145.3.1",
123
123
  "@stream-io/typescript-config": "^0.0.0",
124
- "@stream-io/video-filters-react-native": "^0.16.0",
124
+ "@stream-io/video-filters-react-native": "^0.16.1",
125
125
  "@testing-library/jest-native": "^5.4.3",
126
126
  "@testing-library/react-native": "13.3.3",
127
127
  "@tsconfig/node18": "^18.2.6",
@@ -112,12 +112,19 @@ export const useCallingExpWithCallingStateEffect = () => {
112
112
  return;
113
113
  }
114
114
 
115
- callingx.updateDisplay(
116
- activeCallCid,
117
- createdByUserId ?? callDisplayName,
118
- callDisplayName,
119
- isIncoming,
120
- );
115
+ callingx
116
+ .updateDisplay(
117
+ activeCallCid,
118
+ createdByUserId ?? callDisplayName,
119
+ callDisplayName,
120
+ isIncoming,
121
+ )
122
+ .catch((error: unknown) => {
123
+ logger.debug(
124
+ `useCallingExpWithCallingStateEffect: Error updating display in callingx: ${activeCallCid}`,
125
+ error,
126
+ );
127
+ });
121
128
  }, [activeCallCid, createdByUserId, callDisplayName, isIncoming]);
122
129
 
123
130
  // Sync microphone mute state from app → CallKit