Skip to main content

Библиотека для удобного и многофункционального(в будущем) использования.

Project description

Установить:

pip install EasyGram

Быстрый старт

Эхо бот(синхронный)

from EasyGram import SyncBot, types

bot = SyncBot('Token here')

@bot.message(content_types='text')
def echo_bot(message: types.Message):
	message.answer(message.text)

bot.polling()

Эхо бот(асинхронный)

from EasyGram.Async import AsyncBot, types

bot = AsyncBot('Token here')

@bot.message(content_types='text')
async def echo_bot(message: types.Message):
	await message.answer(message.text)

bot.executor()

Бот рандомайзер(синхронный):

from EasyGram import SyncBot, types
from random import randint

bot = SyncBot('Token here')

@bot.message(commands='start')
def start(message: types.Message):
	#Делаем маленькую кнопку
	button = types.ReplyKeyboardMarkup(resize_keyboard=True)
	button.add('От 1 до 10')
	
	message.answer('Привет!', reply_markup=button)

@bot.message(lambda message: message.text == 'От 1 до 10')
def random_number(message: types.Message):
	message.answer(f'Тебе выпало: {randint(1, 10)}!')

bot.polling()

Бот рандомайзер(асинхронный)

from EasyGram.Async import AsyncBot, types
from random import randint

bot = AsyncBot('Token here')

@bot.message(commands='start')
async def start(message: types.Message):
	#Делаем маленькую кнопку
	button = types.ReplyKeyboardMarkup(resize_keyboard=True)
	button.add('От 1 до 10')
	
	await message.answer('Привет!', reply_markup=button)

@bot.message(lambda message: message.text == 'От 1 до 10')
async def random_number(message: types.Message):
	await message.answer(f'Тебе выпало: {randint(1, 10)}!')

bot.executor()

Что нового?

С новой версии 0.0.3 добавилось:

  • Добавился метод в классе SyncBot: start_polling()
  • Добавлен класс Poll в types `ах
  • Переименован класс InputPollOption на PollOption для удобства и схожести с именами как в Telegram API
  • Добавлен обработчик poll:

Пример:

from EasyGram import SyncBot, types

bot = ...

# Все опросы
@bot.poll()
def all_polls(poll: types.Poll):
    print(poll) # Вывод словаря в строки

bot.start_polling()
  • Исправлены ошибки в EasyGram.Async
  • Добавлены методы edit в объектах Message
  • Добавлен класс StateRegExp в EasyGram.state:

Пример:

from EasyGram import SyncBot, types
from EasyGram.state import State, StatesGroup, StateRegExp

bot = ...

class States(StatesGroup):
    room = State()

@bot.message(commands='start')
def start(message: types.Message):
    message.answer('Привет, введи своё имя.')
    States.room.set_state(message.chat.id, message.from_user.id, 'Enter name')

@bot.message(state=StateRegExp(States.room, 'Enter name'))
def entered_name(message: types.Message, data: str):
    message.reply(f'Твоё имя: {message.text}')
    States.room.remove_state(message.chat.id, message.from_user.id)

bot.polling()
  • Добавлен метод query_next_step_handler, схож с next_step_handler

Что добавить ещё?

Связаться:

  • 📞💌Telegram channel: Channel

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

easygram-0.0.3.tar.gz (23.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

EasyGram-0.0.3-py3-none-any.whl (26.9 kB view details)

Uploaded Python 3

File details

Details for the file easygram-0.0.3.tar.gz.

File metadata

  • Download URL: easygram-0.0.3.tar.gz
  • Upload date:
  • Size: 23.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.11.0

File hashes

Hashes for easygram-0.0.3.tar.gz
Algorithm Hash digest
SHA256 016822a158ce2d160399543999c75dddcd2ad0fa087c6cbf5d6365880039d824
MD5 912b52298cfd3f7d760abf28bf6f83e9
BLAKE2b-256 b4e6ed6c773c3f336413d8524ff390d364ee8af4fb95e491c728352f267f8707

See more details on using hashes here.

File details

Details for the file EasyGram-0.0.3-py3-none-any.whl.

File metadata

  • Download URL: EasyGram-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 26.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.11.0

File hashes

Hashes for EasyGram-0.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 d78c3a93a18b45a4e8b9230180a8ef8e4942f16dbfcecf9a3565990687a9d501
MD5 47c3606c2e2e976beecff2b120130780
BLAKE2b-256 69f15e8b0c14e15e99b8955b4c8c1428b5a823dd7ac76ca91164a629a90be019

See more details on using hashes here.

Supported by

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