feat: channel sub

This commit is contained in:
2026-08-20 10:52:40 +07:00
parent 04be991865
commit 7031ed4d46
6 changed files with 75 additions and 13 deletions

View File

@@ -3,6 +3,12 @@ import json
from typing import Any
import phonenumbers
from aiogram.types import (
ChatMemberAdministrator,
ChatMemberMember,
ChatMemberOwner,
ResultChatMemberUnion,
)
from phonenumbers import NumberParseException
@@ -26,3 +32,10 @@ def b64_to_dict(payload: str) -> dict["str", Any]:
payload += padding
json_bytes = base64.urlsafe_b64decode(payload)
return json.loads(json_bytes.decode("utf-8"))
def is_member(chatmember: ResultChatMemberUnion):
return any([
isinstance(chatmember, ChatMemberOwner),
isinstance(chatmember, ChatMemberAdministrator),
isinstance(chatmember, ChatMemberMember),
])