Adium

Ticket #11652 (closed defect: fixed)

Opened 14 months ago

Last modified 5 months ago

wildly wrong "Last Seen:" dates for offline entries in a combined contact

Reported by: dreamcore Owned by: evands
Milestone: Adium 1.4 Component: Adium UI
Version: Severity: minor
Keywords: LastSeen Last seen dates times meta contact information Cc:
Patch Status: Accepted

Description

The tooltip information which appears when mousing over the offline contacts in an expanded metacontact shows "Last Seen" dates which are reliably wrong.

The displayed dates are generally several months in the past, preceding many (or all) logged conversations with the contact....

Should be reproducible by combining contacts on different services together, having conversations with each, and later checking dates when some of these contacts are offline.

Getting info on the metacontact and setting visibility to "always show this contact" may help to have something to mouse over for reproducing the bug. Combining contacts may help to see the bug immediately. Separating contacts, and forgoing the use of metacontacts may allow correct dates to be recorded and shown on each.

I've been witnessing this throughout the last several 1.3.x versions. I am currently seeing it in 1.3.3rc1, running on Tiger (10.4.11), on PPC.

Attachments

lastseen.diff (4.1 KB) - added by egladil 8 months ago.
Example of how this can be solved

Change History

Changed 11 months ago by zacw

  • owner set to nobody
  • component changed from MetaContact to Adium UI

Removing 'Meta Contact' component.

Changed 9 months ago by egladil

I'm having the same problem. For a combined contact made out of ICQ, AIM (over ICQ), MSN and GMail (over Jabber) contacts the Last Seen date is 2006-11-01 11:15 for the ICQ contact, 2007-12-04 00:39 for both the AIM and MSN contact. The Gmail contact shows the correct time though, 2009-07-04 03:04. It's not limited to this certain combined contact though. All the combined contacts in my list have the same problem.

When checking some other contacts I see that the last seen date is always updated for the Gmail subcontact but never for ICQ/MSN, even if the person in question hasn't been online on Gmail for several days. Another contact was last seen on ICQ 2006-10-30 19:10, on MSN 2007-12-12 01:57 and on Gmail 2009-07-03 15:55. This certain contact has not been online on Gmail for I don't know how long that I've seen, but the time coincides with when I last saw him on ICQ/MSN. This seems to be the pattern for all my combined contacts. The date for ICQ/AIM/MSN contacts is way in the past but Gmail dates get updated. Not necessarily with the last time the Gmail contact was seen though.

Changed 8 months ago by egladil

Example of how this can be solved

Changed 8 months ago by Robby

  • patch_status set to Needs Dev Review
  • milestone set to Adium 1.3.6

Changed 8 months ago by egladil

The issue comes from the fact that AIContactStatusEventsPlugin ignores status changes from meta contact children when sending out status events. CBContactLastSeenPlugin in turn relies on these events to update the Last Seen data and thus that data is never updated for meta contact children.

I've posted an example of how to solve this. Another solution would be to not show the Last Seen tooltip for meta contact children, but that's not something I would prefer. Personally I'd like it to be visible even for online contacts since some protocols (MSN) doesn't provide the Online Since tooltip.

Changed 7 months ago by Robby

  • severity changed from normal to minor

Changed 7 months ago by Robby

  • milestone changed from Adium 1.3.6 to Adium 1.3.7

1.3.6 has been released.

Changed 5 months ago by Robby

  • milestone changed from Adium 1.3.7 to Adium 1.3.8

Changed 5 months ago by evands

  • owner changed from nobody to evands
  • status changed from new to assigned

egladil, thanks very much for the patch. This looks like a fine solution to me.

Changed 5 months ago by evands

  • milestone changed from Adium 1.3.8 to Adium 1.4

Changed 5 months ago by Evan Schoenberg

  • status changed from assigned to closed
  • resolution set to fixed

(In  a736fd73ef9a) Patch from egladil, with some tweaking by me, to improve out "last seen" monitoring to understand metacontacts and update the values accordingly. Thanks!

Fixes #11652

Changed 5 months ago by Evan Schoenberg

(In  6ed082e67639) Patch from egladil, with some tweaking by me, to improve out "last seen" monitoring to understand metacontacts and update the values accordingly. Thanks!

Fixes #11652

Changed 5 months ago by Robby

  • patch_status changed from Needs Dev Review to Accepted
Note: See TracTickets for help on using tickets.