Il trittico ESP, Annex e Telegram potrebbe rivelare una piacevole sorpresa nel campo del telecontrollo interattivo con interfaccia grafica.
Purtroppo mi sono blocccato al primo tentativo di test delle funzioni di Telegram con ESP8266.
Il programma usato è tratto dall'Help on line denominato "Example of echo bot (reply the command received)", di seguito il listato con piccole modifiche.
Code: [Local Link Removed for Guests]
wlog time$
telegram.settoken "5827984672:AAENEvX7k6YsjsH6bhAI-Rh80Pnmnnnmmmmmhhh"
telegram.setwait 10
wlog telegram.getMe$ 'get the user’s informations
timer0 5000, getmessages
wait
getmessages:
'Receive the messages
r$ = telegram.getUpdates$ 'get the new messages
wlog r$, time$
text$ = json$(r$, "text")
if (text$ <> "not found") then
c$ = json$(r$, "chat.id") 'get the chat_id
c = val(c$) 'return chat id into a numeric value
wlog telegram.sendmessage$(c, "echo : " + text$)
end if
return
Cosa NON succede: ESP8266 non riesce ad inviare il messaggio di "echo" al bot col comando "wlog telegram.sendmessage$(c, "echo : " + text$)", infatti, ritorna il messaggio {"ok":false,"error_code":400,"description":"Bad Request: chat not found"}
ho provato ad indagare sulla variabile "chat.id" con la funzione "Get Variable", prima nella forma stringa (c$) che mi pare corretta, poi nella forma trasformata in numerica (c) dove, forse, c'è il troncamento di qualche unità.
Cosa ne pensate? O potrebbe dipendere dalle impostazioni del bot e/o telegram?
grazie e buone feste