rooms_connect.py 70 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426
  1. # -*- coding: utf-8 -*-
  2. # Generated by https://github.com/connectrpc/connect-python. DO NOT EDIT!
  3. # source: chatto/api/v1/rooms.proto
  4. from collections.abc import AsyncGenerator, AsyncIterator, Iterable, Iterator, Mapping
  5. from typing import Protocol
  6. from connectrpc.client import ConnectClient, ConnectClientSync
  7. from connectrpc.code import Code
  8. from connectrpc.compression import Compression
  9. from connectrpc.errors import ConnectError
  10. from connectrpc.interceptor import Interceptor, InterceptorSync
  11. from connectrpc.method import IdempotencyLevel, MethodInfo
  12. from connectrpc.request import Headers, RequestContext
  13. from connectrpc.server import ConnectASGIApplication, ConnectWSGIApplication, Endpoint, EndpointSync
  14. import chatto.api.v1.member_directory_pb2 as chatto_dot_api_dot_v1_dot_member__directory__pb2
  15. import chatto.api.v1.read_state_pb2 as chatto_dot_api_dot_v1_dot_read__state__pb2
  16. import chatto.api.v1.room_timeline_pb2 as chatto_dot_api_dot_v1_dot_room__timeline__pb2
  17. import chatto.api.v1.rooms_pb2 as chatto_dot_api_dot_v1_dot_rooms__pb2
  18. class RoomService(Protocol):
  19. async def create_room(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.CreateRoomRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.CreateRoomResponse:
  20. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  21. async def update_room(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateRoomRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateRoomResponse:
  22. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  23. async def archive_room(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.ArchiveRoomRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.ArchiveRoomResponse:
  24. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  25. async def unarchive_room(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.UnarchiveRoomRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.UnarchiveRoomResponse:
  26. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  27. async def join_room(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomResponse:
  28. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  29. async def join_room_group(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomGroupRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomGroupResponse:
  30. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  31. async def start_d_m(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.StartDMRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.StartDMResponse:
  32. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  33. async def leave_room(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.LeaveRoomRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.LeaveRoomResponse:
  34. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  35. async def list_members(self, request: chatto_dot_api_dot_v1_dot_member__directory__pb2.ListRoomMembersRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_member__directory__pb2.ListRoomMembersResponse:
  36. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  37. async def get_member(self, request: chatto_dot_api_dot_v1_dot_member__directory__pb2.GetRoomMemberRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_member__directory__pb2.GetRoomMemberResponse:
  38. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  39. async def batch_get_members(self, request: chatto_dot_api_dot_v1_dot_member__directory__pb2.BatchGetRoomMembersRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_member__directory__pb2.BatchGetRoomMembersResponse:
  40. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  41. async def add_member(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.AddMemberRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.AddMemberResponse:
  42. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  43. async def remove_member(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.RemoveMemberRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.RemoveMemberResponse:
  44. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  45. async def list_bans(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.ListBansRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.ListBansResponse:
  46. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  47. async def list_room_attachments(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.ListRoomAttachmentsRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.ListRoomAttachmentsResponse:
  48. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  49. async def update_typing_indicator(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateTypingIndicatorRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateTypingIndicatorResponse:
  50. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  51. async def get_room_events(self, request: chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsResponse:
  52. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  53. async def get_room_events_around(self, request: chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsAroundRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsAroundResponse:
  54. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  55. async def mark_room_as_read(self, request: chatto_dot_api_dot_v1_dot_read__state__pb2.MarkRoomAsReadRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_read__state__pb2.MarkRoomAsReadResponse:
  56. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  57. async def ban_member(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.BanMemberRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.BanMemberResponse:
  58. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  59. async def unban_member(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.UnbanMemberRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.UnbanMemberResponse:
  60. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  61. class RoomServiceASGIApplication(ConnectASGIApplication[RoomService]):
  62. def __init__(self, service: RoomService | AsyncGenerator[RoomService], *, interceptors: Iterable[Interceptor]=(), read_max_bytes: int | None = None, compressions: Iterable[Compression] | None = None) -> None:
  63. super().__init__(
  64. service=service,
  65. endpoints=lambda svc: {
  66. "/chatto.api.v1.RoomService/CreateRoom": Endpoint.unary(
  67. method=MethodInfo(
  68. name="CreateRoom",
  69. service_name="chatto.api.v1.RoomService",
  70. input=chatto_dot_api_dot_v1_dot_rooms__pb2.CreateRoomRequest,
  71. output=chatto_dot_api_dot_v1_dot_rooms__pb2.CreateRoomResponse,
  72. idempotency_level=IdempotencyLevel.UNKNOWN,
  73. ),
  74. function=svc.create_room,
  75. ),
  76. "/chatto.api.v1.RoomService/UpdateRoom": Endpoint.unary(
  77. method=MethodInfo(
  78. name="UpdateRoom",
  79. service_name="chatto.api.v1.RoomService",
  80. input=chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateRoomRequest,
  81. output=chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateRoomResponse,
  82. idempotency_level=IdempotencyLevel.UNKNOWN,
  83. ),
  84. function=svc.update_room,
  85. ),
  86. "/chatto.api.v1.RoomService/ArchiveRoom": Endpoint.unary(
  87. method=MethodInfo(
  88. name="ArchiveRoom",
  89. service_name="chatto.api.v1.RoomService",
  90. input=chatto_dot_api_dot_v1_dot_rooms__pb2.ArchiveRoomRequest,
  91. output=chatto_dot_api_dot_v1_dot_rooms__pb2.ArchiveRoomResponse,
  92. idempotency_level=IdempotencyLevel.UNKNOWN,
  93. ),
  94. function=svc.archive_room,
  95. ),
  96. "/chatto.api.v1.RoomService/UnarchiveRoom": Endpoint.unary(
  97. method=MethodInfo(
  98. name="UnarchiveRoom",
  99. service_name="chatto.api.v1.RoomService",
  100. input=chatto_dot_api_dot_v1_dot_rooms__pb2.UnarchiveRoomRequest,
  101. output=chatto_dot_api_dot_v1_dot_rooms__pb2.UnarchiveRoomResponse,
  102. idempotency_level=IdempotencyLevel.UNKNOWN,
  103. ),
  104. function=svc.unarchive_room,
  105. ),
  106. "/chatto.api.v1.RoomService/JoinRoom": Endpoint.unary(
  107. method=MethodInfo(
  108. name="JoinRoom",
  109. service_name="chatto.api.v1.RoomService",
  110. input=chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomRequest,
  111. output=chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomResponse,
  112. idempotency_level=IdempotencyLevel.UNKNOWN,
  113. ),
  114. function=svc.join_room,
  115. ),
  116. "/chatto.api.v1.RoomService/JoinRoomGroup": Endpoint.unary(
  117. method=MethodInfo(
  118. name="JoinRoomGroup",
  119. service_name="chatto.api.v1.RoomService",
  120. input=chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomGroupRequest,
  121. output=chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomGroupResponse,
  122. idempotency_level=IdempotencyLevel.UNKNOWN,
  123. ),
  124. function=svc.join_room_group,
  125. ),
  126. "/chatto.api.v1.RoomService/StartDM": Endpoint.unary(
  127. method=MethodInfo(
  128. name="StartDM",
  129. service_name="chatto.api.v1.RoomService",
  130. input=chatto_dot_api_dot_v1_dot_rooms__pb2.StartDMRequest,
  131. output=chatto_dot_api_dot_v1_dot_rooms__pb2.StartDMResponse,
  132. idempotency_level=IdempotencyLevel.UNKNOWN,
  133. ),
  134. function=svc.start_d_m,
  135. ),
  136. "/chatto.api.v1.RoomService/LeaveRoom": Endpoint.unary(
  137. method=MethodInfo(
  138. name="LeaveRoom",
  139. service_name="chatto.api.v1.RoomService",
  140. input=chatto_dot_api_dot_v1_dot_rooms__pb2.LeaveRoomRequest,
  141. output=chatto_dot_api_dot_v1_dot_rooms__pb2.LeaveRoomResponse,
  142. idempotency_level=IdempotencyLevel.UNKNOWN,
  143. ),
  144. function=svc.leave_room,
  145. ),
  146. "/chatto.api.v1.RoomService/ListMembers": Endpoint.unary(
  147. method=MethodInfo(
  148. name="ListMembers",
  149. service_name="chatto.api.v1.RoomService",
  150. input=chatto_dot_api_dot_v1_dot_member__directory__pb2.ListRoomMembersRequest,
  151. output=chatto_dot_api_dot_v1_dot_member__directory__pb2.ListRoomMembersResponse,
  152. idempotency_level=IdempotencyLevel.UNKNOWN,
  153. ),
  154. function=svc.list_members,
  155. ),
  156. "/chatto.api.v1.RoomService/GetMember": Endpoint.unary(
  157. method=MethodInfo(
  158. name="GetMember",
  159. service_name="chatto.api.v1.RoomService",
  160. input=chatto_dot_api_dot_v1_dot_member__directory__pb2.GetRoomMemberRequest,
  161. output=chatto_dot_api_dot_v1_dot_member__directory__pb2.GetRoomMemberResponse,
  162. idempotency_level=IdempotencyLevel.UNKNOWN,
  163. ),
  164. function=svc.get_member,
  165. ),
  166. "/chatto.api.v1.RoomService/BatchGetMembers": Endpoint.unary(
  167. method=MethodInfo(
  168. name="BatchGetMembers",
  169. service_name="chatto.api.v1.RoomService",
  170. input=chatto_dot_api_dot_v1_dot_member__directory__pb2.BatchGetRoomMembersRequest,
  171. output=chatto_dot_api_dot_v1_dot_member__directory__pb2.BatchGetRoomMembersResponse,
  172. idempotency_level=IdempotencyLevel.UNKNOWN,
  173. ),
  174. function=svc.batch_get_members,
  175. ),
  176. "/chatto.api.v1.RoomService/AddMember": Endpoint.unary(
  177. method=MethodInfo(
  178. name="AddMember",
  179. service_name="chatto.api.v1.RoomService",
  180. input=chatto_dot_api_dot_v1_dot_rooms__pb2.AddMemberRequest,
  181. output=chatto_dot_api_dot_v1_dot_rooms__pb2.AddMemberResponse,
  182. idempotency_level=IdempotencyLevel.UNKNOWN,
  183. ),
  184. function=svc.add_member,
  185. ),
  186. "/chatto.api.v1.RoomService/RemoveMember": Endpoint.unary(
  187. method=MethodInfo(
  188. name="RemoveMember",
  189. service_name="chatto.api.v1.RoomService",
  190. input=chatto_dot_api_dot_v1_dot_rooms__pb2.RemoveMemberRequest,
  191. output=chatto_dot_api_dot_v1_dot_rooms__pb2.RemoveMemberResponse,
  192. idempotency_level=IdempotencyLevel.UNKNOWN,
  193. ),
  194. function=svc.remove_member,
  195. ),
  196. "/chatto.api.v1.RoomService/ListBans": Endpoint.unary(
  197. method=MethodInfo(
  198. name="ListBans",
  199. service_name="chatto.api.v1.RoomService",
  200. input=chatto_dot_api_dot_v1_dot_rooms__pb2.ListBansRequest,
  201. output=chatto_dot_api_dot_v1_dot_rooms__pb2.ListBansResponse,
  202. idempotency_level=IdempotencyLevel.UNKNOWN,
  203. ),
  204. function=svc.list_bans,
  205. ),
  206. "/chatto.api.v1.RoomService/ListRoomAttachments": Endpoint.unary(
  207. method=MethodInfo(
  208. name="ListRoomAttachments",
  209. service_name="chatto.api.v1.RoomService",
  210. input=chatto_dot_api_dot_v1_dot_rooms__pb2.ListRoomAttachmentsRequest,
  211. output=chatto_dot_api_dot_v1_dot_rooms__pb2.ListRoomAttachmentsResponse,
  212. idempotency_level=IdempotencyLevel.UNKNOWN,
  213. ),
  214. function=svc.list_room_attachments,
  215. ),
  216. "/chatto.api.v1.RoomService/UpdateTypingIndicator": Endpoint.unary(
  217. method=MethodInfo(
  218. name="UpdateTypingIndicator",
  219. service_name="chatto.api.v1.RoomService",
  220. input=chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateTypingIndicatorRequest,
  221. output=chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateTypingIndicatorResponse,
  222. idempotency_level=IdempotencyLevel.UNKNOWN,
  223. ),
  224. function=svc.update_typing_indicator,
  225. ),
  226. "/chatto.api.v1.RoomService/GetRoomEvents": Endpoint.unary(
  227. method=MethodInfo(
  228. name="GetRoomEvents",
  229. service_name="chatto.api.v1.RoomService",
  230. input=chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsRequest,
  231. output=chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsResponse,
  232. idempotency_level=IdempotencyLevel.UNKNOWN,
  233. ),
  234. function=svc.get_room_events,
  235. ),
  236. "/chatto.api.v1.RoomService/GetRoomEventsAround": Endpoint.unary(
  237. method=MethodInfo(
  238. name="GetRoomEventsAround",
  239. service_name="chatto.api.v1.RoomService",
  240. input=chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsAroundRequest,
  241. output=chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsAroundResponse,
  242. idempotency_level=IdempotencyLevel.UNKNOWN,
  243. ),
  244. function=svc.get_room_events_around,
  245. ),
  246. "/chatto.api.v1.RoomService/MarkRoomAsRead": Endpoint.unary(
  247. method=MethodInfo(
  248. name="MarkRoomAsRead",
  249. service_name="chatto.api.v1.RoomService",
  250. input=chatto_dot_api_dot_v1_dot_read__state__pb2.MarkRoomAsReadRequest,
  251. output=chatto_dot_api_dot_v1_dot_read__state__pb2.MarkRoomAsReadResponse,
  252. idempotency_level=IdempotencyLevel.UNKNOWN,
  253. ),
  254. function=svc.mark_room_as_read,
  255. ),
  256. "/chatto.api.v1.RoomService/BanMember": Endpoint.unary(
  257. method=MethodInfo(
  258. name="BanMember",
  259. service_name="chatto.api.v1.RoomService",
  260. input=chatto_dot_api_dot_v1_dot_rooms__pb2.BanMemberRequest,
  261. output=chatto_dot_api_dot_v1_dot_rooms__pb2.BanMemberResponse,
  262. idempotency_level=IdempotencyLevel.UNKNOWN,
  263. ),
  264. function=svc.ban_member,
  265. ),
  266. "/chatto.api.v1.RoomService/UnbanMember": Endpoint.unary(
  267. method=MethodInfo(
  268. name="UnbanMember",
  269. service_name="chatto.api.v1.RoomService",
  270. input=chatto_dot_api_dot_v1_dot_rooms__pb2.UnbanMemberRequest,
  271. output=chatto_dot_api_dot_v1_dot_rooms__pb2.UnbanMemberResponse,
  272. idempotency_level=IdempotencyLevel.UNKNOWN,
  273. ),
  274. function=svc.unban_member,
  275. ),
  276. },
  277. interceptors=interceptors,
  278. read_max_bytes=read_max_bytes,
  279. compressions=compressions,
  280. )
  281. @property
  282. def path(self) -> str:
  283. """Returns the URL path to mount the application to when serving multiple applications."""
  284. return "/chatto.api.v1.RoomService"
  285. class RoomServiceClient(ConnectClient):
  286. async def create_room(
  287. self,
  288. request: chatto_dot_api_dot_v1_dot_rooms__pb2.CreateRoomRequest,
  289. *,
  290. headers: Headers | Mapping[str, str] | None = None,
  291. timeout_ms: int | None = None,
  292. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.CreateRoomResponse:
  293. return await self.execute_unary(
  294. request=request,
  295. method=MethodInfo(
  296. name="CreateRoom",
  297. service_name="chatto.api.v1.RoomService",
  298. input=chatto_dot_api_dot_v1_dot_rooms__pb2.CreateRoomRequest,
  299. output=chatto_dot_api_dot_v1_dot_rooms__pb2.CreateRoomResponse,
  300. idempotency_level=IdempotencyLevel.UNKNOWN,
  301. ),
  302. headers=headers,
  303. timeout_ms=timeout_ms,
  304. )
  305. async def update_room(
  306. self,
  307. request: chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateRoomRequest,
  308. *,
  309. headers: Headers | Mapping[str, str] | None = None,
  310. timeout_ms: int | None = None,
  311. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateRoomResponse:
  312. return await self.execute_unary(
  313. request=request,
  314. method=MethodInfo(
  315. name="UpdateRoom",
  316. service_name="chatto.api.v1.RoomService",
  317. input=chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateRoomRequest,
  318. output=chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateRoomResponse,
  319. idempotency_level=IdempotencyLevel.UNKNOWN,
  320. ),
  321. headers=headers,
  322. timeout_ms=timeout_ms,
  323. )
  324. async def archive_room(
  325. self,
  326. request: chatto_dot_api_dot_v1_dot_rooms__pb2.ArchiveRoomRequest,
  327. *,
  328. headers: Headers | Mapping[str, str] | None = None,
  329. timeout_ms: int | None = None,
  330. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.ArchiveRoomResponse:
  331. return await self.execute_unary(
  332. request=request,
  333. method=MethodInfo(
  334. name="ArchiveRoom",
  335. service_name="chatto.api.v1.RoomService",
  336. input=chatto_dot_api_dot_v1_dot_rooms__pb2.ArchiveRoomRequest,
  337. output=chatto_dot_api_dot_v1_dot_rooms__pb2.ArchiveRoomResponse,
  338. idempotency_level=IdempotencyLevel.UNKNOWN,
  339. ),
  340. headers=headers,
  341. timeout_ms=timeout_ms,
  342. )
  343. async def unarchive_room(
  344. self,
  345. request: chatto_dot_api_dot_v1_dot_rooms__pb2.UnarchiveRoomRequest,
  346. *,
  347. headers: Headers | Mapping[str, str] | None = None,
  348. timeout_ms: int | None = None,
  349. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.UnarchiveRoomResponse:
  350. return await self.execute_unary(
  351. request=request,
  352. method=MethodInfo(
  353. name="UnarchiveRoom",
  354. service_name="chatto.api.v1.RoomService",
  355. input=chatto_dot_api_dot_v1_dot_rooms__pb2.UnarchiveRoomRequest,
  356. output=chatto_dot_api_dot_v1_dot_rooms__pb2.UnarchiveRoomResponse,
  357. idempotency_level=IdempotencyLevel.UNKNOWN,
  358. ),
  359. headers=headers,
  360. timeout_ms=timeout_ms,
  361. )
  362. async def join_room(
  363. self,
  364. request: chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomRequest,
  365. *,
  366. headers: Headers | Mapping[str, str] | None = None,
  367. timeout_ms: int | None = None,
  368. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomResponse:
  369. return await self.execute_unary(
  370. request=request,
  371. method=MethodInfo(
  372. name="JoinRoom",
  373. service_name="chatto.api.v1.RoomService",
  374. input=chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomRequest,
  375. output=chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomResponse,
  376. idempotency_level=IdempotencyLevel.UNKNOWN,
  377. ),
  378. headers=headers,
  379. timeout_ms=timeout_ms,
  380. )
  381. async def join_room_group(
  382. self,
  383. request: chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomGroupRequest,
  384. *,
  385. headers: Headers | Mapping[str, str] | None = None,
  386. timeout_ms: int | None = None,
  387. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomGroupResponse:
  388. return await self.execute_unary(
  389. request=request,
  390. method=MethodInfo(
  391. name="JoinRoomGroup",
  392. service_name="chatto.api.v1.RoomService",
  393. input=chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomGroupRequest,
  394. output=chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomGroupResponse,
  395. idempotency_level=IdempotencyLevel.UNKNOWN,
  396. ),
  397. headers=headers,
  398. timeout_ms=timeout_ms,
  399. )
  400. async def start_d_m(
  401. self,
  402. request: chatto_dot_api_dot_v1_dot_rooms__pb2.StartDMRequest,
  403. *,
  404. headers: Headers | Mapping[str, str] | None = None,
  405. timeout_ms: int | None = None,
  406. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.StartDMResponse:
  407. return await self.execute_unary(
  408. request=request,
  409. method=MethodInfo(
  410. name="StartDM",
  411. service_name="chatto.api.v1.RoomService",
  412. input=chatto_dot_api_dot_v1_dot_rooms__pb2.StartDMRequest,
  413. output=chatto_dot_api_dot_v1_dot_rooms__pb2.StartDMResponse,
  414. idempotency_level=IdempotencyLevel.UNKNOWN,
  415. ),
  416. headers=headers,
  417. timeout_ms=timeout_ms,
  418. )
  419. async def leave_room(
  420. self,
  421. request: chatto_dot_api_dot_v1_dot_rooms__pb2.LeaveRoomRequest,
  422. *,
  423. headers: Headers | Mapping[str, str] | None = None,
  424. timeout_ms: int | None = None,
  425. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.LeaveRoomResponse:
  426. return await self.execute_unary(
  427. request=request,
  428. method=MethodInfo(
  429. name="LeaveRoom",
  430. service_name="chatto.api.v1.RoomService",
  431. input=chatto_dot_api_dot_v1_dot_rooms__pb2.LeaveRoomRequest,
  432. output=chatto_dot_api_dot_v1_dot_rooms__pb2.LeaveRoomResponse,
  433. idempotency_level=IdempotencyLevel.UNKNOWN,
  434. ),
  435. headers=headers,
  436. timeout_ms=timeout_ms,
  437. )
  438. async def list_members(
  439. self,
  440. request: chatto_dot_api_dot_v1_dot_member__directory__pb2.ListRoomMembersRequest,
  441. *,
  442. headers: Headers | Mapping[str, str] | None = None,
  443. timeout_ms: int | None = None,
  444. ) -> chatto_dot_api_dot_v1_dot_member__directory__pb2.ListRoomMembersResponse:
  445. return await self.execute_unary(
  446. request=request,
  447. method=MethodInfo(
  448. name="ListMembers",
  449. service_name="chatto.api.v1.RoomService",
  450. input=chatto_dot_api_dot_v1_dot_member__directory__pb2.ListRoomMembersRequest,
  451. output=chatto_dot_api_dot_v1_dot_member__directory__pb2.ListRoomMembersResponse,
  452. idempotency_level=IdempotencyLevel.UNKNOWN,
  453. ),
  454. headers=headers,
  455. timeout_ms=timeout_ms,
  456. )
  457. async def get_member(
  458. self,
  459. request: chatto_dot_api_dot_v1_dot_member__directory__pb2.GetRoomMemberRequest,
  460. *,
  461. headers: Headers | Mapping[str, str] | None = None,
  462. timeout_ms: int | None = None,
  463. ) -> chatto_dot_api_dot_v1_dot_member__directory__pb2.GetRoomMemberResponse:
  464. return await self.execute_unary(
  465. request=request,
  466. method=MethodInfo(
  467. name="GetMember",
  468. service_name="chatto.api.v1.RoomService",
  469. input=chatto_dot_api_dot_v1_dot_member__directory__pb2.GetRoomMemberRequest,
  470. output=chatto_dot_api_dot_v1_dot_member__directory__pb2.GetRoomMemberResponse,
  471. idempotency_level=IdempotencyLevel.UNKNOWN,
  472. ),
  473. headers=headers,
  474. timeout_ms=timeout_ms,
  475. )
  476. async def batch_get_members(
  477. self,
  478. request: chatto_dot_api_dot_v1_dot_member__directory__pb2.BatchGetRoomMembersRequest,
  479. *,
  480. headers: Headers | Mapping[str, str] | None = None,
  481. timeout_ms: int | None = None,
  482. ) -> chatto_dot_api_dot_v1_dot_member__directory__pb2.BatchGetRoomMembersResponse:
  483. return await self.execute_unary(
  484. request=request,
  485. method=MethodInfo(
  486. name="BatchGetMembers",
  487. service_name="chatto.api.v1.RoomService",
  488. input=chatto_dot_api_dot_v1_dot_member__directory__pb2.BatchGetRoomMembersRequest,
  489. output=chatto_dot_api_dot_v1_dot_member__directory__pb2.BatchGetRoomMembersResponse,
  490. idempotency_level=IdempotencyLevel.UNKNOWN,
  491. ),
  492. headers=headers,
  493. timeout_ms=timeout_ms,
  494. )
  495. async def add_member(
  496. self,
  497. request: chatto_dot_api_dot_v1_dot_rooms__pb2.AddMemberRequest,
  498. *,
  499. headers: Headers | Mapping[str, str] | None = None,
  500. timeout_ms: int | None = None,
  501. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.AddMemberResponse:
  502. return await self.execute_unary(
  503. request=request,
  504. method=MethodInfo(
  505. name="AddMember",
  506. service_name="chatto.api.v1.RoomService",
  507. input=chatto_dot_api_dot_v1_dot_rooms__pb2.AddMemberRequest,
  508. output=chatto_dot_api_dot_v1_dot_rooms__pb2.AddMemberResponse,
  509. idempotency_level=IdempotencyLevel.UNKNOWN,
  510. ),
  511. headers=headers,
  512. timeout_ms=timeout_ms,
  513. )
  514. async def remove_member(
  515. self,
  516. request: chatto_dot_api_dot_v1_dot_rooms__pb2.RemoveMemberRequest,
  517. *,
  518. headers: Headers | Mapping[str, str] | None = None,
  519. timeout_ms: int | None = None,
  520. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.RemoveMemberResponse:
  521. return await self.execute_unary(
  522. request=request,
  523. method=MethodInfo(
  524. name="RemoveMember",
  525. service_name="chatto.api.v1.RoomService",
  526. input=chatto_dot_api_dot_v1_dot_rooms__pb2.RemoveMemberRequest,
  527. output=chatto_dot_api_dot_v1_dot_rooms__pb2.RemoveMemberResponse,
  528. idempotency_level=IdempotencyLevel.UNKNOWN,
  529. ),
  530. headers=headers,
  531. timeout_ms=timeout_ms,
  532. )
  533. async def list_bans(
  534. self,
  535. request: chatto_dot_api_dot_v1_dot_rooms__pb2.ListBansRequest,
  536. *,
  537. headers: Headers | Mapping[str, str] | None = None,
  538. timeout_ms: int | None = None,
  539. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.ListBansResponse:
  540. return await self.execute_unary(
  541. request=request,
  542. method=MethodInfo(
  543. name="ListBans",
  544. service_name="chatto.api.v1.RoomService",
  545. input=chatto_dot_api_dot_v1_dot_rooms__pb2.ListBansRequest,
  546. output=chatto_dot_api_dot_v1_dot_rooms__pb2.ListBansResponse,
  547. idempotency_level=IdempotencyLevel.UNKNOWN,
  548. ),
  549. headers=headers,
  550. timeout_ms=timeout_ms,
  551. )
  552. async def list_room_attachments(
  553. self,
  554. request: chatto_dot_api_dot_v1_dot_rooms__pb2.ListRoomAttachmentsRequest,
  555. *,
  556. headers: Headers | Mapping[str, str] | None = None,
  557. timeout_ms: int | None = None,
  558. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.ListRoomAttachmentsResponse:
  559. return await self.execute_unary(
  560. request=request,
  561. method=MethodInfo(
  562. name="ListRoomAttachments",
  563. service_name="chatto.api.v1.RoomService",
  564. input=chatto_dot_api_dot_v1_dot_rooms__pb2.ListRoomAttachmentsRequest,
  565. output=chatto_dot_api_dot_v1_dot_rooms__pb2.ListRoomAttachmentsResponse,
  566. idempotency_level=IdempotencyLevel.UNKNOWN,
  567. ),
  568. headers=headers,
  569. timeout_ms=timeout_ms,
  570. )
  571. async def update_typing_indicator(
  572. self,
  573. request: chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateTypingIndicatorRequest,
  574. *,
  575. headers: Headers | Mapping[str, str] | None = None,
  576. timeout_ms: int | None = None,
  577. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateTypingIndicatorResponse:
  578. return await self.execute_unary(
  579. request=request,
  580. method=MethodInfo(
  581. name="UpdateTypingIndicator",
  582. service_name="chatto.api.v1.RoomService",
  583. input=chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateTypingIndicatorRequest,
  584. output=chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateTypingIndicatorResponse,
  585. idempotency_level=IdempotencyLevel.UNKNOWN,
  586. ),
  587. headers=headers,
  588. timeout_ms=timeout_ms,
  589. )
  590. async def get_room_events(
  591. self,
  592. request: chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsRequest,
  593. *,
  594. headers: Headers | Mapping[str, str] | None = None,
  595. timeout_ms: int | None = None,
  596. ) -> chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsResponse:
  597. return await self.execute_unary(
  598. request=request,
  599. method=MethodInfo(
  600. name="GetRoomEvents",
  601. service_name="chatto.api.v1.RoomService",
  602. input=chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsRequest,
  603. output=chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsResponse,
  604. idempotency_level=IdempotencyLevel.UNKNOWN,
  605. ),
  606. headers=headers,
  607. timeout_ms=timeout_ms,
  608. )
  609. async def get_room_events_around(
  610. self,
  611. request: chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsAroundRequest,
  612. *,
  613. headers: Headers | Mapping[str, str] | None = None,
  614. timeout_ms: int | None = None,
  615. ) -> chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsAroundResponse:
  616. return await self.execute_unary(
  617. request=request,
  618. method=MethodInfo(
  619. name="GetRoomEventsAround",
  620. service_name="chatto.api.v1.RoomService",
  621. input=chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsAroundRequest,
  622. output=chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsAroundResponse,
  623. idempotency_level=IdempotencyLevel.UNKNOWN,
  624. ),
  625. headers=headers,
  626. timeout_ms=timeout_ms,
  627. )
  628. async def mark_room_as_read(
  629. self,
  630. request: chatto_dot_api_dot_v1_dot_read__state__pb2.MarkRoomAsReadRequest,
  631. *,
  632. headers: Headers | Mapping[str, str] | None = None,
  633. timeout_ms: int | None = None,
  634. ) -> chatto_dot_api_dot_v1_dot_read__state__pb2.MarkRoomAsReadResponse:
  635. return await self.execute_unary(
  636. request=request,
  637. method=MethodInfo(
  638. name="MarkRoomAsRead",
  639. service_name="chatto.api.v1.RoomService",
  640. input=chatto_dot_api_dot_v1_dot_read__state__pb2.MarkRoomAsReadRequest,
  641. output=chatto_dot_api_dot_v1_dot_read__state__pb2.MarkRoomAsReadResponse,
  642. idempotency_level=IdempotencyLevel.UNKNOWN,
  643. ),
  644. headers=headers,
  645. timeout_ms=timeout_ms,
  646. )
  647. async def ban_member(
  648. self,
  649. request: chatto_dot_api_dot_v1_dot_rooms__pb2.BanMemberRequest,
  650. *,
  651. headers: Headers | Mapping[str, str] | None = None,
  652. timeout_ms: int | None = None,
  653. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.BanMemberResponse:
  654. return await self.execute_unary(
  655. request=request,
  656. method=MethodInfo(
  657. name="BanMember",
  658. service_name="chatto.api.v1.RoomService",
  659. input=chatto_dot_api_dot_v1_dot_rooms__pb2.BanMemberRequest,
  660. output=chatto_dot_api_dot_v1_dot_rooms__pb2.BanMemberResponse,
  661. idempotency_level=IdempotencyLevel.UNKNOWN,
  662. ),
  663. headers=headers,
  664. timeout_ms=timeout_ms,
  665. )
  666. async def unban_member(
  667. self,
  668. request: chatto_dot_api_dot_v1_dot_rooms__pb2.UnbanMemberRequest,
  669. *,
  670. headers: Headers | Mapping[str, str] | None = None,
  671. timeout_ms: int | None = None,
  672. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.UnbanMemberResponse:
  673. return await self.execute_unary(
  674. request=request,
  675. method=MethodInfo(
  676. name="UnbanMember",
  677. service_name="chatto.api.v1.RoomService",
  678. input=chatto_dot_api_dot_v1_dot_rooms__pb2.UnbanMemberRequest,
  679. output=chatto_dot_api_dot_v1_dot_rooms__pb2.UnbanMemberResponse,
  680. idempotency_level=IdempotencyLevel.UNKNOWN,
  681. ),
  682. headers=headers,
  683. timeout_ms=timeout_ms,
  684. )
  685. class RoomServiceSync(Protocol):
  686. def create_room(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.CreateRoomRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.CreateRoomResponse:
  687. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  688. def update_room(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateRoomRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateRoomResponse:
  689. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  690. def archive_room(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.ArchiveRoomRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.ArchiveRoomResponse:
  691. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  692. def unarchive_room(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.UnarchiveRoomRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.UnarchiveRoomResponse:
  693. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  694. def join_room(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomResponse:
  695. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  696. def join_room_group(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomGroupRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomGroupResponse:
  697. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  698. def start_d_m(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.StartDMRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.StartDMResponse:
  699. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  700. def leave_room(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.LeaveRoomRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.LeaveRoomResponse:
  701. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  702. def list_members(self, request: chatto_dot_api_dot_v1_dot_member__directory__pb2.ListRoomMembersRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_member__directory__pb2.ListRoomMembersResponse:
  703. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  704. def get_member(self, request: chatto_dot_api_dot_v1_dot_member__directory__pb2.GetRoomMemberRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_member__directory__pb2.GetRoomMemberResponse:
  705. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  706. def batch_get_members(self, request: chatto_dot_api_dot_v1_dot_member__directory__pb2.BatchGetRoomMembersRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_member__directory__pb2.BatchGetRoomMembersResponse:
  707. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  708. def add_member(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.AddMemberRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.AddMemberResponse:
  709. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  710. def remove_member(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.RemoveMemberRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.RemoveMemberResponse:
  711. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  712. def list_bans(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.ListBansRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.ListBansResponse:
  713. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  714. def list_room_attachments(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.ListRoomAttachmentsRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.ListRoomAttachmentsResponse:
  715. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  716. def update_typing_indicator(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateTypingIndicatorRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateTypingIndicatorResponse:
  717. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  718. def get_room_events(self, request: chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsResponse:
  719. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  720. def get_room_events_around(self, request: chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsAroundRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsAroundResponse:
  721. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  722. def mark_room_as_read(self, request: chatto_dot_api_dot_v1_dot_read__state__pb2.MarkRoomAsReadRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_read__state__pb2.MarkRoomAsReadResponse:
  723. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  724. def ban_member(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.BanMemberRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.BanMemberResponse:
  725. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  726. def unban_member(self, request: chatto_dot_api_dot_v1_dot_rooms__pb2.UnbanMemberRequest, ctx: RequestContext) -> chatto_dot_api_dot_v1_dot_rooms__pb2.UnbanMemberResponse:
  727. raise ConnectError(Code.UNIMPLEMENTED, "Not implemented")
  728. class RoomServiceWSGIApplication(ConnectWSGIApplication):
  729. def __init__(self, service: RoomServiceSync, interceptors: Iterable[InterceptorSync]=(), read_max_bytes: int | None = None, compressions: Iterable[Compression] | None = None) -> None:
  730. super().__init__(
  731. endpoints={
  732. "/chatto.api.v1.RoomService/CreateRoom": EndpointSync.unary(
  733. method=MethodInfo(
  734. name="CreateRoom",
  735. service_name="chatto.api.v1.RoomService",
  736. input=chatto_dot_api_dot_v1_dot_rooms__pb2.CreateRoomRequest,
  737. output=chatto_dot_api_dot_v1_dot_rooms__pb2.CreateRoomResponse,
  738. idempotency_level=IdempotencyLevel.UNKNOWN,
  739. ),
  740. function=service.create_room,
  741. ),
  742. "/chatto.api.v1.RoomService/UpdateRoom": EndpointSync.unary(
  743. method=MethodInfo(
  744. name="UpdateRoom",
  745. service_name="chatto.api.v1.RoomService",
  746. input=chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateRoomRequest,
  747. output=chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateRoomResponse,
  748. idempotency_level=IdempotencyLevel.UNKNOWN,
  749. ),
  750. function=service.update_room,
  751. ),
  752. "/chatto.api.v1.RoomService/ArchiveRoom": EndpointSync.unary(
  753. method=MethodInfo(
  754. name="ArchiveRoom",
  755. service_name="chatto.api.v1.RoomService",
  756. input=chatto_dot_api_dot_v1_dot_rooms__pb2.ArchiveRoomRequest,
  757. output=chatto_dot_api_dot_v1_dot_rooms__pb2.ArchiveRoomResponse,
  758. idempotency_level=IdempotencyLevel.UNKNOWN,
  759. ),
  760. function=service.archive_room,
  761. ),
  762. "/chatto.api.v1.RoomService/UnarchiveRoom": EndpointSync.unary(
  763. method=MethodInfo(
  764. name="UnarchiveRoom",
  765. service_name="chatto.api.v1.RoomService",
  766. input=chatto_dot_api_dot_v1_dot_rooms__pb2.UnarchiveRoomRequest,
  767. output=chatto_dot_api_dot_v1_dot_rooms__pb2.UnarchiveRoomResponse,
  768. idempotency_level=IdempotencyLevel.UNKNOWN,
  769. ),
  770. function=service.unarchive_room,
  771. ),
  772. "/chatto.api.v1.RoomService/JoinRoom": EndpointSync.unary(
  773. method=MethodInfo(
  774. name="JoinRoom",
  775. service_name="chatto.api.v1.RoomService",
  776. input=chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomRequest,
  777. output=chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomResponse,
  778. idempotency_level=IdempotencyLevel.UNKNOWN,
  779. ),
  780. function=service.join_room,
  781. ),
  782. "/chatto.api.v1.RoomService/JoinRoomGroup": EndpointSync.unary(
  783. method=MethodInfo(
  784. name="JoinRoomGroup",
  785. service_name="chatto.api.v1.RoomService",
  786. input=chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomGroupRequest,
  787. output=chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomGroupResponse,
  788. idempotency_level=IdempotencyLevel.UNKNOWN,
  789. ),
  790. function=service.join_room_group,
  791. ),
  792. "/chatto.api.v1.RoomService/StartDM": EndpointSync.unary(
  793. method=MethodInfo(
  794. name="StartDM",
  795. service_name="chatto.api.v1.RoomService",
  796. input=chatto_dot_api_dot_v1_dot_rooms__pb2.StartDMRequest,
  797. output=chatto_dot_api_dot_v1_dot_rooms__pb2.StartDMResponse,
  798. idempotency_level=IdempotencyLevel.UNKNOWN,
  799. ),
  800. function=service.start_d_m,
  801. ),
  802. "/chatto.api.v1.RoomService/LeaveRoom": EndpointSync.unary(
  803. method=MethodInfo(
  804. name="LeaveRoom",
  805. service_name="chatto.api.v1.RoomService",
  806. input=chatto_dot_api_dot_v1_dot_rooms__pb2.LeaveRoomRequest,
  807. output=chatto_dot_api_dot_v1_dot_rooms__pb2.LeaveRoomResponse,
  808. idempotency_level=IdempotencyLevel.UNKNOWN,
  809. ),
  810. function=service.leave_room,
  811. ),
  812. "/chatto.api.v1.RoomService/ListMembers": EndpointSync.unary(
  813. method=MethodInfo(
  814. name="ListMembers",
  815. service_name="chatto.api.v1.RoomService",
  816. input=chatto_dot_api_dot_v1_dot_member__directory__pb2.ListRoomMembersRequest,
  817. output=chatto_dot_api_dot_v1_dot_member__directory__pb2.ListRoomMembersResponse,
  818. idempotency_level=IdempotencyLevel.UNKNOWN,
  819. ),
  820. function=service.list_members,
  821. ),
  822. "/chatto.api.v1.RoomService/GetMember": EndpointSync.unary(
  823. method=MethodInfo(
  824. name="GetMember",
  825. service_name="chatto.api.v1.RoomService",
  826. input=chatto_dot_api_dot_v1_dot_member__directory__pb2.GetRoomMemberRequest,
  827. output=chatto_dot_api_dot_v1_dot_member__directory__pb2.GetRoomMemberResponse,
  828. idempotency_level=IdempotencyLevel.UNKNOWN,
  829. ),
  830. function=service.get_member,
  831. ),
  832. "/chatto.api.v1.RoomService/BatchGetMembers": EndpointSync.unary(
  833. method=MethodInfo(
  834. name="BatchGetMembers",
  835. service_name="chatto.api.v1.RoomService",
  836. input=chatto_dot_api_dot_v1_dot_member__directory__pb2.BatchGetRoomMembersRequest,
  837. output=chatto_dot_api_dot_v1_dot_member__directory__pb2.BatchGetRoomMembersResponse,
  838. idempotency_level=IdempotencyLevel.UNKNOWN,
  839. ),
  840. function=service.batch_get_members,
  841. ),
  842. "/chatto.api.v1.RoomService/AddMember": EndpointSync.unary(
  843. method=MethodInfo(
  844. name="AddMember",
  845. service_name="chatto.api.v1.RoomService",
  846. input=chatto_dot_api_dot_v1_dot_rooms__pb2.AddMemberRequest,
  847. output=chatto_dot_api_dot_v1_dot_rooms__pb2.AddMemberResponse,
  848. idempotency_level=IdempotencyLevel.UNKNOWN,
  849. ),
  850. function=service.add_member,
  851. ),
  852. "/chatto.api.v1.RoomService/RemoveMember": EndpointSync.unary(
  853. method=MethodInfo(
  854. name="RemoveMember",
  855. service_name="chatto.api.v1.RoomService",
  856. input=chatto_dot_api_dot_v1_dot_rooms__pb2.RemoveMemberRequest,
  857. output=chatto_dot_api_dot_v1_dot_rooms__pb2.RemoveMemberResponse,
  858. idempotency_level=IdempotencyLevel.UNKNOWN,
  859. ),
  860. function=service.remove_member,
  861. ),
  862. "/chatto.api.v1.RoomService/ListBans": EndpointSync.unary(
  863. method=MethodInfo(
  864. name="ListBans",
  865. service_name="chatto.api.v1.RoomService",
  866. input=chatto_dot_api_dot_v1_dot_rooms__pb2.ListBansRequest,
  867. output=chatto_dot_api_dot_v1_dot_rooms__pb2.ListBansResponse,
  868. idempotency_level=IdempotencyLevel.UNKNOWN,
  869. ),
  870. function=service.list_bans,
  871. ),
  872. "/chatto.api.v1.RoomService/ListRoomAttachments": EndpointSync.unary(
  873. method=MethodInfo(
  874. name="ListRoomAttachments",
  875. service_name="chatto.api.v1.RoomService",
  876. input=chatto_dot_api_dot_v1_dot_rooms__pb2.ListRoomAttachmentsRequest,
  877. output=chatto_dot_api_dot_v1_dot_rooms__pb2.ListRoomAttachmentsResponse,
  878. idempotency_level=IdempotencyLevel.UNKNOWN,
  879. ),
  880. function=service.list_room_attachments,
  881. ),
  882. "/chatto.api.v1.RoomService/UpdateTypingIndicator": EndpointSync.unary(
  883. method=MethodInfo(
  884. name="UpdateTypingIndicator",
  885. service_name="chatto.api.v1.RoomService",
  886. input=chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateTypingIndicatorRequest,
  887. output=chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateTypingIndicatorResponse,
  888. idempotency_level=IdempotencyLevel.UNKNOWN,
  889. ),
  890. function=service.update_typing_indicator,
  891. ),
  892. "/chatto.api.v1.RoomService/GetRoomEvents": EndpointSync.unary(
  893. method=MethodInfo(
  894. name="GetRoomEvents",
  895. service_name="chatto.api.v1.RoomService",
  896. input=chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsRequest,
  897. output=chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsResponse,
  898. idempotency_level=IdempotencyLevel.UNKNOWN,
  899. ),
  900. function=service.get_room_events,
  901. ),
  902. "/chatto.api.v1.RoomService/GetRoomEventsAround": EndpointSync.unary(
  903. method=MethodInfo(
  904. name="GetRoomEventsAround",
  905. service_name="chatto.api.v1.RoomService",
  906. input=chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsAroundRequest,
  907. output=chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsAroundResponse,
  908. idempotency_level=IdempotencyLevel.UNKNOWN,
  909. ),
  910. function=service.get_room_events_around,
  911. ),
  912. "/chatto.api.v1.RoomService/MarkRoomAsRead": EndpointSync.unary(
  913. method=MethodInfo(
  914. name="MarkRoomAsRead",
  915. service_name="chatto.api.v1.RoomService",
  916. input=chatto_dot_api_dot_v1_dot_read__state__pb2.MarkRoomAsReadRequest,
  917. output=chatto_dot_api_dot_v1_dot_read__state__pb2.MarkRoomAsReadResponse,
  918. idempotency_level=IdempotencyLevel.UNKNOWN,
  919. ),
  920. function=service.mark_room_as_read,
  921. ),
  922. "/chatto.api.v1.RoomService/BanMember": EndpointSync.unary(
  923. method=MethodInfo(
  924. name="BanMember",
  925. service_name="chatto.api.v1.RoomService",
  926. input=chatto_dot_api_dot_v1_dot_rooms__pb2.BanMemberRequest,
  927. output=chatto_dot_api_dot_v1_dot_rooms__pb2.BanMemberResponse,
  928. idempotency_level=IdempotencyLevel.UNKNOWN,
  929. ),
  930. function=service.ban_member,
  931. ),
  932. "/chatto.api.v1.RoomService/UnbanMember": EndpointSync.unary(
  933. method=MethodInfo(
  934. name="UnbanMember",
  935. service_name="chatto.api.v1.RoomService",
  936. input=chatto_dot_api_dot_v1_dot_rooms__pb2.UnbanMemberRequest,
  937. output=chatto_dot_api_dot_v1_dot_rooms__pb2.UnbanMemberResponse,
  938. idempotency_level=IdempotencyLevel.UNKNOWN,
  939. ),
  940. function=service.unban_member,
  941. ),
  942. },
  943. interceptors=interceptors,
  944. read_max_bytes=read_max_bytes,
  945. compressions=compressions,
  946. )
  947. @property
  948. def path(self) -> str:
  949. """Returns the URL path to mount the application to when serving multiple applications."""
  950. return "/chatto.api.v1.RoomService"
  951. class RoomServiceClientSync(ConnectClientSync):
  952. def create_room(
  953. self,
  954. request: chatto_dot_api_dot_v1_dot_rooms__pb2.CreateRoomRequest,
  955. *,
  956. headers: Headers | Mapping[str, str] | None = None,
  957. timeout_ms: int | None = None,
  958. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.CreateRoomResponse:
  959. return self.execute_unary(
  960. request=request,
  961. method=MethodInfo(
  962. name="CreateRoom",
  963. service_name="chatto.api.v1.RoomService",
  964. input=chatto_dot_api_dot_v1_dot_rooms__pb2.CreateRoomRequest,
  965. output=chatto_dot_api_dot_v1_dot_rooms__pb2.CreateRoomResponse,
  966. idempotency_level=IdempotencyLevel.UNKNOWN,
  967. ),
  968. headers=headers,
  969. timeout_ms=timeout_ms,
  970. )
  971. def update_room(
  972. self,
  973. request: chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateRoomRequest,
  974. *,
  975. headers: Headers | Mapping[str, str] | None = None,
  976. timeout_ms: int | None = None,
  977. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateRoomResponse:
  978. return self.execute_unary(
  979. request=request,
  980. method=MethodInfo(
  981. name="UpdateRoom",
  982. service_name="chatto.api.v1.RoomService",
  983. input=chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateRoomRequest,
  984. output=chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateRoomResponse,
  985. idempotency_level=IdempotencyLevel.UNKNOWN,
  986. ),
  987. headers=headers,
  988. timeout_ms=timeout_ms,
  989. )
  990. def archive_room(
  991. self,
  992. request: chatto_dot_api_dot_v1_dot_rooms__pb2.ArchiveRoomRequest,
  993. *,
  994. headers: Headers | Mapping[str, str] | None = None,
  995. timeout_ms: int | None = None,
  996. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.ArchiveRoomResponse:
  997. return self.execute_unary(
  998. request=request,
  999. method=MethodInfo(
  1000. name="ArchiveRoom",
  1001. service_name="chatto.api.v1.RoomService",
  1002. input=chatto_dot_api_dot_v1_dot_rooms__pb2.ArchiveRoomRequest,
  1003. output=chatto_dot_api_dot_v1_dot_rooms__pb2.ArchiveRoomResponse,
  1004. idempotency_level=IdempotencyLevel.UNKNOWN,
  1005. ),
  1006. headers=headers,
  1007. timeout_ms=timeout_ms,
  1008. )
  1009. def unarchive_room(
  1010. self,
  1011. request: chatto_dot_api_dot_v1_dot_rooms__pb2.UnarchiveRoomRequest,
  1012. *,
  1013. headers: Headers | Mapping[str, str] | None = None,
  1014. timeout_ms: int | None = None,
  1015. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.UnarchiveRoomResponse:
  1016. return self.execute_unary(
  1017. request=request,
  1018. method=MethodInfo(
  1019. name="UnarchiveRoom",
  1020. service_name="chatto.api.v1.RoomService",
  1021. input=chatto_dot_api_dot_v1_dot_rooms__pb2.UnarchiveRoomRequest,
  1022. output=chatto_dot_api_dot_v1_dot_rooms__pb2.UnarchiveRoomResponse,
  1023. idempotency_level=IdempotencyLevel.UNKNOWN,
  1024. ),
  1025. headers=headers,
  1026. timeout_ms=timeout_ms,
  1027. )
  1028. def join_room(
  1029. self,
  1030. request: chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomRequest,
  1031. *,
  1032. headers: Headers | Mapping[str, str] | None = None,
  1033. timeout_ms: int | None = None,
  1034. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomResponse:
  1035. return self.execute_unary(
  1036. request=request,
  1037. method=MethodInfo(
  1038. name="JoinRoom",
  1039. service_name="chatto.api.v1.RoomService",
  1040. input=chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomRequest,
  1041. output=chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomResponse,
  1042. idempotency_level=IdempotencyLevel.UNKNOWN,
  1043. ),
  1044. headers=headers,
  1045. timeout_ms=timeout_ms,
  1046. )
  1047. def join_room_group(
  1048. self,
  1049. request: chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomGroupRequest,
  1050. *,
  1051. headers: Headers | Mapping[str, str] | None = None,
  1052. timeout_ms: int | None = None,
  1053. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomGroupResponse:
  1054. return self.execute_unary(
  1055. request=request,
  1056. method=MethodInfo(
  1057. name="JoinRoomGroup",
  1058. service_name="chatto.api.v1.RoomService",
  1059. input=chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomGroupRequest,
  1060. output=chatto_dot_api_dot_v1_dot_rooms__pb2.JoinRoomGroupResponse,
  1061. idempotency_level=IdempotencyLevel.UNKNOWN,
  1062. ),
  1063. headers=headers,
  1064. timeout_ms=timeout_ms,
  1065. )
  1066. def start_d_m(
  1067. self,
  1068. request: chatto_dot_api_dot_v1_dot_rooms__pb2.StartDMRequest,
  1069. *,
  1070. headers: Headers | Mapping[str, str] | None = None,
  1071. timeout_ms: int | None = None,
  1072. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.StartDMResponse:
  1073. return self.execute_unary(
  1074. request=request,
  1075. method=MethodInfo(
  1076. name="StartDM",
  1077. service_name="chatto.api.v1.RoomService",
  1078. input=chatto_dot_api_dot_v1_dot_rooms__pb2.StartDMRequest,
  1079. output=chatto_dot_api_dot_v1_dot_rooms__pb2.StartDMResponse,
  1080. idempotency_level=IdempotencyLevel.UNKNOWN,
  1081. ),
  1082. headers=headers,
  1083. timeout_ms=timeout_ms,
  1084. )
  1085. def leave_room(
  1086. self,
  1087. request: chatto_dot_api_dot_v1_dot_rooms__pb2.LeaveRoomRequest,
  1088. *,
  1089. headers: Headers | Mapping[str, str] | None = None,
  1090. timeout_ms: int | None = None,
  1091. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.LeaveRoomResponse:
  1092. return self.execute_unary(
  1093. request=request,
  1094. method=MethodInfo(
  1095. name="LeaveRoom",
  1096. service_name="chatto.api.v1.RoomService",
  1097. input=chatto_dot_api_dot_v1_dot_rooms__pb2.LeaveRoomRequest,
  1098. output=chatto_dot_api_dot_v1_dot_rooms__pb2.LeaveRoomResponse,
  1099. idempotency_level=IdempotencyLevel.UNKNOWN,
  1100. ),
  1101. headers=headers,
  1102. timeout_ms=timeout_ms,
  1103. )
  1104. def list_members(
  1105. self,
  1106. request: chatto_dot_api_dot_v1_dot_member__directory__pb2.ListRoomMembersRequest,
  1107. *,
  1108. headers: Headers | Mapping[str, str] | None = None,
  1109. timeout_ms: int | None = None,
  1110. ) -> chatto_dot_api_dot_v1_dot_member__directory__pb2.ListRoomMembersResponse:
  1111. return self.execute_unary(
  1112. request=request,
  1113. method=MethodInfo(
  1114. name="ListMembers",
  1115. service_name="chatto.api.v1.RoomService",
  1116. input=chatto_dot_api_dot_v1_dot_member__directory__pb2.ListRoomMembersRequest,
  1117. output=chatto_dot_api_dot_v1_dot_member__directory__pb2.ListRoomMembersResponse,
  1118. idempotency_level=IdempotencyLevel.UNKNOWN,
  1119. ),
  1120. headers=headers,
  1121. timeout_ms=timeout_ms,
  1122. )
  1123. def get_member(
  1124. self,
  1125. request: chatto_dot_api_dot_v1_dot_member__directory__pb2.GetRoomMemberRequest,
  1126. *,
  1127. headers: Headers | Mapping[str, str] | None = None,
  1128. timeout_ms: int | None = None,
  1129. ) -> chatto_dot_api_dot_v1_dot_member__directory__pb2.GetRoomMemberResponse:
  1130. return self.execute_unary(
  1131. request=request,
  1132. method=MethodInfo(
  1133. name="GetMember",
  1134. service_name="chatto.api.v1.RoomService",
  1135. input=chatto_dot_api_dot_v1_dot_member__directory__pb2.GetRoomMemberRequest,
  1136. output=chatto_dot_api_dot_v1_dot_member__directory__pb2.GetRoomMemberResponse,
  1137. idempotency_level=IdempotencyLevel.UNKNOWN,
  1138. ),
  1139. headers=headers,
  1140. timeout_ms=timeout_ms,
  1141. )
  1142. def batch_get_members(
  1143. self,
  1144. request: chatto_dot_api_dot_v1_dot_member__directory__pb2.BatchGetRoomMembersRequest,
  1145. *,
  1146. headers: Headers | Mapping[str, str] | None = None,
  1147. timeout_ms: int | None = None,
  1148. ) -> chatto_dot_api_dot_v1_dot_member__directory__pb2.BatchGetRoomMembersResponse:
  1149. return self.execute_unary(
  1150. request=request,
  1151. method=MethodInfo(
  1152. name="BatchGetMembers",
  1153. service_name="chatto.api.v1.RoomService",
  1154. input=chatto_dot_api_dot_v1_dot_member__directory__pb2.BatchGetRoomMembersRequest,
  1155. output=chatto_dot_api_dot_v1_dot_member__directory__pb2.BatchGetRoomMembersResponse,
  1156. idempotency_level=IdempotencyLevel.UNKNOWN,
  1157. ),
  1158. headers=headers,
  1159. timeout_ms=timeout_ms,
  1160. )
  1161. def add_member(
  1162. self,
  1163. request: chatto_dot_api_dot_v1_dot_rooms__pb2.AddMemberRequest,
  1164. *,
  1165. headers: Headers | Mapping[str, str] | None = None,
  1166. timeout_ms: int | None = None,
  1167. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.AddMemberResponse:
  1168. return self.execute_unary(
  1169. request=request,
  1170. method=MethodInfo(
  1171. name="AddMember",
  1172. service_name="chatto.api.v1.RoomService",
  1173. input=chatto_dot_api_dot_v1_dot_rooms__pb2.AddMemberRequest,
  1174. output=chatto_dot_api_dot_v1_dot_rooms__pb2.AddMemberResponse,
  1175. idempotency_level=IdempotencyLevel.UNKNOWN,
  1176. ),
  1177. headers=headers,
  1178. timeout_ms=timeout_ms,
  1179. )
  1180. def remove_member(
  1181. self,
  1182. request: chatto_dot_api_dot_v1_dot_rooms__pb2.RemoveMemberRequest,
  1183. *,
  1184. headers: Headers | Mapping[str, str] | None = None,
  1185. timeout_ms: int | None = None,
  1186. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.RemoveMemberResponse:
  1187. return self.execute_unary(
  1188. request=request,
  1189. method=MethodInfo(
  1190. name="RemoveMember",
  1191. service_name="chatto.api.v1.RoomService",
  1192. input=chatto_dot_api_dot_v1_dot_rooms__pb2.RemoveMemberRequest,
  1193. output=chatto_dot_api_dot_v1_dot_rooms__pb2.RemoveMemberResponse,
  1194. idempotency_level=IdempotencyLevel.UNKNOWN,
  1195. ),
  1196. headers=headers,
  1197. timeout_ms=timeout_ms,
  1198. )
  1199. def list_bans(
  1200. self,
  1201. request: chatto_dot_api_dot_v1_dot_rooms__pb2.ListBansRequest,
  1202. *,
  1203. headers: Headers | Mapping[str, str] | None = None,
  1204. timeout_ms: int | None = None,
  1205. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.ListBansResponse:
  1206. return self.execute_unary(
  1207. request=request,
  1208. method=MethodInfo(
  1209. name="ListBans",
  1210. service_name="chatto.api.v1.RoomService",
  1211. input=chatto_dot_api_dot_v1_dot_rooms__pb2.ListBansRequest,
  1212. output=chatto_dot_api_dot_v1_dot_rooms__pb2.ListBansResponse,
  1213. idempotency_level=IdempotencyLevel.UNKNOWN,
  1214. ),
  1215. headers=headers,
  1216. timeout_ms=timeout_ms,
  1217. )
  1218. def list_room_attachments(
  1219. self,
  1220. request: chatto_dot_api_dot_v1_dot_rooms__pb2.ListRoomAttachmentsRequest,
  1221. *,
  1222. headers: Headers | Mapping[str, str] | None = None,
  1223. timeout_ms: int | None = None,
  1224. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.ListRoomAttachmentsResponse:
  1225. return self.execute_unary(
  1226. request=request,
  1227. method=MethodInfo(
  1228. name="ListRoomAttachments",
  1229. service_name="chatto.api.v1.RoomService",
  1230. input=chatto_dot_api_dot_v1_dot_rooms__pb2.ListRoomAttachmentsRequest,
  1231. output=chatto_dot_api_dot_v1_dot_rooms__pb2.ListRoomAttachmentsResponse,
  1232. idempotency_level=IdempotencyLevel.UNKNOWN,
  1233. ),
  1234. headers=headers,
  1235. timeout_ms=timeout_ms,
  1236. )
  1237. def update_typing_indicator(
  1238. self,
  1239. request: chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateTypingIndicatorRequest,
  1240. *,
  1241. headers: Headers | Mapping[str, str] | None = None,
  1242. timeout_ms: int | None = None,
  1243. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateTypingIndicatorResponse:
  1244. return self.execute_unary(
  1245. request=request,
  1246. method=MethodInfo(
  1247. name="UpdateTypingIndicator",
  1248. service_name="chatto.api.v1.RoomService",
  1249. input=chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateTypingIndicatorRequest,
  1250. output=chatto_dot_api_dot_v1_dot_rooms__pb2.UpdateTypingIndicatorResponse,
  1251. idempotency_level=IdempotencyLevel.UNKNOWN,
  1252. ),
  1253. headers=headers,
  1254. timeout_ms=timeout_ms,
  1255. )
  1256. def get_room_events(
  1257. self,
  1258. request: chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsRequest,
  1259. *,
  1260. headers: Headers | Mapping[str, str] | None = None,
  1261. timeout_ms: int | None = None,
  1262. ) -> chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsResponse:
  1263. return self.execute_unary(
  1264. request=request,
  1265. method=MethodInfo(
  1266. name="GetRoomEvents",
  1267. service_name="chatto.api.v1.RoomService",
  1268. input=chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsRequest,
  1269. output=chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsResponse,
  1270. idempotency_level=IdempotencyLevel.UNKNOWN,
  1271. ),
  1272. headers=headers,
  1273. timeout_ms=timeout_ms,
  1274. )
  1275. def get_room_events_around(
  1276. self,
  1277. request: chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsAroundRequest,
  1278. *,
  1279. headers: Headers | Mapping[str, str] | None = None,
  1280. timeout_ms: int | None = None,
  1281. ) -> chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsAroundResponse:
  1282. return self.execute_unary(
  1283. request=request,
  1284. method=MethodInfo(
  1285. name="GetRoomEventsAround",
  1286. service_name="chatto.api.v1.RoomService",
  1287. input=chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsAroundRequest,
  1288. output=chatto_dot_api_dot_v1_dot_room__timeline__pb2.GetRoomEventsAroundResponse,
  1289. idempotency_level=IdempotencyLevel.UNKNOWN,
  1290. ),
  1291. headers=headers,
  1292. timeout_ms=timeout_ms,
  1293. )
  1294. def mark_room_as_read(
  1295. self,
  1296. request: chatto_dot_api_dot_v1_dot_read__state__pb2.MarkRoomAsReadRequest,
  1297. *,
  1298. headers: Headers | Mapping[str, str] | None = None,
  1299. timeout_ms: int | None = None,
  1300. ) -> chatto_dot_api_dot_v1_dot_read__state__pb2.MarkRoomAsReadResponse:
  1301. return self.execute_unary(
  1302. request=request,
  1303. method=MethodInfo(
  1304. name="MarkRoomAsRead",
  1305. service_name="chatto.api.v1.RoomService",
  1306. input=chatto_dot_api_dot_v1_dot_read__state__pb2.MarkRoomAsReadRequest,
  1307. output=chatto_dot_api_dot_v1_dot_read__state__pb2.MarkRoomAsReadResponse,
  1308. idempotency_level=IdempotencyLevel.UNKNOWN,
  1309. ),
  1310. headers=headers,
  1311. timeout_ms=timeout_ms,
  1312. )
  1313. def ban_member(
  1314. self,
  1315. request: chatto_dot_api_dot_v1_dot_rooms__pb2.BanMemberRequest,
  1316. *,
  1317. headers: Headers | Mapping[str, str] | None = None,
  1318. timeout_ms: int | None = None,
  1319. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.BanMemberResponse:
  1320. return self.execute_unary(
  1321. request=request,
  1322. method=MethodInfo(
  1323. name="BanMember",
  1324. service_name="chatto.api.v1.RoomService",
  1325. input=chatto_dot_api_dot_v1_dot_rooms__pb2.BanMemberRequest,
  1326. output=chatto_dot_api_dot_v1_dot_rooms__pb2.BanMemberResponse,
  1327. idempotency_level=IdempotencyLevel.UNKNOWN,
  1328. ),
  1329. headers=headers,
  1330. timeout_ms=timeout_ms,
  1331. )
  1332. def unban_member(
  1333. self,
  1334. request: chatto_dot_api_dot_v1_dot_rooms__pb2.UnbanMemberRequest,
  1335. *,
  1336. headers: Headers | Mapping[str, str] | None = None,
  1337. timeout_ms: int | None = None,
  1338. ) -> chatto_dot_api_dot_v1_dot_rooms__pb2.UnbanMemberResponse:
  1339. return self.execute_unary(
  1340. request=request,
  1341. method=MethodInfo(
  1342. name="UnbanMember",
  1343. service_name="chatto.api.v1.RoomService",
  1344. input=chatto_dot_api_dot_v1_dot_rooms__pb2.UnbanMemberRequest,
  1345. output=chatto_dot_api_dot_v1_dot_rooms__pb2.UnbanMemberResponse,
  1346. idempotency_level=IdempotencyLevel.UNKNOWN,
  1347. ),
  1348. headers=headers,
  1349. timeout_ms=timeout_ms,
  1350. )