androidでチャットアプリを作りたいと考えています。
しかしながら、基本構成がわかりません。
Firebaseを使えばよさそうです。

realtime databaseと
Firebase Cloud Messaging Android
の2つでしょうか?

realtime databaseを使えば、2つのアンドロイド端末間で、同じチャット画面が表示されると思います。しかしながら、片方の端末を使っている人がactivityを閉じてしまった場合、その片方の人は、activityが更新されたかどうか、わからないので、Firebase Cloud Messaging Android で、チャットが着ましたと通知する必要があると思うんです。

2人でチャットしていて、片方の人が画面を閉じてしまった場合、相手に、簡単なメッセージを飛ばして、通知する方法を実現するやり方を知りたいです。当然、画面を閉じないでちゃんと表示された場合は、簡単なメッセージは通知しません。

realtime database
Firebase Cloud Messaging Android

どっちも、ちょっとだけ違うような気がします。