sendMessage IBM Bluemix PushNotification Rest API取消注册设备

时间:2017-08-31 18:20:24

标签: java rest spring-boot push-notification ibm-cloud

我正在使用IBM Bluemix Rest API进行Spring Notifcation与Spring Boot 1.5.6.RELEASE和Java 1.8。我正在使用RestTemplate从Java代码调用以下API。我正在向注册到APNS(Apple推送通知服务)的ios设备发送推送通知。

我将推送通知服务绑定到BlueMix上的我的Java应用程序,并从VCAP_SERVICES获取url,clientSecret和appSecret。

我注意到一种奇怪的行为,并且想知道是否有其他人也经历过这种行为。

请参阅以下步骤:

  1. 我正在使用" registerDevice"注册设备POST API。端点为" http://imfpush.xxxxxxxx.xxxx.bluemix.net/imfpush/v1/apps/xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/devices"。
  2. 我使用" getDevices"验证设备是否已成功注册GET API。端点为" http://imfpush.xxxxxxxx.xxxx.bluemix.net/imfpush/v1/apps/xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/devices"。
  3. 然后我使用" sendMessage"发送推送通知。 POST API。端点为" http://imfpush.xxxxxxxx.xxxx.bluemix.net/imfpush/v1/apps/xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/messages"。
  4. 我注意到的奇怪行为是在调用sendMessage POST API后,我在步骤1中注册的设备不再注册。在上面的步骤3之后,如果我回到步骤2并调用" getDevices"再次API,该设备不再注册。它返回低于响应:

    {     " pageInfo":{         " totalCount":0,         "计算":0     },     "设备":[] }

    这是" sendMessage"中的错误吗? POST API?

    请帮忙

    提前致谢

1 个答案:

答案 0 :(得分:0)

设备的注销是由于该注册设备的令牌无效或无效。 Bluemix正在删除注册,因为APNs / GCM正在响应设备的令牌在尝试推送时无效。您能否确保为APNS / GCM配置有效凭据..请按照文档中的步骤Obtain your notification provider credentials