企业微信API开发案例:会话存档的语音视频怎么下载转写,做质检归档?

发布时间:2026/10/28 11:19:54
企业微信API开发案例:会话存档的语音视频怎么下载转写,做质检归档? 很多公司不知道企微有个会话存档功能——客户和员工的聊天记录包括文字、语音、视频、文件全部可以拉回来做合规审计。我们团队上周帮一个金融客户搭了质检系统语音转文字这一步踩了不少坑整理出来给大家参考。先确认会话存档能拉到什么会话存档不是默认开启的必须在企微管理后台「存档与审计」里单独开通并且必须告知员工。不开通的话API调用会直接报权限错误。拉会话记录用/wx-api/api/chatarchive/getChatData返回的消息结构里语音和视频类型不会直接给文件只会给mediaIdresp requests.post( f{BASE}/wx-api/api/chatarchive/getChatData, headersHEADERS, json{ startTime: int(time.time()) - 3600, # 时间范围Unix秒 endTime: int(time.time()), cursor: , # 分页游标 limit: 100 } ) # 返回的每条消息里 type 字段 # text → content 直接有文字 # image → mediaId图片 # voice → mediaId语音 voiceDuration秒 # video → mediaId视频 videoDuration # file → mediaId文件下载媒体文件走 CDN 拿mediaId不能直接下载要先调 CDN 接口media_id mdi_xxxxx # 从 getChatData 返回的 mediaId # 第一步获取临时下载凭证 ticket requests.post( f{BASE}/wx-api/api/cdn/getDownloadTicket, headersHEADERS, json{fileId: media_id} )[data][ticket] # 第二步用 ticket 下载文件 download requests.get( f{BASE}/wx-api/api/cdn/download, headersHEADERS, params{fileId: media_id, ticket: ticket}, streamTrue ) # 第三步保存到本地注意文件扩展名 file_type amr if msg_type voice else mp4 with open(fmedia/{media_id}.{file_type}, wb) as f: for chunk in download.iter_content(8192): f.write(chunk)语音转文字自己调 ASR 服务企微API不内置转写功能语音文件下载下来是 AMR 或 SILK 格式不能直接播放必须转成 WAV/MP3 后再调第三方语音识别。整个流程import subprocess, requests # 第一步用 ffmpeg 把 AMR 转成 WAV subprocess.run([ ffmpeg, -i, fmedia/{media_id}.amr, -ar, 16000, -ac, 1, # 16kHz单声道ASR通用格式 fmedia/{media_id}.wav ], checkTrue) # 第二步调 ASR 转写阿里云/腾讯云/Whisper都行 with open(fmedia/{media_id}.wav, rb) as audio: text call_asr_service(audio.read()) # 第三步存回质检数据库 db.save_transcript(chat_id, media_id, text)如果不想自己搭转写服务Eyun 平台提供了一个简化版的转写接口封装需要单独申请权限在开发文档里搜 chatarchive transcribe 就能找到。三个容易忽略的细节一、mediaId 有效期短。企微返回的mediaId只有72 小时有效拉完会话记录要立刻下载别存了 mediaId 过两周再取——到时候 ticket 都拿不到了。二、会话存档拉不到自己发的消息。我们做测试时一开始发现员工通过API发给客户的消息在存档里能拉到但员工自己手机手动发的也能拉到——这跟消息Webhook不同API发的消息Webhook收不到。存档是全量的只要是双方之间的消息都会存。三、视频文件体积大。视频消息可能几十MB/wx-api/api/cdn/download必须用streamTrue边下边写整个文件加载到内存里容易爆。质检归档的标准流程定时调chatarchive/getChatData拉增量会话用 cursor 游标避免漏拉遇到voice/video/image/file类型的消息调 CDN 接口下载媒体文件语音转文字、视频抽帧转文字可以调同一个 ASR转写结果和原始媒体文件一起存对象存储会话元数据存关系库给合规团队一个查询入口按时间/员工/客户关键词搜索聊天内容会话存档这块 API 文档相对冷门但做金融、电商合规的公司几乎都要碰。Eyun上的接口路径比企微原生的统一很多调起来省心不少。

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询