From 02b447212d3b6aa238c719b34a8b245d63ca5deb Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Thu, 23 Feb 2023 22:36:37 +0100 Subject: telegram-chat: ignore new messages after reboot MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This script supports multiple devices, and sending offset to discard messages is delayed to third fetch to make sure all devices get the message. This can cause trouble, though: Sending a device a reboot command can make that device reboot multiple times 🥴 or - even worse - make it enter an infinite boot loop 😳 if it is the only device. So let's ignore first messages after reboot. --- telegram-chat | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/telegram-chat b/telegram-chat index 8b7fa5f..e4bd783 100644 --- a/telegram-chat +++ b/telegram-chat @@ -74,7 +74,8 @@ $WaitFullyConnected; :local UpdateID 0; :foreach Update in=[ :toarray $Data ] do={ :set UpdateID [ $JsonGetKey $Update "update_id" ]; - :if ($UpdateID >= $TelegramChatOffset->2) do={ + :if (($TelegramChatOffset->0 > 0 || [ /system/resource/get uptime ] > 5m) && \ + $UpdateID >= $TelegramChatOffset->2) do={ :local Trusted false; :local Message [ $JsonGetKey $Update "message" ]; :local MessageId [ $JsonGetKey $Message "message_id" ]; -- cgit v1.2.3-54-g00ecf