@lansenger-pm/openclaw-lansenger-channel 2.7.2 → 2.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.fr.md CHANGED
@@ -150,7 +150,6 @@ Ajoutez ces variables à `~/.openclaw/.env` ou à votre environnement :
150
150
  "your-appid": {
151
151
  "appId": "your-appid",
152
152
  "appSecret": "...",
153
- "agentId": "main",
154
153
  "apiGatewayUrl": "https://open.e.lanxin.cn/open/apigw"
155
154
  }
156
155
  }
@@ -169,6 +168,9 @@ Ajoutez ces variables à `~/.openclaw/.env` ou à votre environnement :
169
168
  | `allowFrom` | IDs d'utilisateurs autorisés en DM | `[]` |
170
169
  | `dmSecurity` | Politique DM : `paired`, `allowlist`, `open` | `paired` |
171
170
  | `accounts` | Configuration multi-bot | — |
171
+ | `groupPolicy` | Politique de groupe : `open` (tous les groupes), `allowlist` (groupes autorisés uniquement), `disabled` (messages de groupe désactivés) | `allowlist` |
172
+ | `groupAllowFrom` | IDs de groupes autorisés à déclencher le bot | `[]` |
173
+ | `groups` | Configuration par groupe (requireMention, enabled, allowFrom) | — |
172
174
 
173
175
  ### Configuration multi-bot
174
176
 
@@ -182,10 +184,6 @@ openclaw config set channels.lansenger.accounts.your-appid-2.appId "your-appid-2
182
184
  openclaw config set channels.lansenger.accounts.your-appid-2.appSecret "your-appsecret"
183
185
  openclaw config set channels.lansenger.accounts.your-appid-2.apiGatewayUrl "https://apigw.lx.qianxin.com"
184
186
 
185
- # Lier chaque bot à un agent différent
186
- openclaw config set channels.lansenger.accounts.your-appid-2.agentId "main"
187
- openclaw config set channels.lansenger.accounts.your-appid-1.agentId "test"
188
-
189
187
  # Redémarrer pour appliquer
190
188
  openclaw gateway restart
191
189
  ```
@@ -203,19 +201,18 @@ Structure de configuration résultante :
203
201
  "your-appid-2": {
204
202
  "appId": "your-appid-2",
205
203
  "appSecret": "...",
206
- "agentId": "main",
207
204
  "apiGatewayUrl": "https://apigw.lx.qianxin.com"
208
205
  },
209
206
  "your-appid-1": {
210
207
  "appId": "your-appid-1",
211
208
  "appSecret": "...",
212
- "agentId": "test",
213
209
  "apiGatewayUrl": "https://apigw.lx.qianxin.com"
214
210
  }
215
211
  }
216
212
  }
217
213
  }
218
214
  }
215
+ ```
219
216
 
220
217
  ## Utilisation
221
218
 
@@ -241,21 +238,45 @@ openclaw channels status
241
238
  openclaw gateway call lansenger.status
242
239
  ```
243
240
 
244
- ### Lier un bot à un agent (configuration)
241
+ ### Routage multi-agent
245
242
 
246
- La liaison bot-agent utilise `agentId` dans la configuration du compte ou OpenClaw `bindings[]` :
247
-
248
- ```bash
249
- # agentId par compte (recommandé)
250
- openclaw config set channels.lansenger.accounts.your-appid.agentId "main"
243
+ Utilisez `bindings` pour router les DM Lansenger ou les conversations de groupe vers différents agents (même principe que Feishu/WhatsApp/etc.) :
251
244
 
252
- # Ou via OpenClaw bindings[]
253
- openclaw config set bindings '[{"agentId":"main","match":{"channel":"lansenger","peer":{"kind":"direct","id":"your-userid"}}}]'
245
+ ```json5
246
+ {
247
+ agents: {
248
+ list: [
249
+ { id: "main" },
250
+ { id: "agent-a", workspace: "/home/user/agent-a" },
251
+ ],
252
+ },
253
+ bindings: [
254
+ {
255
+ agentId: "agent-a",
256
+ match: {
257
+ channel: "lansenger",
258
+ peer: { kind: "direct", id: "2285568-xxx" },
259
+ },
260
+ },
261
+ {
262
+ agentId: "agent-a",
263
+ match: {
264
+ channel: "lansenger",
265
+ peer: { kind: "group", id: "group-chat-id" },
266
+ },
267
+ },
268
+ ],
269
+ }
254
270
  ```
255
271
 
