2015-02-02 6 views
0

В моем приложении чата XMPP я использую библиотеку ASMACK 4.0.6 на стороне клиента Android.гибкий вывод автономных сообщений, возвращающих false

Я хочу получить автономные сообщения, когда установлено соединение XMPP. Для этого сначала проверяю, поддерживает ли сервер гибкое извлечение. Сервер всегда возвращает false. Мы включили автономный модуль на сервере MongooseIM. Но почему я получаю ложь от сервера?

if (!offlineMessageManager.supportsFlexibleRetrieval()) { 
Log.i("Offline messages not supported","" + offlineMessageManager.supportsFlexibleRetrieval()); 
       return; 
} 

Если я пытаюсь с пиджин клиента, я получаю сообщения в автономном режиме ..

ответ

0

Отказ от ответственности: Я работаю на MongooseIM.


Гадание из API, который вы пытаетесь использовать его реализует XEP-0013 - MongooseIM не поддерживает эту XEP. Убедитесь, что протокол .supportsFlexibleRetrieval() действительно использует под ним.

MongooseIM поддерживает XEP-0313 version 0.2 и будет поддерживать новейшую версию этого XEP. Проверьте, поддерживает ли ваша клиентская библиотека этот XEP и какая версия. Соответствующий модуль для работы на сервере - mod_mam. Пожалуйста, обратитесь к MongooseIM wiki on GitHub, так как его конфигурация немного сложна.

В качестве альтернативы вы можете положиться на mod_offline, автоматически нажимая автономные сообщения при подключении ресурса.

+0

Thanks @erszcz. Я проверил на стороне сервера. mod_offline и mod_mam оба модуля включены. Не могли бы вы рассказать мне, как реализовать mob_offline или mod_mam на стороне клиента? Я использую библиотеку asmack 4.0.6. –

+0

Пожалуйста, обратитесь к XEPs, которые я связал в ответе. Я не знаю API ASmack, поэтому не могу дать более подробный ответ на это. BTW, если вы считаете этот ответ удовлетворительным, пожалуйста, примите его;) – erszcz