【发布时间】:2017-03-21 23:39:14
【问题描述】:
我的 Web 应用程序集成了 OneSignal 通知,它工作正常,但问题是我只需要向特定用户发送通知。我将选择一封电子邮件并发送通知。对于 OneSignal 提供细分,当我创建细分并提供电子邮件 ID 时,它显示细分中有 0 个用户。
我的问题是如何将我在细分中输入的电子邮件 ID 与我进行比较并返回 0 个用户?
【问题讨论】:
标签: onesignal
我的 Web 应用程序集成了 OneSignal 通知,它工作正常,但问题是我只需要向特定用户发送通知。我将选择一封电子邮件并发送通知。对于 OneSignal 提供细分,当我创建细分并提供电子邮件 ID 时,它显示细分中有 0 个用户。
我的问题是如何将我在细分中输入的电子邮件 ID 与我进行比较并返回 0 个用户?
【问题讨论】:
标签: onesignal
改用标签。为您要向其发送消息的人设置标签,例如:{email: jimmy@jimmy.com}。
然后在您的通知发送代码中,根据标签发送给该人。例如
$content = array(
"en" => "hello jimmy"
);
$fields = array(
'app_id' => <your_ID_here> ,
'filters' => array(array("field" => "tag", "key" => "email", "relation" => "=", "value" => "jimmy@jimmy.com")),
'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);
【讨论】: