新闻详情

新闻详情

首页 / 资讯中心 / 详情

企业微信API开发:消息收发与素材上传全链路工程实践

发布时间:2026/9/30 12:11:45来源:尧图网络
企业微信API开发:消息收发与素材上传全链路工程实践
官方文档平台介绍 - QiWe API企微 API 开发文档一、业务痛点与技术背景SCRM 日常文本接待、发报价单 PDF、发产品图、群公告。高频误区把图片 URL 塞进/msg/sendText→ 对端只看到字符串未区分userId/roomId→ 发错会话大文件同步上传 → 网关超时无client_msg_id→ 客服重试导致双发正确模型文本直发图片/文件 上传素材拿 ID → 对应 send method。二、核心架构设计与数据流转业务发送意图 │ ▼ Message Facade │ kindtext ──────────────► method/msg/sendText │ kindimage ──► upload ──► method/msg/sendImage (imageId) │ kindfile ──► upload ──► method/msg/sendFile (fileId) ▼ Delivery Store (client_msg_id, guid, toId, chatType, status)统一入口永远是doApi只改method与params。三、关键代码与配置示例3.1 文本发送带会话类型from enum import Enum class ChatType(str, Enum): USER user ROOM room def send_text(client: QiWeClient, guid: str, to_id: str, chat_type: ChatType, content: str, client_msg_id: str): assert chat_type in (ChatType.USER, ChatType.ROOM) # 落库防重 if not delivery.begin(client_msg_id): return {code: 0, msg: duplicate} body client.call(/msg/sendText, { guid: guid, toId: to_id, content: content, # 部分环境支持 isNoNeedRead 等字段以文档为准 }) delivery.success(client_msg_id, body) return body3.2 图片 / 文件两段式def send_image(client, guid, to_id, path: str, client_msg_id: str): # 1) 上传素材 —— method 名称以文档「素材模块」为准 with open(path, rb) as f: # 若平台提供独立上传 URL走 multipart此处示意 up client.call(/media/uploadImage, { guid: guid, # 或先拿上传凭证再 PUT按文档实现 fileName: os.path.basename(path), }) image_id up[data][imageId] # 2) 发送 return client.call(/msg/sendImage, { guid: guid, toId: to_id, imageId: image_id, }) def send_file(client, guid, to_id, path: str): up client.call(/media/uploadFile, {guid: guid, fileName: os.path.basename(path)}) file_id up[data][fileId] return client.call(/msg/sendFile, { guid: guid, toId: to_id, fileId: file_id, })3.3 TypeScript Facadeexport async function send(input: { guid: string; toId: string; chatType: user | room; kind: text | image | file; text?: string; filePath?: string; clientMsgId: string; }) { switch (input.kind) { case text: return qiwe.call(/msg/sendText, { guid: input.guid, toId: input.toId, content: input.text, }); case image: { const { imageId } await uploadImage(input.guid, input.filePath!); return qiwe.call(/msg/sendImage, { guid: input.guid, toId: input.toId, imageId, }); } case file: { const { fileId } await uploadFile(input.guid, input.filePath!); return qiwe.call(/msg/sendFile, { guid: input.guid, toId: input.toId, fileId, }); } } }3.4 编码与 Windows 计划任务陷阱□ 全链路 UTF-8请求 JSON、日志、模板文件 □ Windows 任务计划默认代码页可能导致「通道成功、手机乱码」 □ timeout 显式化查询可重试发送重试必须幂等键四、生产环境避坑与安全风控文本接口绝不传二进制附件必须走素材 ID。imageId/fileId来自上传返回禁止手写本地路径当 ID。先打通 sendText再联调附件避免登录态问题与素材问题纠缠。私聊与客户群都要验收roomId 权限不足时文本通、文件不一定通。敏感文件合同/身份证上传前脱敏与鉴权。接口字段以文首官方文档为准。五、本篇交付清单ChatType 显式化文本发送图片/文件两段式Facade 统一出口编码与幂等注意点
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

Spring Boot + Vue家庭设备维修服务系统:源码剖析与部署实战 2026/9/30 12:52:58

Spring Boot + Vue家庭设备维修服务系统:源码剖析与部署实战

家庭设备维修服务系统这类项目,这几年在Java课程设计和毕业设计里出现的频率相当高。原因也简单:业务场景足够贴近生活,需求容易理解,前后端交互清晰,技术栈又能完全踩中企业招聘JD上的主流关键词。我前前后后帮人revi…

阅读更多 →
智诺方AI|看懂AIGC检测底层逻辑,论文降重别再踩无效修改大坑 2026/9/30 12:52:57

智诺方AI|看懂AIGC检测底层逻辑,论文降重别再踩无效修改大坑

智诺方AI|看懂AIGC检测底层逻辑,论文降重别再踩无效修改大坑,智诺方ai官网www.znfai.cn 微信公众号搜一搜 智诺方ai 近几年,国内越来越多高校在论文预审环节引入AIGC检测,很多毕业生迎来了新难题。过去大家只需要埋头降…

阅读更多 →
8300张YOLO头盔检测数据集实战:从训练调优到落地部署全解析 2026/9/30 12:52:50

8300张YOLO头盔检测数据集实战:从训练调优到落地部署全解析

1. 为什么头盔检测值得单独做一个数据集 智慧交通这个方向这两年热度一直没降过,但真正落到实处的项目,往往不是那些炫技的多模态大模型,而是像 头盔检测 这种看起来"小"、实际需求量极大的场景。我接触过好几个做园区安防、工地…

阅读更多 →
SpringBoot+Vue数学题库组卷系统:从组卷算法到PDF导出实战 2026/9/30 12:52:50

SpringBoot+Vue数学题库组卷系统:从组卷算法到PDF导出实战

一个数学老师说要出一套期中考试卷,从前几天就在后台选题、排版、调格式,直到考试前一天晚上才定稿。我就是在那个时候意识到,一个能自动组卷的web系统,并不是把题目堆在一起那么简单。它要把题库、知识点、难度系数、题型分布、重…

阅读更多 →
Windows 11兼容SQL Server 2012/2019的底层原理与实战修复 2026/9/30 12:52:50

Windows 11兼容SQL Server 2012/2019的底层原理与实战修复

1. 这不是SQL Server的错,是Windows 11和老版本SQL Server“代际兼容性”的硬伤你刚装完Windows 11,兴冲冲下载了SQL Server 2012或2019安装包,一路点“下一步”直到最后——服务启动失败,弹窗上赫然写着“错误1067:进…

阅读更多 →
自动标注与数据飞轮:Grounded-SAM、autodistill、X-AnyLabeling 实战 2026/9/30 12:52:49

自动标注与数据飞轮:Grounded-SAM、autodistill、X-AnyLabeling 实战

1. 自动标注这条链路,到底解决了什么痛点做过视觉项目的人都有一个共识:模型效果的上限,往往不是被网络结构卡住的,而是被标注数据卡住的。一个目标检测或者分割任务,前期花在拉框、描边、分类上的时间,经常…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