Skip to content
Extraits de code Groupes Projets
Non vérifiée Valider 27c3adf6 rédigé par Sorunome's avatar Sorunome
Parcourir les fichiers

minor adjustments

parent 8a0d3515
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -8,7 +8,7 @@ import { Util } from "./util";
import {
DiscordMessageProcessor,
DiscordMessageProcessorOpts,
DiscordMessageProcessorMatrixResult,
DiscordMessageProcessorResult,
} from "./discordmessageprocessor";
import { MatrixEventProcessor, MatrixEventProcessorOpts } from "./matrixeventprocessor";
import { PresenceHandler } from "./presencehandler";
......@@ -451,7 +451,7 @@ export class DiscordBot {
return rooms.map((room) => room.matrix.getId());
}
private async SendMatrixMessage(matrixMsg: DiscordMessageProcessorMatrixResult, chan: Discord.Channel,
private async SendMatrixMessage(matrixMsg: DiscordMessageProcessorResult, chan: Discord.Channel,
guild: Discord.Guild, author: Discord.User,
msgID: string): Promise<boolean> {
const rooms = await this.channelSync.GetRoomIdsFromChannel(chan);
......
......@@ -5,7 +5,7 @@ import * as escapeHtml from "escape-html";
import { Util } from "./util";
import { Log } from "./log";
const log = new Log("MessageProcessor");
const log = new Log("DiscordMessageProcessor");
const MATRIX_TO_LINK = "https://matrix.to/#/";
const MXC_INSERT_REGEX = /\x01(\w+)\x01([01])\x01([0-9]*)\x01/g;
......@@ -20,7 +20,7 @@ export class DiscordMessageProcessorOpts {
}
}
export class DiscordMessageProcessorMatrixResult {
export class DiscordMessageProcessorResult {
public formattedBody: string;
public body: string;
public msgtype: string;
......@@ -46,8 +46,8 @@ export class DiscordMessageProcessor {
}
}
public async FormatMessage(msg: Discord.Message): Promise<DiscordMessageProcessorMatrixResult> {
const result = new DiscordMessageProcessorMatrixResult();
public async FormatMessage(msg: Discord.Message): Promise<DiscordMessageProcessorResult> {
const result = new DiscordMessageProcessorResult();
let content = msg.content;
......@@ -78,7 +78,7 @@ export class DiscordMessageProcessor {
public async FormatEdit(
oldMsg: Discord.Message,
newMsg: Discord.Message,
): Promise<DiscordMessageProcessorMatrixResult> {
): Promise<DiscordMessageProcessorResult> {
// TODO: Produce a nice, colored diff between the old and new message content
oldMsg.content = `*edit:* ~~${oldMsg.content}~~ -> ${newMsg.content}`;
return this.FormatMessage(oldMsg);
......
......@@ -95,9 +95,17 @@ export class MatrixEventProcessor {
event: IMatrixEvent, channel: Discord.TextChannel, getReply: boolean = true,
): Promise<IMatrixEventProcessorResult> {
const mxClient = this.bridge.getClientFactory().getClientAs();
const profile = await mxClient.getStateEvent(event.room_id, "m.room.member", event.sender);
let profile: IMatrixEvent | null = null;
try {
profile = await mxClient.getStateEvent(event.room_id, "m.room.member", event.sender);
if (!profile) {
profile = await mxClient.getProfileInfo(event.sender);
}
if (!profile) {
log.warn(`User ${event.sender} has no member state. That's odd.`);
log.warn(`User ${event.sender} has no member state and no profile. That's odd.`);
}
} catch (err) {
log.warn(`Trying to fetch member state or profile for ${event.sender} failed`, err);
}
let body: string = "";
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter