本技能提供以下核心功能:
重要:出于安全考虑,本技能严格禁止调用以下敏感接口:
| 序号 | 禁止调用的接口 | 用途 | 风险等级 |
|---|---|---|---|
| ------ | -------------- | ------ | --------- |
| 1 | https://upush.umeng.com/hsf/push/sendMsg | 发送推送消息 | 🔴 高危 |
| 2 | https://upush.umeng.com/hsf/setting/updateApp | 修改应用配置 | 🔴 高危 |
| 3 | https://upush.umeng.com/hsf/setting/updateChannelInfo | 修改渠道信息 | 🔴 高危 |
| 4 | https://upush.umeng.com/hsf/setting/saveReceipt | 保存回执配置 | 🟡 中危 |
违反后果:
允许调用的接口(只读操作):
基础信息查询:
https://upush.umeng.com/hsf/home/listAll - 获取应用列表https://upush.umeng.com/hsf/home/allAppAndGroup - 获取所有应用和分组https://upush.umeng.com/hsf/home/isFlowPackageUser - 检查是否为流量包用户https://upush.umeng.com/hsf/home/getUserProInfo - 获取用户专业版信息https://upush.umeng.com/hsf/setting/appInfo - 获取应用详细信息https://upush.umeng.com/hsf/setting/getChannelInfo - 获取渠道配置信息https://upush.umeng.com/hsf/setting/showLbs - 检查 LBS 设置https://upush.umeng.com/hsf/setting/getBenefits - 获取权益信息概览页面查询:
https://upush.umeng.com/hsf/overview/getAppCnt - 获取应用数量统计https://upush.umeng.com/hsf/overview/getTransformData - 获取转化数据https://upush.umeng.com/hsf/overview/queryThirdQuota - 查询第三方指标https://upush.umeng.com/hsf/overview/getAppTrend - 获取应用趋势数据https://upush.umeng.com/hsf/overview/getUserCnt - 获取用户数量统计推送相关查询:
https://upush.umeng.com/hsf/push/messageOverview - 消息概览https://upush.umeng.com/hsf/push/diagnosisSummery - 诊断摘要https://upush.umeng.com/hsf/push/diagnosisReport - 诊断报告https://upush.umeng.com/hsf/push/getToolLifeCycle - 查询消息生命周期https://upush.umeng.com/hsf/push/getToolRequestContent - 查询推送请求内容https://upush.umeng.com/hsf/push/getMsgList - 获取推送消息列表(支持分页和筛选)https://upush.umeng.com/hsf/push/getMsgInfo - 查询单条消息基本信息https://upush.umeng.com/hsf/push/getMsgData - 查询单条消息统计数据https://upush.umeng.com/hsf/push/getPushExpStatData - 查询推送失败分析数据https://upush.umeng.com/hsf/push/getMsgStatChannelData - 查询分通道送达统计https://upush.umeng.com/hsf/tool/canExportMsg - 检查是否可以导出消息设备相关查询:
https://upush.umeng.com/hsf/setting/getDeviceInfo - 查询设备信息https://upush.umeng.com/hsf/setting/deviceMessage - 查询设备消息列表https://upush.umeng.com/hsf/setting/getChannelInfo - 查询厂商通道集成状态数据统计查询:
https://upush.umeng.com/hsf/dataStatistic/getCloseTrend - 获取开关趋势数据概况统计查询:
https://upush.umeng.com/hsf/overview/getAppCnt - 获取应用数量统计https://upush.umeng.com/hsf/overview/getTransformData - 获取转化数据https://upush.umeng.com/hsf/overview/queryThirdQuota - 查询第三方指标(厂商额度)关闭归因分析:
https://upush.umeng.com/hsf/dataStatistic/userPreferenceAnalyzer - 用户偏好分析https://upush.umeng.com/hsf/dataStatistic/pushFrequencyAnalyzer - 推送频次分析https://upush.umeng.com/hsf/dataStatistic/pushMessageAnalyzer - 通知内容分析https://upush.umeng.com/hsf/dataStatistic/deviceDimensionAnalyzer - 设备维度分析本技能不再支持自动从浏览器获取 Cookie,必须由用户手动提供 Cookie 值。
用户可以在对话中直接提供 Cookie,系统会自动验证并保存。
示例格式:
我的友盟 Cookie 是:ctoken=xxx; other_cookies...
处理流程:
ctoken 字段~/.qoderwork/skills/umeng-push-helper/cookie.txt如果用户已经复制了 Cookie 值,可以使用以下命令保存:
python scripts/manage_cookie.py save "用户提供的 cookie 值"
该命令会:
ctoken 字段ctoken 长度(必须 >= 10)如果用户不知道如何获取 Cookie,请提供以下详细步骤:
listAll、appInfo、getMsgList 等)将复制的 Cookie 值通过以下方式之一提供给系统:
python scripts/manage_cookie.py save "[粘贴的值]"系统会验证 Cookie 是否包含以下必需字段:
ctoken - CSRF 令牌(长度必须 >= 10)注意:不再强制要求 umplus_uc_loginid 字段。
首次保存后,后续使用无需重复提供!
系统会自动从 ~/.qoderwork/skills/umeng-push-helper/cookie.txt 读取 Cookie 并携带在请求头中。
Cookie 有效期:
# 检查是否已保存 Cookie
python scripts/manage_cookie.py check
# 加载已保存的 Cookie(查看完整值)
python scripts/manage_cookie.py load
# 验证 Cookie 是否仍然有效
python scripts/manage_cookie.py validate "<cookie_value>"
# 提取 ctoken(用于调试)
python scripts/manage_cookie.py extract-ctoken "<cookie_value>"
https://upush.umeng.com/hsf/home/listAllapplication/json{
"appkey": "",
"platform": "all",
"page": 1, // 页码,默认为 1,用户可查看下一页时 +1
"perPage": 15, // 每页固定 15 条记录
"hasPush": 0,
"appName": "",
"yearQuotaSts": 0
}
Content-Type: application/json;charset=UTF-8
Cookie: <从 cookie.txt 读取>
x-csrf-token: <从 Cookie 中提取的 ctoken 值>
重要说明:系统会自动从 Cookie 中提取 ctoken 的值并添加到 x-csrf-token 请求头中,无需手动操作。
从响应数据中提取 data.appList 数组,该数组包含应用信息。对每个应用提取以下字段:
appkey - 应用的唯一标识appName - 应用名称platform - 平台类型(android/iOS/harmony)dau - 日活跃用户数数据解读示例:
================================================================================
账号下共有 739 个应用,共分 50 页,当前处于第 1 页
================================================================================
序号 appkey 应用名称 平台 DAU
--------------------------------------------------------------------------------
1 EXAMPLE_APPKEY_001 嗣曼 PUSH 测试应用 android 2
2 EXAMPLE_APPKEY_002 ROLA 内测版 harmony 0
3 EXAMPLE_APPKEY_003 雨桐 -0529 harmony 0
...
================================================================================
本页显示 15 个应用(第 1-15 个)
下一页:python scripts/get_app_list.py --page 2
上一页:python scripts/get_app_list.py --page 1
================================================================================
默认行为:
page 默认为 1page 参数 +1命令行使用示例:
# 显示第 1 页(默认)
python scripts/get_app_list.py
# 显示第 2 页
python scripts/get_app_list.py 2
# 显示第 3 页
python scripts/get_app_list.py --page 3
# 查看最后一页
python scripts/get_app_list.py --page 50
输出信息包含:
data.total 字段解析)data.totalPage 字段解析)data.currPage 字段解析)列表字段说明:
用户需要指定一个 appkey 参数
appkeyappkey 依次调用以下三个接口API 信息:
https://upush.umeng.com/hsf/push/messageOverview{"appkey": "<用户输入的 appkey>", "dateType": "7d"}响应解析:
从 data.list 数组中提取每个项目的 name 和 value 字段,以列表形式展示。
API 信息:
https://upush.umeng.com/hsf/push/diagnosisSummery{"appkey": "<用户输入的 appkey>", "dateType": "7d"}响应解析:
直接展示 data 字段的内容。
API 信息:
https://upush.umeng.com/hsf/push/diagnosisReport{"appkey": "<用户输入的 appkey>", "dateType": "7d"}响应解析:
提取 data 值,并进行简单分析:
score 字段,显示健康得分issues 或 problems 字段,列出发现的问题suggestions 或 recommendations 字段,列出建议Content-Type: application/json;charset=UTF-8
Cookie: <从 cookie.txt 读取>
x-csrf-token: <从 Cookie 中提取的 ctoken 值>
重要说明:系统会自动从 Cookie 中提取 ctoken 的值并添加到 x-csrf-token 请求头中,无需手动操作。
python scripts/query_app_data.py EXAMPLE_APPKEY_004
主要用途:当用户反馈收不到推送消息时,通过提供 appkey、device_token 和 msg_id,自动分三步排查问题原因。
适用场景:
用户需要提供以下三个参数:
| 参数 | 说明 | 如何获取 |
|---|---|---|
| ------ | ------ | ---------- |
| appkey | 应用的唯一标识 | 运行 python scripts/get_app_list.py 查看应用列表 |
| device_token | 设备的推送 token | 从客户端日志、数据库或友盟后台的设备管理中获取 |
| msg_id | 消息 ID(22 位) | 从友盟后台的推送记录中点击具体某条推送查看详情 |
系统会依次执行以下四个步骤,并提供智能诊断建议:
API 信息:
https://upush.umeng.com/hsf/push/getToolLifeCycle{
"appkey": "<应用 key>",
"deviceToken": "<设备 token>",
"msgId": "<消息 ID>"
}
返回信息:
诊断逻辑:
❌ 无发送时间 → 推送任务未执行或被取消
✅ 有发送时间,❌ 无到达时间 → 网络问题、通道延迟、设备异常
✅ 有到达时间,❌ 无点击时间 → 正常现象(用户未点击)
API 信息:
https://upush.umeng.com/hsf/setting/getDeviceInfo{
"appkey": "<应用 key>",
"deviceToken": "<设备 token>"
}
返回信息:
诊断逻辑:
❌ 无法获取设备信息 → device_token 不正确或设备从未注册
⚠️ 推送通道为 unknown → 设备推送配置异常
✅ 信息完整 → 设备状态正常
🔍 thirdTokens 字段检查(新增功能):
当检测到设备为安卓设备时,会自动检查 thirdTokens 字段:
```
❌❌❌ 严重问题:未获取到任何厂商 Token ❌❌❌
【问题分析】
【可能原因】
【解决方案】
路径:友盟后台 → 应用配置 → 推送渠道 → 配置对应厂商
```
```
✅ thirdTokens 字段包含内容:
✅ 华为:abc123def456... (有效)
✅ 小米:xyz789ghi012... (有效)
⚠️ OPPO: 空值或无效
✅ 设备已成功注册厂商推送通道
💡 如果仍无法收到消息,请检查:
```
```
⚠️ 警告:虽然有 thirdTokens 字段,但所有厂商 token 均为空或无效
💡 这可能导致离线推送失败
```
API 信息:
https://upush.umeng.com/hsf/push/getToolRequestContent{
"appkey": "<应用 key>",
"msgId": "<消息 ID>"
}
返回信息:
诊断逻辑:
❌ 无法获取推送内容 → msg_id 不正确或记录已删除
✅ 内容完整 → 推送配置正常
API 信息:
https://upush.umeng.com/hsf/setting/deviceMessage{
"appkey": "<应用 key>",
"deviceToken": "<设备 token>",
"startDate": "<从 msg_id 中提取的日期>",
"endDate": "<从 msg_id 中提取的日期>",
"page": 1,
"pageSize": 50
}
返回信息:
分页逻辑:
1. 先查询第 1 页(pageSize=50),获取总记录数 total
2. 如果 total > 50,计算总页数 = (total + 49) / 50
3. 依次查询第 2 页、第 3 页...直到所有页面获取完成
4. 合并所有页面的消息记录
5. 找到目标 msg_id 在列表中的位置
6. 显示目标消息及之后的所有消息(按发送时间降序)
输出格式:
序号 消息 ID 标题 发送时间 状态 通道
----------------------------------------------------------------------------------------------------
🎯1 uaop149177503491390601 点赞 2026-04-01 17:15:13 送达失败 oppo
2 uaqeph2177503481348101 评论 2026-04-01 17:13:33 已忽略 友盟
3 uafzrt6177502881316001 评论 2026-04-01 15:33:33 送达成功 友盟
说明:
# 基本用法
python scripts/query_push_trace.py <appkey> <device_token> <msg_id>
# 示例 1:排查用户反馈的推送问题
python scripts/query_push_trace.py EXAMPLE_APPKEY_001 abc123xyz 1234567890abcdef
# 示例 2:使用真实的参数
python scripts/query_push_trace.py EXAMPLE_APPKEY_002 V1_abc123def456 1a2b3c4d5e6f7g8h9i0j1k
================================================================================
🔍 友盟推送消息排查
================================================================================
应用 Key : EXAMPLE_APPKEY_001
设备 Token : abc123xyz
消息 ID : 1234567890abcdef
================================================================================
开始排查消息未收到的原因...
================================================================================
================================================================================
步骤 1:查询消息生命周期
================================================================================
接口:https://upush.umeng.com/hsf/push/getToolLifeCycle
请求参数:
{
"appkey": "EXAMPLE_APPKEY_001",
"deviceToken": "abc123xyz",
"msgId": "1234567890abcdef"
}
返回结果:
{
"sendTime": "2024-01-01 10:00:00",
"arriveTime": null,
"clickTime": null
}
【消息状态分析】
✅ 消息已发送:2024-01-01 10:00:00
⚠️ 消息已发送但未到达 - 可能原因:
- 设备网络问题
- 推送通道延迟
- 设备已关机或卸载应用
... (步骤 2 和步骤 3) ...
================================================================================
📊 排查结果汇总与诊断建议
================================================================================
发现以下问题:
⚠️ 4. 消息已发送但未到达 - 检查设备网络状态、推送通道配置
建议按以上顺序逐一排查
================================================================================
排查完成
================================================================================
Content-Type: application/json;charset=UTF-8
Cookie: <从 cookie.txt 读取>
x-csrf-token: <从 Cookie 中提取的 ctoken 值>
重要说明:系统会自动从 Cookie 中提取 ctoken 的值并添加到 x-csrf-token 请求头中,无需手动操作。
症状:无 sendTime
可能原因:
- 推送任务被取消
- 定时推送时间未到
- 推送配额已用完
建议:检查推送任务状态和配额使用情况
症状:有 sendTime,无 arriveTime
可能原因:
- 设备网络异常(离线/弱网)
- 推送通道侧延迟或失败
- 设备已关机或卸载应用
- 设备通知权限被关闭
建议:
1. 确认设备在线状态
2. 检查推送通道配置
3. 引导用户检查通知权限
症状:有 sendTime 和 arriveTime,无 clickTime
说明:这是正常现象,不属于技术问题
建议:优化推送内容和时机,提升点击率
症状:getDeviceInfo 返回错误
可能原因:
- device_token 不正确或已失效
- 设备从未注册过推送
- 设备已被删除
建议:重新获取正确的 device_token
用户需要指定一个 appkey 参数
appkeyappkey 调用周报 API(具体 API 端点待用户提供或补充)症状:API 返回 401、403 或其他认证错误
处理步骤:
python scripts/manage_cookie.py save "[新值]"排查步骤:
当用户请求调用禁止的接口时:
必须明确拒绝并回复:
抱歉,出于安全考虑,本技能禁止调用以下类型的接口:
❌ 发送推送消息 (sendMsg)
❌ 修改应用配置 (updateApp)
❌ 修改渠道信息 (updateChannelInfo)
❌ 保存回执配置 (saveReceipt)
这些操作涉及账号安全和数据修改,需要您登录友盟官方后台 (https://upush.umeng.com) 手动执行。
本技能仅支持查询类操作(只读),如:
✅ 获取应用列表
✅ 查询推送数据
✅ 查看诊断报告
处理原则:
cookie.txt - 存储用户登录 CookieSKILL.md - 技能定义文档scripts/manage_cookie.py - Cookie 管理工具(保存、加载、验证、提取 ctoken)scripts/get_app_list.py - 获取应用列表scripts/query_app_data.py - 查询应用数据(三个接口)scripts/query_push_trace.py - 推送轨迹查询(消息排查工具)scripts/query_switch_statistics.py - 开关统计查询scripts/query_close_attribution.py - 关闭归因分析(新增功能)⭐scripts/query_overview_stats.py - 概况统计查询(新增功能)⭐scripts/query_msg_list.py - 获取消息列表(新增功能)⭐scripts/query_msg_detail.py - 单条消息详情查询(新增功能)⭐scripts/switch_chart_template.html - 开关统计 HTML 图表模板scripts/close_attribution_template.html - 关闭归因 HTML 图表模板scripts/overview_stats_template.html - 概况统计 HTML 图表模板scripts/api_request.py - API 请求封装主要用途:深度分析用户关闭推送功能的原因,从四个维度提供详细的归因数据,帮助优化推送策略。
适用场景:
接口: POST https://upush.umeng.com/hsf/dataStatistic/userPreferenceAnalyzer
功能: 分析用户关闭推送的偏好原因分布
参数:
{
"appkey": "<应用 key>",
"datetype": "7d" // 支持:1d(昨日), 7d(近 7 日)
}
展示形式:
接口: POST https://upush.umeng.com/hsf/dataStatistic/pushFrequencyAnalyzer
功能: 分析推送频次与用户关闭的关系
参数: 同用户偏好分析
展示形式:
接口: POST https://upush.umeng.com/hsf/dataStatistic/pushMessageAnalyzer
功能: 分析每条推送消息的关闭情况,提供详细的消息内容和效果数据
参数: 同用户偏好分析
展示字段:
展示形式:
接口: POST https://upush.umeng.com/hsf/dataStatistic/deviceDimensionAnalyzer
功能: 分析不同设备类型的关闭分布
参数: 同用户偏好分析
展示形式:
# 查询近 7 日数据(默认)
python scripts/query_close_attribution.py EXAMPLE_APPKEY_005
# 查询昨日数据
python scripts/query_close_attribution.py EXAMPLE_APPKEY_005 1d
# 查询近 7 日数据
python scripts/query_close_attribution.py EXAMPLE_APPKEY_005 7d
告诉助手:
================================================================================
🔍 友盟推送 - 关闭归因分析
================================================================================
应用 Key : EXAMPLE_APPKEY_005
时间范围 : 近 7 日
================================================================================
👤 正在查询 用户偏好分析...
✅ 用户偏好分析 查询成功
================================================================================
👤 用户偏好分析 (近 7 日)
================================================================================
【用户关闭原因偏好分布】
--------------------------------------------------------------------------------
1. 推送太频繁 12,345 45.67% |████████████████████░░░░░░░░░░░░░░░░░░░░░░░░░░|
2. 内容不相关 8,234 30.45% |███████████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░|
3. 打扰休息 4,567 16.89% |████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░|
...
📱 推送频次分析...
📝 通知内容分析...
📲 设备维度分析...
🎨 正在生成可视化图表报告...
✅ 图表报告已生成:/path/to/report.html
用户偏好分析:
推送频次分析:
通知内容分析:
设备维度分析:
1d(昨日)和7d(近 7 日),不可随意传其他日期根据分析结果,可以:
主要用途:一站式查询应用的核心运营数据,包括应用概况、推送转换漏斗、厂商通道额度(仅安卓),支持生成美观的 HTML 可视化报告。
适用场景:
接口: POST https://upush.umeng.com/hsf/overview/getAppCnt
功能: 获取应用的总体运营数据
参数:
{
"appkey": "<应用 key>"
}
返回指标:
totalDevices - 总设备数todayActive - 今日活跃设备数todayPush - 今日推送数量todayArrive - 今日送达数量todayShow - 今日展示数量todayClick - 今日点击数量各阶段比率计算:
接口: POST https://upush.umeng.com/hsf/overview/getTransformData
功能: 获取推送消息的转换漏斗数据
参数:
{
"appkey": "<应用 key>",
"msgType": "notification", // 或 "message"
"dateType": "1d" // 支持:"1d", "3d", "7d"
}
参数说明:
msgType: notification - 通知栏消息(默认)message - 消息dateType:1d - 昨日(默认)3d - 近 3 日7d - 近 7 日返回指标:
pushCnt - 推送数量arriveCnt - 到达数量showCnt - 展示数量clickCnt - 点击数量接口: POST https://upush.umeng.com/hsf/overview/queryThirdQuota
功能: 查询各大手机厂商的推送通道额度使用情况
参数:
{
"appkey": "<应用 key>"
}
支持的厂商:
返回指标(每个厂商):
total - 总额度remaining - 剩余额度used = total - remaining(已使用额度)usage_rate = used / total × 100%(使用率)# 查询昨日数据(默认)
python scripts/query_overview_stats.py EXAMPLE_APPKEY_005
# 查询并生成 HTML 可视化报告
python scripts/query_overview_stats.py EXAMPLE_APPKEY_005 --html
# 查询近 3 日数据
python scripts/query_overview_stats.py EXAMPLE_APPKEY_005 3d
# 查询近 7 日数据并生成报告
python scripts/query_overview_stats.py EXAMPLE_APPKEY_005 7d --html
# 查询消息类型的近 3 日数据
python scripts/query_overview_stats.py EXAMPLE_APPKEY_005 3d message
# 查询并生成报告(完整参数)
python scripts/query_overview_stats.py EXAMPLE_APPKEY_005 7d notification --html
告诉助手:
================================================================================
📊 友盟推送 - 概况统计
================================================================================
应用 Key : EXAMPLE_APPKEY_005
时间范围 : 昨日
消息类型 : 通知栏消息
================================================================================
📊 正在查询 应用概况...
✅ 应用概况 查询成功
================================================================================
📊 应用概况统计
================================================================================
应用 Key: EXAMPLE_APPKEY_005
--------------------------------------------------------------------------------
指标 数值 占上一阶段比率
--------------------------------------------------------------------------------
总设备数 1,408,306
今日活跃设备 125,432
今日推送 50,000
今日送达 48,500 97.00%
今日展示 35,000 72.16%
今日点击 12,000 34.29%
--------------------------------------------------------------------------------
📱 正在查询 推送转换数据...
✅ 推送转换数据 查询成功
================================================================================
📱 推送转换数据 (通知栏消息 - 昨日)
================================================================================
阶段 数量 占上一阶段比率
------------------------------------------------------------
推送 50,000
送达 48,500 97.00%
展示 35,000 72.16%
点击 12,000 34.29%
------------------------------------------------------------
📊 转化漏斗:
推送 ██████████████████████████████████████████████████ 50,000
送达 ███████████████████████████████████████████████░░ 48,500 (97.00%)
展示 ██████████████████████████████████████░░░░░░░░░░░ 35,000 (72.16%)
点击 ███████████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 12,000 (34.29%)
🏭 正在查询 厂商通道额度...
💡 提示:仅安卓应用需要查询此项
✅ 厂商通道额度 查询成功
================================================================================
🏭 厂商通道额度统计
================================================================================
应用 Key: EXAMPLE_APPKEY_005
--------------------------------------------------------------------------------
厂商 剩余额度 总额度 使用率
--------------------------------------------------------------------------------
华为 850,000 1,000,000 15.00% |███████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░|
小米 420,000 500,000 16.00% |████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░|
OPPO 180,000 200,000 10.00% |█████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░|
VIVO 270,000 300,000 10.00% |█████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░|
--------------------------------------------------------------------------------
================================================================================
✅ 概况统计查询完成
================================================================================
📊 正在生成 HTML 可视化报告...
✅ 图表报告已生成:/path/to/outputs/overview_stats_EXAMPLE_APPKEY_005_20260403_152736.html
🌐 已在浏览器中打开报告
应用概况:
推送转换:
厂商额度:
报告特点:
报告内容:
dateType 仅支持 1d、3d、7d,不可随意传其他值msgType 仅支持 notification 和 message--html 参数会自动在浏览器中打开报告根据概况统计数据,可以:
主要用途:查询指定应用的消息列表,包含两部分数据:
适用场景:
https://upush.umeng.com/hsf/push/getMsgListapplication/json{
"appkey": "<应用的唯一标识>",
"productionMode": true, // 是否生产模式
"displayType": 0, // 展示类型
"description": "", // 任务描述筛选
"timeSelectorType": 1, // 时间选择器类型
"startTime": "yyyy-MM-dd", // 开始时间
"endTime": "yyyy-MM-dd", // 结束时间
"appGroup": false, // 是否应用组
"pageIndex": 1, // 页码
"pageSize": 15 // 每页条数(固定 15)
}
以下字段适用于安卓应用的任务粒度消息列表和 API 单播统计列表:
任务粒度消息列表:
description - 任务描述target - 目标人群createTime - 创建时间pushTime - 发送时间totalCount - 计划发送acceptCount - 有效设备sentCount - 实际发送arriveCount - 消息送达arriveRate - 送达率showCount - 消息展示showRate - 展示率clickCount - 消息点击clickRate - 送达点击率(点击数/送达数)clickRateOnShow - 展示点击率(点击数/展示数)ignoreCount - 消息忽略ignoreRate - 忽略率API 单播统计记录:
date - 日期acceptCount - 有效设备sentCount - 实际发送arriveCount - 消息送达arriveRate - 送达率showCount - 消息展示showRate - 展示率clickCount - 消息点击clickRate - 送达点击率(点击数/送达数)clickRateOnShow - 展示点击率(点击数/展示数)ignoreCount - 消息忽略ignoreRate - 忽略率注意:上述字段为安卓应用的展示指标,iOS 应用的展示字段将在后续补充。
https://upush.umeng.com/hsf/dataStatistic/getApiapplication/json{
"appkey": "<应用的唯一标识>",
"pageIndex": 1, // 页码
"pageSize": 15 // 每页条数(固定 15)
}
以下字段适用于安卓应用的 API 单播统计列表:
date - 日期acceptCount - 有效设备sentCount - 实际发送arriveCount - 消息送达arriveRate - 送达率showCount - 消息展示showRate - 展示率clickCount - 消息点击clickRate - 送达点击率(点击数/送达数)clickRateOnShow - 展示点击率(点击数/展示数)ignoreCount - 消息忽略ignoreRate - 忽略率注意:上述字段为安卓应用的展示指标,iOS 应用的展示字段将在后续补充。
# 查询默认时间范围(近 15 天)的消息列表(包含两部分数据)
python scripts/query_msg_list.py EXAMPLE_APPKEY_006
# 查询指定时间范围的消息列表
python scripts/query_msg_list.py EXAMPLE_APPKEY_006 --start 2026-03-20 --end 2026-04-03
# 查询任务列表第 2 页
python scripts/query_msg_list.py EXAMPLE_APPKEY_006 --page 2
# 查询 API 单播统计第 2 页
python scripts/query_msg_list.py EXAMPLE_APPKEY_006 --api-page 2
# 同时查询任务列表和 API 单播统计的不同页
python scripts/query_msg_list.py EXAMPLE_APPKEY_006 --page 2 --api-page 3
# 按任务描述筛选
python scripts/query_msg_list.py EXAMPLE_APPKEY_006 --desc '测试'
================================================================================================================================================================
📨 友盟推送 - 消息列表(任务粒度)
================================================================================================================================================================
应用 Key : EXAMPLE_APPKEY_006
时间范围 : 2026-01-01 ~ 2026-04-07
================================================================================================================================================================
📊 共有 1 条数据,共 1 页,当前第 1 页
----------------------------------------------------------------------------------------------------------------------------------------------------------------
序号 | 任务描述 | 目标人群 | 创建时间 | 发送时间 | 计划发送 | 有效设备 | 实际发送 | 消息送达 | 送达率 | 消息展示 | 展示率 | 消息点击 | 送达点击率 | 展示点击率 | 消息忽略 | 忽略率
----------------------------------------------------------------------------------------------------------------------------------------------------------------
1 | N/A | 全部用户 | 2026-01-15 10:30:00 | 2026-01-15 10:30:00 | 18,300,244 | 10,275,738 | 10,275,738 | 7,523,500 | 73.22% | 5,222,299 | 69.41% | 6,614 | 0.13% | 0.06% | 4,649 | 0.06%
----------------------------------------------------------------------------------------------------------------------------------------------------------------
📄 分页信息:
当前页:1 / 1
上一页:已是第一页
下一页:已是最后一页
================================================================================================================================================================
============================================================================================================================================
📡 API 单播统计记录
============================================================================================================================================
应用 Key : EXAMPLE_APPKEY_006
============================================================================================================================================
📊 共有 30 条数据,共 2 页,当前第 1 页
--------------------------------------------------------------------------------------------------------------------------------------------
序号 | 日期 | 有效设备 | 实际发送 | 消息送达 | 送达率 | 消息展示 | 展示率 | 消息点击 | 送达点击率 | 展示点击率 | 消息忽略 | 忽略率
--------------------------------------------------------------------------------------------------------------------------------------------
1 | 2026-04-07 | 15,418,704 | 12,699,523 | 10,462,983 | 82.39% | 10,204,965 | 97.53% | 16,223 | 0.16% | 0.16% | 0 | 0.00%
2 | 2026-04-06 | 22,340,705 | 16,526,564 | 11,354,701 | 68.71% | 10,968,029 | 96.59% | 20,238 | 0.18% | 0.18% | 0 | 0.00%
--------------------------------------------------------------------------------------------------------------------------------------------
主要用途:根据 appkey 和 msg_id 查询单条推送消息的完整详情,包括消息基本信息、推送统计漏斗、失败原因分析、厂商通道集成状态(仅 Android)和分通道送达统计(仅 Android)。
适用场景:
自动识别:当 msg_id 以 uu、ul 或 ua 开头,且倒数第二位是 0 时,系统自动判定为 API 单播消息,将提示用户 API 单播不支持查询单条消息明细。
API 信息:
https://upush.umeng.com/hsf/push/getMsgInfo{
"appkey": "<应用 key>",
"taskId": "<msg_id>"
}
返回信息:
诊断逻辑:
✅ channelActivity 有值 → 厂商通道可正常下发
⚠️ channelActivity 为空 → 无法通过厂商通道下发,只能在线通道
结合 getChannelInfo 检查哪些厂商通道未集成,逐一提示用户
API 信息:
https://upush.umeng.com/hsf/push/getMsgData返回信息(按漏斗展示):
API 信息:
https://upush.umeng.com/hsf/push/getPushExpStatData{
"appkey": "<应用 key>",
"isTask": true,
"msgId": "<msg_id>",
"isFree": false,
"stage": "all",
"channel": "all"
}
返回信息:
API 信息:
https://upush.umeng.com/hsf/setting/getChannelInfo{"appkey": "<应用 key>"}返回信息:
API 信息:
https://upush.umeng.com/hsf/push/getMsgStatChannelData{"appkey": "<应用 key>", "taskId": ""} 返回信息:
accs 通道显示为"友盟通道"# 查询消息详情(终端文本输出)
python scripts/query_msg_detail.py EXAMPLE_APPKEY_005 <msg_id>
# 查询并生成 HTML 可视化报告
python scripts/query_msg_detail.py EXAMPLE_APPKEY_005 <msg_id> --html
# API 单播自动拦截
python scripts/query_msg_detail.py EXAMPLE_APPKEY_005 uuabc123def45678901230
# → ⚠️ 该消息为 API 单播消息,不支持查询单条消息明细
告诉助手:
================================================================================================================================================================
📨 友盟推送 - 单条消息详情
================================================================================================================================================================
应用 Key : EXAMPLE_APPKEY_005
消息 ID : abcdefg12345678901234
================================================================================================================================================================
【消息基本信息】
----------------------------------------------------------------------------------------------------
任务描述 : xxx
推送类型 : 广播
目标人群 : 全部用户
生产模式 : 是
发送时间 : 2026-04-08 10:30:00
创建时间 : 2026-04-08 10:29:00
状态 : 发送完成
厂商通道配置 : 已配置
通道详情 :
华为: {...}
小米: {...}
----------------------------------------------------------------------------------------------------
【推送统计漏斗】
----------------------------------------------------------------------------------------------------
阶段 数量 比率 可视化
----------------------------------------------------------------------------------------------------
计划发送 7,847,893 100.00% ██████████████████████████████████████████████████
实际发送 5,188,950 66.12% ██████████████████████████████████████░░░░░░░░░░
消息送达 4,338,336 83.61% ████████████████████████████████░░░░░░░░░░░░░░░░
消息展示 3,171,839 73.11% █████████████████████████░░░░░░░░░░░░░░░░░░░░░░░
消息点击 6,863 0.16% ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
消息忽略 28,945 0.67% ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
----------------------------------------------------------------------------------------------------
送达点击率(点击/送达): 0.16%
展示点击率(点击/展示): 0.22%
----------------------------------------------------------------------------------------------------
【失败原因分析】
----------------------------------------------------------------------------------------------------
序号 | 阶段 | 通道 | 原因 | 数量 | 占比
----------------------------------------------------------------------------------------------------
1 | send | huawei | 设备离线 | 123,456 | 45.67%
2 | arrive | xiaomi | 推送限流 | 89,012 | 32.89%
...
----------------------------------------------------------------------------------------------------
【厂商通道集成状态】
----------------------------------------------------------------------------------------------------
序号 | 通道名称 | 集成状态 | 配置状态 | 说明
----------------------------------------------------------------------------------------------------
1 | 华为 | 已集成 | 已配置 |
2 | 小米 | 已集成 | 已配置 |
3 | OPPO | 未集成 | 未配置 |
----------------------------------------------------------------------------------------------------
⚠️ 以下厂商通道未集成,将无法通过对应通道下发推送:
- OPPO
【分通道送达统计】
----------------------------------------------------------------------------------------------------
序号 | 通道 | 发送 | 送达 | 送达率 | 展示 | 展示率 | 点击 | 送达点击率
----------------------------------------------------------------------------------------------------
1 | 友盟通道 | 1,000,000 | 800,000 | 80.00% | 600,000 | 75.00% | 1,000 | 0.13%
2 | 华为 | 2,000,000 | 1,800,000 | 90.00% | 1,500,000 | 83.33% | 3,000 | 0.17%
3 | 小米 | 1,500,000 | 1,200,000 | 80.00% | 900,000 | 75.00% | 2,000 | 0.17%
----------------------------------------------------------------------------------------------------
消息基本信息:
推送统计漏斗:
失败原因分析:
厂商通道集成状态:
分通道送达统计:
使用 --html 参数可生成包含以下图表的报告:
根据查询结果,可以:
共 1 个版本