Skip to main content

PROJECT STATUS: DEVELOPMENT

Что такое pytelegrambots?

pytelegrambots - легковесный фреймворк для создания ботов для телеграма.

Содержание

Установка

pip install pytelegrambots

Общее описание

Использование

Для того, что бы создать бота, используя pytelegrambots вы должны:

API

Класс FSM

События

Состояние Описание
IncomingCommandEvent Update есть число
IncomingStartCommandEvent Update есть команда /start
IncomingHelpCommandEvent Update есть команда /help
IncomingNumberEvent Update есть число
IncomingStrictNumberEvent Update есть число
IncomingTextEvent Update есть текст
IncomingStrictTextEvent Update есть строгий текст
IncomingSinglePhotoEvent Update есть единичное фото

Реализация собственных классов событий

Для того, что бы создать свой класс события, необходимо:

  1. Создать класс, унаследованный от класса eventlib.UpdateEvent
  2. Реализовать метод happened(). Метод должен принимать в качестве аргумента объект класса Update, и возвращать True или False, в зависимости от того определяет ли update данное событие или нет. Пример: cdferfre

Пример создания бота

Формулировка задачи

Создадим примитивного бота для доставки пиццы. Сформулируем, что бот должен делать.

Сначала бот приветствует пользователя. После приветствия, бот просит написать какую пиццу же``лает клиент. (pizza_type: str)
Потом бот просит указать количество пицц. (quantity: int)
Потом посредством клавиатуры просит указать способ получения пиццы клиентом: самовывоз или доставка курьером. (delivery_type: str)
Если самовывоз, бот присылает собеседнику сообщение "Пицца {pizza_type} в количестве {quantity} будет готова через 15 минут. Номер заказа {chat_id}}"
Если клиент выбрал доставку курьером, "Пиццу {pizza_type} в количестве {quantity} курьер привезет через 45 минут."

Предварительная подготовка<a name="example-preliminaries>

Создайте бота при помощи @botfather и получите токен.

Диаграмма состояний

Дадим названия состояниям, в которым может находиться чат пользователя с ботом:

Состояние Описание
AfterStart Чат сразу после старта перед приветственным сообщением
AfterWelcomeMessage Чат после приветственного сообщения
PromptedForPizzaType Чат после отображения предложения пользователю написать тип пиццы, который он хочет заказать
PromptedForQuantity Чат после отображения предложения пользователю написать количества заказываемой пиццы
PromptedForDeliveryType Чат после отображения пользователя клавиатуры с выбором одного из двух способов доставки
DeliveryByCouurierMessagePosted Чат после отображения клиенту сообщения о времени получении пицц
HimselfDeliveryPosted Чат после отображения клиенту сообщения о времени получении пицц

Создание пользовательского события

Получение помощи

Рекомендуемый способ получения помощи- создание вопроса в данном репозитарии. Можете также обратиться по эл. адресу maliuzhenetsdzmitry @ гугляком ()

Помощь в разработке

Лицензия

MIT License Copyright (c) 2020 Dzmitry Maliuzhenets

Metadata

Release files for pywood 0.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pywood 0.1.3
File Size Uploaded Provenance Actions
pywood-0.1.3.tar.gz 17.2 kB Without provenance Details for pywood-0.1.3.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for pywood 0.1.3
File Interpreter ABI Platform Actions
pywood-0.1.3-py3-none-any.whl Python 3 none any Details for pywood-0.1.3-py3-none-any.whl

Total release size: 43.9 kB

Release files / pywood-0.1.3.tar.gz

Download URL pywood-0.1.3.tar.gz
Size 17.2 kB
Tags Source
SHA-256 checksum
How to use checksums
7db5d5eaff48e0b5edb9d8b3bf0d838697f7776610bced9a9fa721245501dcea
BLAKE2b-256 checksum
How to use checksums
522526f3a8456f2672edae26da4d416afdc3e08cdc8fe16bd750bfc310ac5dea
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.7.6

Release files / pywood-0.1.3-py3-none-any.whl

Download URL pywood-0.1.3-py3-none-any.whl
Size 26.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
36c2d5f9abdfd8c55cbd99feaaf161e185c4371928c750431008fb5e4b875a57
BLAKE2b-256 checksum
How to use checksums
e6084da135adca23832e5ea0bd8a940017bc473054de80be766c7f774497af28
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.7.6

Security for pywood 0.1.3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page