@stream-io/video-client 1.5.1 → 1.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +7 -0
- package/dist/index.browser.es.js +33 -11
- package/dist/index.browser.es.js.map +1 -1
- package/dist/index.cjs.js +33 -11
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.es.js +33 -11
- package/dist/index.es.js.map +1 -1
- package/dist/src/gen/coordinator/index.d.ts +280 -62
- package/dist/src/store/CallState.d.ts +2 -0
- package/package.json +1 -1
- package/src/gen/coordinator/index.ts +283 -63
- package/src/store/CallState.ts +39 -19
- package/src/store/__tests__/CallState.test.ts +80 -6
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
This file was generated using [@jscutlery/semver](https://github.com/jscutlery/semver).
|
|
4
4
|
|
|
5
|
+
### [1.5.2](https://github.com/GetStream/stream-video-js/compare/@stream-io/video-client-1.5.1...@stream-io/video-client-1.5.2) (2024-08-23)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
* handle session_participant_count_updated event ([#1467](https://github.com/GetStream/stream-video-js/issues/1467)) ([55af565](https://github.com/GetStream/stream-video-js/commit/55af565ea259a7fcb4298f4df63d05e4b346ed5a))
|
|
11
|
+
|
|
5
12
|
### [1.5.1](https://github.com/GetStream/stream-video-js/compare/@stream-io/video-client-1.5.0...@stream-io/video-client-1.5.1) (2024-08-23)
|
|
6
13
|
|
|
7
14
|
|
package/dist/index.browser.es.js
CHANGED
|
@@ -6535,7 +6535,7 @@ function getIceCandidate(candidate) {
|
|
|
6535
6535
|
}
|
|
6536
6536
|
}
|
|
6537
6537
|
|
|
6538
|
-
const version = "1.5.
|
|
6538
|
+
const version = "1.5.2" ;
|
|
6539
6539
|
const [major, minor, patch] = version.split('.');
|
|
6540
6540
|
let sdkInfo = {
|
|
6541
6541
|
type: SdkType.PLAIN_JAVASCRIPT,
|
|
@@ -7533,7 +7533,8 @@ class CallState {
|
|
|
7533
7533
|
this.setCurrentValue(this.egressSubject, call.egress);
|
|
7534
7534
|
this.setCurrentValue(this.ingressSubject, call.ingress);
|
|
7535
7535
|
this.setCurrentValue(this.recordingSubject, call.recording);
|
|
7536
|
-
this.setCurrentValue(this.sessionSubject, call.session);
|
|
7536
|
+
const s = this.setCurrentValue(this.sessionSubject, call.session);
|
|
7537
|
+
this.updateParticipantCountFromSession(s);
|
|
7537
7538
|
this.setCurrentValue(this.settingsSubject, call.settings);
|
|
7538
7539
|
this.setCurrentValue(this.transcribingSubject, call.transcribing);
|
|
7539
7540
|
this.setCurrentValue(this.thumbnailsSubject, call.thumbnails);
|
|
@@ -7571,12 +7572,32 @@ class CallState {
|
|
|
7571
7572
|
},
|
|
7572
7573
|
}));
|
|
7573
7574
|
};
|
|
7575
|
+
this.updateParticipantCountFromSession = (session) => {
|
|
7576
|
+
// when in JOINED state, we should use the participant count coming through
|
|
7577
|
+
// the SFU healthcheck event, as it's more accurate.
|
|
7578
|
+
if (!session || this.callingState === CallingState.JOINED)
|
|
7579
|
+
return;
|
|
7580
|
+
const byRoleCount = Object.values(session.participants_count_by_role).reduce((total, countByRole) => total + countByRole, 0);
|
|
7581
|
+
const participantCount = Math.max(byRoleCount, session.participants.length);
|
|
7582
|
+
this.setParticipantCount(participantCount);
|
|
7583
|
+
this.setAnonymousParticipantCount(session.anonymous_participant_count || 0);
|
|
7584
|
+
};
|
|
7585
|
+
this.updateFromSessionParticipantCountUpdate = (event) => {
|
|
7586
|
+
const s = this.setCurrentValue(this.sessionSubject, (session) => {
|
|
7587
|
+
if (!session)
|
|
7588
|
+
return session;
|
|
7589
|
+
return {
|
|
7590
|
+
...session,
|
|
7591
|
+
anonymous_participant_count: event.anonymous_participant_count,
|
|
7592
|
+
participants_count_by_role: event.participants_count_by_role,
|
|
7593
|
+
};
|
|
7594
|
+
});
|
|
7595
|
+
this.updateParticipantCountFromSession(s);
|
|
7596
|
+
};
|
|
7574
7597
|
this.updateFromSessionParticipantLeft = (event) => {
|
|
7575
|
-
this.setCurrentValue(this.sessionSubject, (session) => {
|
|
7576
|
-
if (!session)
|
|
7577
|
-
this.logger('warn', `Received call.session_participant_left event but no session is available.`, event);
|
|
7598
|
+
const s = this.setCurrentValue(this.sessionSubject, (session) => {
|
|
7599
|
+
if (!session)
|
|
7578
7600
|
return session;
|
|
7579
|
-
}
|
|
7580
7601
|
const { participants, participants_count_by_role } = session;
|
|
7581
7602
|
const { user, user_session_id } = event.participant;
|
|
7582
7603
|
return {
|
|
@@ -7588,13 +7609,12 @@ class CallState {
|
|
|
7588
7609
|
},
|
|
7589
7610
|
};
|
|
7590
7611
|
});
|
|
7612
|
+
this.updateParticipantCountFromSession(s);
|
|
7591
7613
|
};
|
|
7592
7614
|
this.updateFromSessionParticipantJoined = (event) => {
|
|
7593
|
-
this.setCurrentValue(this.sessionSubject, (session) => {
|
|
7594
|
-
if (!session)
|
|
7595
|
-
this.logger('warn', `Received call.session_participant_joined event but no session is available.`, event);
|
|
7615
|
+
const s = this.setCurrentValue(this.sessionSubject, (session) => {
|
|
7616
|
+
if (!session)
|
|
7596
7617
|
return session;
|
|
7597
|
-
}
|
|
7598
7618
|
const { participants, participants_count_by_role } = session;
|
|
7599
7619
|
const { user, user_session_id } = event.participant;
|
|
7600
7620
|
// It could happen that the backend delivers the same participant more than once.
|
|
@@ -7625,6 +7645,7 @@ class CallState {
|
|
|
7625
7645
|
},
|
|
7626
7646
|
};
|
|
7627
7647
|
});
|
|
7648
|
+
this.updateParticipantCountFromSession(s);
|
|
7628
7649
|
};
|
|
7629
7650
|
this.updateMembers = (event) => {
|
|
7630
7651
|
this.updateFromCallResponse(event.call);
|
|
@@ -7774,6 +7795,7 @@ class CallState {
|
|
|
7774
7795
|
'call.ring': (e) => this.updateFromCallResponse(e.call),
|
|
7775
7796
|
'call.missed': (e) => this.updateFromCallResponse(e.call),
|
|
7776
7797
|
'call.session_ended': (e) => this.updateFromCallResponse(e.call),
|
|
7798
|
+
'call.session_participant_count_updated': this.updateFromSessionParticipantCountUpdate,
|
|
7777
7799
|
'call.session_participant_joined': this.updateFromSessionParticipantJoined,
|
|
7778
7800
|
'call.session_participant_left': this.updateFromSessionParticipantLeft,
|
|
7779
7801
|
'call.session_started': (e) => this.updateFromCallResponse(e.call),
|
|
@@ -15572,7 +15594,7 @@ class StreamClient {
|
|
|
15572
15594
|
});
|
|
15573
15595
|
};
|
|
15574
15596
|
this.getUserAgent = () => {
|
|
15575
|
-
const version = "1.5.
|
|
15597
|
+
const version = "1.5.2" ;
|
|
15576
15598
|
return (this.userAgent ||
|
|
15577
15599
|
`stream-video-javascript-client-${this.node ? 'node' : 'browser'}-${version}`);
|
|
15578
15600
|
};
|