mirror of
https://github.com/openclaw/openclaw.git
synced 2026-06-06 05:51:15 +08:00
77 lines
2.0 KiB
TypeScript
77 lines
2.0 KiB
TypeScript
// Discord plugin module implements runtime.messaging behavior.
|
|
import { readDiscordComponentSpec } from "../components.js";
|
|
import type { OpenClawConfig } from "../runtime-api.js";
|
|
import { sendDiscordComponentMessage } from "../send.components.js";
|
|
import {
|
|
createThreadDiscord,
|
|
deleteMessageDiscord,
|
|
editMessageDiscord,
|
|
editChannelDiscord,
|
|
fetchChannelInfoDiscord,
|
|
fetchGuildInfoDiscord,
|
|
fetchChannelPermissionsDiscord,
|
|
fetchMessageDiscord,
|
|
fetchReactionsDiscord,
|
|
listPinsDiscord,
|
|
listThreadsDiscord,
|
|
pinMessageDiscord,
|
|
reactMessageDiscord,
|
|
readMessagesDiscord,
|
|
removeOwnReactionsDiscord,
|
|
removeReactionDiscord,
|
|
searchMessagesDiscord,
|
|
sendMessageDiscord,
|
|
sendPollDiscord,
|
|
sendStickerDiscord,
|
|
sendVoiceMessageDiscord,
|
|
unpinMessageDiscord,
|
|
} from "../send.js";
|
|
import { resolveDiscordTargetChannelId } from "../send.shared.js";
|
|
import { resolveDiscordChannelId } from "../targets.js";
|
|
|
|
export const discordMessagingActionRuntime = {
|
|
createThreadDiscord,
|
|
deleteMessageDiscord,
|
|
editChannelDiscord,
|
|
editMessageDiscord,
|
|
fetchChannelInfoDiscord,
|
|
fetchGuildInfoDiscord,
|
|
fetchChannelPermissionsDiscord,
|
|
fetchMessageDiscord,
|
|
fetchReactionsDiscord,
|
|
listPinsDiscord,
|
|
listThreadsDiscord,
|
|
pinMessageDiscord,
|
|
reactMessageDiscord,
|
|
readDiscordComponentSpec,
|
|
readMessagesDiscord,
|
|
removeOwnReactionsDiscord,
|
|
removeReactionDiscord,
|
|
resolveDiscordReactionTargetChannelId,
|
|
resolveDiscordChannelId,
|
|
searchMessagesDiscord,
|
|
sendDiscordComponentMessage,
|
|
sendMessageDiscord,
|
|
sendPollDiscord,
|
|
sendStickerDiscord,
|
|
sendVoiceMessageDiscord,
|
|
unpinMessageDiscord,
|
|
};
|
|
|
|
async function resolveDiscordReactionTargetChannelId(params: {
|
|
target: string;
|
|
cfg: OpenClawConfig;
|
|
accountId?: string;
|
|
}): Promise<string> {
|
|
try {
|
|
return resolveDiscordChannelId(params.target);
|
|
} catch {
|
|
return (
|
|
await resolveDiscordTargetChannelId(params.target, {
|
|
cfg: params.cfg,
|
|
accountId: params.accountId,
|
|
})
|
|
).channelId;
|
|
}
|
|
}
|