企微机器人:显示真实姓名
联系人列表里显示的是
wohR_KCgAA7Jg8dwFDgikQt2k0MZE18A这样一串 ID?这篇文档告诉你怎么把它变成真实姓名。
为什么会显示一串 ID
企业微信对智能机器人收到的消息做了发送者匿名化处理:机器人拿到的不是姓名、也不是 userid,而是一串加密后的会话 ID。Halo 只能把它原样显示出来。
要拿到真实姓名,需要在企业微信客户端里额外授权一个「消息」能力——它和机器人自己的连接凭据(Bot ID / Secret)是两回事,授权后会得到一个专用链接,把链接填进 Halo 即可。
这一步是可选的
不配置也完全不影响收发消息、不影响数字人回复,只是联系人显示为 ID。
操作步骤
第一步:在企业微信中授权「消息」能力
- 打开企业微信电脑端
- 进入 「工作台」→「智能机器人」
- 选中你在 Halo 里使用的那个机器人
- 进入该机器人的 「可使用权限」(权限)页面
- 找到 「消息」 这一项,点击授权
- 授权完成后会给出一个链接,点击复制
复制到的链接形如:
https://qyapi.weixin.qq.com/mcp/v2/bot/msg?apikey=xxxxxxxx这个链接是凭据
链接里的 apikey 等同于密码,拿到的人可以读取该机器人的会话列表。不要发到群里、不要写进文档或代码仓库。
第二步:把链接粘贴进 Halo
- 打开 Halo,进入 设置 → 消息通道
- 展开对应的机器人实例卡片
- 找到 「姓名解析 URL」(标注为「可选」)
- 粘贴链接,保存
保存后无需重启,下一条进来的消息就会触发解析。
怎么确认生效了
姓名解析 URL 下方会显示当前状态:
| 状态提示 | 含义 |
|---|---|
| 已保存,下一条消息生效(灰色) | 填好了,还没有新消息来触发 |
| 正在解析发送者姓名(绿色) | 已生效 |
| 授权已过期(7 天有效)(琥珀色) | 需要回企业微信重新授权并重新复制链接 |
| 上次请求失败,将自动重试(琥珀色) | 网络或服务端临时问题,Halo 会自动重试 |
授权 7 天过期
企业微信的这个授权自 授权时起 7 天有效,过期后需要重新走一遍第一步并重新粘贴链接。
过期时 Halo 会在会话列表上方提示,已经解析过的联系人姓名不会丢失,只是新出现的联系人会继续显示 ID。
能解析什么、不能解析什么
- ✅ 私聊联系人:显示对方的真实姓名
- ✅ 群聊会话:显示群的名称
- ❌ 群里的某个发言人:企业微信不提供这个映射,群内发言者仍是 ID
- ⚠️ 只覆盖最近约 20 个会话:企业微信一次只返回最近的会话列表。很久没有互动的联系人可能解析不到,等对方再次发消息、进入最近会话后才会被补上
另外,你随时可以在 Halo 的会话列表里手动给某个会话改名(如「前端组」「张三」)。手动改的名字优先级最高,不会被自动解析覆盖。
常见问题
Q:填了链接,联系人还是 ID?
等一条新消息进来再看——解析是在收到消息时触发的。仍然不行就检查状态提示是不是「授权已过期」。
Q:为什么群里 @ 我的同事还是显示 ID?
企业微信只提供会话级别的名称,不提供群成员的身份映射。想知道某人的 userid,可以让他私聊机器人问「我的用户 ID 是什么」,数字人能直接从上下文里读出来。
Q:Bot ID / Secret 已经填了,为什么还要这个?
Bot ID / Secret 是机器人的连接凭据,只负责收发消息;姓名解析是另一项成员授权的能力,两者互不替代。
Q:能不能不授权?
可以。ID 只是显示得不好看,机器人的全部功能都不受影响。
相关文档
- 接入企业微信 Bot — 机器人从零配置
- 企业微信机器人进阶玩法 — 回复范围、主动通知、群聊行为
- 企业微信官方文档 — 「消息」能力的平台侧说明