Skip to content

Commit

Permalink
ignore action after reconnect / restart
Browse files Browse the repository at this point in the history
  • Loading branch information
technyon committed Dec 16, 2022
1 parent 82bbd0b commit b625e28
Show file tree
Hide file tree
Showing 4 changed files with 12 additions and 4 deletions.
11 changes: 9 additions & 2 deletions NetworkLock.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ void NetworkLock::initialize()

_haEnabled = _preferences->getString(preference_mqtt_hass_discovery) != "";

_network->initTopic(_mqttPath, mqtt_topic_lock_action, "--");
_network->subscribe(_mqttPath, mqtt_topic_lock_action);
for(const auto& topic : _configTopics)
{
Expand Down Expand Up @@ -88,7 +89,7 @@ void NetworkLock::onMqttDataReceived(char *&topic, byte *&payload, unsigned int

if(comparePrefixedPath(topic, mqtt_topic_lock_action))
{
if(strcmp(value, "") == 0 || strcmp(value, "ack") == 0 || strcmp(value, "unknown_action") == 0) return;
if(strcmp(value, "") == 0 || strcmp(value, "--") == 0 || strcmp(value, "ack") == 0 || strcmp(value, "unknown_action") == 0) return;

Serial.print(F("Lock action received: "));
Serial.println(value);
Expand All @@ -104,13 +105,19 @@ void NetworkLock::onMqttDataReceived(char *&topic, byte *&payload, unsigned int
{
if(_keypadCommandReceivedReceivedCallback != nullptr)
{
if(strcmp(value, "--") != 0) return;

_keypadCommandReceivedReceivedCallback(value, _keypadCommandId, _keypadCommandName, _keypadCommandCode, _keypadCommandEnabled);

_keypadCommandId = 0;
_keypadCommandName = "--";
_keypadCommandCode = "000000";
_keypadCommandEnabled = 1;
publishString(mqtt_topic_keypad_command_action, "--");

if(strcmp(value, "--") != 0)
{
publishString(mqtt_topic_keypad_command_action, "--");
}
publishInt(mqtt_topic_keypad_command_id, _keypadCommandId);
publishString(mqtt_topic_keypad_command_name, _keypadCommandName.c_str());
publishString(mqtt_topic_keypad_command_code, _keypadCommandCode.c_str());
Expand Down
3 changes: 2 additions & 1 deletion NetworkOpener.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ void NetworkOpener::initialize()

_haEnabled = _preferences->getString(preference_mqtt_hass_discovery) != "";

_network->initTopic(_mqttPath, mqtt_topic_lock_action, "--");
_network->subscribe(_mqttPath, mqtt_topic_lock_action);
for(const auto& topic : _configTopics)
{
Expand Down Expand Up @@ -67,7 +68,7 @@ void NetworkOpener::onMqttDataReceived(char *&topic, byte *&payload, unsigned in

if(comparePrefixedPath(topic, mqtt_topic_lock_action))
{
if(strcmp(value, "") == 0 || strcmp(value, "ack") == 0 || strcmp(value, "unknown_action") == 0) return;
if(strcmp(value, "") == 0 || strcmp(value, "--") == 0 || strcmp(value, "ack") == 0 || strcmp(value, "unknown_action") == 0) return;

Serial.print(F("Opener lock action received: "));
Serial.println(value);
Expand Down
2 changes: 1 addition & 1 deletion Version.h
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
#pragma once

#define nuki_hub_version "6.2"
#define nuki_hub_version "6.3"
Binary file modified webflash/nuki_hub.bin
Binary file not shown.

0 comments on commit b625e28

Please sign in to comment.