move methods from network classes into helper classes

This commit is contained in:
technyon
2025-10-06 19:22:44 +07:00
parent ed02f0162f
commit ce781f8f5b
8 changed files with 328 additions and 321 deletions

View File

@@ -349,6 +349,104 @@ const NukiLock::MotorSpeed NukiHelper::motorSpeedToEnum(const char* str)
return (NukiLock::MotorSpeed)0xff;
}
void NukiHelper::buttonPressActionToString(const NukiLock::ButtonPressAction btnPressAction, char* str)
{
switch (btnPressAction)
{
case NukiLock::ButtonPressAction::NoAction:
strcpy(str, "No Action");
break;
case NukiLock::ButtonPressAction::Intelligent:
strcpy(str, "Intelligent");
break;
case NukiLock::ButtonPressAction::Unlock:
strcpy(str, "Unlock");
break;
case NukiLock::ButtonPressAction::Lock:
strcpy(str, "Lock");
break;
case NukiLock::ButtonPressAction::Unlatch:
strcpy(str, "Unlatch");
break;
case NukiLock::ButtonPressAction::LockNgo:
strcpy(str, "Lock n Go");
break;
case NukiLock::ButtonPressAction::ShowStatus:
strcpy(str, "Show Status");
break;
default:
strcpy(str, "undefined");
break;
}
}
void NukiHelper::motorSpeedToString(const NukiLock::MotorSpeed speed, char* str)
{
switch (speed)
{
case NukiLock::MotorSpeed::Standard:
strcpy(str, "Standard");
break;
case NukiLock::MotorSpeed::Insane:
strcpy(str, "Insane");
break;
case NukiLock::MotorSpeed::Gentle:
strcpy(str, "Gentle");
break;
default:
strcpy(str, "undefined");
break;
}
}
void NukiHelper::homeKitStatusToString(const int hkstatus, char* str)
{
switch (hkstatus)
{
case 0:
strcpy(str, "Not Available");
break;
case 1:
strcpy(str, "Disabled");
break;
case 2:
strcpy(str, "Enabled");
break;
case 3:
strcpy(str, "Enabled & Paired");
break;
default:
strcpy(str, "undefined");
break;
}
}
void NukiHelper::fobActionToString(const int fobact, char* str)
{
switch (fobact)
{
case 0:
strcpy(str, "No Action");
break;
case 1:
strcpy(str, "Unlock");
break;
case 2:
strcpy(str, "Lock");
break;
case 3:
strcpy(str, "Lock n Go");
break;
case 4:
strcpy(str, "Intelligent");
break;
default:
strcpy(str, "undefined");
break;
}
}
void NukiHelper::printCommandResult(Nuki::CmdResult result)
{
char resultStr[15];

View File

@@ -14,5 +14,10 @@ public:
static const Nuki::BatteryType batteryTypeToEnum(const char* str);
static const NukiLock::MotorSpeed motorSpeedToEnum(const char* str);
static void buttonPressActionToString(const NukiLock::ButtonPressAction btnPressAction, char* str);
static void motorSpeedToString(const NukiLock::MotorSpeed speed, char* str);
static void homeKitStatusToString(const int hkstatus, char* str);
static void fobActionToString(const int fobact, char* str);
static void printCommandResult(Nuki::CmdResult result);
};

View File

