Nano Hash - криптовалюты, майнинг, программирование

Условие отрицательной темы Firebase перестает работать

На самом деле сегодня я получил отчет клиента.

Push-уведомления не приходят на устройства.

После некоторых исследований я понял, что условие отрицательной темы, которое я использую для отправки уведомлений на все устройства, перестает работать. Неделю назад посылка работала на тех же условиях. Я использую Postman для разработки запросов.

Я использую Rest API с конечной точкой отправки. https://fcm.googleapis.com/fcm/send

вот моя полезная нагрузка:

{
    "condition":"!('nonExistingTopic' in topics)",
    "data": {
        "notification_foreground": true,
        "link": "https://www.google.com"
    },
    "notification": {
        "click_action": "FCM_PLUGIN_ACTIVITY",
        "title": "notification title",
        "body": "notification message"
    }
}

Я получил статус ok от Firebase с объявлением message_id, но сообщение не было отправлено. Так что очевидно условие не подходит ни к одному из устройств.

Когда я использую поле Registration_ids с токеном fcm моего устройства, я получаю уведомление.

Я уже пытался найти какие-то изменения обновлений в журналах изменений firebase, которые, возможно, изменили поведение поля условия. Но я ничего не нашел.

У кого-нибудь есть такие же проблемы? Любые идеи для обхода!

Спасибо!


Ответы:


1

У меня та же проблема, в качестве временного решения я должен отправлять уведомления через консоль Firebase (потому что я использую ее только для связи с пользователями).

Также я запущу новое обновление, которое теперь регистрируется в теме под названием «Общие» при запуске.

Я не понял, как отправить всем пользователям с отрицательным условием темы. Перестал работать около 10 дней назад.

12.09.2020

2

Тем временем я нашел решение этой проблемы.

Я использую поле условия только для реально существующих тем.

"condition" = "'sport' in topics"

Чтобы отправить сообщение на все устройства, вы можете использовать параметр to со значением /topics/all вместо отрицательного условия.

{
    "notification": {
        "title": "myTitle",
        "body": "myTeaser"
    },
    "to": "/topics/all",
    "data": {
        "myCustomDataField": "myFieldValue"         
    }
}
20.05.2021
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..