@stream-io/video-react-native-sdk 1.10.12 → 1.10.14
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.
- package/CHANGELOG.md +18 -0
- package/dist/commonjs/components/Call/CallContent/RTCViewPipIOS.js +7 -17
- package/dist/commonjs/components/Call/CallContent/RTCViewPipIOS.js.map +1 -1
- package/dist/commonjs/components/Call/CallContent/RTCViewPipNative.js +34 -0
- package/dist/commonjs/components/Call/CallContent/RTCViewPipNative.js.map +1 -0
- package/dist/commonjs/hooks/push/index.js +0 -2
- package/dist/commonjs/hooks/push/index.js.map +1 -1
- package/dist/commonjs/hooks/push/useIosCallkeepWithCallingStateEffect.js +20 -23
- package/dist/commonjs/hooks/push/useIosCallkeepWithCallingStateEffect.js.map +1 -1
- package/dist/commonjs/hooks/push/useIosVoipPushEventsSetupEffect.js +6 -103
- package/dist/commonjs/hooks/push/useIosVoipPushEventsSetupEffect.js.map +1 -1
- package/dist/commonjs/utils/StreamVideoRN/index.js +4 -0
- package/dist/commonjs/utils/StreamVideoRN/index.js.map +1 -1
- package/dist/commonjs/utils/push/ios.js +95 -1
- package/dist/commonjs/utils/push/ios.js.map +1 -1
- package/dist/commonjs/utils/push/setupIosCallKeepEvents.js +150 -0
- package/dist/commonjs/utils/push/setupIosCallKeepEvents.js.map +1 -0
- package/dist/commonjs/utils/push/setupIosVoipPushEvents.js +27 -0
- package/dist/commonjs/utils/push/setupIosVoipPushEvents.js.map +1 -0
- package/dist/commonjs/version.js +1 -1
- package/dist/module/components/Call/CallContent/RTCViewPipIOS.js +9 -19
- package/dist/module/components/Call/CallContent/RTCViewPipIOS.js.map +1 -1
- package/dist/module/components/Call/CallContent/RTCViewPipNative.js +26 -0
- package/dist/module/components/Call/CallContent/RTCViewPipNative.js.map +1 -0
- package/dist/module/hooks/push/index.js +0 -2
- package/dist/module/hooks/push/index.js.map +1 -1
- package/dist/module/hooks/push/useIosCallkeepWithCallingStateEffect.js +21 -24
- package/dist/module/hooks/push/useIosCallkeepWithCallingStateEffect.js.map +1 -1
- package/dist/module/hooks/push/useIosVoipPushEventsSetupEffect.js +10 -108
- package/dist/module/hooks/push/useIosVoipPushEventsSetupEffect.js.map +1 -1
- package/dist/module/utils/StreamVideoRN/index.js +4 -0
- package/dist/module/utils/StreamVideoRN/index.js.map +1 -1
- package/dist/module/utils/push/ios.js +97 -4
- package/dist/module/utils/push/ios.js.map +1 -1
- package/dist/module/utils/push/setupIosCallKeepEvents.js +145 -0
- package/dist/module/utils/push/setupIosCallKeepEvents.js.map +1 -0
- package/dist/module/utils/push/setupIosVoipPushEvents.js +21 -0
- package/dist/module/utils/push/setupIosVoipPushEvents.js.map +1 -0
- package/dist/module/version.js +1 -1
- package/dist/typescript/components/Call/CallContent/RTCViewPipIOS.d.ts.map +1 -1
- package/dist/typescript/components/Call/CallContent/RTCViewPipNative.d.ts +8 -0
- package/dist/typescript/components/Call/CallContent/RTCViewPipNative.d.ts.map +1 -0
- package/dist/typescript/hooks/push/index.d.ts.map +1 -1
- package/dist/typescript/hooks/push/useIosCallkeepWithCallingStateEffect.d.ts.map +1 -1
- package/dist/typescript/hooks/push/useIosVoipPushEventsSetupEffect.d.ts.map +1 -1
- package/dist/typescript/utils/StreamVideoRN/index.d.ts.map +1 -1
- package/dist/typescript/utils/push/ios.d.ts +1 -0
- package/dist/typescript/utils/push/ios.d.ts.map +1 -1
- package/dist/typescript/utils/push/setupIosCallKeepEvents.d.ts +6 -0
- package/dist/typescript/utils/push/setupIosCallKeepEvents.d.ts.map +1 -0
- package/dist/typescript/utils/push/setupIosVoipPushEvents.d.ts +3 -0
- package/dist/typescript/utils/push/setupIosVoipPushEvents.d.ts.map +1 -0
- package/dist/typescript/version.d.ts +1 -1
- package/ios/PictureInPicture/StreamPictureInPictureController.swift +7 -0
- package/ios/RTCViewPip.swift +52 -25
- package/ios/RTCViewPipManager.swift +5 -5
- package/ios/StreamVideoReactNative.m +72 -22
- package/package.json +3 -3
- package/src/components/Call/CallContent/RTCViewPipIOS.tsx +15 -38
- package/src/components/Call/CallContent/RTCViewPipNative.tsx +51 -0
- package/src/hooks/push/index.ts +0 -2
- package/src/hooks/push/useIosCallkeepWithCallingStateEffect.ts +37 -31
- package/src/hooks/push/useIosVoipPushEventsSetupEffect.ts +10 -145
- package/src/utils/StreamVideoRN/index.ts +5 -0
- package/src/utils/push/ios.ts +135 -3
- package/src/utils/push/setupIosCallKeepEvents.ts +187 -0
- package/src/utils/push/setupIosVoipPushEvents.ts +29 -0
- package/src/version.ts +1 -1
- package/dist/commonjs/hooks/push/useIosCallKeepEventsSetupEffect.js +0 -109
- package/dist/commonjs/hooks/push/useIosCallKeepEventsSetupEffect.js.map +0 -1
- package/dist/module/hooks/push/useIosCallKeepEventsSetupEffect.js +0 -103
- package/dist/module/hooks/push/useIosCallKeepEventsSetupEffect.js.map +0 -1
- package/dist/typescript/hooks/push/useIosCallKeepEventsSetupEffect.d.ts +0 -5
- package/dist/typescript/hooks/push/useIosCallKeepEventsSetupEffect.d.ts.map +0 -1
- package/src/hooks/push/useIosCallKeepEventsSetupEffect.ts +0 -132
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["CallingState","getLogger","RxUtils","useCall","useCallStateHooks","Platform","useEffect","useState","StreamVideoRN","getCallKeepLib","voipCallkeepAcceptedCallOnNativeDialerMap$","voipCallkeepCallOnForegroundMap$","voipPushNotificationCallCId$","isNonActiveCallingState","callingState","IDLE","UNKNOWN","LEFT","isAcceptedCallingState","JOINING","JOINED","unsubscribeCallkeepEvents","activeCallCid","voipPushNotificationCallCId","getCurrentValue","next","undefined","logger","useIosCallkeepWithCallingStateEffect","activeCall","useCallCallingState","acceptedForegroundCallkeepMap","setAcceptedForegroundCallkeepMap","pushConfig","getConfig","push","OS","callkeep","cid","endCall","uuid","nativeDialerAcceptedCallMap","foregroundIncomingCallkeepMap","foregroundCallkeepMap","answerIncomingCall"],"sourceRoot":"../../../../src","sources":["hooks/push/useIosCallkeepWithCallingStateEffect.ts"],"mappings":"AAAA,SAASA,YAAY,EAAEC,SAAS,EAAEC,OAAO,QAAQ,yBAAyB;AAC1E,SAASC,OAAO,EAAEC,iBAAiB,QAAQ,iCAAiC;AAC5E,SAASC,QAAQ,QAAQ,cAAc;
|
|
1
|
+
{"version":3,"names":["CallingState","getLogger","RxUtils","useCall","useCallStateHooks","NativeModules","Platform","useEffect","useState","StreamVideoRN","getCallKeepLib","voipCallkeepAcceptedCallOnNativeDialerMap$","voipCallkeepCallOnForegroundMap$","voipPushNotificationCallCId$","isNonActiveCallingState","callingState","IDLE","UNKNOWN","LEFT","isAcceptedCallingState","JOINING","JOINED","unsubscribeCallkeepEvents","activeCallCid","voipPushNotificationCallCId","getCurrentValue","next","undefined","StreamVideoReactNative","removeIncomingCall","logger","log","message","useIosCallkeepWithCallingStateEffect","activeCall","useCallCallingState","acceptedForegroundCallkeepMap","setAcceptedForegroundCallkeepMap","pushConfig","getConfig","push","OS","callkeep","cid","then","endCall","uuid","nativeDialerAcceptedCallMap","foregroundIncomingCallkeepMap","foregroundCallkeepMap","answerIncomingCall"],"sourceRoot":"../../../../src","sources":["hooks/push/useIosCallkeepWithCallingStateEffect.ts"],"mappings":"AAAA,SAASA,YAAY,EAAEC,SAAS,EAAEC,OAAO,QAAQ,yBAAyB;AAC1E,SAASC,OAAO,EAAEC,iBAAiB,QAAQ,iCAAiC;AAC5E,SAASC,aAAa,EAAEC,QAAQ,QAAQ,cAAc;AACtD,SAASC,SAAS,EAAEC,QAAQ,QAAQ,OAAO;AAC3C,SAASC,aAAa,QAAQ,aAAa;AAC3C,SAASC,cAAc,QAAQ,uBAAuB;AACtD,SACEC,0CAA0C,EAC1CC,gCAAgC,EAChCC,4BAA4B,QACvB,sCAAsC;AAE7C,MAAMC,uBAAuB,GAAIC,YAA0B,IAAK;EAC9D,OACEA,YAAY,KAAKf,YAAY,CAACgB,IAAI,IAClCD,YAAY,KAAKf,YAAY,CAACiB,OAAO,IACrCF,YAAY,KAAKf,YAAY,CAACkB,IAAI;AAEtC,CAAC;AAED,MAAMC,sBAAsB,GAAIJ,YAA0B,IAAK;EAC7D,OACEA,YAAY,KAAKf,YAAY,CAACoB,OAAO,IACrCL,YAAY,KAAKf,YAAY,CAACqB,MAAM;AAExC,CAAC;AAED,MAAMC,yBAAyB,GAAG,MAAOC,aAAiC,IAAK;EAC7E,MAAMC,2BAA2B,GAAGtB,OAAO,CAACuB,eAAe,CACzDZ,4BACF,CAAC;EACD,IAAIU,aAAa,IAAIA,aAAa,KAAKC,2BAA2B,EAAE;IAClE;IACAX,4BAA4B,CAACa,IAAI,CAACC,SAAS,CAAC;EAC9C;EACA,OAAO,MAAMtB,aAAa,CAACuB,sBAAsB,EAAEC,kBAAkB,CACnEN,aACF,CAAC;AACH,CAAC;AAED,MAAMO,MAAM,GAAG7B,SAAS,CAAC,CAAC,sCAAsC,CAAC,CAAC;AAClE,MAAM8B,GAAG,GAAIC,OAAe,IAAK;EAC/BF,MAAM,CAAC,MAAM,EAAEE,OAAO,CAAC;AACzB,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMC,oCAAoC,GAAGA,CAAA,KAAM;EACxD,MAAMC,UAAU,GAAG/B,OAAO,CAAC,CAAC;EAC5B,MAAM;IAAEgC;EAAoB,CAAC,GAAG/B,iBAAiB,CAAC,CAAC;EACnD,MAAMW,YAAY,GAAGoB,mBAAmB,CAAC,CAAC;EAC1C,MAAM,CAACC,6BAA6B,EAAEC,gCAAgC,CAAC,GACrE7B,QAAQ,CAGL,CAAC;EAEND,SAAS,CAAC,MAAM;IACd,OAAO,MAAM;MACX,MAAM+B,UAAU,GAAG7B,aAAa,CAAC8B,SAAS,CAAC,CAAC,CAACC,IAAI;MACjD,IAAIlC,QAAQ,CAACmC,EAAE,KAAK,KAAK,IAAI,CAACH,UAAU,EAAE;QACxC;MACF;MACA,MAAMI,QAAQ,GAAGhC,cAAc,CAAC,CAAC;MACjC;MACA,IAAI0B,6BAA6B,EAAE;QACjCL,GAAG,CACD,4BAA4BK,6BAA6B,CAACO,GAAG,qFAC/D,CAAC;QACDrB,yBAAyB,CAACc,6BAA6B,CAACO,GAAG,CAAC,CAACC,IAAI,CAAC,MAChEF,QAAQ,CAACG,OAAO,CAACT,6BAA6B,CAACU,IAAI,CACrD,CAAC;MACH;IACF,CAAC;EACH,CAAC,EAAE,CAACV,6BAA6B,CAAC,CAAC;EAEnC,MAAMb,aAAa,GAAGW,UAAU,EAAES,GAAG;EAErCpC,SAAS,CAAC,MAAM;IACd,OAAO,MAAM;MACX,MAAM+B,UAAU,GAAG7B,aAAa,CAAC8B,SAAS,CAAC,CAAC,CAACC,IAAI;MACjD,IAAIlC,QAAQ,CAACmC,EAAE,KAAK,KAAK,IAAI,CAACH,UAAU,IAAI,CAACf,aAAa,EAAE;QAC1D;MACF;MACA,MAAMwB,2BAA2B,GAAG7C,OAAO,CAACuB,eAAe,CACzDd,0CACF,CAAC;MACD,MAAMqC,6BAA6B,GAAG9C,OAAO,CAACuB,eAAe,CAC3Db,gCACF,CAAC;MACD,MAAM8B,QAAQ,GAAGhC,cAAc,CAAC,CAAC;MACjC,IAAIa,aAAa,KAAKwB,2BAA2B,EAAEJ,GAAG,EAAE;QACtDZ,GAAG,CACD,4BAA4BR,aAAa,oGAC3C,CAAC;QACDD,yBAAyB,CAACC,aAAa,CAAC,CAACqB,IAAI,CAAC,MAC5CF,QAAQ,CAACG,OAAO,CAACE,2BAA2B,CAACD,IAAI,CACnD,CAAC;QACD;QACAnC,0CAA0C,CAACe,IAAI,CAACC,SAAS,CAAC;MAC5D,CAAC,MAAM,IAAIJ,aAAa,KAAKyB,6BAA6B,EAAEL,GAAG,EAAE;QAC/DZ,GAAG,CACD,4BAA4BR,aAAa,sGAC3C,CAAC;QACDD,yBAAyB,CAACC,aAAa,CAAC,CAACqB,IAAI,CAAC,MAC5CF,QAAQ,CAACG,OAAO,CAACG,6BAA6B,CAACF,IAAI,CACrD,CAAC;MACH;IACF,CAAC;EACH,CAAC,EAAE,CAACvB,aAAa,CAAC,CAAC;EAEnB,MAAMe,UAAU,GAAG7B,aAAa,CAAC8B,SAAS,CAAC,CAAC,CAACC,IAAI;EACjD,IAAIlC,QAAQ,CAACmC,EAAE,KAAK,KAAK,IAAI,CAACH,UAAU,IAAI,CAACf,aAAa,EAAE;IAC1D;EACF;;EAEA;AACF;AACA;EACE,IACEJ,sBAAsB,CAACJ,YAAY,CAAC,IACpCqB,6BAA6B,EAAEO,GAAG,KAAKpB,aAAa,EACpD;IACA,MAAMmB,QAAQ,GAAGhC,cAAc,CAAC,CAAC;IACjC;IACA;IACA,MAAMuC,qBAAqB,GAAG/C,OAAO,CAACuB,eAAe,CACnDb,gCACF,CAAC;IACD,IAAIqC,qBAAqB,IAAIA,qBAAqB,CAACN,GAAG,KAAKpB,aAAa,EAAE;MACxEQ,GAAG;MACD;MACA,+BAA+BR,aAAa,kCAAkCvB,YAAY,CAACe,YAAY,CAAC,gDAC1G,CAAC;MACD;MACAH,gCAAgC,CAACc,IAAI,CAACC,SAAS,CAAC;MAChDtB,aAAa,CAACuB,sBAAsB,EAAEC,kBAAkB,CACtDN,aACF,CAAC,CAACqB,IAAI,CAAC,MAAMF,QAAQ,CAACQ,kBAAkB,CAACD,qBAAqB,CAACH,IAAI,CAAC,CAAC;MACrE;MACAT,gCAAgC,CAACY,qBAAqB,CAAC;IACzD;EACF;;EAEA;AACF;AACA;EACE,IAAInC,uBAAuB,CAACC,YAAY,CAAC,EAAE;IACzC,MAAM2B,QAAQ,GAAGhC,cAAc,CAAC,CAAC;;IAEjC;IACA;IACA;IACA,IAAIa,aAAa,KAAKa,6BAA6B,EAAEO,GAAG,EAAE;MACxDZ,GAAG;MACD;MACA,4BAA4BR,aAAa,kCAAkCvB,YAAY,CAACe,YAAY,CAAC,wDACvG,CAAC;MACDO,yBAAyB,CAACC,aAAa,CAAC,CAACqB,IAAI,CAAC,MAC5CF,QAAQ,CAACG,OAAO,CAACT,6BAA6B,CAACU,IAAI,CACrD,CAAC;MACDT,gCAAgC,CAACV,SAAS,CAAC;MAC3C;IACF;IACA;IACA;IACA,MAAMqB,6BAA6B,GAAG9C,OAAO,CAACuB,eAAe,CAC3Db,gCACF,CAAC;IACD,IAAIW,aAAa,KAAKyB,6BAA6B,EAAEL,GAAG,EAAE;MACxDZ,GAAG;MACD;MACA,4BAA4BR,aAAa,kCAAkCvB,YAAY,CAACe,YAAY,CAAC,wDACvG,CAAC;MACDO,yBAAyB,CAACC,aAAa,CAAC,CAACqB,IAAI,CAAC,MAC5CF,QAAQ,CAACG,OAAO,CAACG,6BAA6B,CAACF,IAAI,CACrD,CAAC;MACD;MACAlC,gCAAgC,CAACc,IAAI,CAACC,SAAS,CAAC;MAChD;IACF;IACA;IACA;IACA;IACA,MAAMoB,2BAA2B,GAAG7C,OAAO,CAACuB,eAAe,CACzDd,0CACF,CAAC;IACD,IAAIY,aAAa,KAAKwB,2BAA2B,EAAEJ,GAAG,EAAE;MACtDZ,GAAG;MACD;MACA,4BAA4BR,aAAa,kCAAkCvB,YAAY,CAACe,YAAY,CAAC,sDACvG,CAAC;MACDO,yBAAyB,CAACC,aAAa,CAAC,CAACqB,IAAI,CAAC,MAC5CF,QAAQ,CAACG,OAAO,CAACE,2BAA2B,CAACD,IAAI,CACnD,CAAC;MACD;MACAnC,0CAA0C,CAACe,IAAI,CAACC,SAAS,CAAC;MAC1D;IACF;EACF;AACF,CAAC","ignoreList":[]}
|
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
import { useEffect, useRef, useState } from 'react';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { StreamVideoRN } from '../../utils';
|
|
2
|
+
import { getVoipPushNotificationLib } from '../../utils/push/libs';
|
|
3
|
+
import { Platform } from 'react-native';
|
|
4
|
+
import { onVoipNotificationReceived, StreamVideoRN } from '../../utils';
|
|
5
5
|
import { useConnectedUser, useStreamVideoClient } from '@stream-io/video-react-bindings';
|
|
6
6
|
import { setPushLogoutCallback } from '../../utils/internal/pushLogoutCallback';
|
|
7
|
-
import {
|
|
8
|
-
import { canAddPushWSSubscriptionsRef, shouldCallBeEnded } from '../../utils/push/internal/utils';
|
|
9
|
-
import { pushUnsubscriptionCallbacks$, voipPushNotificationCallCId$ } from '../../utils/push/internal/rxSubjects';
|
|
10
|
-
import { RxUtils, getLogger } from '@stream-io/video-client';
|
|
7
|
+
import { getLogger } from '@stream-io/video-client';
|
|
11
8
|
const logger = getLogger(['useIosVoipPushEventsSetupEffect']);
|
|
12
9
|
|
|
13
10
|
/* VoipPushNotificationLib has support for only one listener type at a time
|
|
@@ -43,6 +40,8 @@ export const useIosVoipPushEventsSetupEffect = () => {
|
|
|
43
40
|
userId: ''
|
|
44
41
|
});
|
|
45
42
|
const [unsentToken, setUnsentToken] = useState();
|
|
43
|
+
|
|
44
|
+
// this effect is used to send the unsent token to stream
|
|
46
45
|
useEffect(() => {
|
|
47
46
|
const pushConfig = StreamVideoRN.getConfig().push;
|
|
48
47
|
// we need to wait for user to be connected before we can send the push token
|
|
@@ -64,7 +63,8 @@ export const useIosVoipPushEventsSetupEffect = () => {
|
|
|
64
63
|
}, [client, connectedUserId, unsentToken]);
|
|
65
64
|
useEffect(() => {
|
|
66
65
|
const pushConfig = StreamVideoRN.getConfig().push;
|
|
67
|
-
|
|
66
|
+
const pushProviderName = pushConfig?.ios.pushProviderName;
|
|
67
|
+
if (Platform.OS !== 'ios' || !pushConfig || !client || !pushProviderName) {
|
|
68
68
|
return;
|
|
69
69
|
}
|
|
70
70
|
const voipPushNotification = getVoipPushNotificationLib();
|
|
@@ -85,12 +85,8 @@ export const useIosVoipPushEventsSetupEffect = () => {
|
|
|
85
85
|
logger('debug', `Skipped sending voip token to stream as it is same as last token - token: ${token}, userId: ${userId}`);
|
|
86
86
|
return;
|
|
87
87
|
}
|
|
88
|
-
const push_provider_name = pushConfig.ios.pushProviderName;
|
|
89
|
-
if (!push_provider_name) {
|
|
90
|
-
return;
|
|
91
|
-
}
|
|
92
88
|
logger('debug', `Sending voip token to stream, token: ${token} userId: ${userId}`);
|
|
93
|
-
client.addVoipDevice(token, 'apn',
|
|
89
|
+
client.addVoipDevice(token, 'apn', pushProviderName).then(() => {
|
|
94
90
|
logger('debug', `Sent voip token to stream, token: ${token} userId: ${userId}`);
|
|
95
91
|
setLogoutCallback(client, token, lastVoipTokenRef);
|
|
96
92
|
lastVoipTokenRef.current = {
|
|
@@ -106,9 +102,6 @@ export const useIosVoipPushEventsSetupEffect = () => {
|
|
|
106
102
|
voipPushNotification.addEventListener('register', token => {
|
|
107
103
|
onTokenReceived(token);
|
|
108
104
|
});
|
|
109
|
-
voipPushNotification.addEventListener('notification', notification => {
|
|
110
|
-
onNotificationReceived(notification);
|
|
111
|
-
});
|
|
112
105
|
|
|
113
106
|
// this will fire when there are events occured before js bridge initialized
|
|
114
107
|
voipPushNotification.addEventListener('didLoadWithEvents', events => {
|
|
@@ -123,7 +116,7 @@ export const useIosVoipPushEventsSetupEffect = () => {
|
|
|
123
116
|
if (name === 'RNVoipPushRemoteNotificationsRegisteredEvent') {
|
|
124
117
|
onTokenReceived(data);
|
|
125
118
|
} else if (name === 'RNVoipPushRemoteNotificationReceivedEvent') {
|
|
126
|
-
|
|
119
|
+
onVoipNotificationReceived(data);
|
|
127
120
|
}
|
|
128
121
|
}
|
|
129
122
|
});
|
|
@@ -138,98 +131,7 @@ export const useIosVoipPushEventsSetupEffect = () => {
|
|
|
138
131
|
logger('debug', 'Voip event listeners are removed for user: ' + userId);
|
|
139
132
|
voipPushNotification.removeEventListener('didLoadWithEvents');
|
|
140
133
|
voipPushNotification.removeEventListener('register');
|
|
141
|
-
voipPushNotification.removeEventListener('notification');
|
|
142
134
|
};
|
|
143
135
|
}, [client]);
|
|
144
136
|
};
|
|
145
|
-
const onNotificationReceived = async notification => {
|
|
146
|
-
/* --- Example payload ---
|
|
147
|
-
{
|
|
148
|
-
"aps": {
|
|
149
|
-
"alert": {
|
|
150
|
-
"body": "",
|
|
151
|
-
"title": "Vishal Narkhede is calling you"
|
|
152
|
-
},
|
|
153
|
-
"badge": 0,
|
|
154
|
-
"category": "stream.video",
|
|
155
|
-
"mutable-content": 1
|
|
156
|
-
},
|
|
157
|
-
"stream": {
|
|
158
|
-
"call_cid": "default:ixbm7y0k74pbjnq",
|
|
159
|
-
"call_display_name": "",
|
|
160
|
-
"created_by_display_name": "Vishal Narkhede",
|
|
161
|
-
"created_by_id": "vishalexpo",
|
|
162
|
-
"receiver_id": "santhoshexpo",
|
|
163
|
-
"sender": "stream.video",
|
|
164
|
-
"type": "call.ring",
|
|
165
|
-
"version": "v2"
|
|
166
|
-
}
|
|
167
|
-
} */
|
|
168
|
-
const sender = notification?.stream?.sender;
|
|
169
|
-
const type = notification?.stream?.type;
|
|
170
|
-
// do not process any other notifications other than stream.video or ringing
|
|
171
|
-
if (sender !== 'stream.video' && type !== 'call.ring') {
|
|
172
|
-
return;
|
|
173
|
-
}
|
|
174
|
-
const call_cid = notification?.stream?.call_cid;
|
|
175
|
-
const pushConfig = StreamVideoRN.getConfig().push;
|
|
176
|
-
if (!call_cid || Platform.OS !== 'ios' || !pushConfig) {
|
|
177
|
-
return;
|
|
178
|
-
}
|
|
179
|
-
const client = await pushConfig.createStreamVideoClient();
|
|
180
|
-
if (!client) {
|
|
181
|
-
return;
|
|
182
|
-
}
|
|
183
|
-
const callFromPush = await client.onRingingCall(call_cid);
|
|
184
|
-
let uuid = '';
|
|
185
|
-
try {
|
|
186
|
-
uuid = await NativeModules?.StreamVideoReactNative?.getIncomingCallUUid(call_cid);
|
|
187
|
-
} catch (error) {
|
|
188
|
-
logger('error', 'Error in getting call uuid from native module', error);
|
|
189
|
-
}
|
|
190
|
-
if (!uuid) {
|
|
191
|
-
logger('error', `Not processing call.ring push notification, as no uuid found for call_cid: ${call_cid}`);
|
|
192
|
-
return;
|
|
193
|
-
}
|
|
194
|
-
const created_by_id = notification?.stream?.created_by_id;
|
|
195
|
-
const receiver_id = notification?.stream?.receiver_id;
|
|
196
|
-
function closeCallIfNecessary() {
|
|
197
|
-
const {
|
|
198
|
-
mustEndCall,
|
|
199
|
-
callkeepReason
|
|
200
|
-
} = shouldCallBeEnded(callFromPush, created_by_id, receiver_id);
|
|
201
|
-
if (mustEndCall) {
|
|
202
|
-
const callkeep = getCallKeepLib();
|
|
203
|
-
logger('debug', `callkeep.reportEndCallWithUUID for uuid: ${uuid}, call_cid: ${call_cid}, reason: ${callkeepReason}`);
|
|
204
|
-
callkeep.reportEndCallWithUUID(uuid, callkeepReason);
|
|
205
|
-
const voipPushNotification = getVoipPushNotificationLib();
|
|
206
|
-
voipPushNotification.onVoipNotificationCompleted(uuid);
|
|
207
|
-
return true;
|
|
208
|
-
}
|
|
209
|
-
return false;
|
|
210
|
-
}
|
|
211
|
-
const closed = closeCallIfNecessary();
|
|
212
|
-
const canListenToWS = () => canAddPushWSSubscriptionsRef.current && AppState.currentState !== 'active';
|
|
213
|
-
if (!closed && canListenToWS()) {
|
|
214
|
-
const unsubscribe = callFromPush.on('all', event => {
|
|
215
|
-
const _canListenToWS = canListenToWS();
|
|
216
|
-
if (!_canListenToWS) {
|
|
217
|
-
logger('debug', `unsubscribe due to event callCid: ${call_cid} canListenToWS: ${_canListenToWS}`, event);
|
|
218
|
-
unsubscribe();
|
|
219
|
-
return;
|
|
220
|
-
}
|
|
221
|
-
const _closed = closeCallIfNecessary();
|
|
222
|
-
if (_closed) {
|
|
223
|
-
logger('debug', `unsubscribe due to event callCid: ${call_cid} canListenToWS: ${_canListenToWS} shouldCallBeClosed: ${_closed}`, event);
|
|
224
|
-
unsubscribe();
|
|
225
|
-
}
|
|
226
|
-
});
|
|
227
|
-
const unsubscriptionCallbacks = RxUtils.getCurrentValue(pushUnsubscriptionCallbacks$) ?? [];
|
|
228
|
-
pushUnsubscriptionCallbacks$.next([...unsubscriptionCallbacks, unsubscribe]);
|
|
229
|
-
}
|
|
230
|
-
// send the info to this subject, it is listened by callkeep events
|
|
231
|
-
// callkeep events will then accept/reject the call
|
|
232
|
-
logger('debug', `call_cid:${call_cid} uuid:${uuid} received and processed from call.ring push notification`);
|
|
233
|
-
voipPushNotificationCallCId$.next(call_cid);
|
|
234
|
-
};
|
|
235
137
|
//# sourceMappingURL=useIosVoipPushEventsSetupEffect.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useEffect","useRef","useState","
|
|
1
|
+
{"version":3,"names":["useEffect","useRef","useState","getVoipPushNotificationLib","Platform","onVoipNotificationReceived","StreamVideoRN","useConnectedUser","useStreamVideoClient","setPushLogoutCallback","getLogger","logger","lastListener","count","setLogoutCallback","client","token","lastVoipTokenRef","current","userId","removeDevice","err","useIosVoipPushEventsSetupEffect","connectedUserId","id","unsentToken","setUnsentToken","pushConfig","getConfig","push","ios","pushProviderName","addVoipDevice","then","undefined","catch","error","OS","voipPushNotification","registerVoipToken","onTokenReceived","streamClient","_user","lastVoipToken","addEventListener","events","Array","isArray","length","voipPushEvent","name","data","currentListenerCount","removeEventListener"],"sourceRoot":"../../../../src","sources":["hooks/push/useIosVoipPushEventsSetupEffect.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import pushLogoutCallbacks from '../internal/pushLogoutCallback';
|
|
2
2
|
import newNotificationCallbacks from '../internal/newNotificationCallbacks';
|
|
3
|
+
import { setupIosCallKeepEvents } from '../push/setupIosCallKeepEvents';
|
|
4
|
+
import { setupIosVoipPushEvents } from '../push/setupIosVoipPushEvents';
|
|
3
5
|
const DEFAULT_STREAM_VIDEO_CONFIG = {
|
|
4
6
|
foregroundService: {
|
|
5
7
|
android: {
|
|
@@ -67,6 +69,8 @@ export class StreamVideoRN {
|
|
|
67
69
|
Please see https://getstream.io/video/docs/react-native/advanced/ringing-calls/#watch-for-incoming-and-outgoing-calls for more information.`);
|
|
68
70
|
}
|
|
69
71
|
this.config.push = pushConfig;
|
|
72
|
+
setupIosCallKeepEvents(pushConfig);
|
|
73
|
+
setupIosVoipPushEvents(pushConfig);
|
|
70
74
|
}
|
|
71
75
|
static getConfig() {
|
|
72
76
|
return this.config;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["pushLogoutCallbacks","newNotificationCallbacks","DEFAULT_STREAM_VIDEO_CONFIG","foregroundService","android","channel","id","name","lights","vibration","importance","notificationTexts","title","body","StreamVideoRN","config","updateConfig","updateAndroidIncomingCallChannel","updateChannel","prevChannel","push","incomingCallChannel","setPushConfig","pushConfig","__DEV__","navigateAcceptCall","navigateToIncomingCall","Error","getConfig","onPushLogout","current","Promise","all","map","callback","then","resolve","clearPushLogoutCallbacks","addOnNewCallNotificationListener","filter","cb"],"sourceRoot":"../../../../src","sources":["utils/StreamVideoRN/index.ts"],"mappings":"AACA,OAAOA,mBAAmB,MAAM,gCAAgC;AAChE,OAAOC,wBAAwB,MAExB,sCAAsC;
|
|
1
|
+
{"version":3,"names":["pushLogoutCallbacks","newNotificationCallbacks","setupIosCallKeepEvents","setupIosVoipPushEvents","DEFAULT_STREAM_VIDEO_CONFIG","foregroundService","android","channel","id","name","lights","vibration","importance","notificationTexts","title","body","StreamVideoRN","config","updateConfig","updateAndroidIncomingCallChannel","updateChannel","prevChannel","push","incomingCallChannel","setPushConfig","pushConfig","__DEV__","navigateAcceptCall","navigateToIncomingCall","Error","getConfig","onPushLogout","current","Promise","all","map","callback","then","resolve","clearPushLogoutCallbacks","addOnNewCallNotificationListener","filter","cb"],"sourceRoot":"../../../../src","sources":["utils/StreamVideoRN/index.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { Platform } from 'react-native';
|
|
2
|
-
import { pushNonRingingCallData$ } from './internal/rxSubjects';
|
|
3
|
-
import { getExpoNotificationsLib, getNotifeeLibThrowIfNotInstalledForPush, getPushNotificationIosLib } from './libs';
|
|
4
|
-
import { getLogger } from '@stream-io/video-client';
|
|
1
|
+
import { AppState, NativeModules, Platform } from 'react-native';
|
|
2
|
+
import { pushNonRingingCallData$, pushUnsubscriptionCallbacks$, voipPushNotificationCallCId$ } from './internal/rxSubjects';
|
|
3
|
+
import { getCallKeepLib, getExpoNotificationsLib, getNotifeeLibThrowIfNotInstalledForPush, getPushNotificationIosLib, getVoipPushNotificationLib } from './libs';
|
|
4
|
+
import { RxUtils, getLogger } from '@stream-io/video-client';
|
|
5
5
|
import { setPushLogoutCallback } from '../internal/pushLogoutCallback';
|
|
6
6
|
import { StreamVideoRN } from '../StreamVideoRN';
|
|
7
|
+
import { shouldCallBeEnded, canAddPushWSSubscriptionsRef } from './internal/utils';
|
|
7
8
|
let lastApnToken = {
|
|
8
9
|
token: '',
|
|
9
10
|
userId: ''
|
|
@@ -143,4 +144,96 @@ export async function initIosNonVoipToken(client, pushConfig, setUnsubscribeList
|
|
|
143
144
|
});
|
|
144
145
|
}
|
|
145
146
|
}
|
|
147
|
+
export const onVoipNotificationReceived = async notification => {
|
|
148
|
+
/* --- Example payload ---
|
|
149
|
+
{
|
|
150
|
+
"aps": {
|
|
151
|
+
"alert": {
|
|
152
|
+
"body": "",
|
|
153
|
+
"title": "Vishal Narkhede is calling you"
|
|
154
|
+
},
|
|
155
|
+
"badge": 0,
|
|
156
|
+
"category": "stream.video",
|
|
157
|
+
"mutable-content": 1
|
|
158
|
+
},
|
|
159
|
+
"stream": {
|
|
160
|
+
"call_cid": "default:ixbm7y0k74pbjnq",
|
|
161
|
+
"call_display_name": "",
|
|
162
|
+
"created_by_display_name": "Vishal Narkhede",
|
|
163
|
+
"created_by_id": "vishalexpo",
|
|
164
|
+
"receiver_id": "santhoshexpo",
|
|
165
|
+
"sender": "stream.video",
|
|
166
|
+
"type": "call.ring",
|
|
167
|
+
"version": "v2"
|
|
168
|
+
}
|
|
169
|
+
} */
|
|
170
|
+
const sender = notification?.stream?.sender;
|
|
171
|
+
const type = notification?.stream?.type;
|
|
172
|
+
// do not process any other notifications other than stream.video or ringing
|
|
173
|
+
if (sender !== 'stream.video' && type !== 'call.ring') {
|
|
174
|
+
return;
|
|
175
|
+
}
|
|
176
|
+
const call_cid = notification?.stream?.call_cid;
|
|
177
|
+
const pushConfig = StreamVideoRN.getConfig().push;
|
|
178
|
+
if (!call_cid || Platform.OS !== 'ios' || !pushConfig) {
|
|
179
|
+
return;
|
|
180
|
+
}
|
|
181
|
+
const logger = getLogger(['setupIosVoipPushEvents']);
|
|
182
|
+
const client = await pushConfig.createStreamVideoClient();
|
|
183
|
+
if (!client) {
|
|
184
|
+
logger('debug', 'client not found, not processing call.ring voip push notification');
|
|
185
|
+
return;
|
|
186
|
+
}
|
|
187
|
+
const callFromPush = await client.onRingingCall(call_cid);
|
|
188
|
+
let uuid = '';
|
|
189
|
+
try {
|
|
190
|
+
uuid = await NativeModules?.StreamVideoReactNative?.getIncomingCallUUid(call_cid);
|
|
191
|
+
} catch (error) {
|
|
192
|
+
logger('error', 'Error in getting call uuid from native module', error);
|
|
193
|
+
}
|
|
194
|
+
if (!uuid) {
|
|
195
|
+
logger('error', `Not processing call.ring push notification, as no uuid found for call_cid: ${call_cid}`);
|
|
196
|
+
return;
|
|
197
|
+
}
|
|
198
|
+
const created_by_id = notification?.stream?.created_by_id;
|
|
199
|
+
const receiver_id = notification?.stream?.receiver_id;
|
|
200
|
+
function closeCallIfNecessary() {
|
|
201
|
+
const {
|
|
202
|
+
mustEndCall,
|
|
203
|
+
callkeepReason
|
|
204
|
+
} = shouldCallBeEnded(callFromPush, created_by_id, receiver_id);
|
|
205
|
+
if (mustEndCall) {
|
|
206
|
+
const callkeep = getCallKeepLib();
|
|
207
|
+
logger('debug', `callkeep.reportEndCallWithUUID for uuid: ${uuid}, call_cid: ${call_cid}, reason: ${callkeepReason}`);
|
|
208
|
+
callkeep.reportEndCallWithUUID(uuid, callkeepReason);
|
|
209
|
+
const voipPushNotification = getVoipPushNotificationLib();
|
|
210
|
+
voipPushNotification.onVoipNotificationCompleted(uuid);
|
|
211
|
+
return true;
|
|
212
|
+
}
|
|
213
|
+
return false;
|
|
214
|
+
}
|
|
215
|
+
const closed = closeCallIfNecessary();
|
|
216
|
+
const canListenToWS = () => canAddPushWSSubscriptionsRef.current && AppState.currentState !== 'active';
|
|
217
|
+
if (!closed && canListenToWS()) {
|
|
218
|
+
const unsubscribe = callFromPush.on('all', event => {
|
|
219
|
+
const _canListenToWS = canListenToWS();
|
|
220
|
+
if (!_canListenToWS) {
|
|
221
|
+
logger('debug', `unsubscribe due to event callCid: ${call_cid} canListenToWS: ${_canListenToWS}`, event);
|
|
222
|
+
unsubscribe();
|
|
223
|
+
return;
|
|
224
|
+
}
|
|
225
|
+
const _closed = closeCallIfNecessary();
|
|
226
|
+
if (_closed) {
|
|
227
|
+
logger('debug', `unsubscribe due to event callCid: ${call_cid} canListenToWS: ${_canListenToWS} shouldCallBeClosed: ${_closed}`, event);
|
|
228
|
+
unsubscribe();
|
|
229
|
+
}
|
|
230
|
+
});
|
|
231
|
+
const unsubscriptionCallbacks = RxUtils.getCurrentValue(pushUnsubscriptionCallbacks$) ?? [];
|
|
232
|
+
pushUnsubscriptionCallbacks$.next([...unsubscriptionCallbacks, unsubscribe]);
|
|
233
|
+
}
|
|
234
|
+
// send the info to this subject, it is listened by callkeep events
|
|
235
|
+
// callkeep events will then accept/reject the call
|
|
236
|
+
logger('debug', `call_cid:${call_cid} uuid:${uuid} received and processed from call.ring push notification`);
|
|
237
|
+
voipPushNotificationCallCId$.next(call_cid);
|
|
238
|
+
};
|
|
146
239
|
//# sourceMappingURL=ios.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Platform","pushNonRingingCallData$","getExpoNotificationsLib","getNotifeeLibThrowIfNotInstalledForPush","getPushNotificationIosLib","getLogger","setPushLogoutCallback","StreamVideoRN","lastApnToken","token","userId","processNonRingingNotificationStreamPayload","streamPayload","sender","type","cid","call_cid","logger","next","undefined","oniOSExpoNotificationEvent","event","pushConfig","getConfig","push","trigger","request","payload","stream","JSON","stringify","oniOSNotifeeEvent","OS","detail","notifeeLib","EventType","PRESS","notification","data","result","onTapNonRingingCallNotification","onPushNotificationiOSStreamVideoEvent","pushNotificationIosLib","getData","isClicked","userInteraction","finish","FetchResult","NoData","initIosNonVoipToken","client","setUnsubscribeListener","ios","pushProviderName","setDeviceToken","streamClient","_user","id","removeDevice","err","push_provider_name","addDevice","then","catch","isExpo","expoNotificationsLib","getDevicePushTokenAsync","devicePushToken","subscription","addPushTokenListener","remove","addEventListener","removeEventListener"],"sourceRoot":"../../../../src","sources":["utils/push/ios.ts"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,cAAc;
|
|
1
|
+
{"version":3,"names":["AppState","NativeModules","Platform","pushNonRingingCallData$","pushUnsubscriptionCallbacks$","voipPushNotificationCallCId$","getCallKeepLib","getExpoNotificationsLib","getNotifeeLibThrowIfNotInstalledForPush","getPushNotificationIosLib","getVoipPushNotificationLib","RxUtils","getLogger","setPushLogoutCallback","StreamVideoRN","shouldCallBeEnded","canAddPushWSSubscriptionsRef","lastApnToken","token","userId","processNonRingingNotificationStreamPayload","streamPayload","sender","type","cid","call_cid","logger","next","undefined","oniOSExpoNotificationEvent","event","pushConfig","getConfig","push","trigger","request","payload","stream","JSON","stringify","oniOSNotifeeEvent","OS","detail","notifeeLib","EventType","PRESS","notification","data","result","onTapNonRingingCallNotification","onPushNotificationiOSStreamVideoEvent","pushNotificationIosLib","getData","isClicked","userInteraction","finish","FetchResult","NoData","initIosNonVoipToken","client","setUnsubscribeListener","ios","pushProviderName","setDeviceToken","streamClient","_user","id","removeDevice","err","push_provider_name","addDevice","then","catch","isExpo","expoNotificationsLib","getDevicePushTokenAsync","devicePushToken","subscription","addPushTokenListener","remove","addEventListener","removeEventListener","onVoipNotificationReceived","createStreamVideoClient","callFromPush","onRingingCall","uuid","StreamVideoReactNative","getIncomingCallUUid","error","created_by_id","receiver_id","closeCallIfNecessary","mustEndCall","callkeepReason","callkeep","reportEndCallWithUUID","voipPushNotification","onVoipNotificationCompleted","closed","canListenToWS","current","currentState","unsubscribe","on","_canListenToWS","_closed","unsubscriptionCallbacks","getCurrentValue"],"sourceRoot":"../../../../src","sources":["utils/push/ios.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
import { voipCallkeepCallOnForegroundMap$, voipPushNotificationCallCId$ } from './internal/rxSubjects';
|
|
2
|
+
import { getLogger, RxUtils } from '@stream-io/video-client';
|
|
3
|
+
import { getCallKeepLib, getVoipPushNotificationLib } from './libs';
|
|
4
|
+
import { clearPushWSEventSubscriptions, processCallFromPushInBackground } from './internal/utils';
|
|
5
|
+
import { pushAcceptedIncomingCallCId$, voipCallkeepAcceptedCallOnNativeDialerMap$ } from './internal/rxSubjects';
|
|
6
|
+
import { AppState, NativeModules, Platform } from 'react-native';
|
|
7
|
+
import { setPushLogoutCallback } from '../internal/pushLogoutCallback';
|
|
8
|
+
/**
|
|
9
|
+
* This hook is used to listen to callkeep events and do the necessary actions
|
|
10
|
+
*/
|
|
11
|
+
export function setupIosCallKeepEvents(pushConfig) {
|
|
12
|
+
if (Platform.OS !== 'ios' || !pushConfig.ios.pushProviderName) {
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
const logger = getLogger(['setupIosCallKeepEvents']);
|
|
16
|
+
const callkeep = getCallKeepLib();
|
|
17
|
+
async function getCallCid(callUUID) {
|
|
18
|
+
let call_cid = RxUtils.getCurrentValue(voipPushNotificationCallCId$);
|
|
19
|
+
if (!call_cid) {
|
|
20
|
+
// if call_cid is not available, try to get it from native module
|
|
21
|
+
try {
|
|
22
|
+
call_cid = await NativeModules?.StreamVideoReactNative?.getIncomingCallCid(callUUID);
|
|
23
|
+
voipPushNotificationCallCId$.next(call_cid);
|
|
24
|
+
} catch (error) {
|
|
25
|
+
logger('debug', 'Error in getting call cid from native module - probably the call was already processed, so ignoring this callkeep event');
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
return call_cid;
|
|
29
|
+
}
|
|
30
|
+
function answerCall(callUUID) {
|
|
31
|
+
getCallCid(callUUID).then(call_cid => {
|
|
32
|
+
logger('debug', `answerCall event with call_cid: ${call_cid}`);
|
|
33
|
+
iosCallkeepAcceptCall(call_cid, callUUID);
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
function endCall(callUUID) {
|
|
37
|
+
getCallCid(callUUID).then(call_cid => {
|
|
38
|
+
logger('debug', `endCall event with call_cid: ${call_cid}`);
|
|
39
|
+
iosCallkeepRejectCall(call_cid, callUUID, pushConfig);
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
function didDisplayIncomingCall(callUUID, payload) {
|
|
43
|
+
const voipPushNotification = getVoipPushNotificationLib();
|
|
44
|
+
// @ts-expect-error
|
|
45
|
+
const call_cid = payload?.call_cid;
|
|
46
|
+
logger('debug', `didDisplayIncomingCall event with callUUID: ${callUUID} call_cid: ${call_cid}`);
|
|
47
|
+
if (call_cid) {
|
|
48
|
+
if (AppState.currentState === 'background') {
|
|
49
|
+
processCallFromPushInBackground(pushConfig, call_cid, 'backgroundDelivered');
|
|
50
|
+
}
|
|
51
|
+
voipCallkeepCallOnForegroundMap$.next({
|
|
52
|
+
uuid: callUUID,
|
|
53
|
+
cid: call_cid
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
voipPushNotification.onVoipNotificationCompleted(callUUID);
|
|
57
|
+
}
|
|
58
|
+
const {
|
|
59
|
+
remove: removeAnswerCall
|
|
60
|
+
} = callkeep.addEventListener('answerCall', ({
|
|
61
|
+
callUUID
|
|
62
|
+
}) => {
|
|
63
|
+
answerCall(callUUID);
|
|
64
|
+
});
|
|
65
|
+
const {
|
|
66
|
+
remove: removeEndCall
|
|
67
|
+
} = callkeep.addEventListener('endCall', ({
|
|
68
|
+
callUUID
|
|
69
|
+
}) => {
|
|
70
|
+
endCall(callUUID);
|
|
71
|
+
});
|
|
72
|
+
const {
|
|
73
|
+
remove: removeDisplayIncomingCall
|
|
74
|
+
} = callkeep.addEventListener('didDisplayIncomingCall', ({
|
|
75
|
+
callUUID,
|
|
76
|
+
payload
|
|
77
|
+
}) => {
|
|
78
|
+
didDisplayIncomingCall(callUUID, payload);
|
|
79
|
+
});
|
|
80
|
+
const {
|
|
81
|
+
remove: removeDidLoadWithEvents
|
|
82
|
+
} = callkeep.addEventListener('didLoadWithEvents', events => {
|
|
83
|
+
if (!events || !Array.isArray(events) || events.length < 1) {
|
|
84
|
+
return;
|
|
85
|
+
}
|
|
86
|
+
events.forEach(event => {
|
|
87
|
+
const {
|
|
88
|
+
name,
|
|
89
|
+
data
|
|
90
|
+
} = event;
|
|
91
|
+
if (name === 'RNCallKeepDidDisplayIncomingCall') {
|
|
92
|
+
didDisplayIncomingCall(data.callUUID, data.payload);
|
|
93
|
+
} else if (name === 'RNCallKeepPerformAnswerCallAction') {
|
|
94
|
+
answerCall(data.callUUID);
|
|
95
|
+
} else if (name === 'RNCallKeepPerformEndCallAction') {
|
|
96
|
+
endCall(data.callUUID);
|
|
97
|
+
}
|
|
98
|
+
});
|
|
99
|
+
});
|
|
100
|
+
setPushLogoutCallback(async () => {
|
|
101
|
+
removeAnswerCall();
|
|
102
|
+
removeEndCall();
|
|
103
|
+
removeDisplayIncomingCall();
|
|
104
|
+
removeDidLoadWithEvents();
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
const iosCallkeepAcceptCall = (call_cid, callUUIDFromCallkeep) => {
|
|
108
|
+
if (!shouldProcessCallFromCallkeep(call_cid, callUUIDFromCallkeep)) {
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
clearPushWSEventSubscriptions();
|
|
112
|
+
// to call end callkeep later if ended in app and not through callkeep
|
|
113
|
+
voipCallkeepAcceptedCallOnNativeDialerMap$.next({
|
|
114
|
+
uuid: callUUIDFromCallkeep,
|
|
115
|
+
cid: call_cid
|
|
116
|
+
});
|
|
117
|
+
// to process the call in the app
|
|
118
|
+
pushAcceptedIncomingCallCId$.next(call_cid);
|
|
119
|
+
// no need to keep these references anymore
|
|
120
|
+
voipCallkeepCallOnForegroundMap$.next(undefined);
|
|
121
|
+
};
|
|
122
|
+
const iosCallkeepRejectCall = async (call_cid, callUUIDFromCallkeep, pushConfig) => {
|
|
123
|
+
if (!shouldProcessCallFromCallkeep(call_cid, callUUIDFromCallkeep)) {
|
|
124
|
+
return;
|
|
125
|
+
}
|
|
126
|
+
clearPushWSEventSubscriptions();
|
|
127
|
+
// no need to keep these references anymore
|
|
128
|
+
voipCallkeepAcceptedCallOnNativeDialerMap$.next(undefined);
|
|
129
|
+
voipCallkeepCallOnForegroundMap$.next(undefined);
|
|
130
|
+
voipPushNotificationCallCId$.next(undefined);
|
|
131
|
+
await processCallFromPushInBackground(pushConfig, call_cid, 'decline');
|
|
132
|
+
await NativeModules.StreamVideoReactNative?.removeIncomingCall(call_cid);
|
|
133
|
+
};
|
|
134
|
+
|
|
135
|
+
/**
|
|
136
|
+
* Helper function to determine if the answer/end call event from callkeep must be processed
|
|
137
|
+
* Just checks if we have a valid call_cid and acts as a type guard for call_cid
|
|
138
|
+
*/
|
|
139
|
+
const shouldProcessCallFromCallkeep = (call_cid, callUUIDFromCallkeep) => {
|
|
140
|
+
if (!call_cid || !callUUIDFromCallkeep) {
|
|
141
|
+
return false;
|
|
142
|
+
}
|
|
143
|
+
return true;
|
|
144
|
+
};
|
|
145
|
+
//# sourceMappingURL=setupIosCallKeepEvents.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["voipCallkeepCallOnForegroundMap$","voipPushNotificationCallCId$","getLogger","RxUtils","getCallKeepLib","getVoipPushNotificationLib","clearPushWSEventSubscriptions","processCallFromPushInBackground","pushAcceptedIncomingCallCId$","voipCallkeepAcceptedCallOnNativeDialerMap$","AppState","NativeModules","Platform","setPushLogoutCallback","setupIosCallKeepEvents","pushConfig","OS","ios","pushProviderName","logger","callkeep","getCallCid","callUUID","call_cid","getCurrentValue","StreamVideoReactNative","getIncomingCallCid","next","error","answerCall","then","iosCallkeepAcceptCall","endCall","iosCallkeepRejectCall","didDisplayIncomingCall","payload","voipPushNotification","currentState","uuid","cid","onVoipNotificationCompleted","remove","removeAnswerCall","addEventListener","removeEndCall","removeDisplayIncomingCall","removeDidLoadWithEvents","events","Array","isArray","length","forEach","event","name","data","callUUIDFromCallkeep","shouldProcessCallFromCallkeep","undefined","removeIncomingCall"],"sourceRoot":"../../../../src","sources":["utils/push/setupIosCallKeepEvents.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { getVoipPushNotificationLib } from './libs';
|
|
2
|
+
import { Platform } from 'react-native';
|
|
3
|
+
import { onVoipNotificationReceived } from '..';
|
|
4
|
+
import { setPushLogoutCallback } from '../internal/pushLogoutCallback';
|
|
5
|
+
import { getLogger } from '@stream-io/video-client';
|
|
6
|
+
export function setupIosVoipPushEvents(pushConfig) {
|
|
7
|
+
if (Platform.OS !== 'ios' || !pushConfig.ios?.pushProviderName) {
|
|
8
|
+
return;
|
|
9
|
+
}
|
|
10
|
+
const logger = getLogger(['setupIosVoipPushEvents']);
|
|
11
|
+
const voipPushNotification = getVoipPushNotificationLib();
|
|
12
|
+
logger('debug', 'notification event listener added');
|
|
13
|
+
voipPushNotification.addEventListener('notification', notification => {
|
|
14
|
+
onVoipNotificationReceived(notification);
|
|
15
|
+
});
|
|
16
|
+
setPushLogoutCallback(async () => {
|
|
17
|
+
getLogger(['setPushLogoutCallback'])('debug', 'notification event listener removed');
|
|
18
|
+
voipPushNotification.removeEventListener('notification');
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=setupIosVoipPushEvents.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["getVoipPushNotificationLib","Platform","onVoipNotificationReceived","setPushLogoutCallback","getLogger","setupIosVoipPushEvents","pushConfig","OS","ios","pushProviderName","logger","voipPushNotification","addEventListener","notification","removeEventListener"],"sourceRoot":"../../../../src","sources":["utils/push/setupIosVoipPushEvents.ts"],"mappings":"AAAA,SAASA,0BAA0B,QAAQ,QAAQ;AAEnD,SAASC,QAAQ,QAAQ,cAAc;AACvC,SAASC,0BAA0B,QAAQ,IAAI;AAC/C,SAASC,qBAAqB,QAAQ,gCAAgC;AACtE,SAASC,SAAS,QAAQ,yBAAyB;AAGnD,OAAO,SAASC,sBAAsBA,CACpCC,UAAkD,EAClD;EACA,IAAIL,QAAQ,CAACM,EAAE,KAAK,KAAK,IAAI,CAACD,UAAU,CAACE,GAAG,EAAEC,gBAAgB,EAAE;IAC9D;EACF;EACA,MAAMC,MAAM,GAAGN,SAAS,CAAC,CAAC,wBAAwB,CAAC,CAAC;EACpD,MAAMO,oBAAoB,GAAGX,0BAA0B,CAAC,CAAC;EAEzDU,MAAM,CAAC,OAAO,EAAE,mCAAmC,CAAC;EACpDC,oBAAoB,CAACC,gBAAgB,CAAC,cAAc,EAAGC,YAAY,IAAK;IACtEX,0BAA0B,CAACW,YAAY,CAAC;EAC1C,CAAC,CAAC;EACFV,qBAAqB,CAAC,YAAY;IAChCC,SAAS,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAClC,OAAO,EACP,qCACF,CAAC;IACDO,oBAAoB,CAACG,mBAAmB,CAAC,cAAc,CAAC;EAC1D,CAAC,CAAC;AACJ","ignoreList":[]}
|
package/dist/module/version.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const version = '1.10.
|
|
1
|
+
export const version = '1.10.14';
|
|
2
2
|
//# sourceMappingURL=version.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RTCViewPipIOS.d.ts","sourceRoot":"","sources":["../../../../../src/components/Call/CallContent/RTCViewPipIOS.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"RTCViewPipIOS.d.ts","sourceRoot":"","sources":["../../../../../src/components/Call/CallContent/RTCViewPipIOS.tsx"],"names":[],"mappings":"AAQA,OAAO,KAA6B,MAAM,OAAO,CAAC;AAMlD,KAAK,KAAK,GAAG;IACX,4BAA4B,CAAC,EAAE,OAAO,CAAC;CACxC,CAAC;AAEF,QAAA,MAAM,aAAa,+DAAiD,KAAK,uBAkFvE,CAAC;AAEH,eAAe,aAAa,CAAC"}
|