add simple invite policies

This commit is contained in:
histausse 2021-10-04 16:10:35 +02:00
parent ade9615a74
commit 19cc22a479
Signed by: histausse
GPG key ID: 67486F107F62E9E9

View file

@ -0,0 +1,45 @@
"""
InvitePolicy class:
InvitePolicy object are use to chose whether to accept or decline
an invite to a room.
"""
from abc import (
ABC,
abstractmethod
)
import nio
class InvitePolicy(ABC):
"""
Class used by Client to chose whether to accept of decline an invite.
"""
@abstractmethod
await def accept_invite(
self,
invite: nio.responses.InviteInfo
)->bool:
pass
class DeclineAll(InvitePolicy):
"""
Decline all invitations.
"""
await def accept_invite(
self,
invite: nio.responses.InviteInfo
)->bool:
return False
class AcceptAll(InvitePolicy):
"""
Accept all invitations.
"""
await def accept_invite(
self,
invite: nio.responses.InviteInfo
)->bool:
return True