def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) cg.add_library('CountUpDownTimer', None) yield cg.register_component(var, config) yield text_sensor.register_text_sensor(var, config) parent = yield cg.get_variable(config[CONF_MQTT_PARENT_ID]) cg.add(var.set_parent(parent)) cg.add(var.set_topic(config[CONF_TOPIC])) if CONF_QOS in config: cg.add(var.set_qos(config[CONF_QOS])) for conf in config.get(CONF_ON_END, []): trigger = cg.new_Pvariable(conf[CONF_TRIGGER_ID]) yield cg.register_component(trigger, conf) yield cg.register_parented(trigger, var) cg.add(trigger.set_testState(True)) yield automation.build_automation(trigger, [], conf) for conf in config.get(CONF_ON_START, []): trigger = cg.new_Pvariable(conf[CONF_TRIGGER_ID]) yield cg.register_component(trigger, conf) yield cg.register_parented(trigger, var) cg.add(trigger.set_testState(False)) yield automation.build_automation(trigger, [], conf)
def sun_below_horizon_to_code(config, condition_id, template_arg, args): var = cg.new_Pvariable(condition_id, template_arg) yield cg.register_parented(var, config[CONF_ID]) templ = yield cg.templatable(config[CONF_ELEVATION], args, cg.double) cg.add(var.set_elevation(templ)) cg.add(var.set_above(False)) yield var
def tm1651_set_level_percent_to_code(config, action_id, template_arg, args): var = cg.new_Pvariable(action_id, template_arg) yield cg.register_parented(var, config[CONF_ID]) template_ = yield cg.templatable(config[CONF_LEVEL_PERCENT], args, cg.uint8) cg.add(var.set_level_percent(template_)) yield var
def fingerprint_grow_delete_to_code(config, action_id, template_arg, args): var = cg.new_Pvariable(action_id, template_arg) yield cg.register_parented(var, config[CONF_ID]) template_ = yield cg.templatable(config[CONF_FINGER_ID], args, cg.uint16) cg.add(var.set_finger_id(template_)) yield var
def fingerprint_grow_led_control_to_code(config, action_id, template_arg, args): var = cg.new_Pvariable(action_id, template_arg) yield cg.register_parented(var, config[CONF_ID]) template_ = yield cg.templatable(config[CONF_STATE], args, cg.bool_) cg.add(var.set_state(template_)) yield var
def dfplayer_play_to_code(config, action_id, template_arg, args): var = cg.new_Pvariable(action_id, template_arg) yield cg.register_parented(var, config[CONF_ID]) template_ = yield cg.templatable(config[CONF_FILE], args, float) cg.add(var.set_file(template_)) if CONF_LOOP in config: template_ = yield cg.templatable(config[CONF_LOOP], args, float) cg.add(var.set_loop(template_)) yield var
def fingerprint_grow_aura_led_control_to_code(config, action_id, template_arg, args): var = cg.new_Pvariable(action_id, template_arg) yield cg.register_parented(var, config[CONF_ID]) for key in [CONF_STATE, CONF_SPEED, CONF_COLOR, CONF_COUNT]: template_ = yield cg.templatable(config[key], args, cg.uint8) cg.add(getattr(var, f"set_{key}")(template_)) yield var
def fingerprint_grow_enroll_to_code(config, action_id, template_arg, args): var = cg.new_Pvariable(action_id, template_arg) yield cg.register_parented(var, config[CONF_ID]) template_ = yield cg.templatable(config[CONF_FINGER_ID], args, cg.uint16) cg.add(var.set_finger_id(template_)) if CONF_NUM_SCANS in config: template_ = yield cg.templatable(config[CONF_NUM_SCANS], args, cg.uint8) cg.add(var.set_num_scans(template_)) yield var
def rs485_write_to_code(config, action_id, template_arg, args): var = cg.new_Pvariable(action_id, template_arg) yield cg.register_parented(var, config[CONF_ID]) data = config[CONF_DATA] if cg.is_template(data): templ = yield cg.templatable(data, args, cmd_hex_t) cg.add(var.set_data_template(templ)) else: cmd = yield command_hex_expression(config) cg.add(var.set_data_static(cmd)) yield var
def to_code(config): var = cg.new_Pvariable(config[CONF_ID]) time_ = yield cg.get_variable(config[CONF_TIME_ID]) cg.add(var.set_time(time_)) cg.add(var.set_latitude(config[CONF_LATITUDE])) cg.add(var.set_longitude(config[CONF_LONGITUDE])) for conf in config.get(CONF_ON_SUNRISE, []): trigger = cg.new_Pvariable(conf[CONF_TRIGGER_ID]) yield cg.register_component(trigger, conf) yield cg.register_parented(trigger, var) cg.add(trigger.set_sunrise(True)) cg.add(trigger.set_elevation(conf[CONF_ELEVATION])) yield automation.build_automation(trigger, [], conf) for conf in config.get(CONF_ON_SUNSET, []): trigger = cg.new_Pvariable(conf[CONF_TRIGGER_ID]) yield cg.register_component(trigger, conf) yield cg.register_parented(trigger, var) cg.add(trigger.set_sunrise(False)) cg.add(trigger.set_elevation(conf[CONF_ELEVATION])) yield automation.build_automation(trigger, [], conf)
def uart_write_to_code(config, action_id, template_arg, args): var = cg.new_Pvariable(action_id, template_arg) yield cg.register_parented(var, config[CONF_ID]) data = config[CONF_DATA] if isinstance(data, binary_type): data = [char_to_byte(x) for x in data] if cg.is_template(data): templ = yield cg.templatable(data, args, cg.std_vector.template(cg.uint8)) cg.add(var.set_data_template(templ)) else: cg.add(var.set_data_static(data)) yield var
def canbus_action_to_code(config, action_id, template_arg, args): validate_id(config[CONF_CAN_ID], config[CONF_USE_EXTENDED_ID]) var = cg.new_Pvariable(action_id, template_arg) yield cg.register_parented(var, config[CONF_CANBUS_ID]) if CONF_CAN_ID in config: can_id = yield cg.templatable(config[CONF_CAN_ID], args, cg.uint32) cg.add(var.set_can_id(can_id)) use_extended_id = yield cg.templatable(config[CONF_USE_EXTENDED_ID], args, cg.uint32) cg.add(var.set_use_extended_id(use_extended_id)) data = config[CONF_DATA] if isinstance(data, bytes): data = [int(x) for x in data] if cg.is_template(data): templ = yield cg.templatable(data, args, cg.std_vector.template(cg.uint8)) cg.add(var.set_data_template(templ)) else: cg.add(var.set_data_static(data)) yield var
def dfplayer_next_to_code(config, action_id, template_arg, args): var = cg.new_Pvariable(action_id, template_arg) yield cg.register_parented(var, config[CONF_ID]) yield var
def dfplyaer_is_playing_to_code(config, condition_id, template_arg, args): var = cg.new_Pvariable(condition_id, template_arg) yield cg.register_parented(var, config[CONF_ID]) yield var
def dfplayer_set_eq_to_code(config, action_id, template_arg, args): var = cg.new_Pvariable(action_id, template_arg) yield cg.register_parented(var, config[CONF_ID]) template_ = yield cg.templatable(config[CONF_EQ_PRESET], args, EqPreset) cg.add(var.set_eq(template_)) yield var
def dfplayer_set_volume_to_code(config, action_id, template_arg, args): var = cg.new_Pvariable(action_id, template_arg) yield cg.register_parented(var, config[CONF_ID]) template_ = yield cg.templatable(config[CONF_VOLUME], args, float) cg.add(var.set_volume(template_)) yield var
def dfplayer_set_device_to_code(config, action_id, template_arg, args): var = cg.new_Pvariable(action_id, template_arg) yield cg.register_parented(var, config[CONF_ID]) template_ = yield cg.templatable(config[CONF_DEVICE], args, Device) cg.add(var.set_device(template_)) yield var
def output_turn_off_to_code(config, action_id, template_arg, args): var = cg.new_Pvariable(action_id, template_arg) yield cg.register_parented(var, config[CONF_ID]) yield var
def fingerprint_grow_delete_all_to_code(config, action_id, template_arg, args): var = cg.new_Pvariable(action_id, template_arg) yield cg.register_parented(var, config[CONF_ID]) yield var
def tm1651_set_brightness_to_code(config, action_id, template_arg, args): var = cg.new_Pvariable(action_id, template_arg) yield cg.register_parented(var, config[CONF_ID]) template_ = yield cg.templatable(config[CONF_BRIGHTNESS], args, cg.uint8) cg.add(var.set_brightness(template_)) yield var
def ds1307_read_time_to_code(config, action_id, template_arg, args): var = cg.new_Pvariable(action_id, template_arg) yield cg.register_parented(var, config[CONF_ID]) yield var