diff --git a/src/PepperDash.Essentials.Core/Room/Interfaces.cs b/src/PepperDash.Essentials.Core/Room/Interfaces.cs index 190abeec..ca7df3ae 100644 --- a/src/PepperDash.Essentials.Core/Room/Interfaces.cs +++ b/src/PepperDash.Essentials.Core/Room/Interfaces.cs @@ -79,6 +79,32 @@ namespace PepperDash.Essentials.Core void SetShutdownPromptSeconds(int seconds); } + /// + /// Describes a room with a tech password + /// + public interface ITechPassword + { + event EventHandler TechPasswordValidateResult; + + event EventHandler TechPasswordChanged; + + int TechPasswordLength { get; } + + void ValidateTechPassword(string password); + + void SetTechPassword(string oldPassword, string newPassword); + } + + public class TechPasswordEventArgs : EventArgs + { + public bool IsValid { get; private set; } + + public TechPasswordEventArgs(bool isValid) + { + IsValid = isValid; + } + } + /// /// For rooms that default presentation only routing ///