Я хочу добавить пользовательские теги для пользователей, которые подписались на уведомление моего сайта. Но для этого мне нужен их playerid, и я не могу получить playerid этого специального пользователя.
<?php
$fields = array(
'app_id' => 'app_id',
'tags' => array('user_id' => ''.$user_id.'','user_email' => ''.$user_email.'','tag3' => ''.$tag3.'','tag4' => ''.$tag4.'',)
);
$fields = json_encode($fields);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://onesignal.com/api/v1/players/'.$playerID);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
curl_setopt($ch, CURLOPT_POSTFIELDS, $fields);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$response = curl_exec($ch);
curl_close($ch);
$resultData = json_decode($response, true);
?>
Вам нужно позвонить getUserId из сценария OneSignal, чтобы получить идентификатор игрока из браузера.
OneSignal.push(function() {
OneSignal.getUserId(function(userId) {
console.log("OneSignal User ID:", userId);
// (Output) OneSignal User ID: 270a35cd-4dda-4b3f-b04e-41d7463a2316
});
});
Других решений пока нет …