标签: onesignal

OneSignal php目标标签

我正在尝试使用针对OneSignal服务的api向具有特定标签的用户发送推送通知:https://www.onesignal.com/

我似乎无法正确格式化数组.这是我拥有或想要的东西,但它不起作用:

"tags" => array[{"key": "NotifyLive", "relation": "=", "value": "true"}],
Run Code Online (Sandbox Code Playgroud)

因此,我希望将标记为"NotifyLive"的用户设置为"true".

我相信这可以做到,因为它在这里文档中显示了它.向下滚动到标签:对象数组示例.我只是无法弄清楚如何编码这一行.

以下是我通过通知发送的字段:

$fields = array(
      "app_id" => "example",
      "android_sound" => "$num",
      "big_picture" => "http://website.com/mypic.jpg",
      "tags" => array[{"key": "NotifyLive", "relation": "=", "value": "true"}],// Doesn't work! 
      "data" => array("autoplay" => "true"),
      "contents" => $content,
      "headings" => $heading
    );
Run Code Online (Sandbox Code Playgroud)

错误: 收到JSON:{"allresponses":"{\"errors \":[\"标签必须是数组.例如,[{\\"key \\":\\"gender \\",\\"relation \\":\\"= \\",\\"value \\":\\"male\\ "}] \"]}"}

该团队拥有惊人的支持,但我现在需要在工作时间之外得到答案.感谢您的任何见解.

php onesignal

2
推荐指数
1
解决办法
3659
查看次数

使用OneSignal在Ionic App中缺少推送通知权利故障

我在Cordova应用程序中使用OneSignal API进行推送通知.我的android正在接收通知,但iPhone不是,我收到这封电子邮件:

亲爱的开发者,

我们发现您最近交付的"----"存在一个或多个问题.您的投放成功,但您可能希望在下次投放时更正以下问题:

缺少推送通知权利 - 您的应用程序包含Apple推送通知服务的API,但应用程序签名中缺少aps-environment权利.要解决此问题,请确保在Provisioning Portal中为推送通知启用了App ID.然后,使用包含aps-environment权利的分发配置文件为您的应用签名.这将创建正确的签名,您可以重新提交您的应用程序.有关详细信息,请参阅"本地和推送通知编程指南"中的"供应和开发".如果您的应用不使用Apple推送通知服务,则无需执行任何操作.您可以从将来的提交中删除API以停止此警告.如果您使用第三方框架,则可能需要与开发人员联系以获取有关删除API的信息.

纠正问题后,您可以使用Xcode或Application Loader将新二进制文件上传到iTunes Connect.

问候,

App Store团队

我的应用程序ID已启用推送通知,我真的不明白为什么它不起作用.

在此输入图像描述

push-notification ios cordova onesignal

2
推荐指数
1
解决办法
1037
查看次数

在android中关闭应用程序时,在实际设备上没有收到一个信号通知

我为One Signal Push通知创建了演示应用程序.它在模拟器上工作正常,但在真实设备上进行测试时.当应用程序关闭没有收到推送通知时有一个问题.

实现代码如下:

TestDemo.java文件