256
- > Voir [Configuration multi-bot](#configuration-multi-bot) pour le routage multi-agent.
272
+ Champs de routage :
273
+ * `match.channel`: `"lansenger"`
274
+ * `match.peer.kind`: `"direct"` (DM) ou `"group"` (chat de groupe)
275
+ * `match.peer.id`: ID utilisateur (`2285568-xxx`) ou ID de chat de groupe
276
+
277
+ En mode mono-agent, tous les messages routent vers l'agent par défaut (`main`) automatiquement — pas de bindings nécessaires.
257
278
 
258
- ## Types de messages supportés
279
+ ### Politique de groupe
259
280
 
260
281
  | Type | Description | Méthode API | Direction |
261
282
  |------|-------------|-------------|-----------|
@@ -333,8 +354,7 @@ openclaw-lansenger-channel/
333
354
  │ ├── client.ts # Client API Lansenger (WS, HTTP, médias)
334
355
  │ ├── channel.ts # Plugin de canal OpenClaw
335
356
  │ ├── channel.test.ts # Tests du plugin de canal
336
- ├── runtime.ts # Runtime passerelle (méthodes, handler entrant)
337
- │ └── bindings.ts # Gestionnaire de liaisons multi-bot
357
+ └── runtime.ts # Runtime passerelle (méthodes, handler entrant)
338
358
  ├── skills/
339
359
  │ └── lansenger-messaging/
340
360
  │ └── SKILL.md # Stratégie de messagerie de l'agent
@@ -354,7 +374,7 @@ Utilisez uniquement le **client Lansenger (desktop)**. L'application mobile n'af
354
374
 
355
375
  ### "No binding for botId"
356
376
 
357
- Configurez `agentId` dans la configuration du compte, ou utilisez OpenClaw `bindings[]` pour le routage multi-agent.
377
+ Le routage des agents est géré par la configuration `bindings[]` d'OpenClaw voir [Routage multi-agent](#routage-multi-agent). En mode mono-agent, aucun binding est nécessaire ; les messages routent automatiquement vers l'agent par défaut.
358
378
 
359
379
  ### Déconnexions WebSocket
360
380
 
@@ -373,6 +393,7 @@ Les mises à jour de statut d'approbation utilisent le format DynamicMsg appCard
373
393
 
374
394
  ## Journal des modifications
375
395
 
396
+ - **v2.8.0** — Routage multi-agent via OpenClaw `bindings[]` (remplace `agentId` par compte) ; ajout groupPolicy/groupAllowFrom/groups pour contrôle d'accès groupe ; utilisation de `resolveAgentRoute` SDK pour routage inbound
376
397
  - **v2.7.2** — Ajout fichier VERSION ; complétion changelog dans 5 READMEs ; régénération package-lock.json
377
398
  - **v2.7.0** — Enregistrement des outils comme objets simples (pas fonctions factory) ; utilisation de l'état runtime pour client/target — correction de l'enregistrement des outils de plugin externe
378
399
  - **v2.6.0** — Enregistrement inconditionnel des outils (résolution du compte à l'exécution) ; suppression du ghost delete_message
package/README.md CHANGED
@@ -148,7 +148,6 @@ Add these to `~/.openclaw/.env` or your environment:
148
148
  "your-appid": {
149
149
  "appId": "your-appid",
150
150
  "appSecret": "...",
151
- "agentId": "main",
152
151
  "apiGatewayUrl": "https://open.e.lanxin.cn/open/apigw"
153
152
  }
154
153
  }
@@ -167,6 +166,9 @@ Add these to `~/.openclaw/.env` or your environment:
167
166
  | `allowFrom` | User IDs allowed to DM the bot | `[]` |
168
167
  | `dmSecurity` | DM policy: `paired`, `allowlist`, `open` | `paired` |
169
168
  | `accounts` | Multi-bot configuration | — |
169
+ | `groupPolicy` | Group policy: `open`, `allowlist`, `disabled` | `allowlist` |
170
+ | `groupAllowFrom` | Group IDs allowed to trigger the bot | `[]` |
171
+ | `groups` | Per-group configuration (requireMention, enabled, allowFrom) | — |
170
172
 
171
173
  ### Multi-Bot Configuration
172
174
 
@@ -180,10 +182,6 @@ openclaw config set channels.lansenger.accounts.your-appid-2.appId "your-appid-2
180
182
  openclaw config set channels.lansenger.accounts.your-appid-2.appSecret "your-appsecret"
181
183
  openclaw config set channels.lansenger.accounts.your-appid-2.apiGatewayUrl "https://apigw.lx.qianxin.com"
182
184
 
183
- # Bind each bot to a different agent
184
- openclaw config set channels.lansenger.accounts.your-appid-2.agentId "main"
185
- openclaw config set channels.lansenger.accounts.your-appid-1.agentId "test"
186
-
187
185
  # Restart to apply
188
186
  openclaw gateway restart
189
187
  ```
@@ -201,13 +199,11 @@ The resulting config structure:
201
199
  "your-appid-2": {
202
200
  "appId": "your-appid-2",
203
201
  "appSecret": "...",
204
- "agentId": "main",
205
202
  "apiGatewayUrl": "https://apigw.lx.qianxin.com"
206
203
  },
207
204
  "your-appid-1": {
208
205
  "appId": "your-appid-1",
209
206
  "appSecret": "...",
210
- "agentId": "test",
211
207
  "apiGatewayUrl": "https://apigw.lx.qianxin.com"
212
208
  }
213
209
  }
@@ -240,21 +236,45 @@ openclaw channels status
240
236
  openclaw gateway call lansenger.status
241
237
  ```
242
238
 
243
- ### Bind a bot to an agent (config-based)
244
-
245
- Bot-to-agent binding uses `agentId` in the account config or OpenClaw `bindings[]`:
239
+ ### Multi-agent routing
246
240
 
247
- ```bash
248
- # Per-account agentId (recommended)
249
- openclaw config set channels.lansenger.accounts.your-appid.agentId "main"
241
+ Use `bindings` to route Lansenger DMs or groups to different agents (same pattern as Feishu/WhatsApp/etc.):
250
242
 
251
- # Or via OpenClaw bindings[]
252
- openclaw config set bindings '[{"agentId":"main","match":{"channel":"lansenger","peer":{"kind":"direct","id":"your-userid"}}}]'
243
+ ```json5
244
+ {
245
+ agents: {
246
+ list: [
247
+ { id: "main" },
248
+ { id: "agent-a", workspace: "/home/user/agent-a" },
249
+ ],
250
+ },
251
+ bindings: [
252
+ {
253
+ agentId: "agent-a",
254
+ match: {
255
+ channel: "lansenger",
256
+ peer: { kind: "direct", id: "2285568-xxx" },
257
+ },
258
+ },
259
+ {
260
+ agentId: "agent-a",
261
+ match: {
262
+ channel: "lansenger",
263
+ peer: { kind: "group", id: "group-chat-id" },
264
+ },
265
+ },
266
+ ],
267
+ }
253
268
  ```
254
269
 
255
- > See [Multi-Bot Configuration](#multi-bot-configuration) for multi-agent routing.
270
+ Routing fields:
271
+ * `match.channel`: `"lansenger"`
272
+ * `match.peer.kind`: `"direct"` (DM) or `"group"` (group chat)
273
+ * `match.peer.id`: user ID (`2285568-xxx`) or group chat ID
274
+
275
+ In single-agent mode, all messages route to the default agent (`main`) automatically — no bindings needed.
256
276
 
257
- ## Supported Message Types
277
+ ### Group policy
258
278
 
259
279
  | Type | Description | API Method | Direction |
260
280
  |------|-------------|------------|-----------|
@@ -332,8 +352,7 @@ openclaw-lansenger-channel/
332
352
  │ ├── client.ts # Lansenger API client (WS, HTTP, media)
333
353
  │ ├── channel.ts # OpenClaw channel plugin
334
354
  │ ├── channel.test.ts # Channel plugin tests
335
- ├── runtime.ts # Gateway runtime (methods, inbound handler)
336
- │ └── bindings.ts # Multi-bot binding manager
355
+ └── runtime.ts # Gateway runtime (methods, inbound handler)
337
356
  ├── skills/
338
357
  │ └── lansenger-messaging/
339
358
  │ └── SKILL.md # Agent messaging strategy
@@ -353,7 +372,7 @@ Use the **Lansenger Desktop** client only. The mobile app does not display bot c
353
372
 
354
373
  ### "No binding for botId"
355
374
 
356
- Configure `agentId` in the account config, or use OpenClaw `bindings[]` for multi-agent routing.
375
+ Agent routing is handled by OpenClaw's `bindings[]` config — see [Multi-agent routing](#multi-agent-routing). In single-agent mode, no binding is needed; messages route to the default agent automatically.
357
376
 
358
377
  ### WebSocket disconnects
359
378
 
@@ -372,6 +391,7 @@ Approval status updates use the DynamicMsg appCard format. The `updateCardStatus
372
391
 
373
392
  ## Changelog
374
393
 
394
+ - **v2.8.0** — Use OpenClaw `bindings[]` for multi-agent routing (replaces per-account `agentId`); add groupPolicy/groupAllowFrom/groups for group chat access control; use `resolveAgentRoute` SDK for inbound routing
375
395
  - **v2.7.2** — Add VERSION file; complete changelog in all 5 READMEs; regenerate package-lock.json
376
396
  - **v2.7.0** — Register tools as plain objects (not factory functions); use runtime state for client/target — fixes external plugin tool registration
377
397
  - **v2.6.0** — Register tools unconditionally (resolve account at execute time); removed phantom delete_message tool registration
package/README.zhHans.md CHANGED
@@ -149,7 +149,6 @@ openclaw pairing approve lansenger <配对码>
149
149
  "your-appid": {
150
150
  "appId": "your-appid",
151
151
  "appSecret": "...",
152
- "agentId": "main",
153
152
  "apiGatewayUrl": "https://open.e.lanxin.cn/open/apigw"
154
153
  }
155
154
  }
