2016-11-19 10 views
2

私はOneSignalを使用して設置場所ベースのプッシュ通知にしようとしていると私は通知を受けていませんよ。エラーAll included players are not subscribedが表示されます。私は問題が何であるか見当たりません。 「すべてのユーザー」の通知を受信して​​いないユーザーは、「場所ポイントは」期待緯度と長いCOORDSで設定していると、ユーザーが購読しているのOneSignalリストでは、なぜ私は「すべて含ま選手が加入していない」というメッセージを受け取るのですか?

。私は場所を知らずに送信する通知を受け取り、通知を送受信するプロセスが機能します。

私はAndroidManifest.xmlファイルに次の行を追加しました:OneSignalにリクエストを送信し

window.plugins.OneSignal.promptLocation(); 

私のPHP:私も私の.run機能で、このラインを持っている

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> 

$content = $_GET['content']; 
$lat = $_GET['lat']; 
$long = $_GET['long']; 
$radius = $_GET['radius']; 

$response = sendMessage($content, $lat, $long, $radius); 

    function sendMessage($message, $lat, $long, $radius){ 
    $content = array(
     "en" => $message 
     ); 

    $fields = array(
     'app_id' => "aaaaaa-eeee-yyyyy-xxxx-zzzz", 
     'filters' => array(array("field" => "location", "radius" => $radius, "lat" => $lat, "long" => $long)), 
     //'filters' => array(array("field" => "location", "radius" => "1000", "lat" => "55.819329", "long" => "-4.1696119")), 
     'included_segments' => array('All'), 
     'data' => array("foo" => "bar"), 
     'contents' => $content 
    ); 

    $fields = json_encode($fields); 

    $ch = curl_init(); 
    curl_setopt($ch, CURLOPT_URL, "https://onesignal.com/api/v1/notifications"); 
    curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json; charset=utf-8', 
               'Authorization: Basic FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF')); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); 
    curl_setopt($ch, CURLOPT_HEADER, FALSE); 
    curl_setopt($ch, CURLOPT_POST, TRUE); 
    curl_setopt($ch, CURLOPT_POSTFIELDS, $fields); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); 

    $response = curl_exec($ch); 
    curl_close($ch); 

    return $response; 
} 

要求:

{content: "test", lat: "55.8653169", long: "-4.1696119", radius: "1000"} 

応答:

{allresponses: "{"id":"","recipients":0,"errors":["All included players are not subscribed"]}"} 

答えて

4

"All included players are not subscribed"メッセージは、次のいずれかを意味するかもしれません。

  1. あなたは何の加入ユーザを持っていません。
  2. OneSignalのダッシュボードの[App Settings]ページで、デバイス用のプラットフォームをセットアップしていません。
  3. フィルタにはユーザーがありません。

あなたの場合、場所はおそらく1000メートル以上です。半径を大きくして、OneSignalダッシュボードの[すべてのユーザー]ページで「ロケーションポイント」が表示されていることを確認してください。

関連する問題