Bug 69493 - status of non-buddies should be (UNKNOWN, 'unknown', ''), not an error
Summary: status of non-buddies should be (UNKNOWN, 'unknown', ''), not an error
Status: RESOLVED MOVED
Alias: None
Product: Telepathy
Classification: Unclassified
Component: salut (show other bugs)
Version: git master
Hardware: Other All
: medium normal
Assignee: Telepathy bugs list
QA Contact: Telepathy bugs list
URL:
Whiteboard:
Keywords:
Depends on: 69474
Blocks:
  Show dependency treegraph
 
Reported: 2013-09-17 21:04 UTC by Xavier Claessens
Modified: 2019-12-03 20:16 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments

Description Xavier Claessens 2013-09-17 21:04:40 UTC
+++ This bug was initially created as a clone of Bug #69474 +++

In Gabble, contacts not on our roster have UNKNOWN presence (e.g. see Bug #25583). In Haze, asking for their presence is an error.

This is especially problematic in Telepathy 1.0, where the presence mixin's get_statuses() callback can no longer fail.

Salut does not have UNKNOWN presence, but its OFFLINE presence is already a dummy one...
Comment 1 Xavier Claessens 2013-09-17 21:05:28 UTC
(In reply to comment #0)
> Salut does not have UNKNOWN presence, but its OFFLINE presence is already a
> dummy one...

To be more precise, I think that OFFLINE should not exist in salut and replaced by UNKNOWN. no ?
Comment 2 Simon McVittie 2013-09-18 09:42:14 UTC
(In reply to comment #1)
> To be more precise, I think that OFFLINE should not exist in salut and
> replaced by UNKNOWN. no ?

I don't think so. My mental model is that in mDNS, my local LAN is analogous to the server (or network of federated servers) in a centralized protocol - so anyone I can see is online, and everyone else is offline. There's no such thing as "I can't see that you're online, but maybe I don't have permission to do so?"

Perhaps you're online on *your* local LAN, but in my mental model, that's a different "server", and on *my* "server", you're definitely offline. (Replace "my local LAN" with "Freenode" and "your local LAN" with "OFTC", or Facebook and Windows Live, or any other pair of non-cooperating services.)

The reason why non-buddies on a conventional IM network should be UNKNOWN is that we can't authoritatively say "Fred is online"/"Fred is offline" if we wouldn't receive his presence anyway. That doesn't apply to Salut.

Something that *does* apply to Salut is that GetPresences() should always return *something* for any valid handle, i.e. if you call the TpPresenceMixinGetContactStatusesFunc with valid handles (which it may, and should, assume), it should always succeed and return a presence per contact. In next, it no longer has its GError argument.
Comment 3 GitLab Migration User 2019-12-03 20:16:37 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/telepathy/telepathy-salut/issues/48.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.