@stream-io/video-react-native-sdk 0.0.1-alpha.149 → 0.0.1-alpha.151

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 CHANGED
@@ -2,6 +2,19 @@
2
2
 
3
3
  This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
4
4
 
5
+ ## [0.0.1-alpha.151](https://github.com/GetStream/stream-video-js/compare/@stream-io/video-react-native-sdk-0.0.1-alpha.150...@stream-io/video-react-native-sdk-0.0.1-alpha.151) (2023-06-12)
6
+
7
+
8
+
9
+ ## [0.0.1-alpha.150](https://github.com/GetStream/stream-video-js/compare/@stream-io/video-react-native-sdk-0.0.1-alpha.149...@stream-io/video-react-native-sdk-0.0.1-alpha.150) (2023-06-12)
10
+
11
+
12
+ ### Bug Fixes
13
+
14
+ * **react-native:** incorrect way of sending device Id to get streams ([#623](https://github.com/GetStream/stream-video-js/issues/623)) ([edffcd4](https://github.com/GetStream/stream-video-js/commit/edffcd4fed35fc8aeb877d9b28c010505ca23386))
15
+
16
+
17
+
5
18
  ## [0.0.1-alpha.149](https://github.com/GetStream/stream-video-js/compare/@stream-io/video-react-native-sdk-0.0.1-alpha.148...@stream-io/video-react-native-sdk-0.0.1-alpha.149) (2023-06-12)
6
19
 
7
20
 
@@ -28,34 +28,38 @@ const useCallControls = () => {
28
28
  const currentAudioDevice = (0, contexts_1.useStreamVideoStoreValue)((store) => store.currentAudioDevice);
29
29
  const videoDevices = (0, contexts_1.useStreamVideoStoreValue)((store) => store.videoDevices);
30
30
  const currentVideoDevice = (0, contexts_1.useStreamVideoStoreValue)((store) => store.currentVideoDevice);
31
+ const audioDeviceId = currentAudioDevice?.deviceId;
32
+ const videoDeviceId = currentVideoDevice?.deviceId;
31
33
  const publishAudioStream = (0, react_1.useCallback)(async () => {
32
34
  try {
33
35
  // Client picks up the default audio stream.
34
36
  // For mobile devices there will always be one audio input
35
- if (currentAudioDevice && isOnlineRef.current) {
36
- const audioStream = await (0, video_client_1.getAudioStream)(currentAudioDevice.deviceId);
37
- if (call) {
38
- await call.publishAudioStream(audioStream);
39
- }
37
+ if (!call || !audioDeviceId || !isOnlineRef.current) {
38
+ return;
40
39
  }
40
+ const audioStream = await (0, video_client_1.getAudioStream)({
41
+ deviceId: audioDeviceId,
42
+ });
43
+ await call.publishAudioStream(audioStream);
41
44
  }
42
45
  catch (e) {
43
46
  console.log('Failed to publish audio stream', e);
44
47
  }
45
- }, [currentAudioDevice, call]);
48
+ }, [audioDeviceId, call]);
46
49
  const publishVideoStream = (0, react_1.useCallback)(async () => {
47
50
  try {
48
- if (currentVideoDevice && isOnlineRef.current) {
49
- const videoStream = await (0, video_client_1.getVideoStream)(currentVideoDevice.deviceId);
50
- if (call) {
51
- await call.publishVideoStream(videoStream);
52
- }
51
+ if (!call || !videoDeviceId || !isOnlineRef.current) {
52
+ return;
53
53
  }
54
+ const videoStream = await (0, video_client_1.getVideoStream)({
55
+ deviceId: videoDeviceId,
56
+ });
57
+ await call.publishVideoStream(videoStream);
54
58
  }
55
59
  catch (e) {
56
60
  console.log('Failed to publish video stream', e);
57
61
  }
58
- }, [call, currentVideoDevice]);
62
+ }, [call, videoDeviceId]);
59
63
  const isAudioPublished = localParticipant?.publishedTracks.includes(video_client_1.SfuModels.TrackType.AUDIO);
60
64
  const isVideoPublished = localParticipant?.publishedTracks.includes(video_client_1.SfuModels.TrackType.VIDEO);
61
65
  /** Refs to keep track of whether the user has published the track before going offline */
@@ -78,8 +82,9 @@ const useCallControls = () => {
78
82
  const { isConnected, isInternetReachable } = state;
79
83
  const isOnline = isConnected !== false && isInternetReachable !== false;
80
84
  isOnlineRef.current = isOnline;
81
- if (!callRef.current)
85
+ if (!callRef.current) {
82
86
  return;
87
+ }
83
88
  const callToJoin = callRef.current;
84
89
  await rejoinCall(callToJoin, isOnline, isAudioPublishedRef.current, isVideoPublishedRef.current, publishAudioStreamRef.current, publishVideoStreamRef.current);
85
90
  });
