internal InteractiveParticipant(string newSessionID, string newEtag, uint userID, string newGroupID, string userName, uint level, DateTime lastInputAt, DateTime connectedAt, bool inputDisabled, InteractiveParticipantState state)
 {
     sessionID     = newSessionID;
     UserID        = userID;
     UserName      = userName;
     Level         = level;
     LastInputAt   = lastInputAt;
     ConnectedAt   = connectedAt;
     InputDisabled = inputDisabled;
     State         = state;
     groupID       = newGroupID;
     etag          = newEtag;
 }
 internal InteractiveParticipant(string sessionID, string newEtag, uint userID, string newGroupID, string userName, List <string> newChannelGroups, uint level, DateTime lastInputAt, DateTime connectedAt, bool inputDisabled, InteractiveParticipantState state)
 {
     SessionID     = sessionID;
     UserID        = userID;
     UserName      = userName;
     channelGroups = newChannelGroups;
     Level         = level;
     LastInputAt   = lastInputAt;
     ConnectedAt   = connectedAt;
     InputDisabled = inputDisabled;
     State         = state;
     _groupID      = newGroupID;
     _etag         = newEtag;
 }
 internal InteractiveParticipantStateChangedEventArgs(InteractiveEventType type, InteractiveParticipant participant, InteractiveParticipantState state) : base(type)
 {
     Participant = participant;
     State       = state;
 }