diff --git a/src/d2m/actions/create-space.js b/src/d2m/actions/create-space.js index edd3ba3..ce86789 100644 --- a/src/d2m/actions/create-space.js +++ b/src/d2m/actions/create-space.js @@ -232,7 +232,7 @@ async function syncSpaceExpressions(data, checkBeforeSync) { } if (isDeepStrictEqual(existing, content)) return } - api.sendState(spaceID, "im.ponies.room_emotes", eventKey, content) + await api.sendState(spaceID, "im.ponies.room_emotes", eventKey, content) } await update(spaceID, "emojis", "moe.cadence.ooye.pack.emojis", expression.emojisToState) diff --git a/src/d2m/actions/send-message.js b/src/d2m/actions/send-message.js index 6d100d4..be785bb 100644 --- a/src/d2m/actions/send-message.js +++ b/src/d2m/actions/send-message.js @@ -48,7 +48,7 @@ async function sendMessage(message, channel, guild, row) { const eventIDs = [] if (events.length) { db.prepare("REPLACE INTO message_channel (message_id, channel_id) VALUES (?, ?)").run(message.id, message.channel_id) - if (senderMxid) api.sendTyping(roomID, false, senderMxid) + if (senderMxid) api.sendTyping(roomID, false, senderMxid).catch(() => {}) } for (const event of events) { const part = event === events[0] ? 0 : 1 diff --git a/src/d2m/discord-packets.js b/src/d2m/discord-packets.js index 5956ac5..2e97671 100644 --- a/src/d2m/discord-packets.js +++ b/src/d2m/discord-packets.js @@ -51,9 +51,14 @@ const utils = { } if (listen === "full") { - eventDispatcher.checkMissedExpressions(message.d) - eventDispatcher.checkMissedPins(client, message.d) - eventDispatcher.checkMissedMessages(client, message.d) + try { + await eventDispatcher.checkMissedExpressions(message.d) + await eventDispatcher.checkMissedPins(client, message.d) + await eventDispatcher.checkMissedMessages(client, message.d) + } catch (e) { + console.error("Failed to sync missed events. To retry, please fix this error and restart OOYE:") + console.error(e) + } } } else if (message.t === "GUILD_UPDATE") {