include remote server errors in errors that should trigger a self ping
This commit is contained in:
parent
0ecdb43be6
commit
9f08a32ffb
|
@ -266,12 +266,12 @@ public class MessageParser extends AbstractParser implements OnMessagePacketRece
|
||||||
Message.STATUS_SEND_FAILED,
|
Message.STATUS_SEND_FAILED,
|
||||||
extractErrorMessage(packet));
|
extractErrorMessage(packet));
|
||||||
final Element error = packet.findChild("error");
|
final Element error = packet.findChild("error");
|
||||||
final boolean notAcceptable = error != null && error.hasChild("not-acceptable");
|
final boolean pingWorthyError = error != null && (error.hasChild("not-acceptable") || error.hasChild("remote-server-timeout") || error.hasChild("remote-server-not-found"));
|
||||||
if (notAcceptable) {
|
if (pingWorthyError) {
|
||||||
Conversation conversation = mXmppConnectionService.find(account,from);
|
Conversation conversation = mXmppConnectionService.find(account,from);
|
||||||
if (conversation != null && conversation.getMode() == Conversational.MODE_MULTI) {
|
if (conversation != null && conversation.getMode() == Conversational.MODE_MULTI) {
|
||||||
if (conversation.getMucOptions().online()) {
|
if (conversation.getMucOptions().online()) {
|
||||||
Log.d(Config.LOGTAG,account.getJid().asBareJid()+": received not-acceptable error for seemingly online muc at "+from);
|
Log.d(Config.LOGTAG,account.getJid().asBareJid()+": received ping worthy error for seemingly online muc at "+from);
|
||||||
mXmppConnectionService.mucSelfPingAndRejoin(conversation);
|
mXmppConnectionService.mucSelfPingAndRejoin(conversation);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue