From 1c06e8381b7a3439077026d907406328bdcebab1 Mon Sep 17 00:00:00 2001 From: Neil Dorin Date: Wed, 9 Jun 2021 13:30:36 -0600 Subject: [PATCH] Fixed inverted video mute FB and adds debug statements to help see participant pin status --- .../VideoCodec/VideoCodecBase.cs | 31 +++++++++++++++++++ .../VideoCodec/ZoomRoom/ResponseObjects.cs | 2 +- .../VideoCodec/ZoomRoom/ZoomRoom.cs | 5 ++- 3 files changed, 36 insertions(+), 2 deletions(-) diff --git a/essentials-framework/Essentials Devices Common/Essentials Devices Common/VideoCodec/VideoCodecBase.cs b/essentials-framework/Essentials Devices Common/Essentials Devices Common/VideoCodec/VideoCodecBase.cs index dc9228ce..38ae0295 100644 --- a/essentials-framework/Essentials Devices Common/Essentials Devices Common/VideoCodec/VideoCodecBase.cs +++ b/essentials-framework/Essentials Devices Common/Essentials Devices Common/VideoCodec/VideoCodecBase.cs @@ -613,6 +613,37 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec { if (meetingIndex >= maxParticipants * offset) break; + Debug.Console(2, this, +@"Updating Participant on xsig: +Name: {0} (s{8}) +AudioMute: {1} (d{9}) +VideoMute: {2} (d{10}) +CanMuteVideo: {3} ({d11}) +IsHost: {4} (d{12}) +HandIsRaised: {5} (d{13}) +IsPinned: {6} (d{14}) +ScreenIndexIsPinnedTo: {7} (a{15}) +", + participant.Name, + participant.AudioMuteFb, + participant.VideoMuteFb, + participant.CanMuteVideo, + participant.IsHost, + participant.HandIsRaisedFb, + participant.IsPinnedFb, + participant.ScreenIndexIsPinnedToFb, + stringIndex + 1, + digitalIndex + 1, + digitalIndex + 2, + digitalIndex + 3, + digitalIndex + 4, + digitalIndex + 5, + digitalIndex + 6, + digitalIndex + 7, + analogIndex + 1 + ); + + //digitals tokenArray[digitalIndex] = new XSigDigitalToken(digitalIndex + 1, participant.AudioMuteFb); tokenArray[digitalIndex + 1] = new XSigDigitalToken(digitalIndex + 2, participant.VideoMuteFb); diff --git a/essentials-framework/Essentials Devices Common/Essentials Devices Common/VideoCodec/ZoomRoom/ResponseObjects.cs b/essentials-framework/Essentials Devices Common/Essentials Devices Common/VideoCodec/ZoomRoom/ResponseObjects.cs index b45810ac..468b611b 100644 --- a/essentials-framework/Essentials Devices Common/Essentials Devices Common/VideoCodec/ZoomRoom/ResponseObjects.cs +++ b/essentials-framework/Essentials Devices Common/Essentials Devices Common/VideoCodec/ZoomRoom/ResponseObjects.cs @@ -1440,7 +1440,7 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom CanMuteVideo = p.IsVideoCanMuteByHost, CanUnmuteVideo = p.IsVideoCanUnmuteByHost, AudioMuteFb = p.AudioStatusState == "AUDIO_MUTED", - VideoMuteFb = p.VideoStatusIsSending, + VideoMuteFb = !p.VideoStatusIsSending, HandIsRaisedFb = p.HandStatus.HandIsRaisedAndValid, }).ToList(); } diff --git a/essentials-framework/Essentials Devices Common/Essentials Devices Common/VideoCodec/ZoomRoom/ZoomRoom.cs b/essentials-framework/Essentials Devices Common/Essentials Devices Common/VideoCodec/ZoomRoom/ZoomRoom.cs index 8ee5f7e4..556c9d85 100644 --- a/essentials-framework/Essentials Devices Common/Essentials Devices Common/VideoCodec/ZoomRoom/ZoomRoom.cs +++ b/essentials-framework/Essentials Devices Common/Essentials Devices Common/VideoCodec/ZoomRoom/ZoomRoom.cs @@ -1345,6 +1345,8 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom { var status = responseObj.ToObject(); + Debug.Console(1, this, "Pin Status notificatino for UserId: {0}, ScreenIndex: {1}", status.PinnedUserId, status.ScreenIndex); + var participant = Participants.CurrentParticipants.FirstOrDefault(p => p.UserId.Equals(status.PinnedUserId)); if (participant != null) @@ -1358,11 +1360,12 @@ namespace PepperDash.Essentials.Devices.Common.VideoCodec.ZoomRoom if (participant == null) { - Debug.Console(2, this, "no matching participant found by pinned_user_id: {0} or screen_index: {1}", status.PinnedUserId, status.ScreenIndex); + Debug.Console(1, this, "no matching participant found by pinned_user_id: {0} or screen_index: {1}", status.PinnedUserId, status.ScreenIndex); return; } else { + Debug.Console(2, this, "Unpinning {0} with id: {1} from screen index: {2}", participant.Name, participant.UserId, status.ScreenIndex); participant.IsPinnedFb = false; participant.ScreenIndexIsPinnedToFb = -1; }