Skip to main content

Async/sync library for sending notifications

Project description

Notifier Craft

Notifier Craft — это мощная библиотека для Python, предназначенный для работы с уведомлениями. Она предоставляет как синхронные, так и асинхронные методы для отправки уведомлений через различные каналы. На данный момент поддерживаются уведомления через Telegram-ботов (как синхронно с помощью Telebot, так и асинхронно с помощью aiogram) и через электронную почту (с использованием smtplib). В будущем планируется добавить поддержку Telegram userbot, Discord-ботов, VK-ботов, а также рассылку SMS.

Установка

  • Установка, используя пакетный менеджер pip
pip install notifier-craft
  • Установка с GitHub
pip install git+https://github.com/marakhd/notifier-craft

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

Синхронные методы

Пример для иcпользования с синхронными методами

from notifiercraft import CreateClient, Telegram, Email # Импортируем Client и Senders

tg = Telegram(
    token="6804851619:AAElnF-gnZ5_X9rDZ6LiJvDODgQG2CURvcA"
)

# Любой sender имеет метод send_message для отправки без создания клиента, клиент нужен для удобного управления
# tg.send_message(chat_id=0123456,
#     text="test",
#     parse_mode = "HTML",)

email = Email(
    host="smtp.gmail.com",
    port=587,
    login="example@gmail.com",
    passw="passw"
)
client = CreateClient(
    tg,
    email
)

client.send.telegram(chat_id=2075302695, text="Hello1") # Отправка через Email
client.send.email(email="marakin09@mail.ru", text="Hello1", subject="subject") # Отправка через Telegram
client.send.all(chat_id=2075302695, email="marakin09@mail.ru", text="Hello1", subject_email="subject") # Отправка всеми способами

Асинхронные методы

Пример для иcпользования с асинхронными методами

from notifiercraft import CreateAsyncClient, AsyncTelegram, AsyncEmail # Импортируем AsyncClient и AsyncSenders
import asyncio

tg = AsyncTelegram(
    token="6804851619:AAElnF-gnZ5_X9rDZ6LiJvDODgQG2CURvcA"
)

# Любой sender имеет метод send_message для отправки без создания клиента, клиент нужен для удобного управления
# await tg.send_message(chat_id=0123456,
#     text="test",
#     parse_mode = "HTML",)


email = AsyncEmail(
    host="smtp.gmail.com",
    port=587,
    login="example@gmail.com",
    passw="password"
)
client = CreateAsyncClient(
    tg,
    email
)

async def main():
    await client.send.telegram(chat_id=2075302695, text="AsyncHello1") # Отправка через Email
    await client.send.email(email="marakin09@mail.ru", text="AsyncHello1", subject="Asyncsubject") # Отправка через Telegram
    await client.send.all(chat_id=2075302695, email="marakin09@mail.ru", text="AsyncHello1", subject_email="Asyncsubject") # Отправка всеми способами
    await tg.close() # Закрываем сессию
    
asyncio.run(main())

Планируемые обновления

В ближайших обновлениях планируется добавление следующих возможностей:

  • Поддержка Telegram userbot
  • Интеграция с Discord-ботами
  • Поддержка VK-ботов
  • Отправка SMS

Лицензия

Этот проект распространяется под лицензией MIT License. См. LICENSE для подробностей.

Контрибьюции

Если вы хотите внести изменения или улучшения в проект, пожалуйста, создайте Pull Request или откройте Issue в репозитории.


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

notifier_craft-0.1.0.tar.gz (5.1 kB view details)

Uploaded Source

Built Distribution

notifier_craft-0.1.0-py3-none-any.whl (7.2 kB view details)

Uploaded Python 3

File details

Details for the file notifier_craft-0.1.0.tar.gz.

File metadata

  • Download URL: notifier_craft-0.1.0.tar.gz
  • Upload date:
  • Size: 5.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.2 Windows/10

File hashes

Hashes for notifier_craft-0.1.0.tar.gz
Algorithm Hash digest
SHA256 d5ad9a0c23f28dbd0fe76c0009b9e30460bcc497df360034841d7c44267511d1
MD5 b15336a65b108eef3515900302eff823
BLAKE2b-256 c599876104360f9af7b5af2e73aec84935e14c3d81e0b1898aeb5147103c9822

See more details on using hashes here.

File details

Details for the file notifier_craft-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: notifier_craft-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 7.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.2 Windows/10

File hashes

Hashes for notifier_craft-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 848613fa71ce591f86d5726b386d3e76bde288078317d403e37bc8cec26df550
MD5 3e5884edbac772bd926b5418c1791de7
BLAKE2b-256 1cfb1cbd0b59ef2c767c718fb71c094956d9a9b6c7bcef13f99e90b6304ccafe

See more details on using hashes here.

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