import type { ChatType } from "../channels/chat-type.js"; import type { OpenClawConfig } from "../config/types.openclaw.js"; import { resolveFirstBoundAccountId } from "../routing/bound-account-read.js"; import { normalizeDeliveryContext } from "../utils/delivery-context.shared.js";
// Delivery targets often carry a transport wrapper (e.g. Matrix `room:<id>` or // LINE `line:group:<id>`), while route bindings commonly store raw peer ids on // `match.peer.id`. Peel wrappers for those lookups, and separately pass the // original target as an exact-match alias for channels whose canonical peer ids // intentionally include prefixes such as `channel:` or `thread:`. const KIND_PREFIX_TO_CHAT_TYPE: Readonly<Record<string, ChatType>> = { "room:": "channel", "channel:": "channel", "conversation:": "channel", "chat:": "channel", "thread:": "channel", "topic:": "channel", "group:": "group", "team:": "group", "user:": "direct", "dm:": "direct", "pm:": "direct",
};
// Matches one leading `<alpha-token>:` wrapper at a time. const GENERIC_PREFIX_PATTERN = /^[a-z][a-z0-9_-]*:/i;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.