El Viernes, 19 de Febrero de 2010, Klaus Darilion escribió:
case 2)
Bob already has Alice as allowed buddy in Bob's buddy list.
Now Bob wants to block Alice so invokes "polite-block" in the server.
From that moment Alice will think that Bob is just offline.
This sounds like the "invisible" feature of ICQ
Yes :)
Perhaps we should redefine the blocking actions:
- "polite-block" means "set invisible", and it's *just* useful for our buddy list contacts. This is, we don't explicitely block a buddy in our contact list, but instead we lie him by setting "invisible" status for a while. For example: "I want to talk with Alice and want to show her my wonderful nacked photo, but I don't want my friend Carol to see me connected, neither my photo".
- "block" means explicitely reject a subscription request (the subscriber knows it has been rejected). This is useful when we receive an invitation from a person we don't know or we hate ("no, I'm *not* your friend!").
- "ignore" means "I don't want to accept this user right now, so let the subscriber think that I'm not online now and cannot handle the request for now". The subscription remains in "pending" state until the server expires it and sends a NOTIFY to the subscriber with: Subscription-Status: terminated; reason=timeout This is like when you receive a Linkedin invitation from some person you know nothing about, so you don't want to accept it but neither explicitely reject his offer (perhaps he wants to pay you for a good job!!!). So you leave the request in "pending" state and search for such user in Google.
I think that the above points cover all the required features for blocking a user (when he is in our buddylist, when we don't want him in our buddylist and when we want just to ignore his request for now).
Are you agree? Thanks a lot.