2016-12-22 8 views
1

Я пытаюсь отправить сообщение FCM с данными только для подписчиков темы. Но это не работает при приложении в фоновом режиме или закрыто.Как отправить сообщение FCM только с полезной нагрузкой данных через PyFCM?

Мой андроид приложение имеют следующий код:

FirebaseMessaging.getInstance().subscribeToTopic("topicname"); 

Мой FCM-отправитель Код

from pyfcm import FCMNotification 

API_KEY = "AAAA....akZKg" 

push_service = FCMNotification(api_key=API_KEY) 

data = { 
     "title":"mytitle", 
     "body":"mybody", 
     "url":"myurl" 
     } 

print(push_service.notify_topic_subscribers(topic_name="topicname", data_message=data)) 

выходы

{'canonical_ids': 0, 'results': [], 'failure': 0, 'success': 1, 'multicast_id': None} 

Но уведомление не появляются. Вам нужно показать сообщение всем подписчикам темы, у которых нет права на запуск (справа или слева).

+0

Отъезд Отправить сообщение для передачи данных. https://pypi.python.org/pypi/pyfcm/ – Qamar

+0

нет примера с отправкой сообщений с информацией только для сообщений о подписке. Это тот вариант, который мне нужно реализовать –

ответ

0

Привет, пожалуйста, обновите до последней версии pyfcm. После прохождения исходного кода я обнаружил, что pyfcm всегда добавляли «уведомление» в полезную нагрузку, но теперь они вводят опцию «remove_notification» в своем исходном коде, которая предотвращает добавление к полезной нагрузке. Так как pyfcm не предоставляет никакого метода для данных только «notify_topic_subscribers», мы должны переопределить fcm.py или форк проекта и изменить. В методе fcm.py добавьте метод «remove_notification» в метод notify_topic_subscribers и сделайте его истинным в вызове «parse_payload» в этой функции. Это его.