mirror of https://github.com/arendst/Tasmota.git
Cleanup restart for non-HAss users
Cleanup restart for non-HAss users
This commit is contained in:
parent
a935f92998
commit
dabb4deefc
|
@ -572,7 +572,7 @@ void MqttDataHandler(char* topic, byte* data, unsigned int data_len)
|
||||||
switch (index) {
|
switch (index) {
|
||||||
case 3: // mqtt
|
case 3: // mqtt
|
||||||
case 15: // pwm_control
|
case 15: // pwm_control
|
||||||
case 19: // hass_discovery
|
// case 19: // hass_discovery
|
||||||
restart_flag = 2;
|
restart_flag = 2;
|
||||||
case 0: // save_state
|
case 0: // save_state
|
||||||
case 1: // button_restrict
|
case 1: // button_restrict
|
||||||
|
@ -587,6 +587,7 @@ void MqttDataHandler(char* topic, byte* data, unsigned int data_len)
|
||||||
case 16: // ws_clock_reverse
|
case 16: // ws_clock_reverse
|
||||||
case 17: // decimal_text
|
case 17: // decimal_text
|
||||||
case 18: // light_signal
|
case 18: // light_signal
|
||||||
|
case 19: // hass_discovery
|
||||||
case 20: // not_power_linked
|
case 20: // not_power_linked
|
||||||
case 21: // no_power_on_check
|
case 21: // no_power_on_check
|
||||||
bitWrite(Settings.flag.data, index, payload);
|
bitWrite(Settings.flag.data, index, payload);
|
||||||
|
@ -595,6 +596,11 @@ void MqttDataHandler(char* topic, byte* data, unsigned int data_len)
|
||||||
stop_flash_rotate = payload;
|
stop_flash_rotate = payload;
|
||||||
SettingsSave(2);
|
SettingsSave(2);
|
||||||
}
|
}
|
||||||
|
#ifdef USE_HOME_ASSISTANT
|
||||||
|
if (19 == index) { // hass_discovery
|
||||||
|
HAssDiscovery(1);
|
||||||
|
}
|
||||||
|
#endif // USE_HOME_ASSISTANT
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else { // SetOption32 ..
|
else { // SetOption32 ..
|
||||||
|
|
|
@ -183,7 +183,7 @@ void HAssDiscoverButton()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void HAssDiscovery()
|
void HAssDiscovery(uint8_t mode)
|
||||||
{
|
{
|
||||||
// Configure Tasmota for default Home Assistant parameters to keep discovery message as short as possible
|
// Configure Tasmota for default Home Assistant parameters to keep discovery message as short as possible
|
||||||
if (Settings.flag.hass_discovery) {
|
if (Settings.flag.hass_discovery) {
|
||||||
|
@ -193,15 +193,15 @@ void HAssDiscovery()
|
||||||
// strncpy_P(Settings.mqtt_fulltopic, PSTR("%prefix%/%topic%/"), sizeof(Settings.mqtt_fulltopic)); // Make MQTT topic as short as possible to make this process posible within MQTT_MAX_PACKET_SIZE
|
// strncpy_P(Settings.mqtt_fulltopic, PSTR("%prefix%/%topic%/"), sizeof(Settings.mqtt_fulltopic)); // Make MQTT topic as short as possible to make this process posible within MQTT_MAX_PACKET_SIZE
|
||||||
}
|
}
|
||||||
|
|
||||||
// Send info about relays and lights
|
if (Settings.flag.hass_discovery || (1 == mode)) {
|
||||||
HAssDiscoverRelay();
|
// Send info about relays and lights
|
||||||
|
HAssDiscoverRelay();
|
||||||
|
// Send info about buttons
|
||||||
|
HAssDiscoverButton();
|
||||||
|
// TODO: Send info about switches
|
||||||
|
|
||||||
// Send info about buttons
|
// TODO: Send info about sensors
|
||||||
HAssDiscoverButton();
|
}
|
||||||
|
|
||||||
// TODO: Send info about switches
|
|
||||||
|
|
||||||
// TODO: Send info about sensors
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*********************************************************************************************\
|
/*********************************************************************************************\
|
||||||
|
@ -217,7 +217,7 @@ boolean Xdrv07(byte function)
|
||||||
if (Settings.flag.mqtt_enabled) {
|
if (Settings.flag.mqtt_enabled) {
|
||||||
switch (function) {
|
switch (function) {
|
||||||
case FUNC_MQTT_INIT:
|
case FUNC_MQTT_INIT:
|
||||||
HAssDiscovery();
|
HAssDiscovery(0);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue