events: Remove m.room.message.feedback
According to MSC3582
This commit is contained in:
parent
d729c0f4cd
commit
8081878934
@ -16,6 +16,7 @@ Breaking changes:
|
||||
* Remove `RoomName` / `OwnedRoomName` and replace usages with `str` / `String`
|
||||
* Room name size limits were never enforced by servers
|
||||
([Spec change removing the size limit][spec])
|
||||
* Remove `RoomMessageFeedbackEvent` and associated types and variants according to MSC3582
|
||||
|
||||
[spec]: https://github.com/matrix-org/matrix-spec-proposals/pull/3669
|
||||
|
||||
|
@ -81,7 +81,6 @@ event_enum! {
|
||||
"m.reaction" => super::reaction,
|
||||
"m.room.encrypted" => super::room::encrypted,
|
||||
"m.room.message" => super::room::message,
|
||||
"m.room.message.feedback" => super::room::message::feedback,
|
||||
"m.room.redaction" => super::room::redaction,
|
||||
"m.sticker" => super::sticker,
|
||||
#[cfg(feature = "unstable-msc3553")]
|
||||
@ -358,7 +357,6 @@ impl AnyMessageLikeEventContent {
|
||||
| Self::CallInvite(_)
|
||||
| Self::CallHangup(_)
|
||||
| Self::CallCandidates(_)
|
||||
| Self::RoomMessageFeedback(_)
|
||||
| Self::RoomRedaction(_)
|
||||
| Self::Sticker(_)
|
||||
| Self::_Custom { .. } => None,
|
||||
|
@ -16,7 +16,6 @@ use crate::{
|
||||
mod audio;
|
||||
mod content_serde;
|
||||
mod emote;
|
||||
pub mod feedback;
|
||||
mod file;
|
||||
mod image;
|
||||
mod key_verification_request;
|
||||
|
@ -1,49 +0,0 @@
|
||||
//! Types for the [`m.room.message.feedback`] event.
|
||||
//!
|
||||
//! [`m.room.message.feedback`]: https://spec.matrix.org/v1.2/client-server-api/#mroommessagefeedback
|
||||
|
||||
use ruma_macros::EventContent;
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::{serde::StringEnum, OwnedEventId, PrivOwnedStr};
|
||||
|
||||
/// The content of an `m.room.message.feedback` event.
|
||||
///
|
||||
/// An acknowledgement of a message.
|
||||
///
|
||||
/// N.B.: Usage of this event is discouraged in favor of the receipts module. Most clients will
|
||||
/// not recognize this event.
|
||||
#[derive(Clone, Debug, Deserialize, Serialize, EventContent)]
|
||||
#[cfg_attr(not(feature = "unstable-exhaustive-types"), non_exhaustive)]
|
||||
#[ruma_event(type = "m.room.message.feedback", kind = MessageLike)]
|
||||
pub struct RoomMessageFeedbackEventContent {
|
||||
/// The event that this feedback is related to.
|
||||
pub target_event_id: OwnedEventId,
|
||||
|
||||
/// The type of feedback.
|
||||
#[serde(rename = "type")]
|
||||
pub feedback_type: FeedbackType,
|
||||
}
|
||||
|
||||
impl RoomMessageFeedbackEventContent {
|
||||
/// Create a `RoomMessageFeedbackEventContent` from the given target event id and feedback type.
|
||||
pub fn new(target_event_id: OwnedEventId, feedback_type: FeedbackType) -> Self {
|
||||
Self { target_event_id, feedback_type }
|
||||
}
|
||||
}
|
||||
|
||||
/// A type of feedback.
|
||||
#[doc = include_str!(concat!(env!("CARGO_MANIFEST_DIR"), "/src/doc/string_enum.md"))]
|
||||
#[derive(Clone, Debug, PartialEq, Eq, StringEnum)]
|
||||
#[ruma_enum(rename_all = "snake_case")]
|
||||
#[non_exhaustive]
|
||||
pub enum FeedbackType {
|
||||
/// Sent when a message is received.
|
||||
Delivered,
|
||||
|
||||
/// Sent when a message has been observed by the end user.
|
||||
Read,
|
||||
|
||||
#[doc(hidden)]
|
||||
_Custom(PrivOwnedStr),
|
||||
}
|
@ -369,7 +369,6 @@ fn serialize_and_deserialize_from_display_form() {
|
||||
serde_json_eq(EventType::RoomJoinRules, json!("m.room.join_rules"));
|
||||
serde_json_eq(EventType::RoomMember, json!("m.room.member"));
|
||||
serde_json_eq(EventType::RoomMessage, json!("m.room.message"));
|
||||
serde_json_eq(EventType::RoomMessageFeedback, json!("m.room.message.feedback"));
|
||||
serde_json_eq(EventType::RoomName, json!("m.room.name"));
|
||||
serde_json_eq(EventType::RoomPinnedEvents, json!("m.room.pinned_events"));
|
||||
serde_json_eq(EventType::RoomPowerLevels, json!("m.room.power_levels"));
|
||||
|
Loading…
x
Reference in New Issue
Block a user