@@ -1 +1 @@
1
- {"version":3,"file":"useCallControls.js","sourceRoot":"","sources":["../../../src/hooks/useCallControls.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useCallControls.js","sourceRoot":"","sources":["../../../src/hooks/useCallControls.tsx"],"names":[],"mappings":"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"}
@@ -16,26 +16,28 @@ const usePublishMediaStreams = () => {
16
16
  const currentVideoDevice = (0, StreamVideoContext_1.useStreamVideoStoreValue)((store) => store.currentVideoDevice);
17
17
  const isVideoMuted = (0, StreamVideoContext_1.useStreamVideoStoreValue)((store) => store.isVideoMuted);
18
18
  const isAudioMuted = (0, StreamVideoContext_1.useStreamVideoStoreValue)((store) => store.isAudioMuted);
19
+ const audioDeviceId = currentAudioDevice?.deviceId;
20
+ const videoDeviceId = currentVideoDevice?.deviceId;
19
21
  (0, react_1.useEffect)(() => {
20
22
  if (!activeCall?.permissionsContext.hasPermission(video_client_1.OwnCapability.SEND_AUDIO)) {
21
- console.log(`No permission to publish audio`);
23
+ console.log('No permission to publish audio');
22
24
  return;
23
25
  }
24
- if (currentAudioDevice && !isAudioMuted) {
25
- (0, video_client_1.getAudioStream)(currentAudioDevice.deviceId)
26
+ if (audioDeviceId && !isAudioMuted) {
27
+ (0, video_client_1.getAudioStream)({ deviceId: audioDeviceId })
26
28
  .then((stream) => activeCall?.publishAudioStream(stream))
27
29
  .catch((error) => {
28
30
  console.log(error);
29
31
  });
30
32
  }
31
- }, [activeCall, currentAudioDevice, isAudioMuted]);
33
+ }, [activeCall, audioDeviceId, isAudioMuted]);
32
34
  (0, react_1.useEffect)(() => {
33
35
  if (!activeCall?.permissionsContext.hasPermission(video_client_1.OwnCapability.SEND_VIDEO)) {
34
- console.log(`No permission to publish video`);
36
+ console.log('No permission to publish video');
35
37
  return;
36
38
  }
37
- if (currentVideoDevice && !isVideoMuted) {
38
- (0, video_client_1.getVideoStream)(currentVideoDevice.deviceId)
39
+ if (videoDeviceId && !isVideoMuted) {
40
+ (0, video_client_1.getVideoStream)({ deviceId: videoDeviceId })
39
41
  .then((stream) => {
40
42
  activeCall?.publishVideoStream(stream);
41
43
  })
@@ -43,7 +45,7 @@ const usePublishMediaStreams = () => {
43
45
  console.log(error);
44
46
  });
45
47
  }
46
- }, [activeCall, currentVideoDevice, isVideoMuted]);
48
+ }, [activeCall, videoDeviceId, isVideoMuted]);
47
49
  };
48
50
  exports.usePublishMediaStreams = usePublishMediaStreams;
49
51
  //# sourceMappingURL=usePublishMediaStreams.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"usePublishMediaStreams.js","sourceRoot":"","sources":["../../../src/hooks/usePublishMediaStreams.ts"],"names":[],"mappings":";;;AAAA,0EAA0D;AAC1D,uEAA0E;AAC1E,0DAIiC;AACjC,iCAAkC;AAElC;;;;GAIG;AACI,MAAM,sBAAsB,GAAG,GAAG,EAAE;IACzC,MAAM,UAAU,GAAG,IAAA,8BAAO,GAAE,CAAC;IAC7B,MAAM,kBAAkB,GAAG,IAAA,6CAAwB,EACjD,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,kBAAkB,CACpC,CAAC;IACF,MAAM,kBAAkB,GAAG,IAAA,6CAAwB,EACjD,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,kBAAkB,CACpC,CAAC;IACF,MAAM,YAAY,GAAG,IAAA,6CAAwB,EAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAC7E,MAAM,YAAY,GAAG,IAAA,6CAAwB,EAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAE7E,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IACE,CAAC,UAAU,EAAE,kBAAkB,CAAC,aAAa,CAAC,4BAAa,CAAC,UAAU,CAAC,EACvE;YACA,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;YAC9C,OAAO;SACR;QACD,IAAI,kBAAkB,IAAI,CAAC,YAAY,EAAE;YACvC,IAAA,6BAAc,EAAC,kBAAkB,CAAC,QAAQ,CAAC;iBACxC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC;iBACxD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACf,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACrB,CAAC,CAAC,CAAC;SACN;IACH,CAAC,EAAE,CAAC,UAAU,EAAE,kBAAkB,EAAE,YAAY,CAAC,CAAC,CAAC;IAEnD,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IACE,CAAC,UAAU,EAAE,kBAAkB,CAAC,aAAa,CAAC,4BAAa,CAAC,UAAU,CAAC,EACvE;YACA,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;YAC9C,OAAO;SACR;QACD,IAAI,kBAAkB,IAAI,CAAC,YAAY,EAAE;YACvC,IAAA,6BAAc,EAAC,kBAAkB,CAAC,QAAQ,CAAC;iBACxC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBACf,UAAU,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC;YACzC,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACf,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACrB,CAAC,CAAC,CAAC;SACN;IACH,CAAC,EAAE,CAAC,UAAU,EAAE,kBAAkB,EAAE,YAAY,CAAC,CAAC,CAAC;AACrD,CAAC,CAAC;AA5CW,QAAA,sBAAsB,0BA4CjC"}
