2

며칠 동안이 문제로 고생하고 있습니다. 나는 Azure 모바일 서비스를 사용하고 있으며 두 개의 스케쥴러 스크립트가 정의되어있다. 하나는 매우 간단하고 단지 사용자 ID # 1 테스트 푸시 알림을 모든 장치 토큰을 보냅니다 일부 Azure 모바일 서비스의 푸시 알림이 도착하지 않음

function SendTestNotification() { 

    sendPushNotification(1, 'SendTestNotification @ ' + new Date()); 

    function sendPushNotification(userId, body) { 
     var users = tables.getTable('NotificationTokens'); 
     users.where({ 
      User_Id: userId 
     }).read({ 
      success: function(tokens) { 
       tokens.forEach(function(token) { 
        var alert = { 
         badge: 0, 
         alert: body, 
         sound: 'default' 
        }; 

        push.apns.send(token.Token, alert, 
        { 
         error : function(err) { 
          console.error(err); 
         } 
        }); 
       });     
      }, 
      error: function(error) { 
       console.error(error) 
       return;     
      } 
     }); 
    } 
} 

내가 훨씬 더 정교하고 내 응용 프로그램에 대한 실제 푸시 알림 로직을 포함하는 두 번째 스케줄러 스크립트가 있습니다. 위에 표시된 것과 동일한 sendPushNotification() 함수를 포함합니다. 이 두 번째 스크립트에는 나에게 "테스트"알림을 보내는 추가 호출이 포함되어 있습니다.

이러한 두 가지 스크립트를 설정하고 예약하면 iOS 기기에 15 분마다 총 3 회의 푸시 알림이 전송됩니다. 알림이 서버에서 전송되었을 때 표시되도록 타임 스탬프도 지정했습니다.

그러나이 스크립트를 수동으로 실행하거나 15 분마다 실행하도록하면 거의 모든 알림을받지 못합니다. 때때로 나는 아무 것도 얻지 못합니다. 때로는 첫 번째 테스트 알림 만받습니다. 때로는 첫 번째 테스트 알림 인 "실제"알림이 있지만 두 번째 테스트 알림 ("실제"알림을 보낸 정확한 코드와 동일한 코드로 보내야 함)은 표시되지 않습니다.

포털의 로그를 검사했는데 APNS에서 오류가 다시 발생하지 않습니다. 나는 과거에 잘못된 장치 토큰에 대한 오류를 보았으므로 로깅이 작동하고 있음을 알고 있습니다.

나는 CNS 응용 프로그램을 사용하여 APNS를 통해 이러한 장치 푸시 알림을 전송했음을 나타내야합니다.

누구든지 의견을 제시하거나 내가 잘못하고있는 것을 볼 수 있습니까? 검토 할 대기중인 앱이 있으며이 문제를 해결하는 것이 좋습니다.

+0

이번이 두 번째로 나는 Azure에서 푸시 알림을 보내는 간헐적 인 문제로 하루를 보냈습니다. 코드 변경없이 갑자기 일이 갑자기 작동합니다. 이 제품을 생산에 사용하는 사람들이 있습니까? –

답변

0

저번번에 이런 일이 일어 났을 때 저울을 Free에서 Basic으로 변경했고 모든 알림이 전송되었습니다.

당신은 오류가 없다고 말했지만, 오류가 발생하면 apns가 오류가 발생하면 연결을 닫으므로 중지 한 지점부터 다시 시작해야합니다.

관련 문제