gpt4 book ai didi

cordova - 为什么我会收到消息 "All included players are not subscribed"?

转载 作者:行者123 更新时间:2023-12-02 16:48:53 25 4
gpt4 key购买 nike

我正在尝试使用 OneSignal 设置基于位置的推送通知,但没有收到通知。我收到错误所有包含的玩家均未订阅。我不明白问题是什么,有什么想法吗?

在“所有用户”的 OneSignal 列表中,未收到通知的用户已使用预期的纬度和经度坐标设置了“位置点”,并且该用户已订阅。我收到了要发送的通知,但没有位置信息,因此发送和接收通知的过程正常。

我已将此行添加到我的 AndroidManifest.xml 文件中:

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

我的 .run 函数中也有这一行:

 window.plugins.OneSignal.promptLocation();

我的 php 将请求发送到 OneSignal:

$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"]}"}

最佳答案

“所有包含的玩家均未订阅” 消息可能意味着以下任何内容。

  1. 确保您设置了正确的 app_id
  2. 您没有订阅用户。
  3. 您尚未在 OneSignal 信息中心的“应用设置”页面上为您的设备设置平台。
  4. 过滤器中没有用户。

在您的情况下,该位置可能距离超过 1,000 米。尝试增加半径并确认您在 OneSignal 仪表板的“所有用户”页面上看到“位置点”。

关于cordova - 为什么我会收到消息 "All included players are not subscribed"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40693830/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com