@@ -168,6 +167,9 @@ openclaw pairing approve lansenger <配对码>
168
167
  | `allowFrom` | 允许私聊的用户 ID | `[]` |
169
168
  | `dmSecurity` | 私聊策略:`paired`、`allowlist`、`open` | `paired` |
170
169
  | `accounts` | 多机器人配置 | — |
170
+ | `groupPolicy` | 群聊策略:`open`(所有群)、`allowlist`(仅允许列表群)、`disabled`(禁止群消息) | `allowlist` |
171
+ | `groupAllowFrom` | 允许触发机器人的群 ID | `[]` |
172
+ | `groups` | 群级配置(requireMention、enabled、allowFrom) | — |
171
173
 
172
174
  ### 多机器人配置
173
175
 
@@ -181,10 +183,6 @@ openclaw config set channels.lansenger.accounts.your-appid-2.appId "your-appid-2
181
183
  openclaw config set channels.lansenger.accounts.your-appid-2.appSecret "your-appsecret"
182
184
  openclaw config set channels.lansenger.accounts.your-appid-2.apiGatewayUrl "https://apigw.lx.qianxin.com"
183
185
 
184
- # 将不同机器人绑定到不同代理
185
- openclaw config set channels.lansenger.accounts.your-appid-2.agentId "main"
186
- openclaw config set channels.lansenger.accounts.your-appid-1.agentId "test"
187
-
188
186
  # 重启生效
189
187
  openclaw gateway restart
190
188
  ```
@@ -202,19 +200,18 @@ openclaw gateway restart
202
200
  "your-appid-2": {
203
201
  "appId": "your-appid-2",
204
202
  "appSecret": "...",
205
- "agentId": "main",
206
203
  "apiGatewayUrl": "https://apigw.lx.qianxin.com"
207
204
  },
208
205
  "your-appid-1": {
209
206
  "appId": "your-appid-1",
210
207
  "appSecret": "...",
211
- "agentId": "test",
212
208
  "apiGatewayUrl": "https://apigw.lx.qianxin.com"
213
209
  }
214
210
  }
215
211
  }
216
212
  }
217
213
  }
214
+ ```
218
215
 
219
216
  ## 使用
220
217
 
@@ -240,21 +237,45 @@ openclaw channels status
240
237
  openclaw gateway call lansenger.status
241
238
  ```
242
239
 
243
- ### 绑定机器人至代理(配置方式)
240
+ ### 多 Agent 路由
244
241
 
245
- 机器人与代理的绑定通过账户配置的 `agentId` OpenClaw `bindings[]` 实现:
242
+ 使用 `bindings` 将蓝信私聊或群聊路由到不同的 Agent(与飞书/WhatsApp 等相同模式):
246
243
 
247
- ```bash
248
- # 按账号设置 agentId(推荐)
249
- openclaw config set channels.lansenger.accounts.your-appid.agentId "main"
250
-
251
- # 或通过 OpenClaw bindings[]
252
- openclaw config set bindings '[{"agentId":"main","match":{"channel":"lansenger","peer":{"kind":"direct","id":"your-userid"}}}]'
244
+ ```json5
245
+ {
246
+ agents: {
247
+ list: [
248
+ { id: "main" },
249
+ { id: "agent-a", workspace: "/home/user/agent-a" },
250
+ ],
251
+ },
252
+ bindings: [
253
+ {
254
+ agentId: "agent-a",
255
+ match: {
256
+ channel: "lansenger",
257
+ peer: { kind: "direct", id: "2285568-xxx" },
258
+ },
259
+ },
260
+ {
261
+ agentId: "agent-a",
262
+ match: {
263
+ channel: "lansenger",
264
+ peer: { kind: "group", id: "group-chat-id" },
265
+ },
266
+ },
267
+ ],
268
+ }
253
269
  ```
