Agent skill · forcedotcom

service-de-channel-routing-configure

Configure routing on a newly-inserted Enhanced `MessagingChannel` so activation will accept it. Given a `{CHANNEL_ID}`, walks through picking a routing type (Omni-Channel Queue, Omni-Flow, Agentforce Service Agent, Digital Worker, or direct User), locates or provisions the target, then PATCHes `SessionHandlerId` (plus `FallbackQueueId` where required). Use between insertion and activation — activation fails server-side with `nullQueueId`/`LiveMessageSetupException` if no valid `SessionHandlerId` is set. Do not use for full end-to-end setup — use `service-de-headless-channel-configure`.

What it needs

About 10k tokens when loaded.

What this skill does

Configuring Channel Routing What this skill does Ensures a MessagingChannel has valid routing configured before activation. The channel's SessionHandler field is a polymorphic foreign key (verified against MessagingChannel.entity.xml, domain="Queue, FlowDefinition, User, BotDefinition, AgenticCtxtDecorDefinition") — it names who the channel routes incoming sessions to. Some targets additionally require a FallbackQueue (an Omni-Channel Queue that catches sessions the primary target can't take). These skills create Enhanced channels (PlatformType=Enhanced, SCRT2). All five SessionHandler domains are writable on Enhanced channels. (A Standard/SCRT1 channel would only accept a Flow as SessionHandler — the server rejects any other domain with "Only flows of type Omni-Channel are supported". These skills never create Standard channels, so that path isn't handled here.) Where this fits: the channel is inserted by service-de-channel-create (or a per-type leaf); this skill sets routing; service-de-channel-settings-configure sets consent; then service-de-channel-activate flips it live — activation requires both routing and consent. The service-de-headless-channel-configure orchestrator runs all four in sequence. Supported routing types — all set SessionHandlerId, some also set FallbackQueueId: Type SessionHandler target Id prefix FallbackQueue --- --- --- --- Omni-Channel Queue Group (Type=Queue) 00G must be null Omni-Flow FlowDefinition (ProcessType=RoutingFlow) 300 required Agentforce Service Agent (ASA) BotDefinition (Type=ExternalCopilot) 0Xx required Digital Worker AgenticCtxtDecorDefinition 1iE required User User (with a RoutingConfiguration) 005 must be null Provisioning behavior: Queue — pick an existing MessagingSession-capable Queue, or create a new Queue + QueueRoutingConfig via Metadata API. Flow / ASA / Digital Worker / User — locate an existing eligible target and PATCH it. …

How to use it

Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:

@skills forcedotcom/service-de-channel-routing-configure

View the source on GitHub

Browse the @skills marketplace