注意:以下文档只适用于TOP接口,请谨慎使用!

yunos.ospush.open.notify.push.device (用户设备通知接口)

该接口发送通知消息给指定的设备

公共参数

请求参数

名称 类型 是否必须 示例值 更多限制 描述
cond_map Json 可选 {} 备用参数,约定为Map类型,暂时不启用
session_id String 必须 DX1234
  • 最大长度:64
  • 自定义随机字符串,用以标识本次调用。每次调用值不要相同
    token_type Number 必须 1 设备类型, 1为device_token,2为IMEI, 3为UUID
    device_tokens String [] 必须 1,2,3
  • 最大列表长度:500
  • 设备值,最大一次性不超过500个设备
    message PushMessage 必须 发送的消息信息
    • └ msg_title
    • String
    • 必须
    • 主标题
    • 通知中心主标题
    • └ msg_sub_title
    • String
    • 必须
    • 副标题
    • 通知中心副标题
    • └ msg_content
    • String
    • 可选
    • 通知消息体
    • json格式 1、打开应用(无需传值) 3、打开uri: {"uri": "xiami://collect/11332531"}
    • └ validity_hour
    • Number
    • 必须
    • 5
    • 多长时间消息失效,单位是小时
    • └ msg_type
    • String
    • 必须
    • 3
    • 通知消息类型 1:打开应用, 3:打开uri,
    • └ page_link
    • String
    • 可选
    • Main
    • CLOUDAPP应用接收push消息的pageLink,最终page格式为 page://domain/pageLink, domain从应用信息里获取,用户只需要输入pageLink值即可

    响应参数

    名称 类型 示例值 描述
    result TopResult result
    • └ msg
    • String
    • 操作成功
    • msg
    • └ code
    • String
    • 10000
    • 当code为10000时,才表示调用成功
    • model
    • PushTaskResult
    • model
    • └ session_id
    • String
    • DX1234
    • sessionId
    • └ task_id
    • Number
    • 1234
    • taskId
    • └ task_type
    • Number
    • 2
    • taskType
    • └ limited_tokens
    • String []
    • 123
    • limitedTokens

    请求示例

    • JAVA
    • .NET
    • PHP
    • CURL
    • Python
    • C/C++
    • NodeJS
    TaobaoClient client = new DefaultTaobaoClient(url, appkey, secret);
    YunosOspushOpenNotifyPushDeviceRequest req = new YunosOspushOpenNotifyPushDeviceRequest();
    req.setCondMapString("{}");
    req.setSessionId("DX1234");
    req.setTokenType(1L);
    req.setDeviceTokens("1,2,3");
    YunosOspushOpenNotifyPushDeviceRequest.PushMessage obj1 = new YunosOspushOpenNotifyPushDeviceRequest.PushMessage();
    obj1.setMsgTitle("主标题");
    obj1.setMsgSubTitle("副标题");
    obj1.setMsgContent("通知消息体");
    obj1.setValidityHour(5L);
    obj1.setMsgType("3");
    obj1.setPageLink("Main");
    req.setMessage(obj1);
    YunosOspushOpenNotifyPushDeviceResponse rsp = client.execute(req);
    System.out.println(rsp.getBody());

    响应示例

    • XML示例
    • JSON示例
    <yunos_ospush_open_notify_push_device_response>
        <result>
            <msg>操作成功</msg>
            <code>10000</code>
            <model>
                <session_id>DX1234</session_id>
                <task_id>1234</task_id>
                <task_type>2</task_type>
                <limited_tokens>
                    <string>123</string>
                </limited_tokens>
            </model>
        </result>
    </yunos_ospush_open_notify_push_device_response>

    异常示例

    • XML示例
    • JSON示例
    <error_response>
        <code>50</code>
        <msg>Remote service error</msg>
        <sub_code>isv.invalid-parameter</sub_code>
        <sub_msg>非法参数</sub_msg>
    </error_response>

    错误码解释

    错误码 错误描述 解决方案
    isv.10100 参数错误 返回的msg中有错误的明细信息,请对照
    isv.10050 tokenType非法 tokenType非法
    isv.10042 没有发送设备信息 没有发送设备信息
    isv.10040 超出单次接口调用发送人数限制(500) 超出单次接口调用发送人数限制(500)
    isv.10020 push渠道非法 请检查自己的appkey是否被授权
    isp.12040 新建任务失败 新建任务失败,请检查msg_content是否为json格式,或联系管理员排查问题
    isp.12020 未找到发送记录 未找到发送记录,可以联系管理员排查问题
    isp.10010 push任务失败 push任务失败,可以联系管理员排查问题
    isv.10090 您的文案中有敏感词 您的文案中有敏感词
    isv.10043 发送设备不存在 请检查设备信息是否正确
    isv.13105 发送的设备由于未达到消息隔离条件,被过滤 检查设备
    isv.10041 超出单日发送限制 发送次数超限
    isv.13103 该应用未通过云箭统一审核,请联系云箭PD! 联系云箭PD添加应用白名单

    API工具

    如何获得此API

    FAQ

    返回
    顶部