From e5d5c90aa95becc17c77e44b84b89c5063039d51 Mon Sep 17 00:00:00 2001 From: Neil Dorin Date: Wed, 24 Apr 2024 16:54:51 -0600 Subject: [PATCH] feat: Adds ITechPassword --- .../Room/Interfaces.cs | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) 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 ///