Firebase云消息传递(FCM)- HTTP V1 API还是Legacy HTTP API?

8
我们的目标是从后端向设备组发送通知,只有从服务器端才能知道哪个设备应该接收通知。
我们已经尝试过使用AppCenter,因为我们主要使用Xamarin iOS/Android/Forms,但现在我们怀疑直接使用Firebase API可能更好,因为它更广泛和更强大。
我发现在新版本的API(HTTP V1)中不可能发送通知到令牌列表,这是遗留API中使用registration_ids参数可用的功能(https://firebase.google.com/docs/cloud-messaging/send-message)。

设备组名称(仅限旧协议)

我不能使用主题,因为在发送通信时,服务器负责准备通知的“邮寄清单”。
我在考虑使用设备组消息(https://firebase.google.com/docs/cloud-messaging/android/device-group),但这些是遗留API的一部分,我不确定是否有意义/是否可以在新版本的API中使用它们。
在理论上,可以发送无限量的通知,但是我担心发送过多的通知可能会被禁止。是否有一种选项可以将100-200-500个批次的推送通知分别发送给一个令牌?
使用旧版API是否更好?Microsoft的AppCenter也使用旧版API,这很明显是因为设置的工作方式以及从AppCenter的控制台向令牌列表发送通知的功能在Firebase的控制台上不可用。
另一个人刚刚问了类似的问题,但答案是要使用主题(如何同时向所有用户发送Firebase通知?)。
2个回答

7

我从你在我的这里回答中的评论链接过来了。并且再次重申我的回答,当使用v1向多个令牌发送消息时,现在建议使用主题消息,因为不支持registration_ids

使用旧版API是否更好?

v1被描述为向FCM客户端发送消息的更安全、跨平台、未来证明的方式。因为它使用OAuth2安全模型,所以更安全。

然而,如果您的用例更适合使用旧版API,则建议您继续使用它。


谢谢。目前我们的首选是使用新的API,但发送几百个单独的请求批处理,希望它能正常工作(为少数几十到几百个用户提供一两个设备)。您对这种方法有什么经验吗? - Mauro Piccotti
如果你想知道请求是否有限制,据我所知,没有 - AL.
总是旧的答案涉及到遗留API,我希望当我们并行发送数百个POST请求时一切都能正常工作(对于浪费流量我很抱歉)。我们将尝试一下,如果出现问题,我们将切换回旧的API,也许我们很幸运,与此同时Google会添加这个在遗留API中可用的缺失功能。谢谢。 - Mauro Piccotti
v1 和 legacy 之间唯一的区别在我链接的博客文章中提到了。至于限制,我认为它们应该保持不变。干杯! - AL.
新的HTTP v1 API iOS数据消息支持(以及其中的aps支持)似乎出了问题。它可以发送通知,但仅限于此。虽然它们没有明确说明它不起作用,但也没有提供工作示例,有些应该起作用的示例却会返回400错误。 - Lassi Kinnunen
但是现在不再支持传统方法,将在2024年被移除。我不能像主题发起者那样使用主题。有没有一个适合替代register_ids的好方法? - labu77

4

1
现在支持多播消息传递。 - AWhitford
我搜索了Multicast Messaging with HTTP v1,但是它不受支持,并且Legacy API将在2024年被移除。 - Cristian
@Cristian 好的,我会在我的主题中提供解决方案,并在你的主题中放置一个链接。我还会解释如何在php中获取承载者access_token,并将所有内容一起实现在一个php curl定时任务解决方案中。 - labu77
@labu77 谢谢。关于outh2令牌,我已经完成了。 - Cristian
@labu77 我看到了你的解决方案,我正在寻找来自Github的FCM Admin SDK,但它需要更新到新的HTTP V1 Api,我不知道是否会完成!唯一的方法应该是批量请求,但在你的解决方案中,我没有看到可以发布例如json数组的数据字段。对于OAuth 2.0令牌,我只创建了一个函数,使用google api客户端库http://developers.google.com/api-client-library/php生成令牌,如https://firebase.google.com/docs/cloud-messaging/auth-server?hl=en所述。 - Cristian
显示剩余6条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接