Boltalka / bot.py
Adeptih's picture
Create bot.py
ffb9933 verified
raw
history blame
1.88 kB
import os
import logging
import requests
from telegram import Update
from telegram.ext import Application, MessageHandler, filters, ContextTypes
# Настройка логов
logging.basicConfig(
format="%(asctime)s - %(name)s - %(levelname)s - %(message)s",
level=logging.INFO
)
# URL вашего Hugging Face Space
API_URL = "https://ваш_username-ваш_spacename.hf.space/chat"
async def handle_message(update: Update, context: ContextTypes.DEFAULT_TYPE):
"""Обработка входящих сообщений"""
user_message = update.message.text
# Проверяем, что сообщение не пустое
if not user_message.strip():
await update.message.reply_text("Вы отправили пустое сообщение 😅")
return
try:
# Отправляем запрос к Hugging Face API
response = requests.post(API_URL, json={"message": user_message})
if response.status_code == 200:
bot_response = response.json().get("response", "Я не знаю, что ответить 😅")
else:
bot_response = "Упс, я сломался... Попробуй еще раз 😅"
await update.message.reply_text(bot_response)
except Exception as e:
await update.message.reply_text("Упс, я сломался... Попробуй еще раз 😅")
logging.error(f"Ошибка: {e}")
if __name__ == "__main__":
# Создаем приложение бота
application = Application.builder().token(os.environ['TELEGRAM_TOKEN']).build()
# Добавляем обработчик всех текстовых сообщений
application.add_handler(MessageHandler(filters.TEXT & ~filters.COMMAND, handle_message))
# Запускаем бота
application.run_polling()