fix(m2d): only use unstable com.beeper.per_message_profile prefix

This commit is contained in:
Bea
2026-03-24 16:45:39 +00:00
committed by cadence
parent a8b7d64e91
commit 07ec9832b2
2 changed files with 2 additions and 71 deletions

View File

@@ -558,7 +558,7 @@ async function eventToMessage(event, guild, channel, di) {
if (member.displayname) displayName = member.displayname
if (member.avatar_url) avatarURL = mxUtils.getPublicUrlForMxc(member.avatar_url)
// Override display name and avatar from MSC4144 per-message profile if present
const perMessageProfile = event.content["m.per_message_profile"] || event.content["com.beeper.per_message_profile"]
const perMessageProfile = event.content["com.beeper.per_message_profile"]
if (perMessageProfile?.displayname) displayName = perMessageProfile.displayname
if (perMessageProfile?.avatar_url) avatarURL = mxUtils.getPublicUrlForMxc(perMessageProfile.avatar_url)
// If the display name is too long to be put into the webhook (80 characters is the maximum),

View File

@@ -5526,40 +5526,7 @@ test("event2message: known and unknown emojis in the end are used for sprite she
)
})
test("event2message: m.per_message_profile overrides displayname and avatar_url", async t => {
t.deepEqual(
await eventToMessage({
type: "m.room.message",
sender: "@cadence:cadence.moe",
content: {
msgtype: "m.text",
body: "hello from a custom profile",
"m.per_message_profile": {
id: "custom-id",
displayname: "Custom Name",
avatar_url: "mxc://maunium.net/hgXsKqlmRfpKvCZdUoWDkFQo"
}
},
event_id: "$g07oYSZFWBkxohNEfywldwgcWj1hbhDzQ1sBAKvqOOU",
room_id: "!kLRqKKUQXcibIMtOpl:cadence.moe"
}),
{
ensureJoined: [],
messagesToDelete: [],
messagesToEdit: [],
messagesToSend: [{
username: "Custom Name",
content: "hello from a custom profile",
avatar_url: "https://bridge.example.org/download/matrix/maunium.net/hgXsKqlmRfpKvCZdUoWDkFQo",
allowed_mentions: {
parse: ["users", "roles"]
}
}]
}
)
})
test("event2message: com.beeper.per_message_profile (unstable prefix) overrides displayname and avatar_url", async t => {
test("event2message: com.beeper.per_message_profile overrides displayname and avatar_url", async t => {
t.deepEqual(
await eventToMessage({
type: "m.room.message",
@@ -5592,42 +5559,6 @@ test("event2message: com.beeper.per_message_profile (unstable prefix) overrides
)
})
test("event2message: m.per_message_profile takes priority over com.beeper.per_message_profile", async t => {
t.deepEqual(
await eventToMessage({
type: "m.room.message",
sender: "@cadence:cadence.moe",
content: {
msgtype: "m.text",
body: "stable wins",
"m.per_message_profile": {
id: "stable-id",
displayname: "Stable Name"
},
"com.beeper.per_message_profile": {
id: "unstable-id",
displayname: "Unstable Name"
}
},
event_id: "$g07oYSZFWBkxohNEfywldwgcWj1hbhDzQ1sBAKvqOOU",
room_id: "!kLRqKKUQXcibIMtOpl:cadence.moe"
}),
{
ensureJoined: [],
messagesToDelete: [],
messagesToEdit: [],
messagesToSend: [{
username: "Stable Name",
content: "stable wins",
avatar_url: undefined,
allowed_mentions: {
parse: ["users", "roles"]
}
}]
}
)
})
test("event2message: data-mx-profile-fallback element is stripped from formatted_body when per-message profile is present", async t => {
t.deepEqual(
await eventToMessage({