Davte e412548edf Added Bot() property callback_data_separator and method to set it
It will be used to parse callback data unless a more specific separator 
is passed to @Bot().button decorator. If both are None, data will be a 
string without prefix.
2019-07-15 13:02:44 +02:00
2019-06-24 17:22:56 +02:00
2018-10-23 18:12:07 +02:00
2018-11-24 18:37:51 +01:00
2019-07-13 18:26:12 +02:00

davtelepot

This project conveniently mirrors the Telegram bot API with the class Bot.

Please note that you need Python3.5+ to run async code.

Check requirements.txt for third party dependencies.

Check out help(Bot) for detailed information.

Project folders

data folder

  • *.db: databases used by bots
  • *.log: log files (store log_file_name and errors_file_name in data/config.py module)
  • passwords.py: contains secret information to be git-ignored (e.g. bot tokens)
my_token = 'token_of_bot1'
my_other_token = 'token_of_bot2'
...

Usage

import sys
from davtelepot.bot import Bot
from data.passwords import my_token, my_other_token

long_polling_bot = Bot(token=my_token, database_url='my_db')
webhook_bot = Bot(token=my_other_token, hostname='example.com',
                  certificate='path/to/certificate.pem',
                  database_url='my_other_db')

@long_polling_bot.command('/foo')
async def foo_command(bot, update, user_record):
  return "Bar!"

@webhook_bot.command('/bar')
async def bar_command(bot, update, user_record):
  return "Foo!"

exit_state = Bot.run()
sys.exit(exit_state)

Check out help(Bot) for detailed information.

Description
Asyncronous python framework for Telegram bot development
Readme 600 KiB
Languages
Python 99.8%
Shell 0.2%