openclaw
Version:
Multi-channel AI gateway with extensible messaging integrations
103 lines (102 loc) • 4.34 kB
JavaScript
import { c as resolveSessionStorePathCore } from "./paths-Bonddxfk.mjs";
import { u as readSessionUpdatedAtCore } from "./session-accessor.sqlite-entry-DLa7_9ui.mjs";
import "./session-accessor-C3ljJ974.mjs";
import { o as readSessionUpdatedAtInWorker } from "./session-entry-read-runtime-BdnQjoL6.mjs";
import { o as resolveAgentRoute } from "./resolve-route-DeZAxBYa.mjs";
import { a as resolveEnvelopeFormatOptions, t as formatAgentEnvelope } from "./envelope-UOtEX9A5.mjs";
//#region src/channels/inbound-event/envelope.ts
/** @deprecated Use createChannelInboundEnvelopeBuilderAsync. Retained until the next Plugin SDK major. */
function createChannelInboundEnvelopeBuilder(params) {
const storePath = resolveSessionStorePathCore(params.cfg.session?.store, { agentId: params.route.agentId });
return createEnvelopeFormatter(params.cfg, () => readSessionUpdatedAtCore({
storePath,
sessionKey: params.route.sessionKey
}));
}
/** Prepare once per inbound message; history formatting remains synchronous and SQL-free. */
async function createChannelInboundEnvelopeBuilderAsync(params) {
const storePath = resolveSessionStorePathCore(params.cfg.session?.store, { agentId: params.route.agentId });
const previousTimestamp = await readSessionUpdatedAtInWorker({
storePath,
sessionKey: params.route.sessionKey
});
return createEnvelopeFormatter(params.cfg, () => previousTimestamp);
}
function createEnvelopeFormatter(cfg, readPreviousTimestamp) {
const envelope = resolveEnvelopeFormatOptions(cfg);
return (input) => {
const previousTimestamp = input.previousTimestamp === null ? void 0 : input.previousTimestamp ?? readPreviousTimestamp();
return formatAgentEnvelope({
...input,
previousTimestamp,
envelope: input.envelope ?? envelope
});
};
}
/** @deprecated Use resolveAgentRoute and createChannelInboundEnvelopeBuilderAsync. Retained until the next Plugin SDK major. */
function resolveChannelInboundRouteEnvelope(params) {
const route = resolveAgentRoute(params);
return {
route,
buildEnvelope: createChannelInboundEnvelopeBuilder({
cfg: params.cfg,
route
})
};
}
/** @deprecated Use createChannelInboundEnvelopeBuilderAsync. Retained for released SDK callbacks until the next major. */
function createInboundEnvelopeBuilder(params) {
const storePath = params.resolveStorePath(params.sessionStore, { agentId: params.route.agentId });
const envelopeOptions = params.resolveEnvelopeFormatOptions(params.cfg);
return (input) => {
const previousTimestamp = params.readSessionUpdatedAt({
storePath,
sessionKey: params.route.sessionKey
});
const body = params.formatAgentEnvelope({
channel: input.channel,
from: input.from,
timestamp: input.timestamp,
previousTimestamp,
envelope: envelopeOptions,
body: input.body
});
return {
storePath,
body
};
};
}
/** @deprecated Use resolveAgentRoute and createChannelInboundEnvelopeBuilderAsync. Retained for released SDK callbacks until the next major. */
function resolveInboundRouteEnvelopeBuilder(params) {
const route = params.resolveAgentRoute({
cfg: params.cfg,
channel: params.channel,
accountId: params.accountId,
peer: params.peer
});
return {
route,
buildEnvelope: createInboundEnvelopeBuilder({
...params,
route
})
};
}
/** @deprecated Use resolveAgentRoute and createChannelInboundEnvelopeBuilderAsync. Retained for released SDK callbacks until the next major. */
function resolveInboundRouteEnvelopeBuilderWithRuntime(params) {
return resolveInboundRouteEnvelopeBuilder({
cfg: params.cfg,
channel: params.channel,
accountId: params.accountId,
peer: params.peer,
resolveAgentRoute: (routeParams) => params.runtime.routing.resolveAgentRoute(routeParams),
sessionStore: params.sessionStore,
resolveStorePath: params.runtime.session.resolveStorePath,
readSessionUpdatedAt: params.runtime.session.readSessionUpdatedAt,
resolveEnvelopeFormatOptions: params.runtime.reply.resolveEnvelopeFormatOptions,
formatAgentEnvelope: params.runtime.reply.formatAgentEnvelope
});
}
//#endregion
export { resolveInboundRouteEnvelopeBuilder as a, resolveChannelInboundRouteEnvelope as i, createChannelInboundEnvelopeBuilderAsync as n, resolveInboundRouteEnvelopeBuilderWithRuntime as o, createInboundEnvelopeBuilder as r, createChannelInboundEnvelopeBuilder as t };