init commit
This commit is contained in:
39
lottery/bot/utils.py
Normal file
39
lottery/bot/utils.py
Normal file
@@ -0,0 +1,39 @@
|
||||
# bot/utils.py
|
||||
from telegram import Bot
|
||||
from django.conf import settings
|
||||
from telegram import Bot
|
||||
from bot.models import BotConfig
|
||||
from django.core.exceptions import ImproperlyConfigured
|
||||
|
||||
def create_bot_instance():
|
||||
"""
|
||||
Получает настройки бота из БД и создаёт экземпляр Telegram Bot.
|
||||
"""
|
||||
config = BotConfig.objects.first() # предполагается, что конфигурация одна
|
||||
if not config:
|
||||
raise ImproperlyConfigured("Настройки бота (BotConfig) не сконфигурированы в базе данных.")
|
||||
|
||||
# Можно дополнительно использовать config.channel_id и config.bot_name при необходимости.
|
||||
bot = Bot(token=config.bot_token)
|
||||
return bot
|
||||
|
||||
|
||||
def notify_user(binding_request, approved=True):
|
||||
bot_token = settings.BOT_CONFIG.bot_token # можно использовать модель BotConfig или настройку из settings
|
||||
bot = Bot(token=bot_token)
|
||||
message = "Ваша заявка на привязку успешно подтверждена!" if approved else "Ваша заявка на привязку отклонена."
|
||||
try:
|
||||
bot.send_message(chat_id=binding_request.telegram_chat_id, text=message)
|
||||
except Exception as e:
|
||||
# Обработка ошибок отправки сообщения
|
||||
print(f"Ошибка уведомления: {e}")
|
||||
|
||||
|
||||
# Пример использования в точке входа приложения:
|
||||
if __name__ == '__main__':
|
||||
# Предполагается, что Django уже настроен (например, через manage.py shell или management command)
|
||||
bot = create_bot_instance()
|
||||
# Теперь можно использовать объект bot для отправки сообщений, обработки обновлений и т.д.
|
||||
print(f"Бот {bot.name} успешно создан!")
|
||||
|
||||
|
||||
Reference in New Issue
Block a user