核心功能:消息 @某人 与 引用回复
能力介绍
在群聊或应用交互场景中,**@某人(Mention)与引用(Quote)**是提升沟通效率的核心工具。
- @某人:通过在文本消息中指定
userid,被提及的用户会收到强提醒(如手机振动、红点通知),确保关键信息不被淹没。 - 引用消息:建立消息间的逻辑关联。发送新消息时附带原消息的内容片段,能够清晰地指明当前回复是针对哪一条历史信息,有效避免多话题并行的逻辑混乱。
10 分钟接入 Demo
-
获取目标 ID:确认需要 @ 的成员
userid(若 @ 所有人则使用@all)。 -
获取原消息 ID:在引用场景下,需先通过回调或历史记录获取原消息的
msgid。 -
构造 JSON 字段:
- 在
text结构中使用mentioned_list实现 @ 功能。 - 在消息体中添加
quote_msgid字段实现引用。
- 在
-
接口请求:通过
POST /message/send发送封装好的数据。
API 示例代码
以下示例展示了如何在发送文本消息的同时,实现 @特定成员 并 引用历史消息:
import requests
import json
def send_advanced_text(access_token, to_user, content, mention_ids=None, quote_id=None):
url = f"https://api.qiweapi.com/cgi-bin/message/send?access_token={access_token}"
payload = {
"touser": to_user,
"msgtype": "text",
"agentid": 1000002,
"text": {
"content": content,
"mentioned_list": mention_ids # @成员的userid列表,@所有人用["@all"]
}
}
# 如果需要引用消息,添加引用字段
if quote_id:
payload["quote_msgid"] = quote_id
response = requests.post(url, data=json.dumps(payload))
return response.json()
# 调用示例
# res = send_advanced_text(
# access_token="YOUR_TOKEN",
# to_user="UserID_1",
# content="关于您提到的方案,我已处理完成。",
# mention_ids=["ZhongGong", "LiSi"],
# quote_id="MSG_ID_001"
# )
使用场景说明
- 自动化工单指派:系统监测到异常后,发送消息并 @负责工程师,同时 引用原告警信息,让开发人员秒懂上下文。
- 群组任务协同:在项目群中发布指令,直接 @ 执行人,确保责任落实。
- 客户服务应答:客服机器人回复客户时,通过 引用客户的问题,使对话逻辑更加严谨专业。
FAQ
-
Q:
mentioned_list在个人对话中有效吗?- A:有效。虽然单聊中不需要强提醒,但该列表仍会被解析,且在某些客户端中会有高亮效果。
-
Q:引用功能可以跨应用使用吗?
- A:通常要求
quote_msgid必须是当前应用发送或接收到的消息 ID,跨应用的 ID 无法识别。
- A:通常要求
-
Q:
mentioned_list最多支持多少人?- A:建议单次不超过 100 人,若需通知全员,请直接使用
["@all"]。
- A:建议单次不超过 100 人,若需通知全员,请直接使用
引导入口
- 查看完整文档:QiWe API 文档 - 消息发送高级参数
- 企微官网:QiWe 官网