Splitting global_settings service
Looks like ESPHome didn't like the service calls with so many parameters.
This commit is contained in:
@@ -294,10 +294,9 @@ api:
|
||||
}
|
||||
}
|
||||
|
||||
##### Service for transferring global settings from the blueprint to ESPHome #####
|
||||
- service: global_settings
|
||||
##### Service for transferring relay's settings from the blueprint to ESPHome #####
|
||||
- service: relay_settings
|
||||
variables:
|
||||
blueprint_version: string
|
||||
relay1_local_control: bool
|
||||
relay1_icon: string
|
||||
relay1_icon_color: int
|
||||
@@ -306,6 +305,22 @@ api:
|
||||
relay2_icon: string
|
||||
relay2_icon_color: int
|
||||
relay2_fallback: bool
|
||||
then:
|
||||
- script.execute:
|
||||
id: relay_settings
|
||||
relay1_local_control: !lambda "return relay1_local_control;"
|
||||
relay1_icon: !lambda "return relay1_icon;"
|
||||
relay1_icon_color: !lambda "return relay1_icon_color;"
|
||||
relay1_fallback: !lambda "return relay1_fallback;"
|
||||
relay2_local_control: !lambda "return relay2_local_control;"
|
||||
relay2_icon: !lambda "return relay2_icon;"
|
||||
relay2_icon_color: !lambda "return relay2_icon_color;"
|
||||
relay2_fallback: !lambda "return relay2_fallback;"
|
||||
|
||||
##### Service for transferring global settings from the blueprint to ESPHome #####
|
||||
- service: global_settings
|
||||
variables:
|
||||
blueprint_version: string
|
||||
embedded_climate: bool
|
||||
embedded_climate_friendly_name: string
|
||||
embedded_indoor_temperature: bool
|
||||
@@ -317,14 +332,6 @@ api:
|
||||
- script.execute:
|
||||
id: global_settings
|
||||
blueprint_version: !lambda "return blueprint_version;"
|
||||
relay1_local_control: !lambda "return relay1_local_control;"
|
||||
relay1_icon: !lambda "return relay1_icon;"
|
||||
relay1_icon_color: !lambda "return relay1_icon_color;"
|
||||
relay1_fallback: !lambda "return relay1_fallback;"
|
||||
relay2_local_control: !lambda "return relay2_local_control;"
|
||||
relay2_icon: !lambda "return relay2_icon;"
|
||||
relay2_icon_color: !lambda "return relay2_icon_color;"
|
||||
relay2_fallback: !lambda "return relay2_fallback;"
|
||||
embedded_climate: !lambda "return embedded_climate;"
|
||||
embedded_climate_friendly_name: !lambda "return embedded_climate_friendly_name;"
|
||||
embedded_indoor_temperature: !lambda "return embedded_indoor_temperature;"
|
||||
@@ -1782,14 +1789,6 @@ script:
|
||||
mode: restart
|
||||
parameters:
|
||||
blueprint_version: string
|
||||
relay1_local_control: bool
|
||||
relay1_icon: string
|
||||
relay1_icon_color: int
|
||||
relay1_fallback: bool
|
||||
relay2_local_control: bool
|
||||
relay2_icon: string
|
||||
relay2_icon_color: int
|
||||
relay2_fallback: bool
|
||||
embedded_climate: bool
|
||||
embedded_climate_friendly_name: string
|
||||
embedded_indoor_temperature: bool
|
||||
@@ -1805,21 +1804,6 @@ script:
|
||||
id(version_blueprint) = blueprint_version;
|
||||
check_versions->execute();
|
||||
|
||||
// Relays
|
||||
ESP_LOGV(TAG, "Setup relays");
|
||||
relay1_local->publish_state(relay1_local_control);
|
||||
relay2_local->publish_state(relay2_local_control);
|
||||
id(relay_1_fallback) = relay1_fallback;
|
||||
id(relay_2_fallback) = relay2_fallback;
|
||||
disp1->set_component_font_color("home.icon_top_01", relay1_icon_color);
|
||||
disp1->set_component_font_color("home.icon_top_02", relay2_icon_color);
|
||||
disp1->set_component_text_printf("home.icon_top_01", "%s", relay1_icon.c_str());
|
||||
disp1->set_component_text_printf("home.icon_top_02", "%s", relay2_icon.c_str());
|
||||
id(home_relay1_icon) = relay1_icon.c_str();
|
||||
id(home_relay2_icon) = relay2_icon.c_str();
|
||||
id(home_relay1_icon_color) = relay1_icon_color;
|
||||
id(home_relay2_icon_color) = relay2_icon_color;
|
||||
|
||||
// Embedded thermostat
|
||||
ESP_LOGV(TAG, "Load embedded thermostat");
|
||||
id(is_embedded_thermostat) = embedded_climate;
|
||||
@@ -2334,6 +2318,36 @@ script:
|
||||
"\uE5A9"); // mdi:wifi-off
|
||||
}
|
||||
|
||||
- id: relay_settings
|
||||
mode: restart
|
||||
parameters:
|
||||
relay1_local_control: bool
|
||||
relay1_icon: string
|
||||
relay1_icon_color: int
|
||||
relay1_fallback: bool
|
||||
relay2_local_control: bool
|
||||
relay2_icon: string
|
||||
relay2_icon_color: int
|
||||
relay2_fallback: bool
|
||||
then:
|
||||
- lambda: |-
|
||||
static const char *const TAG = "script.relay_settings";
|
||||
// Relays
|
||||
ESP_LOGV(TAG, "Setup relays");
|
||||
relay1_local->publish_state(relay1_local_control);
|
||||
relay2_local->publish_state(relay2_local_control);
|
||||
id(relay_1_fallback) = relay1_fallback;
|
||||
id(relay_2_fallback) = relay2_fallback;
|
||||
disp1->set_component_font_color("home.icon_top_01", relay1_icon_color);
|
||||
disp1->set_component_font_color("home.icon_top_02", relay2_icon_color);
|
||||
disp1->set_component_text_printf("home.icon_top_01", "%s", relay1_icon.c_str());
|
||||
disp1->set_component_text_printf("home.icon_top_02", "%s", relay2_icon.c_str());
|
||||
id(home_relay1_icon) = relay1_icon.c_str();
|
||||
id(home_relay2_icon) = relay2_icon.c_str();
|
||||
id(home_relay1_icon_color) = relay1_icon_color;
|
||||
id(home_relay2_icon_color) = relay2_icon_color;
|
||||
ESP_LOGV(TAG, "Finished");
|
||||
|
||||
- id: service_call_alarm_control_panel
|
||||
mode: restart
|
||||
parameters:
|
||||
@@ -2524,6 +2538,7 @@ script:
|
||||
refresh_datetime->stop();
|
||||
refresh_relays->stop();
|
||||
refresh_wifi_icon->stop();
|
||||
relay_settings->stop();
|
||||
service_call_alarm_control_panel->stop();
|
||||
set_brightness->stop();
|
||||
set_climate->stop();
|
||||
|
||||
Reference in New Issue
Block a user