Skip to content

Commit db32420

Browse files
authored
Add logging to diagnose connection issue (#2629)
For element-hq/element-call#559
1 parent d5b82e3 commit db32420

File tree

1 file changed

+15
-7
lines changed

1 file changed

+15
-7
lines changed

src/webrtc/groupCall.ts

Lines changed: 15 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -748,11 +748,21 @@ export class GroupCall extends TypedEventEmitter<
748748
}
749749

750750
public onMemberStateChanged = async (event: MatrixEvent) => {
751+
// If we haven't entered the call yet, we don't care
752+
if (this.state !== GroupCallState.Entered) {
753+
return;
754+
}
755+
751756
// The member events may be received for another room, which we will ignore.
752757
if (event.getRoomId() !== this.room.roomId) return;
753758

754759
const member = this.room.getMember(event.getStateKey());
755-
if (!member) return;
760+
if (!member) {
761+
logger.warn(`Couldn't find room member for ${event.getStateKey()}: ignoring member state event!`);
762+
return;
763+
}
764+
765+
logger.debug(`Processing member state event for ${member.userId}`);
756766

757767
const ignore = () => {
758768
this.removeParticipant(member);
@@ -766,7 +776,7 @@ export class GroupCall extends TypedEventEmitter<
766776
: []; // Ignore expired device data
767777

768778
if (callsState.length === 0) {
769-
logger.log(`Ignoring member state from ${member.userId} member not in any calls.`);
779+
logger.info(`Ignoring member state from ${member.userId} member not in any calls.`);
770780
ignore();
771781
return;
772782
}
@@ -802,14 +812,10 @@ export class GroupCall extends TypedEventEmitter<
802812
return;
803813
}
804814

805-
if (this.state !== GroupCallState.Entered) {
806-
return;
807-
}
808-
809815
// Only initiate a call with a user who has a userId that is lexicographically
810816
// less than your own. Otherwise, that user will call you.
811817
if (member.userId < localUserId) {
812-
logger.log(`Waiting for ${member.userId} to send call invite.`);
818+
logger.debug(`Waiting for ${member.userId} to send call invite.`);
813819
return;
814820
}
815821

@@ -849,6 +855,8 @@ export class GroupCall extends TypedEventEmitter<
849855
const requestScreenshareFeed = opponentDevice.feeds.some(
850856
(feed) => feed.purpose === SDPStreamMetadataPurpose.Screenshare);
851857

858+
logger.log(`Placing call to ${member.userId}.`);
859+
852860
try {
853861
await newCall.placeCallWithCallFeeds(
854862
this.getLocalFeeds().map(feed => feed.clone()),

0 commit comments

Comments
 (0)