From 8f8d5972aa5b9ba134be66c4dbb30ebde8ea128f Mon Sep 17 00:00:00 2001 From: murm Date: Fri, 17 Mar 2023 01:42:10 -0400 Subject: [PATCH 1/2] add support for html-formatted matrix messages --- events/roommessage.js | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/events/roommessage.js b/events/roommessage.js index 51b180b..7e1e797 100644 --- a/events/roommessage.js +++ b/events/roommessage.js @@ -71,6 +71,17 @@ export default async function (matrixClient, event, room, toStartOfTimeline) { }); } else if (typeof result === "object") { // console.log(result) + if (result.html) { + const content = { + format: "org.matrix.custom.html", + body: result.html, + formatted_body: result.html, + msgtype: "m.text", + }; + matrixClient.sendEvent(event.event.room_id, "m.room.message", content, "", (err, res) => { + console.log(err); + }); + } if (result.contents && result.name) { let fileSize = 52428308; if (result.contents.length > fileSize) { From 47700fce827844f132df851ffa52d2fd5511317b Mon Sep 17 00:00:00 2001 From: murm Date: Fri, 17 Mar 2023 01:42:28 -0400 Subject: [PATCH 2/2] update tags to allow for matrix html funnies --- commands/tags/tags.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/commands/tags/tags.js b/commands/tags/tags.js index 83dd734..789322f 100644 --- a/commands/tags/tags.js +++ b/commands/tags/tags.js @@ -20,7 +20,7 @@ class TagsCommand extends Command { const result = await database.setTag(tagName, { content: this.type === "classic" ? this.args.slice(2).join(" ") : this.optionsArray[0].options[1].value, author: this.message.sender }, this.channel); this.success = true; if (result) return result; - return `The tag \`${tagName}\` has been added!`; + return { html: `The tag ${tagName} has been added!` }; } else if (cmd === "delete" || cmd === "remove") { if (!tagName || !tagName.trim()) return "You need to provide the name of the tag you want to delete!"; const getResult = await database.getTag(this.channel, tagName); @@ -29,7 +29,7 @@ class TagsCommand extends Command { if (getResult.author !== this.author && !owners.includes(this.author)) return "You don't own this tag!"; await database.removeTag(tagName, this.channel); this.success = true; - return `The tag \`${tagName}\` has been deleted!`; + return { html: `The tag ${tagName} has been deleted!` }; } else if (cmd === "edit") { if (!tagName || !tagName.trim()) return "You need to provide the name of the tag you want to edit!"; const getResult = await database.getTag(this.channel, tagName); @@ -38,7 +38,7 @@ class TagsCommand extends Command { if (getResult.author !== this.author && !owners.includes(this.author)) return "You don't own this tag!"; await database.editTag(tagName, { content: this.type === "classic" ? this.args.slice(2).join(" ") : this.optionsArray[0].options[1].value, author: this.message.sender }, this.channel); this.success = true; - return `The tag \`${tagName}\` has been edited!`; + return { html: `The tag ${tagName} has been edited!` }; } else if (cmd === "own" || cmd === "owner") { if (!tagName || !tagName.trim()) return "You need to provide the name of the tag you want to check the owner of!"; const getResult = await database.getTag(this.channel, tagName); @@ -102,7 +102,7 @@ class TagsCommand extends Command { }], }; } - return getResult.content; + return { html: getResult.content }; } }