Как использовать XEP 198 (Stream Management) из smack 4.1?
Я новичок в XMPP. Я использую smack на Android для обеспечения чата в моем приложении.
В smack 4.1 добавлена поддержка управления потоками, поэтому я использовал
XMPPTCPConnection.setUseStreamManagementDefault(true);
чтобы включить это, и я получаю:
03-27 00:50:54.945: D/SMACK(16991): SENT (5): <enable xmlns='urn:xmpp:sm:3' resume='true'/>
03-27 00:50:55.740: D/SMACK(16991): RECV (5): <enabled xmlns='urn:xmpp:sm:3' id='g2gCbQAAAAVTbWFja2gDYgAABZNiAAYRuGIAAW06' resume='true' max='300'/>
Итак, XEP 198 отлично работает как на моем клиенте, так и на сервере (ejabberd 15).
Но мой вопрос -> я должен написать свой собственный код для хранения сообщений (которые не были подтверждены сервером) в моей базе данных android sqlite и вручную отправить их, используя chat.sendMessage();
когда соединение переподключено? ИЛИ эта повторная отправка выполняется самим Smack?
Я не получил никакой документации для использования XEP 198 на smack 4.1, кроме XMPPTCPConnection.setUseStreamManagementDefault(true);
Есть ли какой-нибудь метод от smack для прослушивания <a/>
получил с сервера?
Я видел исходный код yaxim, но кажется, что они написали свой собственный код (отправляя пакеты) для поддержки XEP 198, который теперь делается в Smack 4.1.
Пожалуйста, помогите мне с тем, что я должен сделать после включения этой поддержки?
1 ответ
- Конечно, вам нужно сохранить ожидающие сообщения и отправить их снова, когда соединение вернется.
- У нас есть один способ прослушать сообщение. Проверьте это, /questions/44832315/kvitantsiya-kvitantsii-servera-android/44832326#44832326