Skip to content

[Bug]: Feishu DM (p2p) messages routed to webchat instead of feishu channel #44866

@yf880215

Description

@yf880215

Bug type

Regression (worked before, now fails)

Summary

版本: v0.1.8-fix.3 + @openclaw-cn/feishu 0.1.11

问题: 飞书私信消息收到但 messageChannel=webchat,导致无法回复

关键日志:

  • 收到: "feishu[default]: received message ... (p2p)" ✅
  • 路由: "messageChannel=webchat" ❌ (应该是 feishu)

dmChat 配置已设置: { mentionPatterns: [".*"] }

测试: 群聊@正常,我发私信正常,用户回复私信异常

Steps to reproduce

Steps to Reproduce

  1. 配置 Feishu 渠道并启用 dmChat:
    {
      "agents": {
        "list": [{
          "id": "main",
          "dmChat": { "mentionPatterns": [".*"] }
        }]
      },
      "channels": {
        "feishu": {
          "accounts": {
            "default": {
              "enabled": true,
              "autoApprove": true
            }
          }
        }
      }
    }

测试 A - 群聊 @机器人
在飞书群里 @机器人发消息
✅ 机器人正常回复
测试 B - 机器人主动私信
机器人调用 feishu_im_send_message 给用户
✅ 用户收到消息
测试 C - 用户回复私信
用户直接在私信窗口回复机器人
❌ 机器人无响应
查看日志发现:
received message ... (p2p) ← 消息收到了
messageChannel=webchat ← 但路由错了!
预期结果: messageChannel=feishu
实际结果: messageChannel=webchat

Expected behavior

Expected Behavior

When a user sends a message in Feishu DM (private chat), the message should be:

  1. Received by the Feishu channel plugin
  2. Routed with messageChannel=feishu
  3. Processed by the Feishu channel handler
  4. Replied back to the user via Feishu DM

Actual behavior

Actual Behavior

  1. ✅ Message is received by Feishu plugin (visible in logs as "p2p")
  2. ❌ Message gets routed with messageChannel=webchat
  3. ❌ Agent processes it as webchat message (response not visible to user in Feishu)

OpenClaw version

V1.0.8

Operating system

Mac OS 26.2

Install method

No response

Model

kimi 2.5

Provider / routing chain

openclaw kimi 2.5

Config file / key location

No response

Additional provider/model setup details

No response

Logs, screenshots, and evidence

Impact and severity

No response

Additional information

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingregressionBehavior that previously worked and now fails

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions