用途:查询火山云通信的话单与录音,适用于用户提出“查一下 callId xxx 的话单”“下载 xxx 的录音”等场景。
鉴权:按优先级解析。优先 ARK_SKILL_API_KEY + ARK_SKILL_API_BASE(火山引擎 arkclaw 企业版,由 arkclaw 注入,脚本以 Bearer 直连网关,无需本地签名);否则 VOLC_ACCESS_KEY + VOLC_SECRET_KEY(兼容 VOLCENGINE_ACCESS_KEY/VOLCENGINE_SECRET_KEY),用户直接提供 AK/SK,脚本本地做 HMAC-SHA256(Volc V4)签名;都没有则报错提示填入 AK/SK。
主要命令: query_cdr 按 callId 精确查话单(V1,CallIdList 必填,走 form-urlencoded);query_cdr_v2 按 callId 批量查话单(JSON body,单次最多 100 条);query_sip_record 按被叫/主叫加时间窗列表查话单(不需 CallId);query_record_url 获取录音下载 URL(顶层返回 DownloadUrl,可选 --save-to 落本地);query_asr_url 获取录音 ASR 转文本下载 URL(V2,单次最多 100 条)。
限制:TOP 上 QueryCallRecordMsg / QueryAudioRecordFileUrl 必须传 CallIdList,不接受按手机号、时间区间或 SingleOpenId 反查;SingleBatchAppend 返回 SingleOpenId 而非 CallId,两者不能互转。若只有 SingleOpenId 或被叫号码,应告知限制并引导去控制台 https://console.volcengine.com/cloud_vms/cdrList 查看,或在业务侧用 SingleOpenId 反查 CallId,或改用 query_sip_record。
关键字段含 CallId、StartTime、AnswerTime、EndTime、Duration、BillSec、CallStatus、Direction、PhoneA/X/B 等;接通判断为 AnswerTime 非空或 BillSec>0 或 CallStatus==ANSWERED。URL 有过期时间,可用 --expire-time 覆盖。构造参数前可先读 references/vms-fundamentals.md(含 SubServiceType 枚举、CallId 前缀、出口 IP 白名单等)。