Skip to main content
Join the official 2019 Python Developers SurveyStart the survey!

Python Telegram Bots made easy

Project description

https://img.shields.io/pypi/v/pytbo.svg

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.

Getting Started

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)

Installation

To install Pytbo, simply:

$ pip install pytbo

Documentation

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.

How to Contribute

  1. Fork this repository on GitHub to start making your changes to the master branch (or branch off of it).
  2. Send a pull request.

Aknowledgements

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.

Release History

0.1.0 (2016-04-23)

  • BareBot class that wraps Telegram Bot APIs methods
  • Types classes that wraps Telegram Bot APIs types

0.0.1 (2016-04-14)

  • Conception

Project details


Release history Release notifications

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for pytbo, version 0.1.0
Filename, size File type Python version Upload date Hashes
Filename, size pytbo-0.1.0-py2.py3-none-any.whl (19.9 kB) File type Wheel Python version py2.py3 Upload date Hashes View hashes
Filename, size pytbo-0.1.0.tar.gz (16.7 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page