27 lines
782 B
TypeScript
27 lines
782 B
TypeScript
import {
|
|
buildChannelOutboundSessionRoute,
|
|
type ChannelOutboundSessionRouteParams,
|
|
} from "openclaw/plugin-sdk/core";
|
|
import { isWhatsAppGroupJid, normalizeWhatsAppTarget } from "./runtime-api.js";
|
|
|
|
export function resolveWhatsAppOutboundSessionRoute(params: ChannelOutboundSessionRouteParams) {
|
|
const normalized = normalizeWhatsAppTarget(params.target);
|
|
if (!normalized) {
|
|
return null;
|
|
}
|
|
const isGroup = isWhatsAppGroupJid(normalized);
|
|
return buildChannelOutboundSessionRoute({
|
|
cfg: params.cfg,
|
|
agentId: params.agentId,
|
|
channel: "whatsapp",
|
|
accountId: params.accountId,
|
|
peer: {
|
|
kind: isGroup ? "group" : "direct",
|
|
id: normalized,
|
|
},
|
|
chatType: isGroup ? "group" : "direct",
|
|
from: normalized,
|
|
to: normalized,
|
|
});
|
|
}
|