telegram-chat: use $ParseJson for all JSON

This commit is contained in:
Christian Hesse 2023-10-13 22:43:19 +02:00
parent c0aab0fead
commit 73194b92cf

View file

@ -52,14 +52,13 @@ $WaitFullyConnected;
:set Data ([ /tool/fetch check-certificate=yes-without-crl output=user \
("https://api.telegram.org/bot" . $TelegramTokenId . "/getUpdates?offset=" . \
$TelegramChatOffset->0 . "&allowed_updates=%5B%22message%22%5D") as-value ]->"data");
:set Data [ :pick $Data ([ :find $Data "[" ] + 1) ([ :len $Data ] - 2) ];
} on-error={
$LogPrintExit2 debug $0 ("Failed getting updates from Telegram.") true;
}
:local UpdateID 0;
:local Uptime [ /system/resource/get uptime ];
:foreach UpdateArray in=[ :toarray $Data ] do={
:foreach UpdateArray in=[ :toarray ([ $ParseJson $Data ]->"result") ] do={
:local Update [ $ParseJson $UpdateArray ];
:set UpdateID ($Update->"update_id");
:local Message [ $ParseJson ($Update->"message") ];