MAM XEP-0313 - запрос списка разговоров для конкретного пользователя

Я разрабатываю мобильное приложение для обмена сообщениями (ios) и поддерживаю функцию выхода из системы. Я хочу сохранить список последних разговоров, когда пользователи снова войдут в систему. Потому что локальное хранилище приложения очищается после выхода из системы.

Я успешно использую MAM XEP-0313, но не нашел IQ для запроса списка бесед определенного пользователя.

For example:
       chat
user_a -> user_b
          user_c
          user_d
          user_f

Пользователь user_a имел беседы с 4 пользователями, и он хочет выйти из приложения, а когда он возвращается, ему необходимо получить эти последние 4 цепочки бесед в своем списке.

Что я делаю, когда пользователь сообщает другому пользователю, что я добавляю их в свой список и использую логику автоматической подписки. Поэтому я подумал использовать логику истории реестра для запроса этой коллекции, но я также ожидал, что модуль MAM будет иметь более прямой путь...

Я использую сервер MongooseIM

1 ответ

Я понимаю вашу проблему, решение, которое у вас есть, вероятно, лучшее, которое вы можете иметь со стандартными XEP и их реализациями.

Список разговоров фактически отсутствует в спецификации MAM или вообще в XMPP. Есть некоторые работы по определению расширения, чтобы вы могли получить все разговоры, где у вас есть непрочитанные сообщения (так называемая "непрочитанная синхронизация"). Будет ли этого достаточно для вас, или вы бы предпочли получить какую-то "входящую почту". Под "входящими" я подразумеваю список всех последних разговоров с количеством непрочитанных сообщений, где есть несколько непрочитанных сообщений.

Другие вопросы по тегам