From a6be3989d3a200221635b582c793a5d7b9acc81d Mon Sep 17 00:00:00 2001 From: dddennnisss Date: Tue, 11 Aug 2026 21:50:50 +0700 Subject: [PATCH] router: add refresh button with countdown timer display --- includes/packages/router.yaml | 55 ++++++++++++++++++++++++++++++----- 1 file changed, 48 insertions(+), 7 deletions(-) diff --git a/includes/packages/router.yaml b/includes/packages/router.yaml index fd00819..5d724de 100644 --- a/includes/packages/router.yaml +++ b/includes/packages/router.yaml @@ -62,10 +62,11 @@ router: - service: telegram_bot.send_message data: chat_id: "{{ trigger.event.data.chat_id }}" - message: "connect-accept отключён\n\nВключится автоматически через 10 минут." + message: "connect-accept отключён\n\nЧерез 10:00 включится автоматически." inline_keyboard: - "🔛 Включить:/wrt_cb_on|{{ trigger.event.data.chat_id }}" - - "🔄 Обновить:/wrt_ca_off, 🔙 Назад:/menu_back" + - "🔄 Обновить:/wrt_cb_refresh|{{ trigger.event.data.chat_id }}" + - "🔙 Назад:/menu_back" - service: timer.start target: entity_id: timer.wrt_ca_timer @@ -84,7 +85,8 @@ router: message: "connect-accept включён\n\nТаймер остановлен." inline_keyboard: - "⏸️ Отключить:/wrt_cb_off|{{ trigger.event.data.chat_id }}" - - "🔄 Обновить:/wrt_ca_on, 🔙 Назад:/menu_back" + - "🔄 Обновить:/wrt_cb_refresh|{{ trigger.event.data.chat_id }}" + - "🔙 Назад:/menu_back" - service: timer.cancel target: entity_id: timer.wrt_ca_timer @@ -100,6 +102,10 @@ router: - variables: chat_id: "{{ trigger.event.data.data.split('|')[1] }}" - service: shell_command.wrt_ca_on + - service: telegram_bot.answer_callback_query + data: + callback_query_id: "{{ trigger.event.data.id }}" + text: "connect-accept включён" - service: telegram_bot.edit_message data: chat_id: "{{ chat_id }}" @@ -111,7 +117,8 @@ router: Таймер остановлен. inline_keyboard: - "⏸️ Отключить:/wrt_cb_off|{{ chat_id }}" - - "🔄 Обновить:/wrt_ca_on, 🔙 Назад:/menu_back" + - "🔄 Обновить:/wrt_cb_refresh|{{ chat_id }}" + - "🔙 Назад:/menu_back" - service: timer.cancel target: entity_id: timer.wrt_ca_timer @@ -127,6 +134,10 @@ router: - variables: chat_id: "{{ trigger.event.data.data.split('|')[1] }}" - service: shell_command.wrt_ca_off + - service: telegram_bot.answer_callback_query + data: + callback_query_id: "{{ trigger.event.data.id }}" + text: "connect-accept отключён" - service: telegram_bot.edit_message data: chat_id: "{{ chat_id }}" @@ -135,14 +146,43 @@ router: message: | connect-accept отключён - Включится автоматически через 10 минут. + Через 10:00 включится автоматически. inline_keyboard: - "🔛 Включить:/wrt_cb_on|{{ chat_id }}" - - "🔄 Обновить:/wrt_ca_off, 🔙 Назад:/menu_back" + - "🔄 Обновить:/wrt_cb_refresh|{{ chat_id }}" + - "🔙 Назад:/menu_back" - service: timer.start target: entity_id: timer.wrt_ca_timer + - alias: "tg|wrt_cb_refresh" + trigger: + platform: event + event_type: telegram_callback + condition: + - condition: template + value_template: "{{ 'wrt_cb_refresh' in trigger.event.data.data }}" + action: + - variables: + chat_id: "{{ trigger.event.data.data.split('|')[1] }}" + - service: telegram_bot.answer_callback_query + data: + callback_query_id: "{{ trigger.event.data.id }}" + text: "Обновлено" + - service: telegram_bot.edit_message + data: + chat_id: "{{ chat_id }}" + message_id: "{{ trigger.event.data.message.message_id }}" + parse_mode: html + message: | + connect-accept отключён + + Через {{ (as_timestamp(state_attr('timer.wrt_ca_timer', 'finishes_at')) - as_timestamp(now())) | timestamp_custom('%M:%S', false) | replace(' 0', ' 0', 1) }} включится автоматически. + inline_keyboard: + - "🔛 Включить:/wrt_cb_on|{{ chat_id }}" + - "🔄 Обновить:/wrt_cb_refresh|{{ chat_id }}" + - "🔙 Назад:/menu_back" + - alias: "wrt|timer_expired_auto_on" trigger: platform: event @@ -157,4 +197,5 @@ router: message: "Таймер истёк!\nconnect-accept включён автоматически." inline_keyboard: - "⏸️ Отключить:/wrt_cb_off|{{ states('input_text.wrt_ca_chat_id') | default('102879274') }}" - - "🔄 Обновить:/wrt_ca_on, 🔙 Назад:/menu_back" + - "🔄 Обновить:/wrt_cb_refresh|{{ states('input_text.wrt_ca_chat_id') | default('102879274') }}" + - "🔙 Назад:/menu_back"