openclaw/extensions/telegram/src/reaction-level.ts

29 lines
842 B
TypeScript

import type { OpenClawConfig } from "openclaw/plugin-sdk/config-runtime";
import {
resolveReactionLevel,
type ReactionLevel,
type ResolvedReactionLevel as BaseResolvedReactionLevel,
} from "openclaw/plugin-sdk/text-runtime";
import { resolveTelegramAccount } from "./accounts.js";
export type TelegramReactionLevel = ReactionLevel;
export type ResolvedReactionLevel = BaseResolvedReactionLevel;
/**
* Resolve the effective reaction level and its implications.
*/
export function resolveTelegramReactionLevel(params: {
cfg: OpenClawConfig;
accountId?: string;
}): ResolvedReactionLevel {
const account = resolveTelegramAccount({
cfg: params.cfg,
accountId: params.accountId,
});
return resolveReactionLevel({
value: account.config.reactionLevel,
defaultLevel: "minimal",
invalidFallback: "ack",
});
}