public class TestDemo extends Application {

@Override
public void onCreate() {
    super.onCreate();
    OneSignal.setLogLevel(OneSignal.LOG_LEVEL.DEBUG, OneSignal.LOG_LEVEL.WARN);

    OneSignal.startInit(this)
            .setNotificationOpenedHandler(new ExampleNotificationOpenedHandler())
            .autoPromptLocation(true)
            .init();
}

private class ExampleNotificationOpenedHandler implements OneSignal.NotificationOpenedHandler {
    @Override
    public void notificationOpened(OSNotificationOpenResult result) {
        OSNotificationAction.ActionType actionType = result.action.type;
        JSONObject data = result.notification.payload.additionalData;
        String customKey;

        if (data != null) {
            customKey = data.optString("customkey", null);
            if (customKey != null)
                Log.i("OneSignalExample", "customkey set with value: " + customKey);
        }

        if (actionType == OSNotificationAction.ActionType.ActionTaken)
            Log.i("OneSignalExample", "Button pressed with id: " + …
Run Code Online (Sandbox Code Playgroud)

android push-notification android-studio onesignal

2
推荐指数
1
解决办法
4742
查看次数

Android - OneSignal回调方法永远不会被触发(notificationReceived - notificationOpened)

我正在使用信号来推送通知,它工作正常但我遇到了"接收通知"的问题,因为我想在收到通知时采取行动.

这是我的代码,我按照文档但我什么也没得到.这是问题所在?

public class MyApplication extends Application {
static Context context;
@Override public void onCreate() { 
  super.onCreate(); 
  context = getApplicationContext();


OneSignal.startInit(this) 
 .autoPromptLocation(true) 
 .setNotificationOpenedHandler(new ExampleNotificationOpenedHandler())   
 .setNotificationReceivedHandler(new ExampleNotificationReceivedHandler())
 .init(); 
}

private class ExampleNotificationReceivedHandler implements OneSignal.NotificationReceivedHandler {

@Override
public void notificationReceived(OSNotification notification) {
    Log.d("OneSignalExample", "notificationReceived!!!!!!");

}
}

  private class ExampleNotificationOpenedHandler implements OneSignal.NotificationOpenedHandler {

@Override
public void notificationOpened(OSNotificationOpenResult openedResult) {
    Log.d("OneSignalExample", "notificationOpened!!!!!!");

}
}
}
Run Code Online (Sandbox Code Playgroud)

android callback onesignal

2
推荐指数
1
解决办法
987
查看次数

一信号推送通知

如何在节点js中创建推送通知时包含小图标和大图标url,我知道我们需要在发送推送通知时发送图像url,我需要节点js中的代码示例..我有这个代码..

sendNotificationToSpecific =function (token,messages) {
    var sendNotification = function (data) {
        var headers = {
            "Content-Type": "application/json; charset=utf-8",
            "Authorization": "Basic MDNlMTNjYWMTgy"
        };

        var options = {
            host: "onesignal.com",
            port: 443,
            path: "/api/v1/notifications",
            method: "POST",
            headers: headers
        };

        var https = require('https');
        var req = https.request(options, function (res) {
            res.on('data', function (data) {
                console.log("Response:");
                console.log(JSON.parse(data));
            });
        });

        req.on('error', function (e) {
            console.log("ERROR:");
            console.log(e);
        });

        req.write(JSON.stringify(data));
        req.end();
    };

    var message = {
        app_id: "awer342-d744-4787-b59a-f55c6215c491",
        contents: {"en": messages},
        include_player_ids: [token],
    };

    sendNotification(message);
};
Run Code Online (Sandbox Code Playgroud)

push-notification node.js onesignal

2
推荐指数
1
解决办法
5924
查看次数

在 OneSignal 中点击通知打开应用程序

我通过使用此方法收到通知OneSignal,但我想在单击通知时打开该应用程序

private static class ExampleNotificationOpenedHandler implements OneSignal.NotificationOpenedHandler {
    @Override
    public void notificationOpened(String message, JSONObject additionalData, boolean isActive) {

        try {
            if (additionalData != null) {
                if (additionalData.has("actionSelected"))
                    Log.d("OneSignalExample", "OneSignal notification button with id " + additionalData.getString("actionSelected") + " pressed");
                Log.d("OneSignalExample", "Full additionalData:\n" + additionalData.toString());
            }
        } catch (Throwable t) {
            t.printStackTrace();
        }
Run Code Online (Sandbox Code Playgroud)

android push-notification onesignal

2
推荐指数
1
解决办法
4422
查看次数

使用OneSignal/Firebase从iOS设备发送推送通知

我正在开发一个应用程序,并试图找出当其他用户执行特定操作时如何通知特定用户.我试图避免设置我自己的后端服务器,因为我相信我想做的事情可以通过OneSignal/Firebase完成.

我还没有尝试过,但我想每个用户我都可以获得他们自己的OneSignal player_id(基本上是OneSignal device_id),将其上传到我的firebase数据库,然后当我想发送推送通知时我只需拉动来自firebase的用户的player_id,然后使用它来创建OneSignals 发送到特定设备的通知,其中使用player_ids不需要API Auth Key.

虽然在查看文档之后我不确定用户如何找到(因此他们可以上传到firebase)他们的player_id,所以如果有人能指出我朝这个方向,那将是值得赞赏的.

通过阅读其他问题,似乎这会起作用.我只是想看看这种方法是否存在任何潜在的问题,或者是否有任何更安全或更简单的方法.

push-notification firebase swift onesignal firebase-realtime-database

2
推荐指数
1
解决办法
1664
查看次数

是否可以使用 OneSignal 获取设备令牌

也许有人知道在使用 OneSignal 接收通知时如何获取设备令牌?

android push-notification onesignal

2
推荐指数
1
解决办法
2950
查看次数

Laravel - 如何使用信号通知

我有一个在laravel中开发的后台,允许插入android和ios app获得的数据.

现在我需要实施onsignal通知,例如,当在后台插入新产品时,app用户会收到通知.

我设置了我的信号通知并在我的laravel项目中安装此软件包:https://github.com/laravel-notification-channels/onesignal.我设置OneSignal App IDREST API Key太.

之后,我创建了一个新的控制器,并将示例代码放在包链接中.控制器:

   use Illuminate\Http\Request;
use NotificationChannels\OneSignal\OneSignalChannel;
use NotificationChannels\OneSignal\OneSignalMessage;
use NotificationChannels\OneSignal\OneSignalWebButton;
use Illuminate\Notifications\Notification;

class NotificationsController extends Controller
{
  public function via($notifiable)
  {
      return [OneSignalChannel::class];
  }

  public function toOneSignal($notifiable)
  {
      return OneSignalMessage::create()
          ->subject("Your {$notifiable->service} account was approved!")
          ->body("Click here to see details.")
          ->url('http://onesignal.com')
          ->webButton(
              OneSignalWebButton::create('link-1')
                  ->text('Click here')
                  ->icon('https://upload.wikimedia.org/wikipedia/commons/4/4f/Laravel_logo.png')
                  ->url('http://laravel.com')
          );
  }
}
Run Code Online (Sandbox Code Playgroud)

但现在我不知道如何使用它.例如,如何在添加新产品时发送通知?我需要设置路线?

如果不解释我的问题,请告诉我.

谢谢

php notifications laravel onesignal

2
推荐指数
1
解决办法
7058
查看次数

在 AWS Lambda 上发出 https 请求

最近发现了 AWS 并且我做得很好,今天我想向我的 iPhone X 发送一个测试通知。我正在尝试在我的数据库更新时这样做,使用 dynamoDB 触发器蓝图。

在仪表板上发送的定期通知有效

这是我到目前为止所尝试的,我既没有在 CloudWatch 上获得代表控制台日志,也没有出现错误。

console.log('Loading function');
const async = require('async');
const https = require('https');

exports.handler = async (event, context) => {
    console.log('Received event:', JSON.stringify(event, null, 2));

    const name = "35b83a10-9f46-4c2c-95e1-22c6d40005a8"; 

    var message = { 
      app_id: "appid",
      contents: {"en": "Your order has arrived at your doorstep"},
      include_player_ids: ["14894201-64f7-486a-b65e-6beedf5880f1",name,"8e0f21fa-9a5a-4ae7-a9a6-ca1f24294b86"]
     };

    sendNotification(message);

    console.log("Activation change detected. message sent");
    return `Successfully processed ${event.Records.length} records.`;
};


var sendNotification = function(data) {
  var headers = {
    "Content-Type": "application/json; charset=utf-8", …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services node.js aws-lambda onesignal

2
推荐指数
1
解决办法
2150
查看次数