Skip to main content

WeCom Rollout

Use this playbook when WeCom is the enterprise chat surface that should own the shipped long-lived runtime. This page is specifically about the current public contract:
  • WeCom is documented as the official AIBot long-connection lane
  • it is not documented as a webhook callback integration
  • gateway run comes after channels serve wecom, not instead of the basic runtime validation

When This Is The Right Playbook

  • the deployment is already standardized on WeCom
  • one hosted provider should back the runtime clearly
  • proactive sends and reply-loop behavior should share the same account identity
  • you want stable work versus alerts accounts before gateway selectors enter the story

Use A Different Playbook If

Step 1: Bring Up The Provider First

Health loop:

Step 2: Start With A Single WeCom Account

Smoke-test it:
Operational notes:
  • the official websocket URL is used by default
  • override websocket_url only for controlled environments or bridge setups
  • ping_interval_s and reconnect_interval_s are the right knobs when the network path needs tuning

Step 3: Move To Stable Named Accounts

Use named accounts before you introduce selectors or longer-lived gateway ownership.
Why this matters:
  • default_account makes the normal lane explicit
  • accounts.<id> creates stable selector targets such as work and alerts
  • gateway ownership stays legible instead of depending on whichever secret was most recently pasted into the top level

Step 4: Choose Serve Or Gateway Ownership

Foreground single-account validation:
Persisted owner contract:
Use channels serve wecom first during rollout. Use gateway run after the account and conversation boundary are already trusted.

Step 5: Keep The Public Contract Truthful

Rules that should stay explicit:
  • WeCom is the shipped AIBot long-connection lane
  • it should not be described as if a webhook callback mode were the same supported path
  • outbound-only surfaces still do not join this reply-loop ownership model

Troubleshooting

Continue Reading