Trac is being migrated to new services! Issues can be found in our new YouTrack instance and WIKI pages can be found on our website.

Version 1 (modified by sulabh.dev, 15 years ago) (diff)

--

Protocols: AIM, ICQ, IRC, MSN, MYSPACE, XMPP, Yahoo!

To design the privacy subsystem from ground up, following protocol specific information needs to be considered:

AIM

Has two lists: block list and allow list, and has the following five options for the privacy settings:

Allow all users to contact me

Allow only users on my buddy list

Allow only the users on the allow list

Block all users

Block only the users on the block list

Blocking here refers to stopping messages as well as presence information. We also support being invisible to everyone irrespective of the above settings.

ICQ

ICQ has three lists: visible list, invisible list and block list. Whereas visible and invisible lists deal with controlling the presence information, the block list deals with messages. An ICQ UIN can has following settings:

Visible (same as not choosing any setting ?)– receives both messages and presence Invisible – receives messages, but not presence

Visible + Block – receives presence, but not messages

Invisible + Block -- doesn't receive messages or presence

ICQ also supports being invisible to everyone irrespective of above settings, accepting messages only from the contacts and sharing presence with ICQ and web users.

IRC

No server side features, hence cant block presence, only messages can be blocked that too dropping after being received by the client. Simple ignore list client side implementation.

MSN

Has two lists in context of privacy: Allow list (AL) and Block List (BL). There is a meta contact “all others” that can be placed either in AL or in BL. Default action is to include all the buddies in the AL and include all others in BL. Messages as well notifications are blocked.

Being invisible to everyone is supported irrespective of above settings.

MYSPACE

The protocol has not been completely reverse engineered yet, the following features are probably supported:

Show presence to anyone or people on the contact list

Receive messages from anyone or people on the contact list

Accept list and Block list – (both presence and messages ??)

XMPP

Privacy features are handled by XMPP extension XEP-0016, but it has been deemed too complex for implementation. Other extensions like Simple Communications Blocking, XEP-0191 has atleast partially been implemented recently in Pidgin. For invisibility XEP-0186 has come to be the most favoured extension that doesn’t break the core XMPP rules, but I am not sure if Pidgin developers want to implement it just yet.

From XEP-0191:

The requirements for simple communications blocking are straightforward:

A user must be able to block communications with a specific contact. A user should be able to determine which contacts are blocked.

A user should be able to unblock communications with a specific contact.

The default privacy list will be equivalent to the blocklist. Duration of the block is unlimited and applies across the sessions. The blocked contact doesn’t receive any presence information, and is unable to send any XML stanzas to the user. So the presence and messages are stopped both ways.

Yahoo!

Yahoo only has one Block list. Presence and messages are both blocked, and the protocol forces us to remove the contact from the buddy list before adding to the block list. Block list is always active.

There is an option to “ignore everyone not on list”, which is implemented client side, and messages and other requests are dropped by the client.

There is also “appear permanently offline list”, which lists the contacts to whom only the presence information is blocked.

While in an invisible session, we can create “appear online” list by individually sending presence to specific contacts. But that is only valid for the session, or till we go un-invisible again.

All information, including names and email addresses, entered onto this website or sent to mailing lists affiliated with this website will be public. Do not post confidential information, especially passwords!