Nox-Lumen MfgNox-Lumen Mfg

Channel messaging

What Channels are

Channels are ingress paths between users and the platform. The same Agent capabilities can surface on different Channels—users keep their existing habits:

Rendering diagram…

Supported Channels

ChannelCapabilitiesTypical use
Web ChatRich text, streaming, uploads, live artifactsDefault web UI
Feishu / LarkIM (@ bot / groups / DM), doc comment triggers, cards, attachmentsCollaboration-first teams
WeComIM (@ bot / groups / DM), cards, filesSOE / government on-prem
Email SMTP · IMAPSend / receive / rule triggers / attachmentsPartners, deliveries
WebhookGeneric HTTP POSTCI / Jira / DOORS triggers

Four adapter responsibilities

1. Identity mapping

External identities (Feishu open_id, WeCom userid, email) → tenant / user / session owner.

  • Strict mapping: external IDs must bind first in the platform
  • Dynamic mapping: auto-provision users (e.g., email domain → tenant)

2. Session resolution

Which Session should receive a message?

  • Group vs DM: groups often shared Session; DM per user
  • Topic isolation: Feishu topics / WeCom threads → different Sessions
  • Time windows: after X idle hours, open a fresh Session

3. Format conversion

SourceCanonical formatReply
Feishu rich text / cardsPlatform MessageFeishu cards / rich text
WeCom markdown cardsPlatform MessageWeCom markdown cards
Email HTML / attachmentsPlatform MessageEmail HTML
Webhook JSONPlatform EventHTTP response

4. Credentials / rate limits / debounce

  • Credentials: Bot tokens / OAuth / secrets in Credential vault
  • Rate limits: per-Channel counters to prevent abuse
  • Debounce: merge duplicate messages within N seconds

Message lifecycle (Feishu example)

1. User @-mentions the bot

2. Feishu posts event to /v1/channel/lark

3. Adapter verifies signature + maps identity (open_id → tenant X user Y)

4. Session Resolver picks Session S (or creates)

5. Normalize Feishu event → Platform Message

6. Debounce check (merge within 5s if configured)

7. Append to Session message stream → Agent loop

8. Agent output → adapter → Feishu reply

DM / group policies

Configurable per Channel:

PolicyBehavior
dm-onlyIgnore group @-mentions
mention-onlyGroups: only messages that @ the bot
allAll group traffic (small dedicated-bot rooms)
command-prefixOnly lines starting with /, @xxx, etc.

Configuration

Manage each Channel under Integrations:

  • Feishu: App ID + App Secret + event subscription URL
  • WeCom: CorpID + AgentID + Secret
  • Email: SMTP / IMAP accounts

See Integrations.

On this page