Files
openclaw/src/plugin-sdk/whatsapp.ts
2026-03-19 03:13:48 +00:00

114 lines
3.7 KiB
TypeScript

export type { ChannelMessageActionName } from "../channels/plugins/types.js";
export type { OpenClawConfig } from "../config/config.js";
export type { DmPolicy, GroupPolicy, WhatsAppAccountConfig } from "../config/types.js";
export type {
WebChannelStatus,
WebMonitorTuning,
} from "../../extensions/whatsapp/src/auto-reply/types.js";
export type {
WebInboundMessage,
WebListenerCloseReason,
} from "../../extensions/whatsapp/src/inbound/types.js";
export type {
ChannelMessageActionContext,
ChannelPlugin,
OpenClawPluginApi,
PluginRuntime,
} from "./channel-plugin-common.js";
export {
DEFAULT_ACCOUNT_ID,
PAIRING_APPROVED_MESSAGE,
applyAccountNameToChannelSection,
buildChannelConfigSchema,
deleteAccountFromConfigSection,
emptyPluginConfigSchema,
formatPairingApproveHint,
getChatChannelMeta,
migrateBaseNameToDefaultAccount,
normalizeAccountId,
setAccountEnabledInConfigSection,
} from "./channel-plugin-common.js";
export { formatCliCommand } from "../cli/command-format.js";
export { formatDocsLink } from "../terminal/links.js";
export {
formatWhatsAppConfigAllowFromEntries,
resolveWhatsAppConfigAllowFrom,
resolveWhatsAppConfigDefaultTo,
} from "./channel-config-helpers.js";
export { normalizeWhatsAppAllowFromEntries } from "../channels/plugins/normalize/whatsapp.js";
export {
listWhatsAppDirectoryGroupsFromConfig,
listWhatsAppDirectoryPeersFromConfig,
} from "../../extensions/whatsapp/src/directory-config.js";
export {
collectAllowlistProviderGroupPolicyWarnings,
collectOpenGroupPolicyRouteAllowlistWarnings,
} from "../channels/plugins/group-policy-warnings.js";
export { buildAccountScopedDmSecurityPolicy } from "../channels/plugins/helpers.js";
export { resolveWhatsAppOutboundTarget } from "../whatsapp/resolve-outbound-target.js";
export { isWhatsAppGroupJid, normalizeWhatsAppTarget } from "../whatsapp/normalize.js";
export {
resolveAllowlistProviderRuntimeGroupPolicy,
resolveDefaultGroupPolicy,
} from "../config/runtime-group-policy.js";
export {
resolveWhatsAppGroupRequireMention,
resolveWhatsAppGroupToolPolicy,
} from "../../extensions/whatsapp/api.js";
export {
createWhatsAppOutboundBase,
resolveWhatsAppGroupIntroHint,
resolveWhatsAppMentionStripRegexes,
} from "../channels/plugins/whatsapp-shared.js";
export { resolveWhatsAppHeartbeatRecipients } from "../channels/plugins/whatsapp-heartbeat.js";
export { WhatsAppConfigSchema } from "../config/zod-schema.providers-whatsapp.js";
export { createActionGate, readStringParam } from "../agents/tools/common.js";
export { createPluginRuntimeStore } from "./runtime-store.js";
export { normalizeE164 } from "../utils.js";
export {
hasAnyWhatsAppAuth,
listEnabledWhatsAppAccounts,
resolveWhatsAppAccount,
} from "../../extensions/whatsapp/api.js";
export {
HEARTBEAT_PROMPT,
HEARTBEAT_TOKEN,
WA_WEB_AUTH_DIR,
createWaSocket,
formatError,
loginWeb,
logWebSelfId,
logoutWeb,
monitorWebChannel,
pickWebChannel,
resolveHeartbeatRecipients,
runWebHeartbeatOnce,
sendMessageWhatsApp,
sendReactionWhatsApp,
waitForWaConnection,
webAuthExists,
} from "../channel-web.js";
export {
extractMediaPlaceholder,
extractText,
getActiveWebListener,
getWebAuthAgeMs,
monitorWebInbox,
readWebSelfId,
sendPollWhatsApp,
startWebLoginWithQr,
waitForWebLogin,
} from "../plugins/runtime/runtime-whatsapp-boundary.js";
export { DEFAULT_WEB_MEDIA_BYTES } from "../../extensions/whatsapp/src/auto-reply/constants.js";
export {
getDefaultLocalRoots,
loadWebMedia,
loadWebMediaRaw,
optimizeImageToJpeg,
} from "../media/web-media.js";
export { getStatusCode } from "../plugins/runtime/runtime-whatsapp-boundary.js";
export { createRuntimeWhatsAppLoginTool as createWhatsAppLoginTool } from "../plugins/runtime/runtime-whatsapp-boundary.js";