一、运营平台简介
小米推送运营平台(以下简称“推送运营平台”)是小米推送提供的管理和使用推送业务的一站式平台,通过运营平台开发者可以实现应用管理、消息下发、数据统计、使用人员管理等功能。
推送运营平台功能框架:
1、推送运营平台入口
使用开发者账号登录小米开放平台,选择“管理控制台”,单击“应用服务”下的“消息推送”,进入运营平台。
也可以通过在小米开放平台的消息推送页面(“应用服务 > 消息推送”),点击“立即体验”,使用开发者账号登录,即可进入运营平台。
2、应用列表
通过运营平台可以实现开发者账号下所有APP的管理,包括创建应用、启用推送、创建推送、推送统计、应用信息查看。
创建应用、启用推送的介绍请参见《小米推送服务启用指南》;创建推送将在“2. 推送工具”中介绍;推送统计将在“3. 推送统计”中介绍;应用信息查看将在“4.2 应用信息”中介绍。
说明:小米推送不会主动删除任何开发者添加的应用,如有应用丢失情况,请联系应用商店应用恢复。
二、推送工具
在应用列表中,单击App后的“创建推送”,进入“推送工具”页面。
推送工具支持向所有的 Android2.2 及以上的系统进行消息推送。
1、通知栏消息
通知栏消息页面用于创建通知栏消息,包括计划说明、推送内容、基本设置和高级选项几部分。
1.1、计划说明
从网页端生成的推送均会作为一个计划处理,自动分配一个计划ID。每个计划详情页中可以查看相应的消息ID或jobkey(一个op开头,数字结尾的字符串)。
说明:当使用文件上传时会自动使用jobkey来聚合,使用标签消息或手动输入时,会生成消息ID。
1.2、推送内容
【消息样式】
推送内容默认为标准样式。
【消息标题和描述】
消息的标题和描述为必填项,要求如下:标题最长50字、描述最长128字,英文字母、标点符号均计为一个字符。
【点击的后续动作】
每个文案支持设置不同的后续动作和传输数据。从2.2版本开始支持直接指定打开应用、打开网页和打开应用内指定页面这三个动作。
如果勾选“使用同一点击后续动作”,所有文案对应的点击动作与传输数据与当前勾选的这条一致。
打开网页和打开应用内指定页面的配置方式请参见《服务端Java SDK文档》 > “预定义通知栏通知的点击行为”。
【传输数据】
用户点击通知栏内的这条推送时会将此处填写的数据传给应用客户端。一条推送最多可以传输4KB的数据,详细介绍请参见《客户端SDK使用指南》 > “通知消息的处理”。
1.3、基本设置
【推送对象】(必填项)
推送方式 | 说明 |
全部用户 | 向全部用户推送。 |
属于基于标签的推送,全量标签是小米推送自动生成。 | |
指定标签 | 向某一类别用户进行个性化推送。 |
标签需开发者在应用初始化或运行过程中给用户标记。 | |
指定 regId | 向一个或多个具体的用户进行个性化推送。 |
regId 是小米推送为每个设备上每个app注册推送服务时生成的唯一标识。 | |
指定别名(alias) | 向一个或多个具体用户进行个性化推送。 |
无需存储 regId 与自有账号或其他的用户唯一标识的对应关系。 | |
别名与每个设备一一对应,一个别名只能在一台设备上生效,给一个别名推送只有一台设备能收到消息。 | |
指定userAccount | 向一个或多个具体用户进行个性化推送。 |
userAccount 最多可对应20台设备,单账号可登陆多台设备,给一个 userAccount 推送可同时有20台设备收到消息。 |
【推送时间】
支持立即推送和定时推送。定时推送在推送时间到达后,如果手机符合条件即会收到这条通知,可以指定未来14天内的任意时间作为消息下发时间。
【过期时间】
开发者可以根据自己的业务需求设置每条推送消息的有效期(即过期时间),推送的目标用户在消息有效期内网络在线就会收到消息。如果希望只向在线用户推送,将过期时间设置得靠近推送时间即可。当用户设备未联网时,消息默认缓存时间为公信消息最长1天,私信消息最长10天,超过缓存时间消息会丢弃。
【通知类别】
通知类别 (channel) 是 Android O 引入的新功能,旨在解决以下问题:
- 应用的通知越来越多,给用户造成明显打扰。
- 但用户只能全局屏蔽这个应用的全部通知,不能屏蔽部分,然后留下对自己有用的。
为了解决这个问题,Android 支持开发者给自己的通知分成若干类,然后允许用户单独屏蔽这个类别的通知。通知类别的详细介绍请参见《MIUI 10 通知类别 (Channel) 适配》。
开发者在创建推送时可以选择一个已创建的通知类别。如果没有可用的通知类别,请点击左侧“消息分类管理-channel列表”进入“channel列表”页面创建通知类别。具体请参见“channel申请及接入方法”。
【提醒类型】
如果未选择通知类别(channel),这里支持自由控制推送消息到达时的提醒方式(Android SDK 2.2以上版本),包括声音、振动、呼吸灯三种方式。同时可以自定义消息提醒的提示音,通过指定一个当前应用包内的声音资源位置,通知提示音将使用该声音资源,具体用法请参见《服务端Java SDK文档》4.1 自定义铃声。
如果选择了一个通知类别(channel),将以channel中设置的提醒方式作为消息送达的提醒方式,此处的提醒类型不可编辑。
【自定义键值对】
开发者可以自己输入一些自定义的键值对(key-value),在发送消息时传给客户端/服务端。客户端/服务端可以根据这些key-value可完成一些相应的操作。自定义键值对的示例可参考:《服务端Java SDK文档》4.高级功能。
1.4、高级选项
【前台配置】
开发者可通过前台配置设置应用在前台时是否有通知栏提醒。此选项默认勾选。
【通知分类】
开发者如果需要应用的多条通知在通知栏内并存,可以使用通知分类来实现这个展示要求。通知分类是用来控制多条通知在通知栏内的替换关系。同类通知之间新的将替换旧的,不同类通知之间并存而不替换。最多可以有 10001类通知并存。 因此,如果希望多条通知在通知栏内并存,开发者可以在发起推送时将这几条通知设置为不同的分类。
API接口请参见《服务端Java SDK文档》3.1.1.Android平台—notifyId(Integer id)。
【WiFi限制】
开发者可以根据设备所处的环境进行推送:可以选择仅推送给处于WiFi环境下的用户。典型场景举例:视频类app可以推给WiFi条件下的用户,提升点击率。
【平缓推送】
某些情况下,短时间内推送大量消息同时到达可能会对服务器造成比较大的负担。为了减小这种影响,开发者可选择开启平缓推送功能:默认推送速度为3000条/s,让消息匀速的送达至设备。同时支持自定义平缓推送速度,1000~100000之间可配置。
【版本推送】
开发者可以通过指定应用的版本号来进行推送,可以选择某些版本接收消息/不接收消息。
1.5、消息预览
推送运营平台支持全平台的预览功能。消息编辑完成点击预览消息即可以通过指定imei、alias、regid等方式发送消息到指定设备,查看消息具体展现效果。
三、推送统计
推送运营平台提供针对APP和消息的数据统计,方便开发者查看和分析业务数据。
关于推送指标说明请参见《小米推送统计指标说明》。
推送统计中的数据,服务端均提供了接口,可自行获取,详情请参见《服务端Java SDK文档》。
Android推送统计包括推送数据、消息记录、用户数据。
1、推送数据
字段 | 说明 |
今日实时数据 | 统计0点开始当天消息总量数据。 |
实时数据详情 | 当天每个整点已推送总量,支持历史数据对比。 |
数据趋势 | 历史不同消息推送方式和消息数据趋势统计,可根据时间段筛选。 |
数据详情 | 历史推送数据详细展示,支持导出查看。 |
说明:实时数据的更新频率为1小时/次。
2、消息记录
按照消息维度进行的统计,按照消息发送平台分为网页发送和全部消息。
【网页发送】
从网页推送工具中发起的推送计划都会显示在当前页,支持按照时间与计划状态进行筛选。
【所有消息】
网页推送与接口推送的消息均以消息ID的形式在该页面当中显示。详情页与数据漏斗页与网页发送中一致。
在所有消息页面可以查看每条消息送达、点击曲线。
【计划状态】
使用网页发送的消息会显示计划状态,包括计算中、待审核、待发送、 发送中、已完成、已驳回、已删除、已停止(只有标签消息在发送过程中可停止)等状态。
不同计划状态下允许的操作根据不同的角色而定,具体请参见“4.1 角色管理”中的“不同角色在不同消息状态下的权限”一表。使用文件上传功能新建计划时,短时间内会出现“计算中”这一状态,用于处理上传至后台的目标设备文件。
说明:
- 计划ID不等同于消息ID,只有网页推送工具建立的推送消息才会自动分配计划ID作为标识。该计划的消息ID请进入消息详情进行查看。
- 如果出现计算失败的情况,请尝试重新建立计划,或通过推送工单系统进行反馈。
【详情】
详情用于展示该计划的消息内容,同时用户可在详情页对计划进行相应操作,如:预览消息、复制消息、删除消息、编辑消息等。
说明:只有计划处于特定状态时才允许特定的操作。
- 点击预览消息,即可通过指定regId/别名/IMEI对单一设备推送进行预览。
- 点击复制消息,即复制当前消息并进入复制后的页面,可直接编辑复制后的消息。
- 点击删除消息即可删除当前计划。
- 点击编辑消息可以编辑当前消息。
【数据漏斗】
数据漏斗可以查看每条消息详细数据,通过数据漏斗开发者可以精准把握消息在发送过程中每一环节的数据情况。
相关指标的定义如下:
计划推送数 | 该消息建立时的原始请求数,不做任何过滤处理。 |
有效设备数 | 在计划推送数基础上,经过小米推送服务端初步过滤,去除了以下设备:1.无效设备,2.不符合条件设备,3.未注册设备。具体请参见《小米推送统计指标说明》。 |
实际下发数 | 服务统计的该消息的已下发数。 |
送达数 | 消息成功送达设备并返回送达回执的数量。 |
展示数 | 曝光的推送数之和,包含重要消息和不重要消息。 |
点击数 | 通知栏内应用通知的点击数。 |
说明:
- 小米推送只保留30天之内的所有消息。
- 网页发送的推送计划都会封装成jobkey的形式,在消息列表中显示。
- 为了隐私问题起见计划推送数小于10的消息均不显示消息内容。
3、用户数据
用户数据包括今日实时数据、实时数据详情、数据趋势、数据详情。
字段 | 说明 |
今日实时数据 | 当日设备在线数,包括当前在线和最高在线。 |
实时数据详情 | 当天每个整点设备在线数,支持历史数据对比。 |
数据趋势 | 历史设备数据趋势,包括最高在线设备数、日联网设备数、新增注册设备。 |
数据详情 | 历史设备数据详细展示,支持导出查看。 |
各统计数据说明请参见《小米推送统计指标说明》。
说明:
实时数据的更新频率为1小时/次。
四、应用管理
应用管理功能只有app归属的开发者账号(管理员)可见。
1、角色管理
推送运营平台提供了角色管理功能,支持为不同的角色分配不同的权限,满足开发者按照权限使用推送的需求。
1. 以开发者账号登录运营平台,单击“应用管理 > 角色管理”菜单,进入“角色管理”页面。您可以在此页面新增角色或编辑角色权限。
说明:
系统默认提供“推送者”和“审核者”角色,如果这两个角色不能满足您的需要,您可以再新建其他角色。“推送者”和“审核者”角色不可以删除。
2. 单击“新增角色”按钮,输入想要添加的角色名称、角色描述,将创建一个角色。
说明:角色支持任意名称,您可根据实际需要设定,运营平台不做限制。
新增的角色会展示在角色列表中。
3. 单击角色列表中的“成员管理”,可为该角色添加成员(小米ID)。新增的成员使用小米ID登录运营平台,便可以使用所分配的权限。每个角色可添加的成员数量没有上限。
4. 单击角色列表中的“权限管理”,可为该角色勾选所需权限。分配权限后,该角色中的成员只能访问相应权限对应的页面,无权限的页面将不可见。
推送者管理
推送运营平台默认提供“推送者”角色,开发者可以添加其他成员作为推送使用者,添加成功后,该成员使用小米ID登录即可推送消息。
【权限说明】
推送者角色具有以下权限:
通知栏消息、推送数据、消息记录、用户数据(安卓)、调查工具。
如果是开发者账号,还具有“应用管理”下的权限,包括:应用信息、通知类别和角色管理。
【操作方法】
1. 在角色列表中单击“推送者”角色后的“成员管理”。
2. 单击“新增成员”,输入该成员的小米ID、姓名、邮箱等信息,将新增一个推送者成员。
注意:在中文运营平台添加的小米账号,只能在中文推送平台创建推送,如登录英文推送平台会显示“抱歉,您当前没有推送/审核权限”。同样的,如果是在英文运营平台添加的小米账号,也只能在英文推送平台创建推送。
审核者管理
为了满足推送消息的管理需求,避免误发错发消息给用户,推送运营平台提供了推送的审核体系并预置了审核者角色,开发者可以根据业务需求自行添加审核者。
【权限说明】
审核者角色具有“计划列表”的权限。
如果是开发者账号,还具有“应用管理”下的权限,包括:应用信息、通知类别和角色管理。
【操作方法】
1. 在角色列表中单击“审核者”角色后的“成员管理”,在“审核者管理”页面中单击“设置审核等级体系”,可设置推送的审核等级。
2. 单击“新增成员”,输入该成员的小米ID、姓名、邮箱等信息,并选择审核等级,将新增一个审核者成员。
3. 如果需要修改成员的审核等级,单击该成员后的“编辑”按钮,可修改等级。
【审核规则】
- 最多可设置3级审核体系,每级审核体系均由计划推送数作为分界线。
- 每级审核体系需设置对应审核者后才会生效。
- 当开发者同时拥有审核和推送权限时,创建某条消息不会成为该条消息的审核者,即同一小米ID不可以审核自己推送的消息。
- 设置审核者后该级审核体系立即生效,但不影响之前推送的消息。审核体系生效后,使用推送平台建立的推送计划将按照该审核体系进行审核流程,审核通过后消息才会下发。
【审核流程及注意事项】
- 新的推送计划建立后,若达到审核要求,则会自动进入待审核状态,审核者邮箱将收到系统下发的审核邮件提醒。
- 审核者登录运营平台后能看到计划列表页,可在这一页面中完成审核/驳回操作。(说明:计划列表页仅审核者可见,推送者和其他角色均不可见。)
- 上一级审核确认后会自动进入下一级审核。
- 审核通过后的计划若有修改,则需重新进入审核流程。
- 若审核通过后已超过消息的发送时间(未到失效时间),则消息会立即发送;如果审核后消息有效期已过,消息将不会下发,并变为已完成状态。请注意消息的发送与审核时间。
- 如果APP设置了审核等级,例如二级审核,但没有设置二级审核人,当一个计划达到二级审核标准时会跳过二级审核,直接下发。
不同角色在不同消息状态下的权限
角色\消息状态 | 计算中 | 计算失败 | 待审核 | 待发送 | 发送中 | 已中止 | 已完成 | 已删除 | 已驳回 |
推送者 | 预览(所有) 复制(所有) 删除(自己创建) | 预览(所有) 复制(所有) 删除(自己创建) 编辑(自己创建) | 预览(所有) 复制(所有) 删除(自己创建) 编辑(自己创建) 审核状态显示(所有) | 预览(所有) 复制(所有) 删除(自己创建) 编辑(自己创建) 终止(自已创建) | 预览(所有) 复制(所有) 终止(自己创建) | 预览(所有) 复制(所有) 删除(自己创建) | 预览(所有) 复制(所有) | 预览(所有) 复制(所有) | 预览(所有) 复制(所有) 编辑(自己创建) 删除(自己创建) |
审核者 | 预览(所有) | 预览(所有) | 预览(消息) 审核通过(非自己创建) 审核驳回(非自己创建) 审核状态显示(所有) | 预览(消息) | 预览(所有) | 预览(所有) | 预览(所有) | 预览(所有) | 预览(所有) |
其他角色 | 预览(所有) | 预览(所有) | 预览(所有) 审核状态显示(所有) | 预览(所有) | 预览(所有) | 预览(所有) | 预览(所有) | 预览(所有) | 预览(所有) |
说明:
- “所有”指本App的所有计划。
- “自己创建”指本App的自己创建的计划。
- “非自己创建”指本App的非自己创建的计划。
2、应用信息
“应用信息”页面可以查看应用的应用类型、创建时间、包名、AppID、AppKey,AppSecret等信息。
小米推送还提供了“设置多包名”功能,详细使用方法请参见《多包名推送使用说明》。
注意:“设置多包名”功能仅对安卓平台提供。
3、通知类别
“通知类别”页面用于添加和管理本应用的通知类别(Channel)。Channel的详细介绍请参见“MIUI 10 通知类别 (Channel) 适配”。
开发者使用开发者账号登录小米推送运营平台,点击“消息分类管理-channel列表-新建”按钮,可申请Channel。关于消息分类的介绍请参见《小米推送消息分类新规》,消息限制的介绍请参见《小米推送消息限制说明》。
Channel列表中的各字段说明如下表所示:
字段 | 说明 |
通知类别 (channel_id) | 必填,通知类别的ID,长度不超过 200 字符。 |
名称 (channel_name) | 必填,通知类别的名称,长度不超过40字符。 |
提醒类型 (notify_type) | 必填,用户收到通知时的效果类型。 对于私信Channel,可设置振动、提示音效果; 对于公信Channel,为避免过度打扰用户,均无提示效果。 |
描述 (channel_description) | 可选,通知类别的描述,简要介绍该类别存放哪一类的通知,长度不超过300字符。 |
注意:
- 开发者最多可创建8组channel。
- 各Channel的Channel_id不可重复,Channel_name也不允许同名。
- Channel一旦创建,不能修改只能删除,请谨慎创建。
推送消息时,需要选择一个已创建的Channel(如下图),该消息才能归属于这个类别下。
五、调查工具
调查工具可以帮助开发者在接入和使用推送的过程中自助查询设备与消息的送达、在线情况,包括:
- 设备的在线情况
- 设备ID的有效性
- 消息在某个设备的的送达情况
- 设备ID之间的对应关系
【设备是否收到指定消息】
可以根据regid/alias+消息id,查询消息是否送达。
【设备最近是否在线】
可以根据regid/alias,查询设备是否在线。
【regId,别名(alias)和标签(topic)的对应关系】
可以查询regid、alias、useraccount、IMEI、topic之间的对应关系。
【regId,alias是否有效】
可以查询推送对象的regid/alias是否有效。
【查询标签的订阅数】
查询指定应用指定topic的订阅数,该数据根据昨日数据离线计算,非实时。
【消息追踪查询】
可以根据IMEI和msgID查询消息状态,方便问题调查,覆盖如下几种场景:
1. 消息到达服务器
2. 消息处理中
3. 没有关于这台设备的消息记录,可能设备不在消息发送目标中
4. 限速发送中
5. 无效的设备,发送失败
6. 设备不在线,等待重试
7. 设备未注册,发送失败
8. 设备不满足发送条件:APP版本不匹配,网络环境不匹配,地域条件不匹配等
9. 消息已过期,发送失败
10. 消息送达设备
11. 用户点击消息
以上相关调查工具服务端均提供了接口,可自行获取,详情请参见《服务端Java SDK文档》中的“6.追踪消息状态”、“8.拉取失效数据”和“9.开发者工具”等章节。