Event: optional (inline_)content, auto-gen inline
This commit is contained in:
parent
a5095274ba
commit
8ad13b033d
@ -196,14 +196,12 @@ class MatrixClient(nio.AsyncClient):
|
|||||||
client_id = f"echo-{uuid}",
|
client_id = f"echo-{uuid}",
|
||||||
event_id = "",
|
event_id = "",
|
||||||
date = datetime.now(),
|
date = datetime.now(),
|
||||||
content = echo_body,
|
|
||||||
inline_content = HTML_FILTER.filter_inline(echo_body),
|
|
||||||
is_local_echo = True,
|
|
||||||
local_event_type = event_type,
|
|
||||||
|
|
||||||
sender_id = self.user_id,
|
sender_id = self.user_id,
|
||||||
sender_name = our_info.display_name,
|
sender_name = our_info.display_name,
|
||||||
sender_avatar = our_info.avatar_url,
|
sender_avatar = our_info.avatar_url,
|
||||||
|
content = echo_body,
|
||||||
|
is_local_echo = True,
|
||||||
|
local_event_type = event_type,
|
||||||
)
|
)
|
||||||
for user_id in self.models[Account]:
|
for user_id in self.models[Account]:
|
||||||
if user_id in self.models[Member, room_id]:
|
if user_id in self.models[Member, room_id]:
|
||||||
@ -497,12 +495,7 @@ class MatrixClient(nio.AsyncClient):
|
|||||||
|
|
||||||
|
|
||||||
async def register_nio_event(
|
async def register_nio_event(
|
||||||
self,
|
self, room: nio.MatrixRoom, ev: nio.Event, **fields,
|
||||||
room: nio.MatrixRoom,
|
|
||||||
ev: nio.Event,
|
|
||||||
content: str,
|
|
||||||
type_specifier: TypeSpecifier = TypeSpecifier.none,
|
|
||||||
**fields,
|
|
||||||
) -> None:
|
) -> None:
|
||||||
|
|
||||||
await self.register_nio_room(room)
|
await self.register_nio_room(room)
|
||||||
@ -521,20 +514,13 @@ class MatrixClient(nio.AsyncClient):
|
|||||||
source = ev,
|
source = ev,
|
||||||
client_id = ev.event_id,
|
client_id = ev.event_id,
|
||||||
event_id = ev.event_id,
|
event_id = ev.event_id,
|
||||||
content = content,
|
|
||||||
inline_content = HTML_FILTER.filter_inline(content),
|
|
||||||
date = datetime.fromtimestamp(ev.server_timestamp / 1000),
|
date = datetime.fromtimestamp(ev.server_timestamp / 1000),
|
||||||
|
|
||||||
sender_id = ev.sender,
|
sender_id = ev.sender,
|
||||||
sender_name = sender_name,
|
sender_name = sender_name,
|
||||||
sender_avatar = sender_avatar,
|
sender_avatar = sender_avatar,
|
||||||
|
|
||||||
type_specifier = type_specifier,
|
|
||||||
|
|
||||||
target_id = target_id,
|
target_id = target_id,
|
||||||
target_name = target_name,
|
target_name = target_name,
|
||||||
target_avatar = target_avatar,
|
target_avatar = target_avatar,
|
||||||
|
|
||||||
**fields,
|
**fields,
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -639,7 +625,9 @@ class MatrixClient(nio.AsyncClient):
|
|||||||
await self.register_nio_event(
|
await self.register_nio_event(
|
||||||
room,
|
room,
|
||||||
ev,
|
ev,
|
||||||
content = ev.url,
|
content = "",
|
||||||
|
inline_content = ev.body,
|
||||||
|
media_url = ev.url,
|
||||||
media_title = ev.body,
|
media_title = ev.body,
|
||||||
media_width = info.get("w") or 0,
|
media_width = info.get("w") or 0,
|
||||||
media_height = info.get("h") or 0,
|
media_height = info.get("h") or 0,
|
||||||
|
@ -112,14 +112,14 @@ class Event(ModelItem):
|
|||||||
source: Optional[nio.Event] = field()
|
source: Optional[nio.Event] = field()
|
||||||
client_id: str = field()
|
client_id: str = field()
|
||||||
event_id: str = field()
|
event_id: str = field()
|
||||||
content: str = field()
|
|
||||||
inline_content: str = field()
|
|
||||||
date: datetime = field()
|
date: datetime = field()
|
||||||
|
|
||||||
sender_id: str = field()
|
sender_id: str = field()
|
||||||
sender_name: str = field()
|
sender_name: str = field()
|
||||||
sender_avatar: str = field()
|
sender_avatar: str = field()
|
||||||
|
|
||||||
|
content: str = ""
|
||||||
|
inline_content: str = ""
|
||||||
|
|
||||||
type_specifier: TypeSpecifier = TypeSpecifier.none
|
type_specifier: TypeSpecifier = TypeSpecifier.none
|
||||||
|
|
||||||
target_id: str = ""
|
target_id: str = ""
|
||||||
@ -129,6 +129,7 @@ class Event(ModelItem):
|
|||||||
is_local_echo: bool = False
|
is_local_echo: bool = False
|
||||||
local_event_type: str = ""
|
local_event_type: str = ""
|
||||||
|
|
||||||
|
media_url: str = ""
|
||||||
media_title: str = ""
|
media_title: str = ""
|
||||||
media_width: int = 0
|
media_width: int = 0
|
||||||
media_height: int = 0
|
media_height: int = 0
|
||||||
@ -141,6 +142,7 @@ class Event(ModelItem):
|
|||||||
thumbnail_height: int = 0
|
thumbnail_height: int = 0
|
||||||
|
|
||||||
def __post_init__(self) -> None:
|
def __post_init__(self) -> None:
|
||||||
|
if not self.inline_content:
|
||||||
self.inline_content = HTML_FILTER.filter_inline(self.content)
|
self.inline_content = HTML_FILTER.filter_inline(self.content)
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user