2017-02-19 6 views
0

У меня есть приложение для чата с уведомлением о нажатии, чтобы сообщить пользователю, что у него появилось новое сообщение.Получение двойного Push-уведомления в PubNub

Есть две стороны с помощью приложения: клиент + менеджер

Я PubNub для достижения чат цели, поэтому оба листинга на том же канале: chat_channel

проблема, когда я посылаю Push Notification через Pubnub, чтобы сообщить клиенту, например, что у вас есть новое сообщение от менеджера,

В этом случае отправитель (т. е. Manger) получает push-уведомление в своем сообщении, потому что он прослушивает тот же канал! и это неправильно в логике.

Есть ли решение предотвратить этот случай без создания двух каналов (manager_channel, client_channel) для push-уведомления?

Я буду рад за любую помощь.

Спасибо.

ответ

0

Любое устройство, прослушивающее канал, получит уведомление о нажатии. Даже у меня была такая же проблема, поэтому обработано это уведомление Pubnub в зависимости от состояния приложения: активное и неактивное.

В активном состоянии, Метод Applegate'sReceiveRemoteNotification получает сообщение, которое отправитель [в вашем примере case: Manager] нажимает на определенный канал. Здесь вы можете проверить отправителя сообщения, добавив флаг isManager: YES в служебную информацию уведомления и проигнорировать их. Я использовал его как подтверждение сообщения, отправленного на сервер.

В неактивном состоянии полезная нагрузка всегда будет с противоположной стороны, довольно прямолинейной.

Просто попытался вам помочь!

Смежные вопросы