1

Ich habe bei https://www.raywenderlich.com/122148/firebase-tutorial-real-time-chatJSQMessagesViewController Satz Empfänger Feuerbasis id

Feuerbasis durch folgenden Firechat raywenderlick implementiert, aber das Problem ist, es wird mit Anonymous-Modus.

Meine App habe 2 Firebase-UID erhalten und wenn User1 Logging und Nachricht senden, muss ich User2 Firebase UID einstellen, so dass beide sprechen können. Meine Klasse implementiert jedoch JSQMessagesViewController swift class und kann nur senderId und senderDisplayName festlegen und finde keine Variable wie recipientId.

Die Methode didPressSendButton hat auch nirgendwo den Empfänger Firebaseid gesetzt.

override func didPressSendButton(button: UIButton!, withMessageText text: String!, senderId: String!, senderDisplayName: String!, date: NSDate!) { 

    let itemRef = messageRef.childByAutoId() 

    let messageItem = [ 
     "text": text, 
     "senderId": senderId 
    ] 

    itemRef.setValue(messageItem) 

    JSQSystemSoundPlayer.jsq_playMessageSentSound() 

    finishSendingMessage() 

    isTyping = false 

} 

Antwort

0

können Sie erstellt Ihre eigene Nachricht Objekt, und solange es dem JSQMessageData Protokoll entspricht es mit dem Controller arbeiten. Fügen Sie dann Ihrem Objekt die benutzerdefinierte Variable hinzu. Es gibt ein Beispiel hier. https://stackoverflow.com/a/38884743/5894123