mirror of
https://github.com/aiogram/aiogram.git
synced 2025-12-16 12:07:13 +00:00
Add ChatMember
This commit is contained in:
parent
cc8511284f
commit
a703fc9587
1 changed files with 34 additions and 0 deletions
34
aiogram/types/chat_member.py
Normal file
34
aiogram/types/chat_member.py
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
from . import Deserializable
|
||||
|
||||
|
||||
class ChatMember(Deserializable):
|
||||
__slots__ = ('user', 'status')
|
||||
|
||||
def __init__(self, user, status):
|
||||
self.user = user
|
||||
self.status = status
|
||||
|
||||
@classmethod
|
||||
def de_json(cls, raw_data):
|
||||
raw_data = cls.check_json(raw_data)
|
||||
|
||||
user = raw_data.get('user')
|
||||
status = raw_data.get('status')
|
||||
|
||||
return ChatMember(user, status)
|
||||
|
||||
|
||||
class ChatMemberStatus:
|
||||
CREATOR = 'creator'
|
||||
ADMINISTRATOR = 'administrator'
|
||||
MEMBER = 'member'
|
||||
LEFT = 'left'
|
||||
KICKED = 'kicked'
|
||||
|
||||
@classmethod
|
||||
def is_admin(cls, role):
|
||||
return role in [cls.ADMINISTRATOR, cls.CREATOR]
|
||||
|
||||
@classmethod
|
||||
def is_member(cls, role):
|
||||
return role in [cls.MEMBER, cls.ADMINISTRATOR, cls.CREATOR]
|
||||
Loading…
Add table
Add a link
Reference in a new issue