#!/usr/bin/python3 import requests bottoken = "1492324112:AAHUVn_-36ZMd1Fifsdfasyk4zsjbR73" print("Using Bot Token: " + str(bottoken)) # Request Bot Info url = "https://api.telegram.org/bot" + bottoken + "/getMe" r = requests.get(url) result = r.json() print("Our Bot Username is: " + result["result"]["username"]) # Request latest messages url = "https://api.telegram.org/bot" + bottoken + "/getUpdates" r = requests.get(url) result = r.json() print("There are " + str(len(result["result"])) + " new messages.") if len(result["result"]) != 0: # Get Indexes to messages firstmessageindex = 0 lastmessageindex = len(result["result"]) - 1 print("First message is: " + result["result"][firstmessageindex]["message"]["text"]) print("Last message is: " + result["result"][lastmessageindex]["message"]["text"]) # Get chat room id of last message chatroomid = result["result"][lastmessageindex]["message"]["chat"]["id"] # Get last update ID lastupdateid = result["result"][lastmessageindex]["update_id"] # ID of next message nextupdateid = lastupdateid + 1 print("Chat room id of last message: " + str(chatroomid)) print("Last UpdateID: " + str(lastupdateid)) # Check for new messages (use last message id + 1 as offset - automaticly marks all old messages as read!) url = "https://api.telegram.org/bot" + bottoken + "/getUpdates" params = { "offset": nextupdateid } r = requests.get(url, params = params) result = r.json() if len(result["result"]) == 0: print("Checked message again: No new messages") # Send a text message to a chat room (chat room ID retrieved from getUpdates) mymessage = "Hello World!" url = "https://api.telegram.org/bot" + bottoken + "/sendMessage" params = { "chat_id": chatroomid, "text": mymessage } r = requests.get(url, params = params) result = r.json() print("I sent \"" + str(mymessage) + "\" to chat room " + str(chatroomid) + ". Result was: " + str(result["ok"])) # Send a photo to a chat room (chat room ID retrieved from getUpdates) photofile = "ente.jpg" url = "https://api.telegram.org/bot" + bottoken + "/sendPhoto" params = { "chat_id": chatroomid } files = { "photo" : open(photofile, "rb") } r = requests.get(url, params = params, files = files) result = r.json() print("I sent Photo \"" + str(photofile) + "\" to chat room " + str(chatroomid) + ". Result was: " + str(result["ok"])) # Send a file to a chat room documentfile = "ente.jpg" url = "https://api.telegram.org/bot" + bottoken + "/sendDocument" params = { "chat_id": chatroomid } files = { "document" : open(documentfile, "rb") } r = requests.get(url, params = params, files = files) result = r.json() print("I sent Document \"" + str(documentfile) + "\" to chat room " + str(chatroomid) + ". Result was: " + str(result["ok"])) # Send a text message to a chat room (chat room ID retrieved from getUpdates) with a custom keyboard mymessage = "Material XYZ fuer FA 4712000 fehlt. Was soll getan werden?" mykeyboard = r"""{"keyboard": [["Stoppen","Weiterproduzieren"]]}""" url = "https://api.telegram.org/bot" + bottoken + "/sendMessage" params = { "chat_id": chatroomid, "text": mymessage, "reply_markup": mykeyboard} r = requests.get(url, params = params) result = r.json() print("I sent \"" + str(mymessage) + "\" to chat room " + str(chatroomid) + ". Result was: " + str(result["ok"]))