Skip to main content

My Telegram Framework

Project description

Easy Telegram Bot 🎯 easy-tg-bot

This is my own Telegram bot framework for faster development and updating my bots.

Based on Python Telegram Bot.

Features

Quick start

easy-tg-bot run

The command will create .env in your working directory if the file does not exist, and in this case you would have to fill it and try again.

Other necessary files are created if they do not exist, and finally main.py in your working directory is launched.

Register commands with a decorator

from easy_tg_bot import command

@command()
async def help(update, context):
    pass

Text settings of the bot

By default, in the bot:

  • Through /admin -> "⚙️ ...", admins regulate the settings of the bot via .xlsx file manipulation.

  • All the bot text is stored in an exel file text.xlsx with "string_text_key":"value" structure, and the columns are the languages.

  • To add a text, simply add a unique text index and the corresponding value in at least one language (the first column) in the text.xlsx.

  • All the text info is preserved in the bot persistance.

  • from easytgbot import send_text, send_keyboard <- these async functions accept update, context, and "string_text_key" from the .xlsx file.

  • See __init__.py for more features.

Other

Logs are rotating automatically.

See main.py generated by easy-tg-bot run command for more examples of usage.

Installation

This is an installable Python package.

PyPI

poetry add easy-tg-bot / pip install easy-tg-bot / any other manager command

Poetry (manually from this folder)

Make sure poetry is installed. From this folder,

  1. poetry shell; poetry update;

  2. poetry build; poetry install;

Usage

! Fill the .env file in your working directory before or after this command

easy-tg-bot run --upd-env - run the bot (polling) with the updated .env.

In the bot if run is successful, try /admin.

Ctrl+C to exit.

easy-tg-bot run command runs "main.py" file, so one can as well run the file directly after it's created.

  • /admin - admin panel

  • /start -> makes user pick a language, agree to data_policy and share a phone number.

See main.py for more details on how to configure the start coveration and explore /admin

# TODO

  • /admin -> mailing service

  • /superadmin - list of superadmin commands: /get_db, /bot_down, etc

  • Add more features description to README from __init__.py

Project details


Download files

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

Source Distribution

easy_tg_bot-0.1.1.tar.gz (29.8 kB view hashes)

Uploaded Source

Built Distribution

easy_tg_bot-0.1.1-py3-none-any.whl (37.3 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page