wiki:AndroidPushInterface

Android推送服务接口设计

获取推送Token接口

接口地址:

  http://p.imofan.com/token/{app_key}/{dev_id}/{ver_code}

接口请求参数定义:

参数名说明
app_key应用的唯一标识id,由魔方系统生成
dev_id设备的唯一标识,采用魔方数据分析的dev_id
ver_code对app_key、dev_id进行不可逆加密后的校验码

注意:

  • 参数必须用POST方式提交
  • 平台提供给客户端的api包发出请求的user-agent固定为:imofan pns client,若判断user-agent不匹配,则返回404

接口响应JSON格式定义:

  {
    "stat": 1,
    "token": "188fa88e3d821a4867b43d74dd1d4905",
    "info": "分配token失败时的额外信息"
  }

返回值定义:

返回值说明
stat请求状态,取值为:1 Toekn分配成功,-1 分配失败
token推送平台分配给该客户端的推送Token
info包含额外的说明信息,用于stat为-1时平台所给的错误提示

获取推送消息接口

接口地址:

  http://p.imofan.com/notification/{appkeys}/{ver_code}

接口请求参数定义:

参数名说明
appkeys需要接收推送的应用的app_key组合字符串,app_key之间用逗号分离
ver_code对appkeys进行不可逆加密后的校验码

注意:

  • 参数必须用POST方式提交
  • 平台提供给客户端的api包发出请求的user-agent固定为:imofan pns client,若判断user-agent不匹配,则返回404

接口响应JSON格式定义:

  {
    "stat": 1,
    "info": "获取推送消息失败时的额外信息",
    "notification": [
        {
            "id": 3516,
            "app_key": "b5d3828499d0590600000006",
            "app_ver": ">=320",
            "os_ver": "<2.2",
            "token": "188fa88e3d821a4867b43d74dd1d4905",
        },
        ...
    ]
  }

返回值定义:

返回值说明
stat请求状态,取值为:1 推送消息获取成功,-1 获取失败
info包含额外的说明信息,用于stat为-1时平台所给的错误提示
id消息id
app_key消息针对的应用appkey
app_ver消息针对的应用版本,可用>320、>=320、=320、<=320、<320五种形式,其中320为Android应用version code,必须是整数值
os_ver消息针对的操作系统版本,可为>2.0、>=2.1、=3.0、<=4.0、<4.1五种形式,其中比较符后面的数字只能是两段式格式,不做更细的划分
token消息针对的token,只有token相同的客户端能收到该条消息