# -*- coding: latin-1 -*- import requests #Modulo per fare richieste su HTTP import time #Modulo per mettere in pausa il programma #Token del bot, non diffondere token = "120621161:AAHeVgQhlfGx36KT9NyGemauZBPEbe9Xfv0" #Leggi un file e rispondi con il contenuto def readFile(name): file = open(name, 'r') content = file.read() file.close() return content #Scrivi qualcosa su un file def writeFile(name, content): file = open(name, 'w') file.write(content) file.close() #Ricevi gli ultimi messaggi def getUpdates(): #Parametri della richiesta da fare parametri = { 'offset': readFile("lastid.txt"), #Update ID del messaggio da leggere 'limit': 1, #Numero di messaggi da ricevere alla volta, lasciare 1 'timeout': 300, #Secondi da mantenere attiva la richiesta se non c'e' nessun messaggio } #Manda la richiesta ai server di Telegram e convertila in un dizionario r = requests.get("https://api.telegram.org/bot" + token + "/getUpdates", params=parametri).json() return r #Manda un messaggio def sendMessage(content, to): #Parametri del messaggio parametri = { 'chat_id': to, #L'ID della chat a cui mandare il messaggio, Royal Games: -2141322 'text': content #Il messaggio da mandare } #Manda il messaggio r = requests.get("https://api.telegram.org/bot" + token + "/sendMessage", params=parametri) #Il loop del bot while(True): #Ricevi gli ultimi messaggi data = getUpdates() #Se c'e' un nuovo messaggio if(data['ok'] and data['result']): #Aggiorna l'update ID sul file writeFile("lastid.txt", str(data['result'][0]['update_id'] + 1)) #Leggi i dati del messaggio msg = data['result'][0]['message'] if(msg['text'] == "/start"): sendMessage("Non c'è bisogno di avviarmi, sono sempre avviato!", msg['from']['id']) if(msg['text'] == "/ahnonlosoio"): sendMessage("Ah non lo so nemmeno io ¯\_(ツ)_/¯", msg['chat']['id'])