Add Authorization entries (#456)

* Add and remove libs and components for Arduino Core 3

* Arduino Core 3

* Add back Solo1

* Change ESP32-S3 to 4MB build

* Add Authorization info and control

* Use esp_crt_bundle for HTTPS requests

* Remove Solo1 support

* Improve Nuki device config read functions

* Webserial

* OTA Improvements

* Authorization Entries

* Authorization entries

* Authorization
This commit is contained in:
iranl
2024-08-17 05:21:22 +02:00
committed by GitHub
parent 00a9b30a39
commit b298d410eb
20 changed files with 1728 additions and 155 deletions

View File

@@ -53,12 +53,14 @@ private:
static void onKeypadCommandReceivedCallback(const char* command, const uint& id, const String& name, const String& code, const int& enabled);
static void onKeypadJsonCommandReceivedCallback(const char* value);
static void onTimeControlCommandReceivedCallback(const char* value);
static void onAuthCommandReceivedCallback(const char* value);
static void gpioActionCallback(const GpioAction& action, const int& pin);
void onKeypadCommandReceived(const char* command, const uint& id, const String& name, const String& code, const int& enabled);
void onOfficialUpdateReceived(const char* topic, const char* value);
void onConfigUpdateReceived(const char* value);
void onKeypadJsonCommandReceived(const char* value);
void onTimeControlCommandReceived(const char* value);
void onAuthCommandReceived(const char* value);
void updateKeyTurnerState();
void updateBatteryState();
@@ -66,6 +68,7 @@ private:
void updateAuthData(bool retrieved);
void updateKeypad(bool retrieved);
void updateTimeControl(bool retrieved);
void updateAuth(bool retrieved);
void postponeBleWatchdog();
void updateGpioOutputs();
@@ -101,6 +104,7 @@ private:
bool _clearAuthData = false;
std::vector<uint16_t> _keypadCodeIds;
std::vector<uint8_t> _timeControlIds;
std::vector<uint32_t> _authIds;
NukiLock::KeyTurnerState _lastKeyTurnerState;
NukiLock::KeyTurnerState _keyTurnerState;
@@ -122,6 +126,7 @@ private:
bool _keypadEnabled = false;
uint _maxKeypadCodeCount = 0;
uint _maxTimeControlEntryCount = 0;
uint _maxAuthEntryCount = 0;
int _nrOfRetries = 0;
int _retryDelay = 0;
int _retryCount = 0;
@@ -137,6 +142,7 @@ private:
int64_t _waitAuthLogUpdateTs = 0;
int64_t _waitKeypadUpdateTs = 0;
int64_t _waitTimeControlUpdateTs = 0;
int64_t _waitAuthUpdateTs = 0;
int64_t _nextKeypadUpdateTs = 0;
int64_t _nextRssiTs = 0;
int64_t _lastRssi = 0;