1
+ {"version":3,"file":"usePublishMediaStreams.js","sourceRoot":"","sources":["../../../src/hooks/usePublishMediaStreams.ts"],"names":[],"mappings":";;;AAAA,0EAA0D;AAC1D,uEAA0E;AAC1E,0DAIiC;AACjC,iCAAkC;AAElC;;;;GAIG;AACI,MAAM,sBAAsB,GAAG,GAAG,EAAE;IACzC,MAAM,UAAU,GAAG,IAAA,8BAAO,GAAE,CAAC;IAC7B,MAAM,kBAAkB,GAAG,IAAA,6CAAwB,EACjD,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,kBAAkB,CACpC,CAAC;IACF,MAAM,kBAAkB,GAAG,IAAA,6CAAwB,EACjD,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,kBAAkB,CACpC,CAAC;IACF,MAAM,YAAY,GAAG,IAAA,6CAAwB,EAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAC7E,MAAM,YAAY,GAAG,IAAA,6CAAwB,EAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAE7E,MAAM,aAAa,GAAG,kBAAkB,EAAE,QAAQ,CAAC;IACnD,MAAM,aAAa,GAAG,kBAAkB,EAAE,QAAQ,CAAC;IAEnD,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IACE,CAAC,UAAU,EAAE,kBAAkB,CAAC,aAAa,CAAC,4BAAa,CAAC,UAAU,CAAC,EACvE;YACA,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;YAC9C,OAAO;SACR;QACD,IAAI,aAAa,IAAI,CAAC,YAAY,EAAE;YAClC,IAAA,6BAAc,EAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC;iBACxC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC;iBACxD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACf,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACrB,CAAC,CAAC,CAAC;SACN;IACH,CAAC,EAAE,CAAC,UAAU,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC;IAE9C,IAAA,iBAAS,EAAC,GAAG,EAAE;QACb,IACE,CAAC,UAAU,EAAE,kBAAkB,CAAC,aAAa,CAAC,4BAAa,CAAC,UAAU,CAAC,EACvE;YACA,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;YAC9C,OAAO;SACR;QACD,IAAI,aAAa,IAAI,CAAC,YAAY,EAAE;YAClC,IAAA,6BAAc,EAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC;iBACxC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBACf,UAAU,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC;YACzC,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACf,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACrB,CAAC,CAAC,CAAC;SACN;IACH,CAAC,EAAE,CAAC,UAAU,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC,CAAC;AAChD,CAAC,CAAC;AA/CW,QAAA,sBAAsB,0BA+CjC"}
package/package.json CHANGED
@@ -66,5 +66,5 @@
66
66
  "typedoc-plugin-markdown": "^3.15.3",
67
67
  "typescript": "^4.9.5"
68
68
  },
69
- "version": "0.0.1-alpha.149"
69
+ "version": "0.0.1-alpha.151"
70
70
  }
@@ -40,33 +40,42 @@ export const useCallControls = () => {
40
40
  (store) => store.currentVideoDevice,
41
41
  );
42
42
 
