2013-03-15 2 views
0

iOS + Android 애플리케이션에서 푸시 알림을 보내기 위해 Worklight 푸시 알림을 사용하려고합니다.푸시 알림을 보낼 때 워크 라이트 오류가 발생했습니다.

내 어댑터에 submitNotification 함수를 만들었습니다. 호출 할 때 푸시가 성공적으로 전송되었다고 표시되지만 실제로는 내 장치에서 푸시받은 것이 없습니다. 나는 로그를 볼 때

나는 읽을 수 있습니다

Couldn't connect to APNS server 
java.net.PlainSocketImpl.socketConnect(Native Method) 
java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351) 
java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213) 
java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200) 
java.net.SocksSocketImpl.connect(SocksSocketImpl.java:432) 
java.net.Socket.connect(Socket.java:529) 
com.sun.net.ssl.internal.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:570) 
com.sun.net.ssl.internal.ssl.SSLSocketImpl.<init>(SSLSocketImpl.java:371) 
com.sun.net.ssl.internal.ssl.SSLSocketFactoryImpl.createSocket(SSLSocketFactoryImpl.java:71) 
com.notnoop.apns.internal.ApnsConnectionImpl.socket(ApnsConnectionImpl.java:133) 
com.notnoop.apns.internal.ApnsConnectionImpl.sendMessage(ApnsConnectionImpl.java:160) 
com.notnoop.apns.internal.ApnsServiceImpl.push(ApnsServiceImpl.java:46) 
com.notnoop.apns.internal.AbstractApnsService.push(AbstractApnsService.java:52) 
com.notnoop.apns.internal.ApnsServiceImpl.push(ApnsServiceImpl.java:36) 
com.worklight.integration.notification.apns.ApplicationConnection.sendNotification(ApplicationConnection.java:84) 
com.worklight.integration.notification.apns.APNSMediator.sendNotification(APNSMediator.java:85) 
com.worklight.integration.notification.Mediator$4.run(Mediator.java:174) 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439) 
java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) 
java.util.concurrent.FutureTask.run(FutureTask.java:138) 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 
java.lang.Thread.run(Thread.java:680) 

다음

Couldn't send message [email protected]         com.notnoop.apns.internal.ApnsConnectionImpl.socket(ApnsConnectionImpl.java:146) 
com.notnoop.apns.internal.ApnsConnectionImpl.sendMessage(ApnsConnectionImpl.java:160) 
com.notnoop.apns.internal.ApnsServiceImpl.push(ApnsServiceImpl.java:46) 
com.notnoop.apns.internal.AbstractApnsService.push(AbstractApnsService.java:52) 
com.notnoop.apns.internal.ApnsServiceImpl.push(ApnsServiceImpl.java:36) 
com.worklight.integration.notification.apns.ApplicationConnection.sendNotification(ApplicationConnection.java:84) 
com.worklight.integration.notification.apns.APNSMediator.sendNotification(APNSMediator.java:85) 
com.worklight.integration.notification.Mediator$4.run(Mediator.java:174) 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439) 
java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) 
java.util.concurrent.FutureTask.run(FutureTask.java:138) 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 
java.lang.Thread.run(Thread.java:680) 

Failed to send message [email protected] trying again 

내 submitNotification 기능 :

function submitNotification(userId, notificationText) { 
    var userSubscription = WL.Server.getUserNotificationSubscription(
      'myAdapter.MyPushEventSource', userId); 

    if (userSubscription == null) { 
     return { 
      result : "No subscription found for user :: " + userId 
     }; 
    } 

    WL.Logger.debug("submitNotification >> userId :: " + userId + ", text :: " 
      + notificationText); 

    WL.Server.notifyAllDevices(userSubscription, { 
     badge : 1, 
     activateButtonLabel : "Open", 
     alert : notificationText 
    }); 

    return { 
     result : "Notification sent to user :: " + userId 
    }; 
} 

내 코드에 문제가 있습니까? 또는 내 네트워크와 함께?

+0

이것은 네트워크 문제였습니다 – WiPhone

+0

아래 답변으로 작성하고 나중에 답변 할 수 있습니까? 감사. –

+0

예, 할 수 있지만 몇 시간을 기다려야합니다 : 나는이 stackoverflow 메시지가 있습니다 "10 명 미만의 평판을 가진 사용자는 요청한 후 8 시간 동안 자신의 질문에 대답 할 수 없습니다 .x 시간 후에 대답 할 수 있습니다. 대신 질문을 수정하십시오. " – WiPhone

답변

2

마지막으로 네트워크 문제였습니다.

Google 및 Apple 푸시 서버에 액세스 할 수 있도록 방화벽 구성을 변경했습니다. http://developer.apple.com/library/ios/#technotes/tn2265/_index.html#//apple_ref/doc/uid/DTS40010376-CH1-TNTAG41

전체 17.0.0.0/8 주소 블록이 애플에 할당됩니다, 그래서 당신은 는 방화벽 규칙에서 그 범위를 지정할 수 있습니다 애플 서버에 대한 , 당신은이 주소에서 자세한 내용을 확인할 수 있습니다.

관련 문제