Files
Moltbot/src/channels/plugins/media-limits.ts

26 lines
872 B
TypeScript

import type { OpenClawConfig } from "../../config/config.js";
import { normalizeAccountId } from "../../routing/session-key.js";
const MB = 1024 * 1024;
export function resolveChannelMediaMaxBytes(params: {
cfg: OpenClawConfig;
// Channel-specific config lives under different keys; keep this helper generic
// so shared plugin helpers don't need channel-id branching.
resolveChannelLimitMb: (params: { cfg: OpenClawConfig; accountId: string }) => number | undefined;
accountId?: string | null;
}): number | undefined {
const accountId = normalizeAccountId(params.accountId);
const channelLimit = params.resolveChannelLimitMb({
cfg: params.cfg,
accountId,
});
if (channelLimit) {
return channelLimit * MB;
}
if (params.cfg.agents?.defaults?.mediaMaxMb) {
return params.cfg.agents.defaults.mediaMaxMb * MB;
}
return undefined;
}