Извлечение MU C истории сообщений с использованием MucSub в IOS - PullRequest
0 голосов
/ 07 января 2020

Каждый раз, когда я вхожу в приложение или переустанавливаю приложение, я не получаю историю сообщений группы. Я много искал для архивирования сообщений в MU C для iOS. Ejabberd не предоставляет мне старые сообщения группы, хотя я настроил настройку в YML-файл, как указано в прикрепленном изображении. enter image description here Я сохранил размер истории 10. Это означает, что по крайней мере 10 сообщений должны быть извлеченным каждый раз, когда я вхожу в приложение или переустанавливаю приложение, но я не мог получать 10 сообщений каждый раз после переустановки приложения. Я использую Robbiehanson / XMPPFramework для iOS для реализации чата на основе XMPP. Я также выполнил MU C на основе MucSub для отправки / получения сообщений.

Сценарий, который я выполнил: я являюсь частью одной группы MU C. Член связанной группы отправил 15 сообщений в группу. Я получил все эти сообщения, когда я в сети. Теперь я вышел из группы. Удалил приложение с устройства и переустановил его на устройство с теми же учетными данными. В это время я не мог видеть 15 сообщений, которые я получил ранее. Здесь я хотел бы получить все 15 сообщений даже после переустановки приложения на устройство iOS.

Я искал различные вопросы о переполнении стека, но ни одно из них не помогло мне. Ваша помощь будет оценена.

1 Ответ

0 голосов
/ 07 января 2020

Возможно, вы можете попытаться присоединиться к комнате, указав элемент history с указанием maxstanzas .

У нас похожий случай, как нам нужна история последних 3 месяцев, пока присоединившись к комнате, мы упомянули, что в теге history , как показано ниже пример кода

let historyElement = DDXMLElement(name: "history")
historyElement.addAttribute(withName: "since", stringValue: ((lastDate as NSDate).addingTimeInterval(1).xmppDateTimeString())!)
room.join(usingNickname: userJidString, history: historyElement)
...