Files
fckbot/bots/handlers/subscription_handler.py
Markov Andrey c82cb17a49 Add new file
2026-06-30 12:36:45 +00:00

30 lines
1.3 KiB
Python

# -*- coding: utf-8 -*-
"""
Обработчик подписок (roster subscription requests).
Автоматически одобряет все входящие запросы и отправляет встречную подписку.
"""
import logging
logger = logging.getLogger(__name__)
class SubscriptionHandler:
"""Автоматически принимает все запросы на подписку (для упрощения)."""
def __init__(self, bot):
self.bot = bot
async def handle_subscription(self, presence):
"""
Обработчик события roster_subscription_request.
Автоматически одобряет и подписывается в ответ.
"""
jid = presence['from'].bare
logger.info(f"Запрос подписки от {jid}, одобряем.")
# Отправляем разрешение на подписку (пользователь может видеть статус бота)
self.bot.send_presence(pto=jid, ptype='subscribed')
# Отправляем встречную подписку (бот будет видеть статус пользователя)
self.bot.send_presence(pto=jid, ptype='subscribe')