Pytbo is a module aimed at simplifying the creation of Telegram Bots using Python.
A minimum familiarity with Telegram Bots is required to use this library. Please take a look at the introduction and the FAQ before starting.
To start working with Pytbo, you must have a Bot token. If you don't know what we're talking about, read how to create your first bot with BotFather.
This is a simple echo bot done with Pytbo that looks for updates every 5 seconds.
import pytbo
import time
# Bot Token received from Telegram
BOT_TOKEN = "MY_BOT_TOKEN"
# Polling interval in seconds
INTERVAL = 5
# Create bot object
bot = pytbo.BareBot(BOT_TOKEN)
# Print bot information
print("Bot ID......: %s" % (bot.id))
print("Bot username: %s" % (bot.username))
# Initialize offset
offset = 0
# Infinite polling loop
while True:
# Look for updates
updates = bot.getUpdates(offset)
# Handle them
for u in updates:
if u.message:
if u.message.text:
# If the update contains a message
# that contains text, we reply to the
# sender with the same text.
bot.sendMessage(
u.message.chat.id,
u.message.text,
reply_to_message_id=u.message.message_id
)
# Update offset to avoid receiving
# the same update again
offset = u.update_id + 1
# Sleep
time.sleep(INTERVAL)
To install Pytbo, simply:
$ pip install pytbo
A proper documentation is not yet available, but it will be. However, useful methods and classes are documented inside the source code.
Don't be afraid to have a look inside, sometimes is the best way to learn.
- Fork this repository on GitHub to start making your changes to the master branch (or branch off of it).
- Send a pull request.
Thanks to Kenneth Reitz and to all the other developers of the requests module, which is used inside Pytbo and also as a blueprint for this repository and documentation layout.