示例#1
0
 def _get_localpart(alias: RoomAlias) -> str:
     if len(alias) == 0:
         raise ValueError("Alias is empty")
     elif alias[0] != "#":
         raise ValueError("Aliases start with #")
     try:
         sep = alias.index(":")
     except ValueError as e:
         raise ValueError("Alias must contain domain separator") from e
     if sep == len(alias) - 1:
         raise ValueError("Alias must contain domain")
     return alias[1:sep]
示例#2
0
 def alias(self) -> Optional[RoomAlias]:
     if not self.username:
         return None
     return RoomAlias(f"#{self.alias_localpart}:{self.hs_domain}")