I'm developing an instant messaging app on android with SMACK library that uses OPENFIRE as a xmpp server. I want to get last message of each conversation from MessageArchiveManager in openfire server that was enabled by MONITORING SERVICE plugin(based on XEP-0313). I know that mamManager.queryArchive() can gets the messages that related to specific jid or can get a specific number of messages that exists in server(with no custom sepration), but we suppose that smack doesn't knows which JIDs has conversation on server! One solution is that send request per each ROSTER entry, but it has heavy cost when it contains numerous contacts and perhaps we have a conversation with anybody out of Roster. Is there any way or plugin or another extension to do this?
Asked
Active
Viewed 411 times
8
-
I am working on the same problem, as of now my app loops through all the roster entries in a background service and we prioritize roster entries via their group. The other option I looked at was pulling the entire chat history, but even configuring the server to send 1000 messages at a time, it's very costly – Zachary Sweigart Aug 26 '18 at 17:58
-
did you find the solution?! – Mehdi Dec 23 '18 at 07:28
-
1I'm afraid, not – Mahdi Moqadasi Dec 23 '18 at 07:29