@stream-io/video-react-native-sdk 1.28.3 → 1.29.0-beta.1
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/android/src/main/AndroidManifest.xml +8 -1
- package/android/src/main/AndroidManifestNew.xml +11 -0
- package/android/src/main/java/com/streamvideo/reactnative/StreamVideoReactNativeModule.kt +42 -5
- package/android/src/main/java/com/streamvideo/reactnative/audio/utils/WebRtcAudioUtils.kt +70 -6
- package/android/src/main/java/com/streamvideo/reactnative/callmanager/StreamInCallManagerModule.kt +6 -4
- package/android/src/main/java/com/streamvideo/reactnative/keepalive/KeepAliveNotification.kt +83 -0
- package/android/src/main/java/com/streamvideo/reactnative/keepalive/StreamCallKeepAliveHeadlessService.kt +134 -0
- package/dist/commonjs/components/Call/CallLayout/CallParticipantsGrid.js +3 -1
- package/dist/commonjs/components/Call/CallLayout/CallParticipantsGrid.js.map +1 -1
- package/dist/commonjs/components/Call/CallLayout/CallParticipantsSpotlight.js +5 -2
- package/dist/commonjs/components/Call/CallLayout/CallParticipantsSpotlight.js.map +1 -1
- package/dist/commonjs/components/Call/CallParticipantsList/CallParticipantsList.js +6 -3
- package/dist/commonjs/components/Call/CallParticipantsList/CallParticipantsList.js.map +1 -1
- package/dist/commonjs/components/Participant/FloatingParticipantView/index.js +3 -1
- package/dist/commonjs/components/Participant/FloatingParticipantView/index.js.map +1 -1
- package/dist/commonjs/components/Participant/ParticipantView/ParticipantView.js +3 -1
- package/dist/commonjs/components/Participant/ParticipantView/ParticipantView.js.map +1 -1
- package/dist/commonjs/components/Participant/ParticipantView/VideoRenderer/index.js +3 -2
- package/dist/commonjs/components/Participant/ParticipantView/VideoRenderer/index.js.map +1 -1
- package/dist/commonjs/hooks/push/useCallingExpWithCallingStateEffect.js +216 -0
- package/dist/commonjs/hooks/push/useCallingExpWithCallingStateEffect.js.map +1 -0
- package/dist/commonjs/hooks/push/useIosVoipPushEventsSetupEffect.js +18 -31
- package/dist/commonjs/hooks/push/useIosVoipPushEventsSetupEffect.js.map +1 -1
- package/dist/commonjs/hooks/useAndroidKeepCallAliveEffect.js +64 -97
- package/dist/commonjs/hooks/useAndroidKeepCallAliveEffect.js.map +1 -1
- package/dist/commonjs/index.js +1 -0
- package/dist/commonjs/index.js.map +1 -1
- package/dist/commonjs/modules/call-manager/CallManager.js +26 -0
- package/dist/commonjs/modules/call-manager/CallManager.js.map +1 -1
- package/dist/commonjs/providers/StreamCall/index.js +6 -6
- package/dist/commonjs/providers/StreamCall/index.js.map +1 -1
- package/dist/commonjs/utils/StreamVideoRN/index.js +33 -21
- package/dist/commonjs/utils/StreamVideoRN/index.js.map +1 -1
- package/dist/commonjs/utils/internal/audioSessionPromise.js +46 -0
- package/dist/commonjs/utils/internal/audioSessionPromise.js.map +1 -0
- package/dist/commonjs/utils/internal/callingx.js +84 -0
- package/dist/commonjs/utils/internal/callingx.js.map +1 -0
- package/dist/commonjs/utils/internal/registerSDKGlobals.js +52 -3
- package/dist/commonjs/utils/internal/registerSDKGlobals.js.map +1 -1
- package/dist/commonjs/utils/keepCallAliveHeadlessTask.js +48 -0
- package/dist/commonjs/utils/keepCallAliveHeadlessTask.js.map +1 -0
- package/dist/commonjs/utils/push/android.js +145 -200
- package/dist/commonjs/utils/push/android.js.map +1 -1
- package/dist/commonjs/utils/push/internal/ios.js +16 -34
- package/dist/commonjs/utils/push/internal/ios.js.map +1 -1
- package/dist/commonjs/utils/push/internal/rxSubjects.js +1 -20
- package/dist/commonjs/utils/push/internal/rxSubjects.js.map +1 -1
- package/dist/commonjs/utils/push/internal/utils.js +17 -1
- package/dist/commonjs/utils/push/internal/utils.js.map +1 -1
- package/dist/commonjs/utils/push/ios.js.map +1 -1
- package/dist/commonjs/utils/push/libs/callingx.js +75 -0
- package/dist/commonjs/utils/push/libs/callingx.js.map +1 -0
- package/dist/commonjs/utils/push/libs/index.js +8 -19
- package/dist/commonjs/utils/push/libs/index.js.map +1 -1
- package/dist/commonjs/utils/push/libs/notifee/index.js +0 -19
- package/dist/commonjs/utils/push/libs/notifee/index.js.map +1 -1
- package/dist/commonjs/utils/push/setupCallingExpEvents.js +97 -0
- package/dist/commonjs/utils/push/setupCallingExpEvents.js.map +1 -0
- package/dist/commonjs/utils/push/setupIosVoipPushEvents.js +7 -6
- package/dist/commonjs/utils/push/setupIosVoipPushEvents.js.map +1 -1
- package/dist/commonjs/version.js +1 -1
- package/dist/commonjs/version.js.map +1 -1
- package/dist/module/components/Call/CallLayout/CallParticipantsGrid.js +3 -1
- package/dist/module/components/Call/CallLayout/CallParticipantsGrid.js.map +1 -1
- package/dist/module/components/Call/CallLayout/CallParticipantsSpotlight.js +5 -2
- package/dist/module/components/Call/CallLayout/CallParticipantsSpotlight.js.map +1 -1
- package/dist/module/components/Call/CallParticipantsList/CallParticipantsList.js +6 -3
- package/dist/module/components/Call/CallParticipantsList/CallParticipantsList.js.map +1 -1
- package/dist/module/components/Participant/FloatingParticipantView/index.js +3 -1
- package/dist/module/components/Participant/FloatingParticipantView/index.js.map +1 -1
- package/dist/module/components/Participant/ParticipantView/ParticipantView.js +3 -1
- package/dist/module/components/Participant/ParticipantView/ParticipantView.js.map +1 -1
- package/dist/module/components/Participant/ParticipantView/VideoRenderer/index.js +3 -2
- package/dist/module/components/Participant/ParticipantView/VideoRenderer/index.js.map +1 -1
- package/dist/module/hooks/push/useCallingExpWithCallingStateEffect.js +209 -0
- package/dist/module/hooks/push/useCallingExpWithCallingStateEffect.js.map +1 -0
- package/dist/module/hooks/push/useIosVoipPushEventsSetupEffect.js +18 -31
- package/dist/module/hooks/push/useIosVoipPushEventsSetupEffect.js.map +1 -1
- package/dist/module/hooks/useAndroidKeepCallAliveEffect.js +66 -99
- package/dist/module/hooks/useAndroidKeepCallAliveEffect.js.map +1 -1
- package/dist/module/index.js +1 -0
- package/dist/module/index.js.map +1 -1
- package/dist/module/modules/call-manager/CallManager.js +26 -0
- package/dist/module/modules/call-manager/CallManager.js.map +1 -1
- package/dist/module/providers/StreamCall/index.js +6 -6
- package/dist/module/providers/StreamCall/index.js.map +1 -1
- package/dist/module/utils/StreamVideoRN/index.js +33 -21
- package/dist/module/utils/StreamVideoRN/index.js.map +1 -1
- package/dist/module/utils/internal/audioSessionPromise.js +39 -0
- package/dist/module/utils/internal/audioSessionPromise.js.map +1 -0
- package/dist/module/utils/internal/callingx.js +75 -0
- package/dist/module/utils/internal/callingx.js.map +1 -0
- package/dist/module/utils/internal/registerSDKGlobals.js +53 -4
- package/dist/module/utils/internal/registerSDKGlobals.js.map +1 -1
- package/dist/module/utils/keepCallAliveHeadlessTask.js +42 -0
- package/dist/module/utils/keepCallAliveHeadlessTask.js.map +1 -0
- package/dist/module/utils/push/android.js +147 -202
- package/dist/module/utils/push/android.js.map +1 -1
- package/dist/module/utils/push/internal/ios.js +16 -34
- package/dist/module/utils/push/internal/ios.js.map +1 -1
- package/dist/module/utils/push/internal/rxSubjects.js +0 -19
- package/dist/module/utils/push/internal/rxSubjects.js.map +1 -1
- package/dist/module/utils/push/internal/utils.js +14 -0
- package/dist/module/utils/push/internal/utils.js.map +1 -1
- package/dist/module/utils/push/ios.js.map +1 -1
- package/dist/module/utils/push/libs/callingx.js +67 -0
- package/dist/module/utils/push/libs/callingx.js.map +1 -0
- package/dist/module/utils/push/libs/index.js +1 -2
- package/dist/module/utils/push/libs/index.js.map +1 -1
- package/dist/module/utils/push/libs/notifee/index.js +0 -18
- package/dist/module/utils/push/libs/notifee/index.js.map +1 -1
- package/dist/module/utils/push/setupCallingExpEvents.js +91 -0
- package/dist/module/utils/push/setupCallingExpEvents.js.map +1 -0
- package/dist/module/utils/push/setupIosVoipPushEvents.js +7 -6
- package/dist/module/utils/push/setupIosVoipPushEvents.js.map +1 -1
- package/dist/module/version.js +1 -1
- package/dist/module/version.js.map +1 -1
- package/dist/typescript/components/Call/CallLayout/CallParticipantsGrid.d.ts +2 -2
- package/dist/typescript/components/Call/CallLayout/CallParticipantsGrid.d.ts.map +1 -1
- package/dist/typescript/components/Call/CallLayout/CallParticipantsSpotlight.d.ts +2 -2
- package/dist/typescript/components/Call/CallLayout/CallParticipantsSpotlight.d.ts.map +1 -1
- package/dist/typescript/components/Call/CallParticipantsList/CallParticipantsList.d.ts +6 -1
- package/dist/typescript/components/Call/CallParticipantsList/CallParticipantsList.d.ts.map +1 -1
- package/dist/typescript/components/Participant/FloatingParticipantView/index.d.ts +2 -2
- package/dist/typescript/components/Participant/FloatingParticipantView/index.d.ts.map +1 -1
- package/dist/typescript/components/Participant/ParticipantView/ParticipantView.d.ts +6 -1
- package/dist/typescript/components/Participant/ParticipantView/ParticipantView.d.ts.map +1 -1
- package/dist/typescript/components/Participant/ParticipantView/VideoRenderer/index.d.ts +2 -2
- package/dist/typescript/components/Participant/ParticipantView/VideoRenderer/index.d.ts.map +1 -1
- package/dist/typescript/hooks/push/useCallingExpWithCallingStateEffect.d.ts +5 -0
- package/dist/typescript/hooks/push/useCallingExpWithCallingStateEffect.d.ts.map +1 -0
- package/dist/typescript/hooks/push/useIosVoipPushEventsSetupEffect.d.ts.map +1 -1
- package/dist/typescript/hooks/useAndroidKeepCallAliveEffect.d.ts.map +1 -1
- package/dist/typescript/index.d.ts +1 -0
- package/dist/typescript/index.d.ts.map +1 -1
- package/dist/typescript/modules/call-manager/CallManager.d.ts +5 -0
- package/dist/typescript/modules/call-manager/CallManager.d.ts.map +1 -1
- package/dist/typescript/utils/StreamVideoRN/index.d.ts +20 -2
- package/dist/typescript/utils/StreamVideoRN/index.d.ts.map +1 -1
- package/dist/typescript/utils/StreamVideoRN/types.d.ts +54 -29
- package/dist/typescript/utils/StreamVideoRN/types.d.ts.map +1 -1
- package/dist/typescript/utils/internal/audioSessionPromise.d.ts +16 -0
- package/dist/typescript/utils/internal/audioSessionPromise.d.ts.map +1 -0
- package/dist/typescript/utils/internal/callingx.d.ts +13 -0
- package/dist/typescript/utils/internal/callingx.d.ts.map +1 -0
- package/dist/typescript/utils/internal/registerSDKGlobals.d.ts.map +1 -1
- package/dist/typescript/utils/keepCallAliveHeadlessTask.d.ts +10 -0
- package/dist/typescript/utils/keepCallAliveHeadlessTask.d.ts.map +1 -0
- package/dist/typescript/utils/push/android.d.ts +1 -2
- package/dist/typescript/utils/push/android.d.ts.map +1 -1
- package/dist/typescript/utils/push/internal/ios.d.ts.map +1 -1
- package/dist/typescript/utils/push/internal/rxSubjects.d.ts +0 -12
- package/dist/typescript/utils/push/internal/rxSubjects.d.ts.map +1 -1
- package/dist/typescript/utils/push/internal/utils.d.ts +4 -0
- package/dist/typescript/utils/push/internal/utils.d.ts.map +1 -1
- package/dist/typescript/utils/push/ios.d.ts +1 -2
- package/dist/typescript/utils/push/ios.d.ts.map +1 -1
- package/dist/typescript/utils/push/libs/callingx.d.ts +9 -0
- package/dist/typescript/utils/push/libs/callingx.d.ts.map +1 -0
- package/dist/typescript/utils/push/libs/firebaseMessaging/index.d.ts +16 -2
- package/dist/typescript/utils/push/libs/firebaseMessaging/index.d.ts.map +1 -1
- package/dist/typescript/utils/push/libs/index.d.ts +1 -2
- package/dist/typescript/utils/push/libs/index.d.ts.map +1 -1
- package/dist/typescript/utils/push/libs/notifee/index.d.ts +0 -1
- package/dist/typescript/utils/push/libs/notifee/index.d.ts.map +1 -1
- package/dist/typescript/utils/push/setupCallingExpEvents.d.ts +8 -0
- package/dist/typescript/utils/push/setupCallingExpEvents.d.ts.map +1 -0
- package/dist/typescript/utils/push/setupIosVoipPushEvents.d.ts.map +1 -1
- package/dist/typescript/version.d.ts +1 -1
- package/dist/typescript/version.d.ts.map +1 -1
- package/expo-config-plugin/dist/withAndroidManifest.js +1 -33
- package/expo-config-plugin/dist/withAndroidPermissions.js +2 -7
- package/expo-config-plugin/dist/withAppDelegate.js +19 -197
- package/expo-config-plugin/dist/withMainActivity.js +1 -1
- package/expo-config-plugin/dist/withiOSInfoPlist.js +2 -3
- package/ios/StreamInCallManager.m +2 -0
- package/ios/StreamInCallManager.swift +20 -5
- package/ios/StreamVideoReactNative.h +7 -4
- package/ios/StreamVideoReactNative.m +191 -82
- package/package.json +10 -15
- package/src/components/Call/CallLayout/CallParticipantsGrid.tsx +3 -1
- package/src/components/Call/CallLayout/CallParticipantsSpotlight.tsx +4 -1
- package/src/components/Call/CallParticipantsList/CallParticipantsList.tsx +8 -0
- package/src/components/Participant/FloatingParticipantView/index.tsx +3 -1
- package/src/components/Participant/ParticipantView/ParticipantView.tsx +7 -0
- package/src/components/Participant/ParticipantView/VideoRenderer/index.tsx +7 -2
- package/src/hooks/push/useCallingExpWithCallingStateEffect.ts +307 -0
- package/src/hooks/push/useIosVoipPushEventsSetupEffect.ts +21 -34
- package/src/hooks/useAndroidKeepCallAliveEffect.ts +94 -120
- package/src/index.ts +1 -0
- package/src/modules/call-manager/CallManager.ts +36 -0
- package/src/modules/call-manager/native-module.d.ts +7 -0
- package/src/providers/StreamCall/index.tsx +6 -6
- package/src/utils/StreamVideoRN/index.ts +40 -30
- package/src/utils/StreamVideoRN/types.ts +56 -29
- package/src/utils/internal/audioSessionPromise.ts +39 -0
- package/src/utils/internal/callingx.ts +108 -0
- package/src/utils/internal/registerSDKGlobals.ts +47 -4
- package/src/utils/keepCallAliveHeadlessTask.ts +54 -0
- package/src/utils/push/android.ts +223 -308
- package/src/utils/push/internal/ios.ts +25 -46
- package/src/utils/push/internal/rxSubjects.ts +0 -29
- package/src/utils/push/internal/utils.ts +25 -0
- package/src/utils/push/ios.ts +1 -6
- package/src/utils/push/libs/callingx.ts +90 -0
- package/src/utils/push/libs/index.ts +1 -2
- package/src/utils/push/libs/notifee/index.ts +0 -27
- package/src/utils/push/setupCallingExpEvents.ts +117 -0
- package/src/utils/push/setupIosVoipPushEvents.ts +11 -7
- package/src/version.ts +1 -1
- package/CHANGELOG.md +0 -3103
- package/android/src/main/java/com/streamvideo/reactnative/util/CallAliveServiceChecker.kt +0 -95
- package/dist/commonjs/hooks/push/useIosCallkeepWithCallingStateEffect.js +0 -160
- package/dist/commonjs/hooks/push/useIosCallkeepWithCallingStateEffect.js.map +0 -1
- package/dist/commonjs/utils/push/libs/callkeep.js +0 -17
- package/dist/commonjs/utils/push/libs/callkeep.js.map +0 -1
- package/dist/commonjs/utils/push/libs/voipPushNotification.js +0 -17
- package/dist/commonjs/utils/push/libs/voipPushNotification.js.map +0 -1
- package/dist/commonjs/utils/push/setupIosCallKeepEvents.js +0 -205
- package/dist/commonjs/utils/push/setupIosCallKeepEvents.js.map +0 -1
- package/dist/module/hooks/push/useIosCallkeepWithCallingStateEffect.js +0 -153
- package/dist/module/hooks/push/useIosCallkeepWithCallingStateEffect.js.map +0 -1
- package/dist/module/utils/push/libs/callkeep.js +0 -11
- package/dist/module/utils/push/libs/callkeep.js.map +0 -1
- package/dist/module/utils/push/libs/voipPushNotification.js +0 -11
- package/dist/module/utils/push/libs/voipPushNotification.js.map +0 -1
- package/dist/module/utils/push/setupIosCallKeepEvents.js +0 -199
- package/dist/module/utils/push/setupIosCallKeepEvents.js.map +0 -1
- package/dist/typescript/hooks/push/useIosCallkeepWithCallingStateEffect.d.ts +0 -5
- package/dist/typescript/hooks/push/useIosCallkeepWithCallingStateEffect.d.ts.map +0 -1
- package/dist/typescript/utils/push/libs/callkeep.d.ts +0 -3
- package/dist/typescript/utils/push/libs/callkeep.d.ts.map +0 -1
- package/dist/typescript/utils/push/libs/voipPushNotification.d.ts +0 -3
- package/dist/typescript/utils/push/libs/voipPushNotification.d.ts.map +0 -1
- package/dist/typescript/utils/push/setupIosCallKeepEvents.d.ts +0 -6
- package/dist/typescript/utils/push/setupIosCallKeepEvents.d.ts.map +0 -1
- package/src/hooks/push/useIosCallkeepWithCallingStateEffect.ts +0 -235
- package/src/utils/push/libs/callkeep.ts +0 -16
- package/src/utils/push/libs/voipPushNotification.ts +0 -17
- package/src/utils/push/setupIosCallKeepEvents.ts +0 -252
|
@@ -33,7 +33,8 @@ export const CallParticipantsList = ({
|
|
|
33
33
|
ParticipantVideoFallback,
|
|
34
34
|
VideoRenderer,
|
|
35
35
|
supportedReactions,
|
|
36
|
-
landscape
|
|
36
|
+
landscape,
|
|
37
|
+
mirror
|
|
37
38
|
}) => {
|
|
38
39
|
const styles = useStyles();
|
|
39
40
|
const [containerLayout, setContainerLayout] = useState({
|
|
@@ -150,7 +151,8 @@ export const CallParticipantsList = ({
|
|
|
150
151
|
style: itemContainerStyle,
|
|
151
152
|
trackType: "videoTrack",
|
|
152
153
|
isVisible: isVisible,
|
|
153
|
-
supportedReactions: supportedReactions
|
|
154
|
+
supportedReactions: supportedReactions,
|
|
155
|
+
mirror: mirror
|
|
154
156
|
}, participantProps)));
|
|
155
157
|
},
|
|
156
158
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
@@ -166,7 +168,8 @@ export const CallParticipantsList = ({
|
|
|
166
168
|
style: styles.flexed,
|
|
167
169
|
trackType: "videoTrack",
|
|
168
170
|
key: keyExtractor(participant, index),
|
|
169
|
-
supportedReactions: supportedReactions
|
|
171
|
+
supportedReactions: supportedReactions,
|
|
172
|
+
mirror: mirror
|
|
170
173
|
}, participantProps));
|
|
171
174
|
}));
|
|
172
175
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useCallback","useMemo","useReducer","useRef","useState","FlatList","StyleSheet","VisibilityState","useDebouncedValue","useCall","ComponentTestIds","ParticipantView","DefaultParticipantView","useTheme","VIEWABILITY_CONFIG","waitForInteraction","itemVisiblePercentThreshold","CallParticipantsList","numberOfColumns","horizontal","participants","ParticipantLabel","ParticipantNetworkQualityIndicator","ParticipantReaction","ParticipantVideoFallback","VideoRenderer","supportedReactions","landscape","styles","useStyles","containerLayout","setContainerLayout","width","height","viewableParticipantSessionIds","Set","_forceUpdateValue","forceUpdate","x","forceUpdateValue","activeCall","activeCallRef","current","onViewableItemsChanged","viewableItems","participantPatches","mustUpdate","newVisibleParticipantSessionIds","map","v","key","oldVisibleParticipantSessionIds","forEach","has","viewportVisibilityState","videoTrack","VISIBLE","screenShareTrack","UNKNOWN","state","updateParticipants","keyExtractor","item","sessionId","onLayout","event","nativeEvent","layout","prev","itemHeight","itemWidth","calculateParticipantViewSize","containerHeight","containerWidth","participantsLength","length","margin","participant","itemContainerStyle","style","participantWrapperHorizontal","landScapeStyle","participantProps","renderItem","isVisible","createElement","Fragment","_extends","trackType","shouldWrapByColumns","index","flexed","undefined","data","viewabilityConfig","numColumns","showsHorizontalScrollIndicator","extraData","testID","CALL_PARTICIPANTS_LIST","theme","create","flex","marginHorizontal","variants","spacingSizes","sm","borderRadius","borderRadiusSizes","xs"],"sourceRoot":"../../../../../src","sources":["components/Call/CallParticipantsList/CallParticipantsList.tsx"],"mappings":";AAAA,OAAOA,KAAK,IACVC,WAAW,EACXC,OAAO,EACPC,UAAU,EACVC,MAAM,EACNC,QAAQ,QACH,OAAO;AACd,SACEC,QAAQ,EAERC,UAAU,QAEL,cAAc;AAErB,SAGEC,eAAe,QACV,yBAAyB;AAChC,SAASC,iBAAiB,QAAQ,wCAAwC;AAC1E,SAASC,OAAO,QAAQ,iCAAiC;AACzD,SAASC,gBAAgB,QAAQ,4BAA4B;AAC7D,SACEC,eAAe,IAAIC,sBAAsB,QAGpC,mCAAmC;AAE1C,SAASC,QAAQ,QAAQ,mBAAmB;AAM5C,MAAMC,kBAAsD,GAAG;EAC7DC,kBAAkB,EAAE,KAAK;EACzBC,2BAA2B,EAAE;AAC/B,CAAC;;
|
|
1
|
+
{"version":3,"names":["React","useCallback","useMemo","useReducer","useRef","useState","FlatList","StyleSheet","VisibilityState","useDebouncedValue","useCall","ComponentTestIds","ParticipantView","DefaultParticipantView","useTheme","VIEWABILITY_CONFIG","waitForInteraction","itemVisiblePercentThreshold","CallParticipantsList","numberOfColumns","horizontal","participants","ParticipantLabel","ParticipantNetworkQualityIndicator","ParticipantReaction","ParticipantVideoFallback","VideoRenderer","supportedReactions","landscape","mirror","styles","useStyles","containerLayout","setContainerLayout","width","height","viewableParticipantSessionIds","Set","_forceUpdateValue","forceUpdate","x","forceUpdateValue","activeCall","activeCallRef","current","onViewableItemsChanged","viewableItems","participantPatches","mustUpdate","newVisibleParticipantSessionIds","map","v","key","oldVisibleParticipantSessionIds","forEach","has","viewportVisibilityState","videoTrack","VISIBLE","screenShareTrack","UNKNOWN","state","updateParticipants","keyExtractor","item","sessionId","onLayout","event","nativeEvent","layout","prev","itemHeight","itemWidth","calculateParticipantViewSize","containerHeight","containerWidth","participantsLength","length","margin","participant","itemContainerStyle","style","participantWrapperHorizontal","landScapeStyle","participantProps","renderItem","isVisible","createElement","Fragment","_extends","trackType","shouldWrapByColumns","index","flexed","undefined","data","viewabilityConfig","numColumns","showsHorizontalScrollIndicator","extraData","testID","CALL_PARTICIPANTS_LIST","theme","create","flex","marginHorizontal","variants","spacingSizes","sm","borderRadius","borderRadiusSizes","xs"],"sourceRoot":"../../../../../src","sources":["components/Call/CallParticipantsList/CallParticipantsList.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -56,7 +56,8 @@ export const FloatingParticipantView = ({
|
|
|
56
56
|
VideoRenderer,
|
|
57
57
|
supportedReactions,
|
|
58
58
|
videoZOrder = 1,
|
|
59
|
-
objectFit
|
|
59
|
+
objectFit,
|
|
60
|
+
mirror
|
|
60
61
|
}) => {
|
|
61
62
|
const {
|
|
62
63
|
theme: {
|
|
@@ -129,6 +130,7 @@ export const FloatingParticipantView = ({
|
|
|
129
130
|
,
|
|
130
131
|
videoZOrder: videoZOrder,
|
|
131
132
|
objectFit: objectFit,
|
|
133
|
+
mirror: mirror,
|
|
132
134
|
supportedReactions: supportedReactions
|
|
133
135
|
}, participantViewProps)))));
|
|
134
136
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","Pressable","StyleSheet","View","Z_INDEX","ComponentTestIds","VideoSlash","FloatingView","FloatingViewAlignment","ParticipantView","DefaultParticipantView","useTheme","useFloatingVideoDimensions","DefaultLocalParticipantViewVideoFallback","theme","colors","floatingParticipantsView","variants","iconSizes","defaults","createElement","style","styles","videoFallback","backgroundColor","sheetSecondary","height","md","width","color","iconPrimary","size","iconSize","FloatingParticipantView","alignment","onPressHandler","participant","participantViewStyle","draggableContainerStyle","ParticipantNetworkQualityIndicator","ParticipantVideoFallback","ParticipantReaction","VideoRenderer","supportedReactions","videoZOrder","objectFit","spacingSizes","floatingAlignmentMap","topLeft","topRight","bottomLeft","bottomRight","containerDimensions","setContainerDimensions","useState","floatingVideoDimensions","participantViewProps","ParticipantLabel","testID","LOCAL_PARTICIPANT","container","pointerEvents","onLayout","event","nativeEvent","layout","prev","containerHeight","containerWidth","initialAlignment","onPress","_extends","trackType","participantViewContainer","borderRadius","marginHorizontal","shadowColor","sheetPrimary","create","zIndex","IN_MIDDLE","flex","shadowOffset","shadowOpacity","shadowRadius","elevation","absoluteFillObject","alignItems","justifyContent"],"sourceRoot":"../../../../../src","sources":["components/Participant/FloatingParticipantView/index.tsx"],"mappings":";AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SACEC,SAAS,EAETC,UAAU,EACVC,IAAI,QAEC,cAAc;AACrB,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,gBAAgB,QAAQ,4BAA4B;AAC7D,SAASC,UAAU,QAAQ,gBAAgB;AAC3C,OAAOC,YAAY,MAAM,gBAAgB;AAKzC,SAASC,qBAAqB,QAAQ,uBAAuB;AAC7D,SACEC,eAAe,IAAIC,sBAAsB,QAGpC,oBAAoB;AAC3B,SAASC,QAAQ,QAAQ,gCAAgC;AACzD,SAASC,0BAA0B,QAAQ,8BAA8B;;AASzE;AACA;AACA;;AA6BA,MAAMC,wCAAwC,GAAGA,CAAA,KAAM;EACrD,MAAM;IACJC,KAAK,EAAE;MACLC,MAAM;MACNC,wBAAwB;MACxBC,QAAQ,EAAE;QAAEC;MAAU,CAAC;MACvBC;IACF;EACF,CAAC,GAAGR,QAAQ,CAAC,CAAC;EAEd,oBACEX,KAAA,CAAAoB,aAAA,CAACjB,IAAI;IACHkB,KAAK,EAAE,CACLC,MAAM,CAACC,aAAa,EACpB;MAAEC,eAAe,EAAET,MAAM,CAACU;IAAe,CAAC,EAC1CT,wBAAwB,CAACO,aAAa;EACtC,gBAEFvB,KAAA,CAAAoB,aAAA,CAACjB,IAAI;IAACkB,KAAK,EAAE;MAAEK,MAAM,EAAER,SAAS,CAACS,EAAE;MAAEC,KAAK,EAAEV,SAAS,CAACS;IAAG;EAAE,gBACzD3B,KAAA,CAAAoB,aAAA,CAACd,UAAU;IAACuB,KAAK,EAAEd,MAAM,CAACe,WAAY;IAACC,IAAI,EAAEZ,QAAQ,CAACa;EAAS,CAAE,CAC7D,CACF,CAAC;AAEX,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMC,uBAAuB,GAAGA,CAAC;EACtCC,SAAS,GAAG,WAAW;EACvBC,cAAc;EACdC,WAAW;EACXC,oBAAoB;EACpBC,uBAAuB;EACvB7B,eAAe,GAAGC,sBAAsB;EACxC6B,kCAAkC;EAClCC,wBAAwB,GAAG3B,wCAAwC;EACnE4B,mBAAmB;EACnBC,aAAa;EACbC,kBAAkB;EAClBC,WAAW,GAAG,CAAC;EACfC;AAC4B,CAAC,KAAK;EAClC,MAAM;
|
|
1
|
+
{"version":3,"names":["React","Pressable","StyleSheet","View","Z_INDEX","ComponentTestIds","VideoSlash","FloatingView","FloatingViewAlignment","ParticipantView","DefaultParticipantView","useTheme","useFloatingVideoDimensions","DefaultLocalParticipantViewVideoFallback","theme","colors","floatingParticipantsView","variants","iconSizes","defaults","createElement","style","styles","videoFallback","backgroundColor","sheetSecondary","height","md","width","color","iconPrimary","size","iconSize","FloatingParticipantView","alignment","onPressHandler","participant","participantViewStyle","draggableContainerStyle","ParticipantNetworkQualityIndicator","ParticipantVideoFallback","ParticipantReaction","VideoRenderer","supportedReactions","videoZOrder","objectFit","mirror","spacingSizes","floatingAlignmentMap","topLeft","topRight","bottomLeft","bottomRight","containerDimensions","setContainerDimensions","useState","floatingVideoDimensions","participantViewProps","ParticipantLabel","testID","LOCAL_PARTICIPANT","container","pointerEvents","onLayout","event","nativeEvent","layout","prev","containerHeight","containerWidth","initialAlignment","onPress","_extends","trackType","participantViewContainer","borderRadius","marginHorizontal","shadowColor","sheetPrimary","create","zIndex","IN_MIDDLE","flex","shadowOffset","shadowOpacity","shadowRadius","elevation","absoluteFillObject","alignItems","justifyContent"],"sourceRoot":"../../../../../src","sources":["components/Participant/FloatingParticipantView/index.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -28,6 +28,7 @@ export const ParticipantView = ({
|
|
|
28
28
|
ParticipantVideoFallback = DefaultParticipantVideoFallback,
|
|
29
29
|
objectFit,
|
|
30
30
|
videoZOrder = 0,
|
|
31
|
+
mirror,
|
|
31
32
|
supportedReactions
|
|
32
33
|
}) => {
|
|
33
34
|
const {
|
|
@@ -58,7 +59,8 @@ export const ParticipantView = ({
|
|
|
58
59
|
trackType: trackType,
|
|
59
60
|
ParticipantVideoFallback: ParticipantVideoFallback,
|
|
60
61
|
objectFit: objectFit,
|
|
61
|
-
videoZOrder: videoZOrder
|
|
62
|
+
videoZOrder: videoZOrder,
|
|
63
|
+
mirror: mirror
|
|
62
64
|
}), /*#__PURE__*/React.createElement(View, {
|
|
63
65
|
style: [styles.footerContainer, participantView.footerContainer, !ParticipantLabel && styles.networkIndicatorOnly]
|
|
64
66
|
}, ParticipantLabel && /*#__PURE__*/React.createElement(ParticipantLabel, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useMemo","StyleSheet","View","ParticipantNetworkQualityIndicator","DefaultParticipantNetworkQualityIndicator","ParticipantReaction","DefaultParticipantReaction","ParticipantLabel","DefaultParticipantLabel","ParticipantVideoFallback","DefaultParticipantVideoFallback","VideoRenderer","DefaultVideoRenderer","useTheme","ParticipantView","participant","trackType","isVisible","style","objectFit","videoZOrder","supportedReactions","theme","colors","participantView","isSpeaking","userId","styles","useStyles","isScreenSharing","applySpeakerStyle","speakerStyle","borderColor","buttonPrimary","highlightedContainer","createElement","container","testID","footerContainer","networkIndicatorOnly","create","overflow","justifyContent","borderRadius","variants","borderRadiusSizes","md","borderWidth","flexDirection","alignItems"],"sourceRoot":"../../../../../src","sources":["components/Participant/ParticipantView/ParticipantView.tsx"],"mappings":"AAAA,OAAOA,KAAK,IAAwBC,OAAO,QAAQ,OAAO;AAC1D,SAAyBC,UAAU,EAAEC,IAAI,QAAwB,cAAc;AAK/E,SACEC,kCAAkC,IAAIC,yCAAyC,QAE1E,sCAAsC;AAC7C,SACEC,mBAAmB,IAAIC,0BAA0B,QAE5C,uBAAuB;AAC9B,SACEC,gBAAgB,IAAIC,uBAAuB,QAEtC,oBAAoB;AAC3B,SACEC,wBAAwB,IAAIC,+BAA+B,QAEtD,4BAA4B;AACnC,SACEC,aAAa,IAAIC,oBAAoB,QAEhC,iBAAiB;AACxB,SAASC,QAAQ,QAAQ,gCAAgC;;AA0BzD;AACA;AACA;;
|
|
1
|
+
{"version":3,"names":["React","useMemo","StyleSheet","View","ParticipantNetworkQualityIndicator","DefaultParticipantNetworkQualityIndicator","ParticipantReaction","DefaultParticipantReaction","ParticipantLabel","DefaultParticipantLabel","ParticipantVideoFallback","DefaultParticipantVideoFallback","VideoRenderer","DefaultVideoRenderer","useTheme","ParticipantView","participant","trackType","isVisible","style","objectFit","videoZOrder","mirror","supportedReactions","theme","colors","participantView","isSpeaking","userId","styles","useStyles","isScreenSharing","applySpeakerStyle","speakerStyle","borderColor","buttonPrimary","highlightedContainer","createElement","container","testID","footerContainer","networkIndicatorOnly","create","overflow","justifyContent","borderRadius","variants","borderRadiusSizes","md","borderWidth","flexDirection","alignItems"],"sourceRoot":"../../../../../src","sources":["components/Participant/ParticipantView/ParticipantView.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -28,7 +28,8 @@ export const VideoRenderer = ({
|
|
|
28
28
|
isVisible = true,
|
|
29
29
|
ParticipantVideoFallback = DefaultParticipantVideoFallback,
|
|
30
30
|
objectFit,
|
|
31
|
-
videoZOrder = 0
|
|
31
|
+
videoZOrder = 0,
|
|
32
|
+
mirror: mirrorOverride
|
|
32
33
|
}) => {
|
|
33
34
|
const {
|
|
34
35
|
theme: {
|
|
@@ -73,7 +74,7 @@ export const VideoRenderer = ({
|
|
|
73
74
|
};
|
|
74
75
|
}
|
|
75
76
|
}, [participant, trackType, registerIosScreenshot, canShowVideo, deregisterIosScreenshot]);
|
|
76
|
-
const mirror =
|
|
77
|
+
const mirror = isScreenSharing ? false : mirrorOverride !== undefined ? mirrorOverride : isLocalParticipant && direction === 'front';
|
|
77
78
|
|
|
78
79
|
/**
|
|
79
80
|
* This effect updates the participant's viewportVisibilityState
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useEffect","useRef","Platform","StyleSheet","View","RTCView","hasPausedTrack","hasScreenShare","hasVideo","VisibilityState","useCall","useCallStateHooks","ParticipantVideoFallback","DefaultParticipantVideoFallback","useTheme","useTrackDimensions","useScreenshotIosContext","TrackSubscriber","DEFAULT_VIEWPORT_VISIBILITY_STATE","videoTrack","UNKNOWN","screenShareTrack","VideoRenderer","trackType","participant","isVisible","objectFit","videoZOrder","theme","videoRenderer","call","useCameraState","useIncomingVideoSettings","trackSubscriberRef","isParticipantVideoEnabled","direction","viewRef","register","registerIosScreenshot","deregister","deregisterIosScreenshot","videoDimensions","isVideoDimensionsValid","width","height","isLocalParticipant","sessionId","viewportVisibilityState","videoStream","screenShareStream","isScreenSharing","isPublishingVideoTrack","videoStreamToRender","canShowVideo","OS","
|
|
1
|
+
{"version":3,"names":["React","useEffect","useRef","Platform","StyleSheet","View","RTCView","hasPausedTrack","hasScreenShare","hasVideo","VisibilityState","useCall","useCallStateHooks","ParticipantVideoFallback","DefaultParticipantVideoFallback","useTheme","useTrackDimensions","useScreenshotIosContext","TrackSubscriber","DEFAULT_VIEWPORT_VISIBILITY_STATE","videoTrack","UNKNOWN","screenShareTrack","VideoRenderer","trackType","participant","isVisible","objectFit","videoZOrder","mirror","mirrorOverride","theme","videoRenderer","call","useCameraState","useIncomingVideoSettings","trackSubscriberRef","isParticipantVideoEnabled","direction","viewRef","register","registerIosScreenshot","deregister","deregisterIosScreenshot","videoDimensions","isVideoDimensionsValid","width","height","isLocalParticipant","sessionId","viewportVisibilityState","videoStream","screenShareStream","isScreenSharing","isPublishingVideoTrack","videoStreamToRender","canShowVideo","OS","undefined","VISIBLE","state","updateParticipant","p","INVISIBLE","onLayout","event","current","onLayoutUpdate","createElement","style","styles","container","ref","participantSessionId","streamURL","toURL","zOrder","create","absoluteFillObject"],"sourceRoot":"../../../../../../src","sources":["components/Participant/ParticipantView/VideoRenderer/index.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
import { CallingState, videoLoggerSystem } from '@stream-io/video-client';
|
|
2
|
+
import { useCall, useCallStateHooks } from '@stream-io/video-react-bindings';
|
|
3
|
+
import { useEffect, useMemo, useRef } from 'react';
|
|
4
|
+
import { getCallDisplayName } from '../../utils/internal/callingx';
|
|
5
|
+
import { getCallingxLibIfAvailable } from '../../utils/push/libs/callingx';
|
|
6
|
+
const logger = videoLoggerSystem.getLogger('Callingx - useCallingExpWithCallingStateEffect');
|
|
7
|
+
|
|
8
|
+
//calling state methods are not exhaustive, so we need to add more methods to cover different cases
|
|
9
|
+
const canActivateCall = (prevState, currentState) => {
|
|
10
|
+
if (!prevState && !currentState) {
|
|
11
|
+
return false;
|
|
12
|
+
}
|
|
13
|
+
const isJoined = state => {
|
|
14
|
+
if (!state) {
|
|
15
|
+
return false;
|
|
16
|
+
}
|
|
17
|
+
return state === CallingState.JOINING || state === CallingState.JOINED;
|
|
18
|
+
};
|
|
19
|
+
return !isJoined(prevState) && isJoined(currentState);
|
|
20
|
+
};
|
|
21
|
+
const canEndCall = (prevState, currentState) => {
|
|
22
|
+
if (!prevState && !currentState) {
|
|
23
|
+
return false;
|
|
24
|
+
}
|
|
25
|
+
return (prevState === CallingState.JOINED || prevState === CallingState.JOINING || prevState === CallingState.RINGING || prevState === CallingState.RECONNECTING || prevState === CallingState.MIGRATING || prevState === CallingState.OFFLINE) && (currentState === CallingState.LEFT || currentState === CallingState.RECONNECTING_FAILED || currentState === CallingState.IDLE);
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* This hook is used to inform sync call state with CallKit/Telecom (i.e. start call, end call, mute/unmute call).
|
|
30
|
+
*/
|
|
31
|
+
export const useCallingExpWithCallingStateEffect = () => {
|
|
32
|
+
const {
|
|
33
|
+
useCallCallingState,
|
|
34
|
+
// useMicrophoneState,
|
|
35
|
+
useParticipants,
|
|
36
|
+
useCallMembers
|
|
37
|
+
} = useCallStateHooks();
|
|
38
|
+
const activeCall = useCall();
|
|
39
|
+
const callingState = useCallCallingState();
|
|
40
|
+
// const { isMute, microphone } = useMicrophoneState();
|
|
41
|
+
const callMembers = useCallMembers();
|
|
42
|
+
const participants = useParticipants();
|
|
43
|
+
const prevState = useRef(undefined);
|
|
44
|
+
const activeCallCid = activeCall?.cid;
|
|
45
|
+
const isIncomingCall = activeCall?.ringing && !activeCall?.isCreatedByMe;
|
|
46
|
+
const isOutcomingCall = activeCall?.ringing && activeCall?.isCreatedByMe;
|
|
47
|
+
const currentUserId = activeCall?.currentUserId;
|
|
48
|
+
const isVideoCall = activeCall?.state.settings?.video?.enabled ?? false;
|
|
49
|
+
const callDisplayName = useMemo(() => getCallDisplayName(callMembers, participants, currentUserId), [callMembers, participants, currentUserId]);
|
|
50
|
+
useEffect(() => {
|
|
51
|
+
return () => {
|
|
52
|
+
const callingx = getCallingxLibIfAvailable();
|
|
53
|
+
if (!callingx?.isSetup || !activeCallCid) {
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
const isCallRegistered = callingx.isCallRegistered(activeCallCid);
|
|
57
|
+
if (!isCallRegistered) {
|
|
58
|
+
logger.debug(`No active call cid to end in calling exp: ${activeCallCid} isCallRegistered: ${isCallRegistered}`);
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
//if incoming stream call was unmounted, we need to end the call in CallKit/Telecom
|
|
62
|
+
logger.debug(`Ending call in callingx: ${activeCallCid}`);
|
|
63
|
+
callingx.endCallWithReason(activeCallCid, 'local').catch(error => {
|
|
64
|
+
logger.error(`Error ending call in callingx: ${activeCallCid}`, error);
|
|
65
|
+
});
|
|
66
|
+
};
|
|
67
|
+
}, [activeCallCid]);
|
|
68
|
+
useEffect(() => {
|
|
69
|
+
const callingx = getCallingxLibIfAvailable();
|
|
70
|
+
if (!callingx?.isSetup || !activeCallCid || prevState.current === callingState) {
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
//tells if call is registered in CallKit/Telecom
|
|
75
|
+
const isCallRegistered = callingx.isCallRegistered(activeCallCid);
|
|
76
|
+
logger.debug(`useEffect: ${activeCallCid} isCallRegistered: ${isCallRegistered}
|
|
77
|
+
isIncomingCall: ${isIncomingCall} isOutcomingCall: ${isOutcomingCall}
|
|
78
|
+
prevState: ${prevState.current}, currentState: ${callingState}
|
|
79
|
+
isOngoingCallsEnabled: ${callingx.isOngoingCallsEnabled}`);
|
|
80
|
+
if (isIncomingCall && isCallRegistered && canActivateCall(prevState.current, callingState)) {
|
|
81
|
+
logger.debug(`Should accept call in callingx: ${activeCallCid}`);
|
|
82
|
+
callingx.answerIncomingCall(activeCallCid).catch(error => {
|
|
83
|
+
logger.error(`Error answering call in callingx: ${activeCallCid}`, error);
|
|
84
|
+
});
|
|
85
|
+
} else if ((isOutcomingCall || callingx.isOngoingCallsEnabled) && isCallRegistered && canActivateCall(prevState.current, callingState)) {
|
|
86
|
+
logger.debug(`Should set call active in callingx: ${activeCallCid}`);
|
|
87
|
+
callingx.setCurrentCallActive(activeCallCid);
|
|
88
|
+
} else if (isCallRegistered && canEndCall(prevState.current, callingState)) {
|
|
89
|
+
//in case call was registered as incoming and state changed to "not joined", we need to end the call and clear rxjs subject
|
|
90
|
+
logger.debug(`Should end call in callingx: ${activeCallCid}`);
|
|
91
|
+
//TODO: think about sending appropriate reason for end call
|
|
92
|
+
callingx.endCallWithReason(activeCallCid, 'local').catch(error => {
|
|
93
|
+
logger.error(`Error ending call in callingx: ${activeCallCid}`, error);
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
prevState.current = callingState;
|
|
97
|
+
}, [activeCallCid, callingState, callDisplayName, isIncomingCall, isOutcomingCall, isVideoCall]);
|
|
98
|
+
useEffect(() => {
|
|
99
|
+
const callingx = getCallingxLibIfAvailable();
|
|
100
|
+
if (!callingx?.isSetup || !activeCallCid) {
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
const isCallRegistered = callingx.isCallRegistered(activeCallCid);
|
|
104
|
+
if (!isCallRegistered) {
|
|
105
|
+
logger.debug(`No active call cid to update callingx: ${activeCallCid} isCallRegistered: ${isCallRegistered}`);
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
108
|
+
callingx.updateDisplay(activeCallCid, activeCallCid, callDisplayName);
|
|
109
|
+
}, [activeCallCid, callDisplayName]);
|
|
110
|
+
useEffect(() => {
|
|
111
|
+
const callingx = getCallingxLibIfAvailable();
|
|
112
|
+
if (!callingx?.isSetup || !activeCallCid || !isIncomingCall) {
|
|
113
|
+
return;
|
|
114
|
+
}
|
|
115
|
+
let isUnsubscribed = false;
|
|
116
|
+
const subscription = callingx.addEventListener('didDisplayIncomingCall', event => {
|
|
117
|
+
if (event.callId === activeCallCid) {
|
|
118
|
+
//we need to report the call as answered only if user accepts the call from the app UI and push notification was delivered after that
|
|
119
|
+
const _callingState = activeCall?.state.callingState;
|
|
120
|
+
const shouldSkip = _callingState !== CallingState.JOINING && _callingState !== CallingState.JOINED && _callingState !== CallingState.RECONNECTING && _callingState !== CallingState.MIGRATING;
|
|
121
|
+
if (shouldSkip) {
|
|
122
|
+
return;
|
|
123
|
+
}
|
|
124
|
+
logger.debug(`Reporting the incoming call as answered in callingx as already join() calledin the app: ${activeCallCid}`);
|
|
125
|
+
callingx.answerIncomingCall(activeCallCid).catch(error => {
|
|
126
|
+
logger.error(`Error answering call in callingx: ${activeCallCid}`, error);
|
|
127
|
+
}).finally(() => {
|
|
128
|
+
subscription.remove();
|
|
129
|
+
isUnsubscribed = true;
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
});
|
|
133
|
+
return () => {
|
|
134
|
+
if (!isUnsubscribed) {
|
|
135
|
+
subscription.remove();
|
|
136
|
+
}
|
|
137
|
+
};
|
|
138
|
+
}, [activeCall, activeCallCid, isIncomingCall]);
|
|
139
|
+
|
|
140
|
+
// useEffect(() => {
|
|
141
|
+
// const callingx = getCallingxLibIfAvailable();
|
|
142
|
+
// if (!callingx?.isSetup || !activeCallCid) {
|
|
143
|
+
// return;
|
|
144
|
+
// }
|
|
145
|
+
|
|
146
|
+
// const isCallRegistered = callingx.isCallRegistered(activeCallCid);
|
|
147
|
+
// if (!isCallRegistered) {
|
|
148
|
+
// logger.debug(
|
|
149
|
+
// `No active call cid to set muted in calling exp: ${activeCallCid} isCallRegistered: ${isCallRegistered}`,
|
|
150
|
+
// );
|
|
151
|
+
// return;
|
|
152
|
+
// }
|
|
153
|
+
|
|
154
|
+
// callingx.setMutedCall(activeCallCid, isMute);
|
|
155
|
+
// }, [activeCallCid, isMute]);
|
|
156
|
+
|
|
157
|
+
// useEffect(() => {
|
|
158
|
+
// const callingx = getCallingxLibIfAvailable();
|
|
159
|
+
// if (!callingx?.isSetup || !activeCallCid) {
|
|
160
|
+
// return;
|
|
161
|
+
// }
|
|
162
|
+
|
|
163
|
+
// const isCallRegistered = callingx.isCallRegistered(activeCallCid);
|
|
164
|
+
// if (!isCallRegistered) {
|
|
165
|
+
// logger.debug(
|
|
166
|
+
// `No active call cid to set muted in calling exp: ${activeCallCid} isCallRegistered: ${isCallRegistered}`,
|
|
167
|
+
// );
|
|
168
|
+
// return;
|
|
169
|
+
// }
|
|
170
|
+
|
|
171
|
+
// //listen to mic toggle events from CallKit/Telecom and update stream call microphone state
|
|
172
|
+
// const subscription = callingx.addEventListener(
|
|
173
|
+
// 'didPerformSetMutedCallAction',
|
|
174
|
+
// async (event: { callId: string; muted: boolean }) => {
|
|
175
|
+
// const { callId, muted } = event;
|
|
176
|
+
|
|
177
|
+
// if (callId === activeCallCid) {
|
|
178
|
+
// const isCurrentlyMuted =
|
|
179
|
+
// RxUtils.getCurrentValue(microphone.state.status$) === 'disabled';
|
|
180
|
+
// if (isCurrentlyMuted === muted) {
|
|
181
|
+
// logger.debug(
|
|
182
|
+
// `Mic toggle is already in the desired state: ${muted} for call: ${activeCallCid}`,
|
|
183
|
+
// );
|
|
184
|
+
// //this check prevents mic toggle when state change was initiated from client and not from CallKit/Telecom
|
|
185
|
+
// return;
|
|
186
|
+
// }
|
|
187
|
+
|
|
188
|
+
// try {
|
|
189
|
+
// if (muted) {
|
|
190
|
+
// await microphone.disable();
|
|
191
|
+
// } else {
|
|
192
|
+
// await microphone.enable();
|
|
193
|
+
// }
|
|
194
|
+
// } catch (error: unknown) {
|
|
195
|
+
// logger.error(
|
|
196
|
+
// `Error toggling mic in calling exp: ${activeCallCid}`,
|
|
197
|
+
// error,
|
|
198
|
+
// );
|
|
199
|
+
// }
|
|
200
|
+
// }
|
|
201
|
+
// },
|
|
202
|
+
// );
|
|
203
|
+
|
|
204
|
+
// return () => {
|
|
205
|
+
// subscription.remove();
|
|
206
|
+
// };
|
|
207
|
+
// }, [activeCallCid, microphone, isOutcomingCall, isIncomingCall]);
|
|
208
|
+
};
|
|
209
|
+
//# sourceMappingURL=useCallingExpWithCallingStateEffect.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["CallingState","videoLoggerSystem","useCall","useCallStateHooks","useEffect","useMemo","useRef","getCallDisplayName","getCallingxLibIfAvailable","logger","getLogger","canActivateCall","prevState","currentState","isJoined","state","JOINING","JOINED","canEndCall","RINGING","RECONNECTING","MIGRATING","OFFLINE","LEFT","RECONNECTING_FAILED","IDLE","useCallingExpWithCallingStateEffect","useCallCallingState","useParticipants","useCallMembers","activeCall","callingState","callMembers","participants","undefined","activeCallCid","cid","isIncomingCall","ringing","isCreatedByMe","isOutcomingCall","currentUserId","isVideoCall","settings","video","enabled","callDisplayName","callingx","isSetup","isCallRegistered","debug","endCallWithReason","catch","error","current","isOngoingCallsEnabled","answerIncomingCall","setCurrentCallActive","updateDisplay","isUnsubscribed","subscription","addEventListener","event","callId","_callingState","shouldSkip","finally","remove"],"sourceRoot":"../../../../src","sources":["hooks/push/useCallingExpWithCallingStateEffect.ts"],"mappings":"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AAQ,CACLS,kBAAkB,CAACrB,aAAa,CAAC,CACjCiB,KAAK,CAAEC,KAAc,IAAK;UACzB5C,MAAM,CAAC4C,KAAK,CACV,qCAAqClB,aAAa,EAAE,EACpDkB,KACF,CAAC;QACH,CAAC,CAAC,CACDa,OAAO,CAAC,MAAM;UACbN,YAAY,CAACO,MAAM,CAAC,CAAC;UACrBR,cAAc,GAAG,IAAI;QACvB,CAAC,CAAC;MACN;IACF,CACF,CAAC;IAED,OAAO,MAAM;MACX,IAAI,CAACA,cAAc,EAAE;QACnBC,YAAY,CAACO,MAAM,CAAC,CAAC;MACvB;IACF,CAAC;EACH,CAAC,EAAE,CAACrC,UAAU,EAAEK,aAAa,EAAEE,cAAc,CAAC,CAAC;;EAE/C;EACA;EACA;EACA;EACA;;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;;EAEA;EACA;;EAEA;EACA;EACA;EACA;EACA;;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;;EAEA;EACA;EACA;EACA;EACA;;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;EAEA;EACA;EACA;EACA;AACF,CAAC","ignoreList":[]}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { useEffect, useRef, useState } from 'react';
|
|
2
|
-
import { getVoipPushNotificationLib } from '../../utils/push/libs';
|
|
3
2
|
import { Platform } from 'react-native';
|
|
4
3
|
import { StreamVideoRN } from '../../utils';
|
|
5
4
|
import { onVoipNotificationReceived } from '../../utils/push/internal/ios';
|
|
6
5
|
import { useConnectedUser, useStreamVideoClient } from '@stream-io/video-react-bindings';
|
|
7
6
|
import { setPushLogoutCallback } from '../../utils/internal/pushLogoutCallback';
|
|
8
7
|
import { videoLoggerSystem } from '@stream-io/video-client';
|
|
8
|
+
import { getCallingxLibIfAvailable } from '../../utils/push/libs';
|
|
9
9
|
const logger = videoLoggerSystem.getLogger('useIosVoipPushEventsSetupEffect');
|
|
10
10
|
|
|
11
11
|
/* VoipPushNotificationLib has support for only one listener type at a time
|
|
@@ -23,6 +23,7 @@ function setLogoutCallback(client, token, lastVoipTokenRef) {
|
|
|
23
23
|
};
|
|
24
24
|
try {
|
|
25
25
|
await client.removeDevice(token);
|
|
26
|
+
logger.debug('PushLogoutCallback - Removed voip token', token);
|
|
26
27
|
} catch (err) {
|
|
27
28
|
logger.warn('PushLogoutCallback - Failed to remove voip token', err);
|
|
28
29
|
}
|
|
@@ -77,20 +78,10 @@ export const useIosVoipPushEventsSetupEffect = () => {
|
|
|
77
78
|
useEffect(() => {
|
|
78
79
|
const pushConfig = StreamVideoRN.getConfig().push;
|
|
79
80
|
const pushProviderName = pushConfig?.ios.pushProviderName;
|
|
80
|
-
|
|
81
|
+
const callingx = getCallingxLibIfAvailable();
|
|
82
|
+
if (Platform.OS !== 'ios' || !client || !pushProviderName || !callingx) {
|
|
81
83
|
return;
|
|
82
84
|
}
|
|
83
|
-
if (!pushConfig.android.incomingCallChannel) {
|
|
84
|
-
// TODO: remove this check and find a better way once we have telecom integration for android
|
|
85
|
-
logger.debug('android incomingCallChannel is not defined, so skipping the useIosVoipPushEventsSetupEffect');
|
|
86
|
-
return;
|
|
87
|
-
}
|
|
88
|
-
const voipPushNotification = getVoipPushNotificationLib();
|
|
89
|
-
|
|
90
|
-
// even though we do this natively, we have to still register here again
|
|
91
|
-
// natively this will make sure "register" event for JS is sent with the last push token
|
|
92
|
-
// Necessary if client changed before we got the event here or user logged out and logged in again
|
|
93
|
-
voipPushNotification.registerVoipToken();
|
|
94
85
|
const onTokenReceived = token => {
|
|
95
86
|
const userId = client.streamClient._user?.id ?? '';
|
|
96
87
|
if (client.streamClient.anonymous || !token || !userId) {
|
|
@@ -118,27 +109,24 @@ export const useIosVoipPushEventsSetupEffect = () => {
|
|
|
118
109
|
});
|
|
119
110
|
};
|
|
120
111
|
// fired when PushKit give us the latest token
|
|
121
|
-
|
|
112
|
+
const voipRegisterListener = callingx.addEventListener('voipNotificationsRegistered', ({
|
|
113
|
+
token
|
|
114
|
+
}) => {
|
|
122
115
|
onTokenReceived(token);
|
|
123
116
|
});
|
|
124
117
|
|
|
125
|
-
// this will
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
} = voipPushEvent;
|
|
135
|
-
if (name === 'RNVoipPushRemoteNotificationsRegisteredEvent') {
|
|
136
|
-
onTokenReceived(data);
|
|
137
|
-
} else if (name === 'RNVoipPushRemoteNotificationReceivedEvent') {
|
|
138
|
-
onVoipNotificationReceived(data, pushConfig);
|
|
139
|
-
}
|
|
118
|
+
// this will return events that were fired before js bridge initialized
|
|
119
|
+
callingx.getInitialVoipEvents().forEach(({
|
|
120
|
+
eventName,
|
|
121
|
+
params
|
|
122
|
+
}) => {
|
|
123
|
+
if (eventName === 'voipNotificationsRegistered' && 'token' in params) {
|
|
124
|
+
onTokenReceived(params.token);
|
|
125
|
+
} else if (eventName === 'voipNotificationReceived') {
|
|
126
|
+
onVoipNotificationReceived(params, pushConfig);
|
|
140
127
|
}
|
|
141
128
|
});
|
|
129
|
+
callingx.registerVoipToken();
|
|
142
130
|
lastListener.count += 1;
|
|
143
131
|
const currentListenerCount = lastListener.count;
|
|
144
132
|
return () => {
|
|
@@ -148,8 +136,7 @@ export const useIosVoipPushEventsSetupEffect = () => {
|
|
|
148
136
|
return;
|
|
149
137
|
}
|
|
150
138
|
logger.debug(`Voip event listeners are removed for user: ${userId}`);
|
|
151
|
-
|
|
152
|
-
voipPushNotification.removeEventListener('register');
|
|
139
|
+
voipRegisterListener.remove();
|
|
153
140
|
};
|
|
154
141
|
}, [client]);
|
|
155
142
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useEffect","useRef","useState","
|
|
1
|
+
{"version":3,"names":["useEffect","useRef","useState","Platform","StreamVideoRN","onVoipNotificationReceived","useConnectedUser","useStreamVideoClient","setPushLogoutCallback","videoLoggerSystem","getCallingxLibIfAvailable","logger","getLogger","lastListener","count","setLogoutCallback","client","token","lastVoipTokenRef","current","userId","removeDevice","debug","err","warn","useIosVoipPushEventsSetupEffect","connectedUserId","id","unsentToken","setUnsentToken","pushProviderName","getConfig","push","ios","tokenToSend","addVoipDevice","then","undefined","catch","error","pushConfig","callingx","OS","onTokenReceived","streamClient","_user","anonymous","reason","lastVoipToken","voipRegisterListener","addEventListener","getInitialVoipEvents","forEach","eventName","params","registerVoipToken","currentListenerCount","remove"],"sourceRoot":"../../../../src","sources":["hooks/push/useIosVoipPushEventsSetupEffect.ts"],"mappings":"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","ignoreList":[]}
|