mirror of
https://github.com/famedly/ansible-collection-matrix
synced 2025-01-10 16:48:43 +00:00
118 lines
4.4 KiB
Python
118 lines
4.4 KiB
Python
from __future__ import annotations
|
|
|
|
from typing import Union, Optional, Sequence, Dict, Any
|
|
|
|
from nio import RoomBanError, RoomBanResponse, \
|
|
RoomCreateResponse, RoomCreateError, \
|
|
RoomGetStateResponse, RoomGetStateError, \
|
|
RoomInviteResponse, RoomInviteError, \
|
|
JoinResponse, JoinError, \
|
|
JoinedRoomsResponse, JoinedRoomsError, \
|
|
RoomKickResponse, RoomKickError, \
|
|
RoomResolveAliasError, RoomResolveAliasResponse, \
|
|
RoomSendResponse, RoomSendError, \
|
|
RoomUnbanResponse, RoomUnbanError, \
|
|
RoomGetStateEventResponse, RoomGetStateEventError, \
|
|
RoomPutStateResponse, RoomPutStateError
|
|
from nio.api import RoomVisibility, RoomPreset
|
|
|
|
|
|
class RoomBan:
|
|
async def room_ban(self,
|
|
room_id: str,
|
|
user_id: str,
|
|
reason: Optional[str] = None) -> Union[RoomBanResponse, RoomBanError]:
|
|
return RoomBanError(message="Mocked failure")
|
|
|
|
|
|
class RoomCreate:
|
|
async def room_create(
|
|
self,
|
|
visibility: RoomVisibility = RoomVisibility.private,
|
|
alias: Optional[str] = None,
|
|
name: Optional[str] = None,
|
|
topic: Optional[str] = None,
|
|
room_version: Optional[str] = None,
|
|
federate: bool = True,
|
|
is_direct: bool = False,
|
|
preset: Optional[RoomPreset] = None,
|
|
invite: Sequence[str] = (),
|
|
initial_state: Sequence[Dict[str, Any]] = (),
|
|
power_level_override: Optional[Dict[str, Any]] = None,
|
|
predecessor: Optional[Dict[str, Any]] = None,
|
|
space: bool = False,
|
|
) -> Union[RoomCreateResponse, RoomCreateError]:
|
|
room_id = self.room_sim.create_room(alias=alias)
|
|
return RoomCreateError(message="Mocked failure")
|
|
|
|
|
|
class RoomGetState:
|
|
async def room_get_state(self,
|
|
room_id: str) -> Union[RoomGetStateResponse, RoomGetStateError]:
|
|
return RoomGetStateError(message="Mocked failure")
|
|
|
|
|
|
class RoomPutState:
|
|
async def room_put_state(self,
|
|
room_id: str,
|
|
event_type: str,
|
|
content: Dict[Any, Any],
|
|
state_key: str = "") -> Union[RoomPutStateResponse, RoomPutStateError]:
|
|
return RoomPutStateError(room_id=room_id, message="Mocked failure")
|
|
|
|
|
|
class RoomGetStateEvent:
|
|
async def room_get_state_event(self,
|
|
room_id: str,
|
|
event_type: str,
|
|
state_key: str = "") -> Union[RoomGetStateEventResponse, RoomGetStateEventError]:
|
|
return RoomGetStateEventError(room_id=room_id, message="Mocked failure")
|
|
|
|
|
|
class RoomInvite:
|
|
async def room_invite(self,
|
|
room_id: str,
|
|
user_id: str) -> Union[RoomInviteResponse, RoomInviteError]:
|
|
return RoomInviteError(message="Mocked failure")
|
|
|
|
|
|
class RoomJoin:
|
|
async def join(self, room_id: str) -> Union[JoinResponse, JoinError]:
|
|
self.client_sim.join(room_id)
|
|
return JoinError(message="Mocked failure")
|
|
|
|
|
|
class RoomJoinedRooms:
|
|
async def joined_rooms(self) -> Union[JoinedRoomsResponse, JoinedRoomsError]:
|
|
return JoinedRoomsError(message="Mocked failure")
|
|
|
|
|
|
class RoomKick:
|
|
async def room_kick(self,
|
|
room_id: str,
|
|
user_id: str,
|
|
reason: Optional[str] = None) -> Union[RoomKickResponse, RoomKickError]:
|
|
return RoomKickError(message="Mocked failure")
|
|
|
|
|
|
class RoomResolveAlias:
|
|
async def room_resolve_alias(self,
|
|
room_alias: str) -> Union[RoomResolveAliasResponse, RoomResolveAliasError]:
|
|
return RoomResolveAliasError(message="Mocked failure")
|
|
|
|
|
|
class RoomSend:
|
|
async def room_send(self,
|
|
room_id: str,
|
|
message_type: str,
|
|
content: Dict[Any, Any],
|
|
tx_id: Optional[str] = None,
|
|
ignore_unverified_devices: bool = False) -> Union[RoomSendResponse, RoomSendError]:
|
|
return RoomSendError(room_id=room_id, message="Mocked failure")
|
|
|
|
|
|
class RoomUnban:
|
|
async def room_unban(self,
|
|
room_id: str,
|
|
user_id: str) -> Union[RoomUnbanResponse, RoomUnbanError]:
|
|
return RoomUnbanError(message="Mocked failure")
|