#[non_exhaustive]pub struct MessageEventContent {
pub text: TextContentBlock,
pub automated: bool,
pub relates_to: Option<Relation<MessageEventContentWithoutRelation>>,
pub url_previews: Option<Vec<UrlPreview>>,
}
events
and unstable-msc1767
only.Expand description
The payload for an extensible text message.
This is the new primary type introduced in MSC1767 and should only be sent in rooms with a
version that supports it. See the documentation of the message
module for more information.
To construct a MessageEventContent
with a custom TextContentBlock
, convert it with
MessageEventContent::from()
/ .into()
.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.text: TextContentBlock
The message’s text content.
automated: bool
unstable-msc3955
only.Whether this message is automated.
relates_to: Option<Relation<MessageEventContentWithoutRelation>>
Information about related messages.
url_previews: Option<Vec<UrlPreview>>
unstable-msc4095
only.MSC4095-style bundled url previews
Implementations§
Source§impl MessageEventContent
impl MessageEventContent
Sourcepub fn plain(body: impl Into<String>) -> MessageEventContent
pub fn plain(body: impl Into<String>) -> MessageEventContent
A convenience constructor to create a plain text message.
Sourcepub fn html(
body: impl Into<String>,
html_body: impl Into<String>,
) -> MessageEventContent
pub fn html( body: impl Into<String>, html_body: impl Into<String>, ) -> MessageEventContent
A convenience constructor to create an HTML message.
Sourcepub fn markdown(body: impl AsRef<str> + Into<String>) -> MessageEventContent
Available on crate feature markdown
only.
pub fn markdown(body: impl AsRef<str> + Into<String>) -> MessageEventContent
markdown
only.A convenience constructor to create a message from Markdown.
The content includes an HTML message if some Markdown formatting was detected, otherwise only a plain text message is included.
Trait Implementations§
Source§impl Clone for MessageEventContent
impl Clone for MessageEventContent
Source§fn clone(&self) -> MessageEventContent
fn clone(&self) -> MessageEventContent
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for MessageEventContent
impl Debug for MessageEventContent
Source§impl<'de> Deserialize<'de> for MessageEventContent
impl<'de> Deserialize<'de> for MessageEventContent
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<MessageEventContent, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<MessageEventContent, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl EventContent for MessageEventContent
impl EventContent for MessageEventContent
Source§type EventType = MessageLikeEventType
type EventType = MessageLikeEventType
Source§fn event_type(&self) -> <MessageEventContent as EventContent>::EventType
fn event_type(&self) -> <MessageEventContent as EventContent>::EventType
m.room.message
.Source§impl From<MessageEventContent> for AnyMessageLikeEventContent
impl From<MessageEventContent> for AnyMessageLikeEventContent
Source§fn from(c: MessageEventContent) -> AnyMessageLikeEventContent
fn from(c: MessageEventContent) -> AnyMessageLikeEventContent
Source§impl From<MessageEventContent> for MessageEventContentWithoutRelation
impl From<MessageEventContent> for MessageEventContentWithoutRelation
Source§fn from(c: MessageEventContent) -> MessageEventContentWithoutRelation
fn from(c: MessageEventContent) -> MessageEventContentWithoutRelation
Source§impl From<TextContentBlock> for MessageEventContent
impl From<TextContentBlock> for MessageEventContent
Source§fn from(text: TextContentBlock) -> MessageEventContent
fn from(text: TextContentBlock) -> MessageEventContent
Source§impl RedactContent for MessageEventContent
impl RedactContent for MessageEventContent
Source§type Redacted = RedactedMessageEventContent
type Redacted = RedactedMessageEventContent
Source§fn redact(self, version: &RoomVersionId) -> RedactedMessageEventContent
fn redact(self, version: &RoomVersionId) -> RedactedMessageEventContent
self
into a redacted form (removing most or all fields) according to the spec. Read more