2010-10-05 5 views
2

Ce problème me rend fou. Je suis en train de mettre en œuvre APNS. J'ai déjà google et suivi plusieurs tutoriels. J'ai mis en place le serveur et il semble fonctionner trouver ici le code:Service de notification push Apple - aucune notification sur l'appareil

<?php 

$deviceToken = 'XXXX'; 
// Passphrase for the private key (ck.pem file) 
// $pass = ''; 
// Get the parameters from http get or from command line 
$message = $_GET['message'] or $message = $argv[1] or $message = 'Message received from javacom'; 
$badge = (int)$_GET['badge'] or $badge = (int)$argv[2]; 
$sound = $_GET['sound'] or $sound = $argv[3]; 

// Construct the notification payload 
$body = array(); 
$body['aps'] = array('alert' => $message); 
if ($badge) 
    $body['aps']['badge'] = $badge; 

if ($sound) 
    $body['aps']['sound'] = $sound; 

/* End of Configurable Items */ 

$ctx = stream_context_create(); 
stream_context_set_option($ctx, 'ssl', 'local_cert', 'ck.pem'); 
// assume the private key passphase was removed. 
//stream_context_set_option($ctx, 'ssl', 'passphrase', $pass); 
$fp = stream_socket_client('ssl://gateway.sandbox.push.apple.com:2195', $err, $errstr, 60, STREAM_CLIENT_CONNECT, $ctx); // for production change the server to ssl://gateway.push.apple.com:219 
if (!$fp) { 
    print "Failed to connect $err $errstr\n"; 
    return; 
} else { 
    print "Connection OK\n"; 
} 

$payload = json_encode($body); 
$msg = chr(0) . pack("n",32) . pack('H*', str_replace(' ', '', $deviceToken)) . pack("n",strlen($payload)) . $payload; 
print "sending message :" . $payload . "\n"; 
fwrite($fp, $msg); 
fclose($fp); 

?> 

Cela semble fonctionner correctement. Je ne reçois aucune erreur. Mais je ne reçois aucune notification push sur mon appareil. Je ne sais pas où l'erreur pourrait être. J'ai également implémenté le script de feedback. Pas d'erreur et pas de sortie. Mon application est également préparée. Merci d'avance.

Répondre

5

Apple juste a publié une note technique intitulée "Troubleshooting Push Notifications". Il a des conseils pour l'envoi et la réception. Peut-être que quelque chose peut aider.

+0

Merci qui m'a aidé à trouver le problème – user458176

Questions connexes