2

Microsoft 알림 메시지 허브를 사용하여 Android 알림에서 푸시 알림을 사용하고 있습니다. nodejs 서버 코드를 통해 알림을 보낼 수 있습니다. 장치가 nodejs 서버로부터 알림을받습니다.Azure Notification Hub에서 Android 장치로 알림 메시지를받지 못했습니다.

문제 : - 알림 허브를 사용하면 알림 허브가 성공 코드를 반환하더라도 알림이 장치로 전송되지 않습니다.

절차 알림 허브는 다음과 같습니다.

단계 -1 : 처음 등록 할 때 장치에서 가져온 알림 허브에 gcmTokenId를 등록합니다.

{ 
ETag: "1" 
ExpirationTime: "2014-09-08T06:33:55.906Z" 
RegistrationId: "286469132885875691584-1648906343295271447-3" 
Tags: "raj" 
GcmRegistrationId: "APA91bF6E2U4*********" 
_: { 
ContentRootElement: "GcmRegistrationDescription" 
id: "id" 
title: "2864691328694691584-1648906343295271447-3" 
published: "2014-06-10T07:04:30Z" 
updated: "2014-06-10T07:04:30Z" 
link: "" 
}- 
} 

단계 -2 : - - :

notificationHubService.gcm.createNativeRegistration(gcmToken, tags, function(error){  
      if(error) 
      { 
      res.type('application/json'); // set content-type 
      res.send(error); // send text response 
      } 
      else 
      { 
      res.type('application/json'); // set content-type 
      res.send('Registered Successfully!'); // send text response 
      } 
     }); 

여기 등록 세부 사항은 다음 함수를 사용하여 허브에 통지를 보낸다.

notificationHubService.gcm.send(
     null, 
     { 
      data: { message: 'Here is a message' } 
     }, 
     function (error,response) { 
      if (!error) { 
       //message send successfully 
       res.type('application/json'); // set content-type 
     res.send(response); 
      } 
     }); 

다음은 응답 허브에서받은 응답 코드입니다.

{ 
isSuccessful: true 
statusCode: 201 
body: "" 
headers: { 
transfer-encoding: "chunked" 
content-type: "application/xml; charset=utf-8" 
server: "Microsoft-HTTPAPI/2.0" 
date: "Tue, 10 Jun 2014 07:07:32 GMT" 
}- 
} 

설정 내가 알림 허브에서했던 :

  1. 내가 "구글 클라우드 메시징 설정"에서 구글 API 키를 추가합니다.

이 문제를 해결하려면 안내하십시오.

답변

0

등록 할 때 태그로 "raj"를 입력 한 것처럼 보입니다.

{ 
ETag: "1" 
ExpirationTime: "2014-09-08T06:33:55.906Z" 
RegistrationId: "286469132885875691584-1648906343295271447-3" 
Tags: "raj" <<== HERE 
GcmRegistrationId: "APA91bF6E2U4*********" 
_: { 
ContentRootElement: "GcmRegistrationDescription" 
id: "id" 
title: "2864691328694691584-1648906343295271447-3" 
published: "2014-06-10T07:04:30Z" 
updated: "2014-06-10T07:04:30Z" 
link: "" 
}- 
} 

태그는 가입 주제와 유사합니다. 필터는 필터입니다.

Node.js NotificationHubService를 사용하는 것 같습니다.

http://dl.windowsazure.com/nodedocs/GcmService.html을 참조하십시오. 첫 번째 매개 변수는 tags이지만, 코드에서, 당신은 null 제공 : 태그 "주권"을 일치하지 않습니다

notificationHubService.gcm.send(
    null, // <-- HERE 
    { 
     data: { message: 'Here is a message' } 
    }, 

null 때문에, 다음 알림 허브가 등록되어있는 모든 장치에이 메시지를 전달하지 않습니다 태그 "raj"가있는 메시지 만들을 수 있습니다.

send() 메서드 호출에서 태그를 "raj"로 설정하거나 createNativeRegistration() 메서드 호출에서 해당 태그를 제거해야합니다.

+1

null은 해당 플랫폼 유형의 모든 대상을 나타내며 아니오입니까? –