@@ -271,6 +271,202 @@ const Nuki::BatteryType NukiOpenerHelper::batteryTypeToEnum(const char* str)
return (Nuki::BatteryType)0xff;
}
void NukiOpenerHelper::buttonPressActionToString(const NukiOpener::ButtonPressAction btnPressAction, char* str)
{
switch (btnPressAction)
{
case NukiOpener::ButtonPressAction::NoAction:
strcpy(str, "No Action");
break;
case NukiOpener::ButtonPressAction::ToggleRTO:
strcpy(str, "Toggle RTO");
break;
case NukiOpener::ButtonPressAction::ActivateRTO:
strcpy(str, "Activate RTO");
break;
case NukiOpener::ButtonPressAction::DeactivateRTO:
strcpy(str, "Deactivate RTO");
break;
case NukiOpener::ButtonPressAction::ToggleCM:
strcpy(str, "Toggle CM");
break;
case NukiOpener::ButtonPressAction::ActivateCM:
strcpy(str, "Activate CM");
break;
case NukiOpener::ButtonPressAction::DectivateCM:
strcpy(str, "Deactivate CM");
break;
case NukiOpener::ButtonPressAction::Open:
strcpy(str, "Open");
break;
default:
strcpy(str, "undefined");
break;
}
}
void NukiOpenerHelper::fobActionToString(const int fobact, char* str)
{
switch (fobact)
{
case 0:
strcpy(str, "No Action");
break;
case 1:
strcpy(str, "Toggle RTO");
break;
case 2:
strcpy(str, "Activate RTO");
break;
case 3:
strcpy(str, "Deactivate RTO");
break;
case 7:
strcpy(str, "Open");
break;
case 8:
strcpy(str, "Ring");
break;
default:
strcpy(str, "undefined");
break;
}
}
void NukiOpenerHelper::capabilitiesToString(const int capabilities, char* str)
{
switch (capabilities)
{
case 0:
strcpy(str, "Door opener");
break;
case 1:
strcpy(str, "Both");
break;
case 2:
strcpy(str, "RTO");
break;
default:
strcpy(str, "undefined");
break;
}
}
void NukiOpenerHelper::operatingModeToString(const int opmode, char* str)
{
switch (opmode)
{
case 0:
strcpy(str, "Generic door opener");
break;
case 1:
strcpy(str, "Analogue intercom");
break;
case 2:
strcpy(str, "Digital intercom");
break;
case 3:
strcpy(str, "Siedle");
break;
case 4:
strcpy(str, "TCS");
break;
case 5:
strcpy(str, "Bticino");
break;
case 6:
strcpy(str, "Siedle HTS");
break;
case 7:
strcpy(str, "STR");
break;
case 8:
strcpy(str, "Ritto");
break;
case 9:
strcpy(str, "Fermax");
break;
case 10:
strcpy(str, "Comelit");
break;
case 11:
strcpy(str, "Urmet BiBus");
break;
case 12:
strcpy(str, "Urmet 2Voice");
break;
case 13:
strcpy(str, "Golmar");
break;
case 14:
strcpy(str, "SKS");
break;
case 15:
strcpy(str, "Spare");
break;
default:
strcpy(str, "undefined");
break;
}
}
void NukiOpenerHelper::doorbellSuppressionToString(const int dbsupr, char* str)
{
switch (dbsupr)
{
case 0:
strcpy(str, "Off");
break;
case 1:
strcpy(str, "CM");
break;
case 2:
strcpy(str, "RTO");
break;
case 3:
strcpy(str, "CM & RTO");
break;
case 4:
strcpy(str, "Ring");
break;
case 5:
strcpy(str, "CM & Ring");
break;
case 6:
strcpy(str, "RTO & Ring");
break;
case 7:
strcpy(str, "CM & RTO & Ring");
break;
default:
strcpy(str, "undefined");
break;
}
}
void NukiOpenerHelper::soundToString(const int sound, char* str)
{
switch (sound)
{
case 0:
strcpy(str, "No Sound");
break;
case 1:
strcpy(str, "Sound 1");
break;
case 2:
strcpy(str, "Sound 2");
break;
case 3:
strcpy(str, "Sound 3");
break;
default:
strcpy(str, "undefined");
break;
}
}
void NukiOpenerHelper::printCommandResult(Nuki::CmdResult result)
{
char resultStr[15];

View File

@@ -13,5 +13,12 @@ public:
static const NukiOpener::ButtonPressAction buttonPressActionToEnum(const char* str);
static const Nuki::BatteryType batteryTypeToEnum(const char* str);
static void buttonPressActionToString(const NukiOpener::ButtonPressAction btnPressAction, char* str);
static void fobActionToString(const int fobact, char* str);
static void operatingModeToString(const int opmode, char* str);
static void doorbellSuppressionToString(const int dbsupr, char* str);
static void soundToString(const int sound, char* str);
static void capabilitiesToString(const int capabilities, char* str);
static void printCommandResult(Nuki::CmdResult result);
};