diff --git a/src/eu/siacs/conversations/services/XmppConnectionService.java b/src/eu/siacs/conversations/services/XmppConnectionService.java index b8d8b8227..da8129c4d 100644 --- a/src/eu/siacs/conversations/services/XmppConnectionService.java +++ b/src/eu/siacs/conversations/services/XmppConnectionService.java @@ -69,7 +69,7 @@ public class XmppConnectionService extends Service { public long startDate; - private static final int PING_MAX_INTERVAL = 30; + private static final int PING_MAX_INTERVAL = 300; private static final int PING_MIN_INTERVAL = 10; private static final int PING_TIMEOUT = 2; @@ -201,7 +201,6 @@ public class XmppConnectionService extends Service { } scheduleWakeupCall(PING_MAX_INTERVAL, true); } else if (account.getStatus() == Account.STATUS_OFFLINE) { - Log.d(LOGTAG, "onStatusChanged offline"); databaseBackend.clearPresences(account); if (!account.isOptionSet(Account.OPTION_DISABLED)) { int timeToReconnect = mRandom.nextInt(50) + 10; @@ -493,7 +492,7 @@ public class XmppConnectionService extends Service { this.pendingPingIntent = PendingIntent.getBroadcast(context, 0, this.pingIntent, 0); alarmManager.set(AlarmManager.ELAPSED_REALTIME_WAKEUP,timeToWake, pendingPingIntent); - Log.d(LOGTAG,"schedule ping in "+seconds+" seconds"); + //Log.d(LOGTAG,"schedule ping in "+seconds+" seconds"); } else { long scheduledTime = this.pingIntent.getLongExtra("time", 0); if (scheduledTime timeToWake)) { @@ -502,7 +501,7 @@ public class XmppConnectionService extends Service { this.pendingPingIntent = PendingIntent.getBroadcast(context, 0, this.pingIntent, 0); alarmManager.set(AlarmManager.ELAPSED_REALTIME_WAKEUP,timeToWake, pendingPingIntent); - Log.d(LOGTAG,"reschedule old ping to ping in "+seconds+" seconds"); + //Log.d(LOGTAG,"reschedule old ping to ping in "+seconds+" seconds"); } } } else { @@ -1078,13 +1077,13 @@ public class XmppConnectionService extends Service { public void run() { account.getXmppConnection().disconnect(false); Log.d(LOGTAG, "disconnected account: " + account.getJid()); - account.setXmppConnection(null); + //account.setXmppConnection(null); } }).start(); } else { account.getXmppConnection().disconnect(false); Log.d(LOGTAG, "disconnected account: " + account.getJid()); - account.setXmppConnection(null); + //account.setXmppConnection(null); } } } diff --git a/src/eu/siacs/conversations/xmpp/XmppConnection.java b/src/eu/siacs/conversations/xmpp/XmppConnection.java index 6d5d4c467..b11f2016f 100644 --- a/src/eu/siacs/conversations/xmpp/XmppConnection.java +++ b/src/eu/siacs/conversations/xmpp/XmppConnection.java @@ -95,14 +95,16 @@ public class XmppConnection implements Runnable { } protected void changeStatus(int nextStatus) { - account.setStatus(nextStatus); - if (statusListener != null) { - statusListener.onStatusChanged(account); + if (account.getStatus() != nextStatus) { + account.setStatus(nextStatus); + if (statusListener != null) { + statusListener.onStatusChanged(account); + } } } protected void connect() { - Log.d(LOGTAG, "connecting"); + Log.d(LOGTAG,account.getJid()+ ": connecting"); try { tagReader = new XmlReader(wakeLock); tagWriter = new TagWriter(); @@ -165,7 +167,6 @@ public class XmppConnection implements Runnable { @Override public void run() { connect(); - Log.d(LOGTAG, "end run"); } private void processStream(Tag currentTag) throws XmlPullParserException, @@ -598,10 +599,10 @@ public class XmppConnection implements Runnable { public void sendPing() { if (streamFeatures.hasChild("sm")) { - Log.d(LOGTAG,"sending r as ping"); + Log.d(LOGTAG,account.getJid()+": sending r as ping"); tagWriter.writeStanzaAsync(new RequestPacket()); } else { - Log.d(LOGTAG,"sending iq as ping"); + Log.d(LOGTAG,account.getJid()+": sending iq as ping"); IqPacket iq = new IqPacket(IqPacket.TYPE_GET); Element ping = new Element("ping"); iq.setAttribute("from",account.getFullJid());