43
+ const audioDeviceId = currentAudioDevice?.deviceId;
44
+ const videoDeviceId = currentVideoDevice?.deviceId;
45
+
43
46
  const publishAudioStream = useCallback(async () => {
44
47
  try {
45
48
  // Client picks up the default audio stream.
46
49
  // For mobile devices there will always be one audio input
47
- if (currentAudioDevice && isOnlineRef.current) {
48
- const audioStream = await getAudioStream(currentAudioDevice.deviceId);
49
- if (call) {
50
- await call.publishAudioStream(audioStream);
51
- }
50
+ if (!call || !audioDeviceId || !isOnlineRef.current) {
51
+ return;
52
52
  }
53
+
54
+ const audioStream = await getAudioStream({
55
+ deviceId: audioDeviceId,
56
+ });
57
+
58
+ await call.publishAudioStream(audioStream);
53
59
  } catch (e) {
54
60
  console.log('Failed to publish audio stream', e);
55
61
  }
56
- }, [currentAudioDevice, call]);
62
+ }, [audioDeviceId, call]);
57
63
 
58
64
  const publishVideoStream = useCallback(async () => {
59
65
  try {
60
- if (currentVideoDevice && isOnlineRef.current) {
61
- const videoStream = await getVideoStream(currentVideoDevice.deviceId);
62
- if (call) {
63
- await call.publishVideoStream(videoStream);
64
- }
66
+ if (!call || !videoDeviceId || !isOnlineRef.current) {
67
+ return;
65
68
  }
69
+
70
+ const videoStream = await getVideoStream({
71
+ deviceId: videoDeviceId,
72
+ });
73
+
74
+ await call.publishVideoStream(videoStream);
66
75
  } catch (e) {
67
76
  console.log('Failed to publish video stream', e);
68
77
  }
69
- }, [call, currentVideoDevice]);
78
+ }, [call, videoDeviceId]);
70
79
 
71
80
  const isAudioPublished = localParticipant?.publishedTracks.includes(
72
81
  SfuModels.TrackType.AUDIO,
@@ -99,7 +108,9 @@ export const useCallControls = () => {
99
108
  const { isConnected, isInternetReachable } = state;
100
109
  const isOnline = isConnected !== false && isInternetReachable !== false;
101
110
  isOnlineRef.current = isOnline;
102
- if (!callRef.current) return;
111
+ if (!callRef.current) {
112
+ return;
113
+ }
103
114
  const callToJoin = callRef.current;
104
115
  await rejoinCall(
105
116
  callToJoin,
@@ -23,31 +23,34 @@ export const usePublishMediaStreams = () => {
23
23
  const isVideoMuted = useStreamVideoStoreValue((store) => store.isVideoMuted);
24
24
  const isAudioMuted = useStreamVideoStoreValue((store) => store.isAudioMuted);
25
25
 
26
+ const audioDeviceId = currentAudioDevice?.deviceId;
27
+ const videoDeviceId = currentVideoDevice?.deviceId;
28
+
26
29
  useEffect(() => {
27
30
  if (
28
31
  !activeCall?.permissionsContext.hasPermission(OwnCapability.SEND_AUDIO)
29
32
  ) {
30
- console.log(`No permission to publish audio`);
33
+ console.log('No permission to publish audio');
31
34
  return;
32
35
  }
33
- if (currentAudioDevice && !isAudioMuted) {
34
- getAudioStream(currentAudioDevice.deviceId)
36
+ if (audioDeviceId && !isAudioMuted) {
37
+ getAudioStream({ deviceId: audioDeviceId })
35
38
  .then((stream) => activeCall?.publishAudioStream(stream))
36
39
  .catch((error) => {
37
40
  console.log(error);
38
41
  });
39
42
  }
40
- }, [activeCall, currentAudioDevice, isAudioMuted]);
43
+ }, [activeCall, audioDeviceId, isAudioMuted]);
41
44
 
42
45
  useEffect(() => {
43
46
  if (
44
47
  !activeCall?.permissionsContext.hasPermission(OwnCapability.SEND_VIDEO)
45
48
  ) {
46
- console.log(`No permission to publish video`);
49
+ console.log('No permission to publish video');
47
50
  return;
48
51
  }
49
- if (currentVideoDevice && !isVideoMuted) {
50
- getVideoStream(currentVideoDevice.deviceId)
52
+ if (videoDeviceId && !isVideoMuted) {
53
+ getVideoStream({ deviceId: videoDeviceId })
51
54
  .then((stream) => {
52
55
  activeCall?.publishVideoStream(stream);
53
56
  })
@@ -55,5 +58,5 @@ export const usePublishMediaStreams = () => {
55
58
  console.log(error);
56
59
  });
57
60
  }
58
- }, [activeCall, currentVideoDevice, isVideoMuted]);
61
+ }, [activeCall, videoDeviceId, isVideoMuted]);
59
62
  };