azure - 设置 Fcm 通知优先级 - Azure 通知中心

标签 azure notifications

我正在尝试在 C# SDK 中的 Fcm 通知有效负载上设置高优先级,以便从后端将其发送到移动应用程序。 根据 Fcm 文档,Json Paylod 应该如下所示:

{
  "message":{
    "topic":"subscriber-updates",
    "notification":{
      "body" : "This week's edition is now available.",
      "title" : "NewsMagazine.com",
    },
    "data" : {
      "volume" : "3.21.15",
      "contents" : "http://www.news-magazine.com/world-week/21659772"
    },
    "android":{
      "priority":"normal"
    },
    "apns":{
      "headers":{
        "apns-priority":"5"
      }
    },
    "webpush": {
      "headers": {
        "Urgency": "high"
      }
    }
  }
}

Found here

在我的代码中,我尝试了使用 Azure SDK 的不同方法来做到这一点。 1

var result = await voipClient.SendFcmNativeNotificationAsync(payload, tag);

将此 json 作为有效负载

{
   "data":{
      "key":"value"   
},
   "android":{
      "priority":"high"

}

2

var notification = new FcmNotification(payload);
notification.Headers.Add("android", "{\"priority\": \"high\"}");

将广告负载放入我之前发布的广告负载

在这两种情况下,我都会收到具有正常优先级的通知。

你知道我哪里出错了吗?

最佳答案

如果您查看 Azure 通知中心文档,您可能会感到困惑,因为它链接到 FCM 文档:FCM 允许使用不同的方式来构建有效负载,通知中心更严格。

您应该发送以下有效负载:

{
   "data":{
      "key1":"value1",
      "key2":"value2",

   },
  "priority":"high"
}

您发送到通知中心的负载实际上是 Firebase 负载内的“android”字段。

注意: 如果您按如下方式设置通知字段内的标题,则通知中心会自动将优先级设置为:

{
  "notification": {
    "title":"any title"
  }
}

关于azure - 设置 Fcm 通知优先级 - Azure 通知中心,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60508039/

相关文章:

c# - 内部错误 500 Azure 门户上发生错误,但在本地工作正常

azure - 获取按 LastModifiedDate 排序的 ListBlobs() 吗?

azure - Terraform - 如何查找用于网络对等互连的 Azure Kubernetes AKS vnet ID

android - GCM 3.0 - gcm 不会自动显示带有通知参数的通知

email - 如何在 Magento 中禁用通知电子邮件?

git - 检查 git 分支是否在 azure devops 上使用 api 被锁定

c# - Azure函数2依赖注入(inject)抛出错误

ios - 如何使用 UIPickerView 的选定值作为通知的时间间隔?

ios - 向 iOS 上特定位置的用户发送推送通知(背景和被杀死)

android - 有通知时如何得到通知