FCM (ошибка) - отправка уведомления на несколько тем без использования оператора ИЛИ.

Видимо, после возникновения проблемы с оператором (OR ||), поскольку уведомление было получено, когда я использовал оператор (AND &&), а при использовании (OR ||) его не было.

Google подтвердил, что оператор OR в настоящее время не работает в поле условия FCM: FCM - Google

Так есть ли другой способ, которым я мог бы отправить уведомление тем, кто подписан ( TopicA или TopicB или TopicC) без оператора (OR ||)?

1 ответ

Решение

Обновление - Итак, я связался со службой поддержки FCM, и они помогли мне обойти эту проблему, используя операторы (AND &&) и (NOT!):

Например, вы пытаетесь отправить сообщение в тему A или тему B или тему C.

Это условие можно преобразовать в предложенный обходной путь, отправив 3 сообщения, которые выглядят примерно так:

  1. Тема A &&! Тема B &&! Тема C
  2. Тема B &&! Тема C
  3. Тема С

Единственное частичное решение, которое я нашел, состоит в том, чтобы выполнить условие следующим образом:

"'TopicNone' in topics && ('TopicA' in topics || 'TopicB' in topics)"

Тема TopicNone - это тема, на которую подписаны все устройства. Видимо, если бы я использовал операторы OR(||) после оператора AND(&&). Оно работает.

Надеемся, что Google исправит эту ошибку в ближайшее время.

Другие вопросы по тегам