Класс на отписку от Webhook
This commit is contained in:
parent
9010c697f4
commit
b69713f996
54
maxapi/methods/unsubscribe_webhook.py
Normal file
54
maxapi/methods/unsubscribe_webhook.py
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
from typing import TYPE_CHECKING
|
||||||
|
|
||||||
|
from ..methods.types.unsubscribed import Unsubscribed
|
||||||
|
|
||||||
|
from ..enums.http_method import HTTPMethod
|
||||||
|
from ..enums.api_path import ApiPath
|
||||||
|
|
||||||
|
from ..connection.base import BaseConnection
|
||||||
|
|
||||||
|
|
||||||
|
if TYPE_CHECKING:
|
||||||
|
from ..bot import Bot
|
||||||
|
|
||||||
|
|
||||||
|
class UnsubscribeWebhook(BaseConnection):
|
||||||
|
|
||||||
|
"""
|
||||||
|
Отписывает бота от получения обновлений через WebHook. После вызова этого метода бот перестает получать уведомления о новых событиях, и доступна доставка уведомлений через API с длительным опросом.
|
||||||
|
|
||||||
|
Args:
|
||||||
|
bot (Bot): Экземпляр бота для выполнения запроса.
|
||||||
|
url (str): URL, который нужно удалить из подписок на WebHook
|
||||||
|
"""
|
||||||
|
|
||||||
|
def __init__(
|
||||||
|
self,
|
||||||
|
bot: 'Bot',
|
||||||
|
url: str,
|
||||||
|
):
|
||||||
|
self.bot = bot
|
||||||
|
self.url = url
|
||||||
|
|
||||||
|
async def fetch(self) -> Unsubscribed:
|
||||||
|
|
||||||
|
"""
|
||||||
|
Отправляет запрос на подписку бота на получение обновлений через WebHook
|
||||||
|
|
||||||
|
Returns:
|
||||||
|
Unsubscribed: Объект с информацией об операции
|
||||||
|
"""
|
||||||
|
|
||||||
|
if self.bot is None:
|
||||||
|
raise RuntimeError('Bot не инициализирован')
|
||||||
|
|
||||||
|
params = self.bot.params.copy()
|
||||||
|
|
||||||
|
params['url'] = self.url
|
||||||
|
|
||||||
|
return await super().request(
|
||||||
|
method=HTTPMethod.DELETE,
|
||||||
|
path=ApiPath.SUBSCRIPTIONS,
|
||||||
|
model=Unsubscribed,
|
||||||
|
params=params,
|
||||||
|
)
|
Loading…
x
Reference in New Issue
Block a user