254
270
 
255
- > 多代理路由见[多机器人配置](#多机器人配置)。
271
+ 路由字段:
272
+ * `match.channel`: `"lansenger"`
273
+ * `match.peer.kind`: `"direct"`(私聊)或 `"group"`(群聊)
274
+ * `match.peer.id`: 用户 ID(`2285568-xxx`)或群聊 ID
275
+
276
+ 单 Agent 模式下,所有消息自动路由到默认 Agent(`main`),无需 bindings 配置。
256
277
 
257
- ## 支持的消息类型
278
+ ### 群聊策略
258
279
 
259
280
  | 类型 | 说明 | API 方法 | 方向 |
260
281
  |------|------|----------|------|
@@ -332,8 +353,7 @@ openclaw-lansenger-channel/
332
353
  │ ├── client.ts # 蓝信 API 客户端(WS、HTTP、媒体)
333
354
  │ ├── channel.ts # OpenClaw 频道插件
334
355
  │ ├── channel.test.ts # 频道插件测试
335
- ├── runtime.ts # 网关运行时(方法、入站处理器)
336
- │ └── bindings.ts # 多机器人绑定管理器
356
+ └── runtime.ts # 网关运行时(方法、入站处理器)
337
357
  ├── skills/
338
358
  │ └── lansenger-messaging/
339
359
  │ └── SKILL.md # 代理消息策略
@@ -353,7 +373,7 @@ openclaw-lansenger-channel/
353
373
 
354
374
  ### "No binding for botId"
355
375
 
356
- 在账户配置中设置 `agentId`,或使用 OpenClaw `bindings[]` 配置多代理路由。
376
+ Agent 路由由 OpenClaw `bindings[]` 配置管理——见[多 Agent 路由](#多-agent-路由)。单 Agent 模式下无需 bindings,消息自动路由到默认 Agent。
357
377
 
358
378
  ### WebSocket 断连
359
379
 
@@ -372,8 +392,7 @@ openclaw-lansenger-channel/
372
392
 
373
393
  ## 更新日志
374
394
 
375
- ## 更新日志
376
-
395
+ - **v2.8.0** — 多 Agent 路由改用 OpenClaw `bindings[]`(替代 per-account `agentId`);新增 groupPolicy/groupAllowFrom/groups 群聊准入控制;使用 `resolveAgentRoute` SDK 处理 inbound 路由
377
396
  - **v2.7.2** — 新增 VERSION 文件;补全 5 个 README changelog;重新生成 package-lock.json
378
397
  - **v2.7.0** — 工具注册改为纯对象(非工厂函数);使用运行时状态获取 client/target — 修复外部插件工具注册
379
398
  - **v2.6.0** — 无条件注册工具(执行时解析账号);移除幽灵 delete_message 注册
package/README.zhHant.md CHANGED
@@ -150,7 +150,6 @@ openclaw pairing approve lansenger <配對碼>
150
150
  "your-appid": {
151
151
  "appId": "your-appid",
152
152
  "appSecret": "...",
153
- "agentId": "main",
154
153
  "apiGatewayUrl": "https://open.e.lanxin.cn/open/apigw"
155
154
  }
156
155
  }
@@ -169,6 +168,9 @@ openclaw pairing approve lansenger <配對碼>
169
168
  | `allowFrom` | 允許私聊的使用者 ID | `[]` |
170
169
  | `dmSecurity` | 私聊策略:`paired`、`allowlist`、`open` | `paired` |
171
170
  | `accounts` | 多機器人設定 | — |
171
+ | `groupPolicy` | 群聊策略:`open`(所有群)、`allowlist`(僅允許列表群)、`disabled`(禁止群訊息) | `allowlist` |
172
+ | `groupAllowFrom` | 允許觸發機器人的群 ID | `[]` |
173
+ | `groups` | 群級設定(requireMention、enabled、allowFrom) | — |
172
174
 
173
175
  ### 多機器人設定
174
176
 
@@ -182,10 +184,6 @@ openclaw config set channels.lansenger.accounts.your-appid-2.appId "your-appid-2
182
184
  openclaw config set channels.lansenger.accounts.your-appid-2.appSecret "your-appsecret"
183
185
  openclaw config set channels.lansenger.accounts.your-appid-2.apiGatewayUrl "https://apigw.lx.qianxin.com"
184
186
 
185
- # 將不同機器人綁定至不同代理
186
- openclaw config set channels.lansenger.accounts.your-appid-2.agentId "main"
187
- openclaw config set channels.lansenger.accounts.your-appid-1.agentId "test"
188
-
189
187
  # 重啟生效
190
188
  openclaw gateway restart
191
189
  ```
@@ -203,19 +201,18 @@ openclaw gateway restart
203
201
  "your-appid-2": {
204
202
  "appId": "your-appid-2",
205
203
  "appSecret": "...",
206
- "agentId": "main",
207
204
  "apiGatewayUrl": "https://apigw.lx.qianxin.com"
208
205
  },
209
206
  "your-appid-1": {
210
207
  "appId": "your-appid-1",
211
208
  "appSecret": "...",
212
- "agentId": "test",
213
209
  "apiGatewayUrl": "https://apigw.lx.qianxin.com"
214
210
  }
215
211
  }
216
212
  }
217
213
  }
218
214
  }
215
+ ```
219
216
 
220
217
  ## 使用
221
218
 
@@ -241,21 +238,45 @@ openclaw channels status
241
238
  openclaw gateway call lansenger.status
242
239
  ```
243
240
 
244
- ### 綁定機器人至代理(配置方式)
241
+ ### 多 Agent 路由
245
242
 
246
- 機器人與代理的綁定透過帳戶設定的 `agentId` OpenClaw `bindings[]` 實現:
243
+ 使用 `bindings` 將藍信私聊或群組聊天路由至不同的 Agent(與飛書/WhatsApp 等相同模式):
247
244
 
248
- ```bash
249
- # 按帳號設定 agentId(建議)
250
- openclaw config set channels.lansenger.accounts.your-appid.agentId "main"
251
-
252
- # 或透過 OpenClaw bindings[]
253
- openclaw config set bindings '[{"agentId":"main","match":{"channel":"lansenger","peer":{"kind":"direct","id":"your-userid"}}}]'
245
+ ```json5
246
+ {
247
+ agents: {
248
+ list: [
249
+ { id: "main" },
250
+ { id: "agent-a", workspace: "/home/user/agent-a" },
251
+ ],
252
+ },
253
+ bindings: [
254
+ {
255
+ agentId: "agent-a",
256
+ match: {
257
+ channel: "lansenger",
258
+ peer: { kind: "direct", id: "2285568-xxx" },
259
+ },
260
+ },
261
+ {
262
+ agentId: "agent-a",
263
+ match: {
264
+ channel: "lansenger",
265
+ peer: { kind: "group", id: "group-chat-id" },
266
+ },
267
+ },
268
+ ],
269
+ }
254
270
  ```
255
271
 
256
- > 多代理路由見[多機器人設定](#多機器人設定)。
272
+ 路由欄位:
273
+ * `match.channel`: `"lansenger"`
274
+ * `match.peer.kind`: `"direct"`(私聊)或 `"group"`(群組聊天)
275
+ * `match.peer.id`: 使用者 ID(`2285568-xxx`)或群組聊天 ID
276
+
277
+ 單 Agent 模式下,所有訊息自動路由至預設 Agent(`main`),無需 bindings 設定。
257
278
 
258
- ## 支援的訊息類型
279
+ ### 羣聊策略
259
280
 
260
281
  | 類型 | 說明 | API 方法 | 方向 |
261
282
  |------|------|----------|------|
@@ -333,8 +354,7 @@ openclaw-lansenger-channel/
333
354
  │ ├── client.ts # 藍信 API 客戶端(WS、HTTP、媒體)
334
355
  │ ├── channel.ts # OpenClaw 頻道插件
335
356
  │ ├── channel.test.ts # 頻道插件測試
336
- ├── runtime.ts # 閘道運行時(方法、入站處理器)
337
- │ └── bindings.ts # 多機器人綁定管理器
357
+ └── runtime.ts # 閘道運行時(方法、入站處理器)
338
358
  ├── skills/
339
359
  │ └── lansenger-messaging/
340
360
  │ └── SKILL.md # 代理訊息策略
@@ -354,7 +374,7 @@ openclaw-lansenger-channel/
354
374
 
355
375
  ### "No binding for botId"
356
376
 
357
- 在帳戶設定中設定 `agentId`,或使用 OpenClaw `bindings[]` 設定多代理路由。
377
+ Agent 路由由 OpenClaw `bindings[]` 設定管理——見[多 Agent 路由](#多-agent-路由)。單 Agent 模式下無需 bindings,訊息自動路由至預設 Agent。
358
378
 
359
379
  ### WebSocket 斷線
360
380
 
@@ -373,8 +393,7 @@ openclaw-lansenger-channel/
373
393
 
374
394
  ## 更新日誌
375
395
 
376
- ## 更新日誌
377
-
396
+ - **v2.8.0** — 多 Agent 路由改用 OpenClaw `bindings[]`(替代 per-account `agentId`);新增 groupPolicy/groupAllowFrom/groups 羣聊准入控制;使用 `resolveAgentRoute` SDK 处理 inbound 路由
378
397
  - **v2.7.2** — 新增 VERSION 檔案;補全 5 個 README changelog;重新生成 package-lock.json
379
398
  - **v2.7.0** — 工具註冊改為純物件(非工廠函數);使用運行時狀態取得 client/target — 修復外部插件工具註冊
380
399
  - **v2.6.0** — 無條件註冊工具(執行時解析帳號);移除幽靈 delete_message 註冊
@@ -150,7 +150,6 @@ openclaw pairing approve lansenger <配對碼>
150
150
  "your-appid": {
151
151
  "appId": "your-appid",
152
152
  "appSecret": "...",
153
- "agentId": "main",
154
153
  "apiGatewayUrl": "https://open.e.lanxin.cn/open/apigw"
155
154
  }
156
155
  }
@@ -169,6 +168,9 @@ openclaw pairing approve lansenger <配對碼>
169
168
  | `allowFrom` | 允許私聊的使用者 ID | `[]` |
170
169
  | `dmSecurity` | 私聊策略:`paired`、`allowlist`、`open` | `paired` |
171
170
  | `accounts` | 多機械人設定 | — |
171
+ | `groupPolicy` | 羣聊策略:`open`(所有羣)、`allowlist`(僅允許列表羣)、`disabled`(禁止羣訊息) | `allowlist` |
172
+ | `groupAllowFrom` | 允許觸發機械人的羣 ID | `[]` |
173
+ | `groups` | 羣級設定(requireMention、enabled、allowFrom) | — |
172
174
 
173
175
  ### 多機械人設定
174
176
 
@@ -182,10 +184,6 @@ openclaw config set channels.lansenger.accounts.your-appid-2.appId "your-appid-2
182
184
  openclaw config set channels.lansenger.accounts.your-appid-2.appSecret "your-appsecret"
183
185
  openclaw config set channels.lansenger.accounts.your-appid-2.apiGatewayUrl "https://apigw.lx.qianxin.com"
184
186
 
185
- # 將不同機械人綁定至不同代理
186
- openclaw config set channels.lansenger.accounts.your-appid-2.agentId "main"
187
- openclaw config set channels.lansenger.accounts.your-appid-1.agentId "test"
188
-
189
187
  # 重啟生效
190
188
  openclaw gateway restart
191
189
  ```
@@ -203,19 +201,18 @@ openclaw gateway restart
203
201
  "your-appid-2": {
204
202
  "appId": "your-appid-2",
205
203
  "appSecret": "...",
206
- "agentId": "main",
207
204
  "apiGatewayUrl": "https://apigw.lx.qianxin.com"
208
205
  },
209
206
  "your-appid-1": {
210
207
  "appId": "your-appid-1",
211
208
  "appSecret": "...",
212
- "agentId": "test",
213
209
  "apiGatewayUrl": "https://apigw.lx.qianxin.com"
214
210
  }
215
211
  }
216
212
  }
217
213
  }
218
214
  }
215
+ ```
219
216
 
220
217
  ## 使用
221
218
 
@@ -241,21 +238,45 @@ openclaw channels status
241
238
  openclaw gateway call lansenger.status
242
239
  ```
243
240
 
244
- ### 綁定機械人至代理(配置方式)
241
+ ### 多 Agent 路由
245
242
 
246
- 機械人與代理的綁定透過帳號設定的 `agentId` OpenClaw `bindings[]` 實現:
247
-
248
- ```bash
249
- # 按帳號設定 agentId(建議)
250
- openclaw config set channels.lansenger.accounts.your-appid.agentId "main"
243
+ 使用 `bindings` 將藍信私聊或羣組聊天路由至不同的 Agent(與飛書/WhatsApp 等相同模式):
251
244
 
252
- # 或透過 OpenClaw bindings[]
253
- openclaw config set bindings '[{"agentId":"main","match":{"channel":"lansenger","peer":{"kind":"direct","id":"your-userid"}}}]'
245
+ ```json5
246
+ {
247
+ agents: {
248
+ list: [
249
+ { id: "main" },
250
+ { id: "agent-a", workspace: "/home/user/agent-a" },
251
+ ],
252
+ },
253
+ bindings: [
254
+ {
255
+ agentId: "agent-a",
256
+ match: {
257
+ channel: "lansenger",
258
+ peer: { kind: "direct", id: "2285568-xxx" },
259
+ },
260
+ },
261
+ {
262
+ agentId: "agent-a",
263
+ match: {
264
+ channel: "lansenger",
265
+ peer: { kind: "group", id: "group-chat-id" },
266
+ },
267
+ },
268
+ ],
269
+ }
254
270
  ```
255
271
 
256
- > 多代理路由見[多機械人設定](#多機械人設定)。
272
+ 路由欄位:
273
+ * `match.channel`: `"lansenger"`
274
+ * `match.peer.kind`: `"direct"`(私聊)或 `"group"`(羣組聊天)
275
+ * `match.peer.id`: 使用者 ID(`2285568-xxx`)或羣組聊天 ID
276
+
277
+ 單 Agent 模式下,所有訊息自動路由至預設 Agent(`main`),無需 bindings 設定。
257
278
 
258
- ## 支援的訊息類型
279
+ ### 羣聊策略
259
280
 
260
281
  | 類型 | 說明 | API 方法 | 方向 |
261
282
  |------|------|----------|------|
@@ -333,8 +354,7 @@ openclaw-lansenger-channel/
333
354
  │ ├── client.ts # 藍信 API 客戶端(WS、HTTP、媒體)
334
355
  │ ├── channel.ts # OpenClaw 頻道插件
335
356
  │ ├── channel.test.ts # 頻道插件測試
336
- ├── runtime.ts # 網關運行時(方法、入站處理器)
337
- │ └── bindings.ts # 多機械人綁定管理器
357
+ └── runtime.ts # 網關運行時(方法、入站處理器)
338
358
  ├── skills/
339
359
  │ └── lansenger-messaging/
340
360
  │ └── SKILL.md # 代理訊息策略
@@ -354,7 +374,7 @@ openclaw-lansenger-channel/
354
374
 
355
375
  ### "No binding for botId"
356
376
 
357
- 在帳號設定中設定 `agentId`,或使用 OpenClaw `bindings[]` 設定多代理路由。
377
+ Agent 路由由 OpenClaw `bindings[]` 設定管理——見[多 Agent 路由](#多-agent-路由)。單 Agent 模式下無需 bindings,訊息自動路由至預設 Agent。
358
378
 
359
379
  ### WebSocket 斷線
360
380
 
@@ -373,6 +393,7 @@ openclaw-lansenger-channel/
373
393
 
374
394
  ## 更新日誌
375
395
 
396
+ - **v2.8.0** — 多 Agent 路由改用 OpenClaw `bindings[]`(替代 per-account `agentId`);新增 groupPolicy/groupAllowFrom/groups 羣聊准入控制;使用 `resolveAgentRoute` SDK 处理 inbound 路由
376
397
  - **v2.7.2** — 新增 VERSION 檔案;補全 5 個 README changelog;重新生成 package-lock.json
377
398
  - **v2.7.0** — 工具註冊改為純物件(非工廠函數);使用運行時狀態取得 client/target — 修復外部插件工具註冊
378
399
  - **v2.6.0** — 無條件註冊工具(執行時解析帳號);移除幽靈 delete_message 註冊
@@ -30,7 +30,6 @@ function resolveAccount(cfg, accountId) {
30
30
  const dmPolicy = account?.dmSecurity;
31
31
  const homeChannel = account?.homeChannel;
32
32
  const enabled = Boolean(appId && appSecret);
33
- const agentId = account?.agentId;
34
33
  return {
35
34
  accountId: resolvedAccountId || appId || null,
36
35
  appId,
@@ -40,7 +39,6 @@ function resolveAccount(cfg, accountId) {
40
39
  dmPolicy,
41
40
  homeChannel,
42
41
  enabled,
43
- agentId,
44
42
  };
45
43
  }
46
44
  function makeClient(account, logger) {
@@ -125,7 +123,6 @@ const chatPlugin = createChatChannelPlugin({
125
123
  configured: Boolean(account?.appId && account?.appSecret),
126
124
  appIdStatus: account?.appId ? "available" : "missing",
127
125
  appSecretStatus: account?.appSecret ? "available" : "missing",
128
- agentId: account?.agentId,
129
126
  apiGatewayUrl: account?.apiGatewayUrl,
130
127
  };
131
128
  },
@@ -1 +1 @@
1
- {"version":3,"file":"channel.js","sourceRoot":"","sources":["../../src/channel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"channel.js","sourceRoot":"","sources":["../../src/channel.ts"],"names":[],"mappings":"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"}
@@ -240,17 +240,42 @@ function autoStart(api, accounts) {
240
240
  }
241
241
  async function handleInbound(api, event, account, runningKey) {
242
242
  const chatType = event.isGroup ? "group" : "dm";
243
- const agentId = account.agentId ?? "default";
244
- const sessionKey = `lansenger:${event.chatId}:${chatType}`;
243
+ if (event.isGroup) {
244
+ const groupPolicy = api.runtime.channel.groups.resolveGroupPolicy({
245
+ cfg: api.config,
246
+ channel: "lansenger",
247
+ groupId: event.chatId,
248
+ accountId: account.accountId,
249
+ });
250
+ if (!groupPolicy.allowed) {
251
+ log.info(`inbound: group dropped — groupPolicy not allowed for chatId=${event.chatId}`);
252
+ return;
253
+ }
254
+ const requireMention = api.runtime.channel.groups.resolveRequireMention({
255
+ cfg: api.config,
256
+ channel: "lansenger",
257
+ groupId: event.chatId,
258
+ accountId: account.accountId,
259
+ });
260
+ log.info(`inbound: group allowed — chatId=${event.chatId} requireMention=${requireMention}`);
261
+ }
262
+ const route = api.runtime.channel.routing.resolveAgentRoute({
263
+ cfg: api.config,
264
+ channel: "lansenger",
265
+ accountId: account.accountId,
266
+ peer: { kind: chatType, id: event.chatId },
267
+ });
268
+ const agentId = route.agentId;
269
+ const sessionKey = route.sessionKey;
245
270
  const replyTo = event.chatId;
246
271
  lastInboundChatIds.set(runningKey, event.chatId);
247
- log.info(`inbound: ${chatType} from=${event.senderId} bot=${account.appId.slice(0, 20)}... agent=${agentId}`);
272
+ log.info(`inbound: ${chatType} from=${event.senderId} bot=${account.appId.slice(0, 20)}... agent=${agentId} matchedBy=${route.matchedBy}`);
248
273
  let agentText = event.text;
249
274
  if (event.mediaPaths?.length) {
250
275
  agentText = `${event.text}\n\nAttached files saved locally — use the read tool to view:\n${event.mediaPaths.map((p, i) => `${i + 1}. ${p}`).join("\n")}`;
251
276
  }
252
277
  try {
253
- log.info(`turn.run starting: sessionKey=${sessionKey} agentId=${agentId} accountId=${account.accountId}`);
278
+ log.info(`turn.run starting: sessionKey=${sessionKey} agentId=${agentId} accountId=${account.accountId} matchedBy=${route.matchedBy}`);
254
279
  await api.runtime.channel.turn.run({
255
280
  channel: "lansenger",
256
281
  accountId: account.accountId ?? undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/runtime.ts"],"names":[],"mappings":"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"}
@@ -94,6 +94,29 @@
94
94
  "default": "paired",
95
95
  "description": "DM security policy / 私聊安全策略:paired (配对验证,推荐), allowlist (仅列表用户), open (任何人)"
96
96
  },
97
+ "groupPolicy": {
98
+ "type": "string",
99
+ "enum": ["open", "allowlist", "disabled"],
100
+ "default": "allowlist",
101
+ "description": "Group chat policy / 群聊策略:open (所有群), allowlist (仅允许列表群), disabled (禁止群消息)"
102
+ },
103
+ "groupAllowFrom": {
104
+ "type": "array",
105
+ "items": { "type": "string" },
106
+ "description": "Group IDs allowed to trigger the bot / 允许触发机器人的群聊 ID 列表"
107
+ },
108
+ "groups": {
109
+ "type": "object",
110
+ "description": "Per-group configuration / 单群配置(key 为群聊 chatId)",
111
+ "additionalProperties": {
112
+ "type": "object",
113
+ "properties": {
114
+ "requireMention": { "type": "boolean", "description": "Require @mention to trigger / 是否需要 @提及才触发" },
115
+ "enabled": { "type": "boolean", "description": "Enable/disable this group / 启用/禁用该群" },
116
+ "allowFrom": { "type": "array", "items": { "type": "string" }, "description": "Sender IDs allowed in this group / 该群允许的发送者 ID" }
117
+ }
118
+ }
119
+ },
97
120
  "homeChannel": {
98
121
  "type": "string",
99
122
  "description": "Default chat ID for cron/notification delivery / 定时任务/通知的默认聊天 ID(自动从第一条私聊消息检测)"
@@ -107,7 +130,7 @@
107
130
  "appId": { "type": "string", "description": "Bot App ID / 机器人 App ID" },
108
131
  "appSecret": { "type": "string", "description": "Bot App Secret / 机器人 App Secret" },
109
132
  "apiGatewayUrl": { "type": "string", "description": "API Gateway URL / API 网关地址" },
110
- "agentId": { "type": "string", "description": "Bound OpenClaw agent ID / 绑定的 OpenClaw Agent ID" },
133
+
111
134
  "allowFrom": { "type": "array", "items": { "type": "string" }, "description": "Allowed user IDs / 允许的用户 ID 列表" },
112
135
  "dmSecurity": { "type": "string", "description": "DM security policy / 私聊安全策略" },
113
136
  "enabled": { "type": "boolean", "description": "Whether this bot is enabled / 是否启用" }
@@ -159,7 +182,7 @@
159
182
  "accounts": {
160
183
  "label": "Multi-Bot Accounts / 多机器人账号",
161
184
  "sensitive": false,
162
- "help": "Configure multiple bots with independent App IDs. Each bot can bind to different agents / 配置多个机器人,每个机器人有独立的 App ID,可绑定不同 Agent"
185
+ "help": "Configure multiple bots with independent App IDs. Route to different agents using top-level bindings config (see Multi-agent routing section). / 配置多个机器人,每个机器人有独立的 App ID。多 Agent 路由使用顶层 bindings 配置(参见多 Agent 路由章节)。"
163
186
  },
164
187
  "accounts.*.appId": {
165
188
  "label": "App ID / 蓝信 App ID",
@@ -173,11 +196,7 @@
173
196
  "label": "API Gateway URL / API 网关地址",
174
197
  "sensitive": false
175
198
  },
176
- "accounts.*.agentId": {
177
- "label": "Bound Agent / 绑定的 Agent",
178
- "placeholder": "e.g. main, default / 例如:main, default",
179
- "sensitive": false
180
- },
199
+
181
200
  "accounts.*.allowFrom": {
182
201
  "label": "Allow From / 允许的用户",
183
202
  "sensitive": false
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lansenger-pm/openclaw-lansenger-channel",
3
- "version": "2.7.2",
3
+ "version": "2.8.1",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "files": [
@@ -175,20 +175,21 @@ Returns `totalGroupIds` (count) and `groupIds` (list). Use to discover group cha
175
175
 
176
176
  Multiple Lansenger bots can run simultaneously, each bound to a different OpenClaw agent:
177
177
 
178
- ```json
178
+ ```json5
179
179
  {
180
- "channels": {
181
- "lansenger": {
182
- "accounts": {
183
- "bot-alpha": { "appId": "xxx", "agentId": "security-agent" },
184
- "bot-beta": { "appId": "aaa", "agentId": "hr-agent" }
185
- }
186
- }
187
- }
180
+ agents: {
181
+ list: [
182
+ { id: "main" },
183
+ { id: "agent-a", workspace: "/home/user/agent-a" },
184
+ ],
185
+ },
186
+ bindings: [
187
+ { agentId: "agent-a", match: { channel: "lansenger", peer: { kind: "direct", id: "2285568-xxx" } } },
188
+ ],
188
189
  }
189
190
  ```
190
191
 
191
- Binding is **config-based** — set `agentId` per account in config.
192
+ Multi-agent routing uses OpenClaw's **bindings** config same pattern as Feishu/WhatsApp. In single-agent mode, messages route to the default agent (`main`) automatically.
192
193
 
193
194
  ## DM Security
194
195
 
@@ -1,81 +0,0 @@
1
- /**
2
- * Multi-bot binding manager — binds Lansenger bots to OpenClaw agents.
3
- *
4
- * Supports:
5
- * - Multiple bots bound to different agents
6
- * - Dynamic binding via API
7
- * - Config-based initialization
8
- * - OpenClaw bindings format support
9
- */
10
- export class BindingManager {
11
- bindings = [];
12
- constructor() { }
13
- /** Bind a bot to an agent (creates or updates) */
14
- bindBotToAgent(botId, agentId) {
15
- const idx = this.bindings.findIndex(b => b.botId === botId);
16
- if (idx >= 0) {
17
- this.bindings[idx] = { botId, agentId, lastUpdated: new Date().toISOString() };
18
- }
19
- else {
20
- this.bindings.push({ botId, agentId, lastUpdated: new Date().toISOString() });
21
- }
22
- }
23
- /** Remove a binding by botId */
24
- removeBinding(botId) {
25
- const len = this.bindings.length;
26
- this.bindings = this.bindings.filter(b => b.botId !== botId);
27
- return this.bindings.length < len;
28
- }
29
- /** Check if a bot has a binding */
30
- hasBinding(botId) {
31
- return this.bindings.some(b => b.botId === botId);
32
- }
33
- /** Get the agentId for a bot */
34
- getAgentId(botId) {
35
- return this.bindings.find(b => b.botId === botId)?.agentId;
36
- }
37
- /** Get all bindings */
38
- getAllBindings() {
39
- return [...this.bindings];
40
- }
41
- /** Initialize bindings from config */
42
- initializeFromConfig(accounts, openclawBindings) {
43
- // From account config (appId → agentId)
44
- if (accounts) {
45
- for (const [accountId, account] of Object.entries(accounts)) {
46
- if (account.appId && account.agentId) {
47
- this.bindBotToAgent(account.appId, account.agentId);
48
- }
49
- }
50
- }
51
- // From OpenClaw bindings format
52
- if (openclawBindings) {
53
- for (const binding of openclawBindings) {
54
- if (binding.match?.channel === "Lansenger" && binding.match?.accountId && binding.agentId) {
55
- // Find the account with matching appId
56
- if (accounts) {
57
- for (const [accountId, account] of Object.entries(accounts)) {
58
- if (accountId === binding.match.accountId && account.appId) {
59
- this.bindBotToAgent(account.appId, binding.agentId);
60
- break;
61
- }
62
- }
63
- }
64
- }
65
- }
66
- }
67
- }
68
- /** Clear all bindings */
69
- clear() {
70
- this.bindings = [];
71
- }
72
- }
73
- // Global singleton
74
- let globalBindingManager = null;
75
- export function getBindingManager() {
76
- if (!globalBindingManager) {
77
- globalBindingManager = new BindingManager();
78
- }
79
- return globalBindingManager;
80
- }
81
- //# sourceMappingURL=bindings.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"bindings.js","sourceRoot":"","sources":["../../src/bindings.ts"],"names":[],"mappings":"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"}