2016-04-04 6 views
1

Ich habe eine Entwicklungs-App in urbanairship erstellt und versucht, Push-Benachrichtigungen vom Server mit PHP-Code zu senden.Appkey ist nicht berechtigt, das Message Center in Urbanairship zu verwenden

Mein Code:

 define('APPKEY','xxx'); // Your App Key 
     define('PUSHSECRET', 'ytyy'); // Your Master Secret 
     define('PUSHURL', 'https://go.urbanairship.com/api/push/'); 
     $notification = array(); 
     $notification['alert'] = "alert"; 
     $platform = array(); 
     array_push($platform, "android"); //comment out if you don't want Android 
     $richpush = array(); 
     $richpush['title'] = "title"; 
     $richpush['body'] = $message; 


     if(strlen($deviceToken)>50){ 
      $deviceToken=str_replace(" ","",$deviceToken); 
      $push = array("audience"=>array("device_token"=>$deviceToken), "notification"=>$notification, "device_types"=>$platform, "message"=>$richpush); 
     }else{ 
      $deviceToken=str_replace(" ","-",$deviceToken); 
      $push = array("audience"=>array("apid"=>$deviceToken),    "notification"=>$notification, "device_types"=>$platform, "message"=>$richpush); 
     } 

     $json = json_encode($push); 


     $session = curl_init(PUSHURL); 
     curl_setopt($session, CURLOPT_USERPWD, APPKEY . ':' . PUSHSECRET); 
     curl_setopt($session, CURLOPT_POST, True); 
     curl_setopt($session, CURLOPT_POSTFIELDS, $json); 
     curl_setopt($session, CURLOPT_HEADER, False); 
     curl_setopt($session, CURLOPT_RETURNTRANSFER, True); 
     curl_setopt($session, CURLOPT_HTTPHEADER, array('Content-Type:application/json', 'Accept: application/vnd.urbanairship+json; version=3;')); 
     $content = curl_exec($session); 
     echo "Response: " . $content . "\n"; 

Aber ich bin immer:

Response: {"ok":false,"error":"The specified appkey [xxx] is not entitled to use the Message Center.","error_code":403} 

Jede Hilfe würde geschätzt.

Antwort

2

Das Nachrichtencenter ist nicht in den Start- oder Basiskonten enthalten. Wenden Sie sich an support und sie arbeiten mit Ihnen zusammen, um Message Center-Berechtigungen hinzuzufügen.

+0

Ist Message Center erforderlich, um Push-Benachrichtigungen von der Serverintegration senden zu können? Ich kann keine klare Antwort auf diese Frage finden. – Azimuth

+0

Nein, Nachrichtenzentrale wird nur zum Senden von Nachrichtenmitteilungen benötigt. Push-Benachrichtigungen können mit oder ohne Message Center-Nachricht gesendet werden. – ralepinski