mirror of
https://git.sr.ht/~emerson/reflectionircd
synced 2025-08-05 16:59:10 +00:00
parse MXC urls, fixes #1
This commit is contained in:
parent
888bc53cb8
commit
cac2153e40
1 changed files with 8 additions and 3 deletions
|
@ -192,10 +192,15 @@ export class Channel {
|
||||||
messageContent = `\x01ACTION ${messageContent}\x01`;
|
messageContent = `\x01ACTION ${messageContent}\x01`;
|
||||||
}
|
}
|
||||||
else if (['m.image', 'm.file', 'm.audio', 'm.video'].includes(msgtype)) {
|
else if (['m.image', 'm.file', 'm.audio', 'm.video'].includes(msgtype)) {
|
||||||
let url: string = content["url"];
|
let uri: string = content["url"];
|
||||||
if (!url)
|
if (!uri)
|
||||||
return;
|
return;
|
||||||
messageContent = `\x01ACTION shared ${messageContent}: ${url}\x01`;
|
const mxcregex = uri.match(/mxc:\/\/(?<servername>[^\/]+)\/(?<mediaid>.+)/)
|
||||||
|
if (!mxcregex || !mxcregex.groups)
|
||||||
|
console.log(`Failed to parse MXC URI: ${uri}`);
|
||||||
|
else
|
||||||
|
uri = `https://matrix.org/_matrix/media/v3/download/${mxcregex.groups.servername}/${mxcregex.groups.mediaid}`;
|
||||||
|
messageContent = `\x01ACTION shared ${messageContent}: ${uri}\x01`;
|
||||||
}
|
}
|
||||||
const msgArray = (messageContent.indexOf('\n') !== -1) ? messageContent.split('\n'): [messageContent];
|
const msgArray = (messageContent.indexOf('\n') !== -1) ? messageContent.split('\n'): [messageContent];
|
||||||
msgArray.forEach((msg: string) => {
|
msgArray.forEach((msg: string) => {
|
||||||
|
|
Loading…
Add table
Reference in a new issue