Implement AIM presence based on ICQ presence.
[kdenetwork.git] / kopete / protocols / oscar / TODO
blobf84aad03040282d919fc9614f5a989eb530bc1c7
1 This is the TODO file for the OSCAR plugin.
3 ====== Possible refactorings =====
5 - Unify status handling for ICQ and AIM? I like the ICQ::Presence thing, that's cool
6 - Do delayed contact creation like on MSN so that when we actually get a good status
7   code back from the SSI manipulation, we create the contact then rather than hoping
8   it all works out.
9 - serialize all the ssi information, either via properties for via the
10   Contact::serialize() method. We need to load it back to support proper auth handling
13 ====== Catching up to OscarSocket =====
15 - Add preferences for "Requires Auth", "Web Aware", etc.
18 ====== Adding new features not in oscarsocket ======
20 Support direct connections
21 Support file transfers
22 A bunch of other stuff i'm probably forgetting.
24 Add support for the many privacy options OSCAR has
27 ====== Left Over from the previous TODO ======
28 There is some overlap here, and this is some of the stuff
29 that was done in oscarsocket, that will need redoing in liboscar
31 - general support for SNAC (0x15, *)
32 - fix adding contacts for both addcontactwizard and serverside list
33 - support encoding-settings for RTF-messages
34 - use RTF in outgoing messages
35 - keepalive for connection to server (icq has ping packets)
36 - Keep users from adding their own UIN to their userlist
37 - honor encodings for both sides (I need more knowledge about this!)
38 - Option: Allow access from contacts on my contact list only
39 - group handling in general
40 - error handling on channel 0x04 messages. properly disconnect and emit a
41   signal in oscarsocket.
42 - save groupID in KopeteGroups
43 - somehow sync server and local list, this is not as trivial as everybody
44   always thinks it is because you cannot sure if local changes or
45   serverside-changes caused the difference (think about two clients being used
46   for the same account, one at home and one at work).
47 - make renaming serverside contacts possible (function is there but fails due
48   to massive contactlist bugs caused by above mentioned classes)