2017-01-24 15 views
2

Я использую Firebase и работать в Swift 2.3 и Xcode 7.3 создать чат приложение с помощью JSQMessagesViewController чат работает нормально в режиме реального времени и в фоновом режимечитать непрочитанные статус в JSQMessagesViewController

Я хочу установить читать, ожидающий и непрочитанный статус сообщений в таких пузырях, как WhatsApp и Messenger.

AnyOne помогите мне ????

+0

Не могли бы вы поделиться или удалить свой вопрос? –

+0

Как вы это сделали? Я тоже застрял в этом ... – JRafaelM

+0

Ya было бы здорово, если бы вы могли пролить свет на этот вопрос. –

ответ

1

Да я решить эти проблемы, Просто добавьте наблюдатель ChilChanged, этот наблюдатель будет вызывать, когда и изменил любое значение в firebase

messageRef = channelRef!.child("messages") 
messageRef.observeEventType(FIRDataEventType.ChildChanged, withBlock: { (snapshot) in 
}) { (e) in 
      print(e.localizedDescription) 
     } 

А когда и получить сообщение только обновить свой статус, как это, когда у делать этот вышеописанный метод будет срабатывать на устройстве друзей, и вы можете изменить свой локальный объект в отношении вашей Firebase DB

messageRef.observeEventType(FIRDataEventType.ChildAdded, withBlock: { (snapshot) in 
if messageData["status"] as String! == "Sent"{ 
         let prntRef = FIRDatabase.database().reference().child("friends").child(self.chatId).child("messages").child(refKey) 
         prntRef.updateChildValues(["status":"Read"]) 
        } 
}) { (e) in 
       print(e.localizedDescription) 
       MBProgressHUD.hideHUDForView(self.view, animated: true) 
     }