【问题标题】:Can you expire / remove a message remotely on FCM?您可以在 FCM 上远程过期/删除消息吗?
【发布时间】:2018-02-22 07:40:48
【问题描述】:

我正在为我的推送消息使用 FCM。它很棒,但是我有一个客户端需要能够在发送推送消息后删除它 - (以防出现错误/拼写错误等)。

我知道您可以从主题排队发送消息时获取消息 ID,只是想知道是否有一种方法可以使用该 ID 远程使这些消息过期。即删除消息。

【问题讨论】:

    标签: firebase firebase-cloud-messaging cordova-plugin-fcm


    【解决方案1】:

    目前无法从服务器端/控制台删除/移除消息。 message_id 只是消息已成功发送到 FCM 服务器的标识符。

    通常用于这种情况的是tag 参数(请参阅我的答案here),其中具有相同标签的现有通知被新通知替换。

    【讨论】:

    • 不客气。如果您认为这几乎可以回答您的问题,请随时将其标记为正确,以便您的帖子被正确标记。干杯!
    • 我会在今天下午试一试 :)。我认为你的建议是有效的。然后我会做的是,如果一个项目被删除。我可以将通知替换为一秒后过期的新通知,例如 (Deleted) 。然后在其他情况下只会更新通知。哦,我当然会标记它已解决!
    【解决方案2】:

    在某些情况下,您可能希望更换通知来通知用户,而不是静默更新。聊天应用程序就是一个很好的例子。在这种情况下,您应该将 tagrenotify 设置为 true。

    将此代码写入您的sw.js

        const title = 'Notification 2 of 2';
        const options = {
          tag: 'renotify',
          renotify: true
        };
        registration.showNotification(title, options);
    

    您可以通过点击renotify 按钮在here 上测试演示

    【讨论】:

    • 很酷,谢谢。很高兴知道。可能会出现重要更新或“突发新闻!更新”风格的场景。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-01-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-05
    • 2021-12-12
    • 2016-02-19
    相关资源
    最近更新 更多