2017-02-20 117 views
2

用戶我必須集成到我的Web應用程序,它工作正常一個OneSignal通知,但問題是我需要發送的通知只對特定的用戶。我將選擇一封電子郵件併發送通知。對於OneSignal提供段,當我創建一個段,並給它說,在段0的用戶電子郵件ID。OneSignal通知其電子郵件ID

我的問題是如何我在段鍵入電子郵件ID獲取與比較,並返回我0用戶?

回答

1

使用標籤來代替。對於您想要發送信息的人,請設置一個標籤,例如:{email:[email protected]}。

,然後在通知發送代碼,發送到基於標籤的人。例如

$content = array(
     "en" => "hello jimmy" 
     ); 

    $fields = array(
     'app_id' => <your_ID_here> , 
     'filters' => array(array("field" => "tag", "key" => "email", "relation" => "=", "value" => "[email protected]")), 
     '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 '.$_SESSION['global_rest_id'])); 
    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);