Firestore не имеет концепции серверных соединений или проекций между коллекциями.Каждый запрос или прочитанный документ может брать данные только из одной коллекции.Если вам нужно загрузить данные из двух коллекций, вам потребуется как минимум два чтения.
Так что в вашем случае вам нужно будет загружать пользовательские данные отдельно, обычно кэшируя их в коллекции в вашем коде, чтобыне загружайте одного и того же пользователя слишком часто.
Другой альтернативой является дублирование данных, которые часто требуются от каждого пользователя, в документы чата.Этот тип дублирования также довольно распространен при моделировании данных в базах данных NoSQL.
Для более подробной информации по этим темам я настоятельно рекомендую прочитать Моделирование данных NoSQL и посмотреть знакомство с Cloud Firestore.