Bug 103063 - auto away does not work
Summary: auto away does not work
Status: RESOLVED FIXED
Alias: None
Product: kopete
Classification: Applications
Component: ICQ and AIM Plugins (show other bugs)
Version: 0.10
Platform: Gentoo Packages Linux
: NOR normal
Target Milestone: ---
Assignee: Kopete Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-04-02 13:43 UTC by Dominik Karall
Modified: 2005-10-17 02:57 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Dominik Karall 2005-04-02 13:43:14 UTC
Version:           0.10 (using KDE KDE 3.4.0)
Installed from:    Gentoo Packages

I have enabled auto away after 10min, but it does not work. Even if I leave my computer for hours, my icq (and others) is still in online status.
Comment 1 Olivier Goffart 2005-04-18 16:03:57 UTC
It works fine here.
Are you using the KDE desktop ? (kwin?)

Comment 2 Dominik Karall 2005-04-18 18:34:08 UTC
yes, I'm using kwin. I set auto away to 1min, but the status does not change after the time is over.
I'm using kde-base/kdenetwork-3.4.0-r1 now, which includes 3.4.0 kde and 2 kopete patches:
kdenetwork-3.4.0-kopete-logout.patch
kdenetwork-3.4.0-kopete-spaces.patch
Comment 3 Jan Ritzerfeld 2005-05-14 20:24:21 UTC
I can confirm this with icq and current svn. jabber's auto away works.
Comment 4 Jan Ritzerfeld 2005-06-11 15:21:11 UTC
SVN commit 424319 by jritzerfeld:

Integrate KOS into icq to make auto away working again.
Added support for changing status directly from offline
to any other status via icq account context menu.

CCBUG: 103063


 M  +19 -70    icq/icqaccount.cpp  
 M  +1 -15     icq/icqaccount.h  
 M  +67 -20    icq/icqpresence.cpp  
 M  +2 -2      icq/icqpresence.h  
 M  +6 -2      liboscar/client.cpp  
Comment 5 Matt Rogers 2005-06-26 05:02:10 UTC
Fixed in trunk for KDE 3.5. It might get backported for KDE 3.4.2 but there are no guarantees
Comment 6 Dominik Karall 2005-09-22 15:55:35 UTC
I think this fix should be in KDE 3.5 beta1, but it still does not work here with beta1. I set the auto away time to one minute, left my machine running, after 5 minutes the status of MSN/ ICQ/ AIM/ Jabber was still online.
Comment 7 Dominik Karall 2005-09-22 15:57:52 UTC
Just want to mention, that it didn't work with alpha1 either, if this information is helpful to you.
Comment 8 Matt Rogers 2005-10-11 06:14:10 UTC
*** Bug 113068 has been marked as a duplicate of this bug. ***
Comment 9 Matthias Granberry 2005-10-17 02:57:25 UTC
SVN commit 471262 by granberry:

Implement auto-away support for AIM.
BUG: 103063


 M  +10 -0     aimaccount.cpp  
 M  +4 -5      aimaccount.h  
 M  +5 -3      aimprotocol.cpp  


--- branches/KDE/3.5/kdenetwork/kopete/protocols/oscar/aim/aimaccount.cpp #471261:471262
@@ -214,6 +214,16 @@
 	}
 }
 
+void AIMAccount::setOnlineStatus( const Kopete::OnlineStatus& status, const QString& reason )
+{
+	kdDebug(14152) << k_funcinfo << "called with reason = " << reason <<" status = "<< status.status() << endl;;
+	if ( status.status() == Kopete::OnlineStatus::Online )
+		setAway( false );
+	if ( status.status() == Kopete::OnlineStatus::Away )
+		setAway( true, reason );
+}
+
+
 void AIMAccount::setUserProfile(const QString &profile)
 {
 	kdDebug(14152) << k_funcinfo << "called." << endl;
--- branches/KDE/3.5/kdenetwork/kopete/protocols/oscar/aim/aimaccount.h #471261:471262
@@ -71,16 +71,15 @@
 	// Accessor method for the action menu
 	virtual KActionMenu* actionMenu();
 
-	/** Reimplementation from Kopete::Account */
-	void setOnlineStatus( const Kopete::OnlineStatus&, const QString& ) {}
+	void setAway(bool away, const QString &awayReason = QString::null );
 
-	void setAway(bool away, const QString &awayReason);
-
 	virtual void connectWithPassword( const QString &password );
 
 	void setUserProfile(const QString &profile);
-
+	
 public slots:
+	/** Reimplementation from Kopete::Account */
+	void setOnlineStatus( const Kopete::OnlineStatus& status, const QString& reason = QString::null );
 	void slotEditInfo();
 	void slotGoOnline();
 
--- branches/KDE/3.5/kdenetwork/kopete/protocols/oscar/aim/aimprotocol.cpp #471261:471262
@@ -27,6 +27,7 @@
 
 #include "accountselector.h"
 #include "kopeteaccountmanager.h"
+#include "kopeteonlinestatusmanager.h"
 #include "kopeteglobal.h"
 #include "kopeteuiglobal.h"
 
@@ -153,9 +154,10 @@
 
 AIMProtocol::AIMProtocol(QObject *parent, const char *name, const QStringList &)
   : Kopete::Protocol( AIMProtocolFactory::instance(), parent, name ),
-	statusOnline(Kopete::OnlineStatus::Online, 1, this, 0, QString::null, i18n("Online")),
-	statusOffline(Kopete::OnlineStatus::Offline, 1, this, 10, QString::null, i18n("Offline")),
-	statusAway(Kopete::OnlineStatus::Away, 1, this, 20, "contact_away_overlay", i18n("Away")),
+	statusOnline( Kopete::OnlineStatus::Online, 1, this, 0, QString::null, i18n("Online"), i18n("Online"), Kopete::OnlineStatusManager::Online ),
+	statusOffline( Kopete::OnlineStatus::Offline, 1, this, 10, QString::null, i18n("Offline"), i18n("Offline"), Kopete::OnlineStatusManager::Offline ),
+	statusAway( Kopete::OnlineStatus::Away, 1, this, 20, "contact_away_overlay", i18n("Away"), i18n("Away"), Kopete::OnlineStatusManager::Away, 
+							Kopete::OnlineStatusManager::HasAwayMessage ),
 	statusConnecting(Kopete::OnlineStatus::Connecting, 99, this, 99, "aim_connecting", i18n("Connecting...")),
 	awayMessage(Kopete::Global::Properties::self()->awayMessage()),
 	clientFeatures("clientFeatures", i18n("Client Features"), 0, false),