私はアプリケーション用にFirebaseを使用しており、組み込みのリアルタイム機能はインスタントメッセージングに適しているようです。私はちょうどデータベースがどのように設定されるべきか私の頭の中で働くのに苦労している。理想的には、次のようなものです。インスタントメッセージングシステム用のFirebase/NoSQLスキーマ
messages: {
<messageId>: {
from: <userId>,
to: <userId>,
text: <String>,
dateSent: <Date>
dateRead: <Date>
}
}
メッセージを送信するには問題ありませんが、メッセージスレッドを読むことは難しくなります。現在のスレッドの送信者と受信者に一致するメッセージのメッセージのリスト(おそらく膨大なもの)を照会してから、dateSent
でそれらを注文する必要があります。それがFirebaseの新しいクエリAPIで可能であれば、私はまだそれを行う方法を正確に把握していません。
を見ているので、これは私は基本的にベースとしてFirebaseチャットの例を使用し、これに部屋を制限するべきであることを意味2人のユーザー間の議論?同じ2人のユーザー間で重複した「ルーム」が開かれないようにするにはどうすればよいですか? – delwin
参照http://stackoverflow.com/questions/33540479/best-way-to-manage-chat-channels-in-firebase –