aMSN Forums
February 11, 2012, 08:53:01 am *
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
News: New forum for aMSN !!
 
   Home   Help Search Login Register  
Pages: [1] 2
  Print  
Author Topic: invisibility plugin  (Read 17966 times)
Fabioamd87
Super Power User
**
Offline Offline

Posts: 467



View Profile
« on: September 05, 2006, 11:05:24 am »

hello,
there is a bug in the invisible plugin that block contact that goes offline.
When i open amsn, some (online) contact that are goes online where amsn was closed are blocked

i hope that my english is comprehensible, and is a know bug Wink
Logged
Phil
Administrator
Super Power User
*****
Offline Offline

Posts: 653


View Profile
« Reply #1 on: September 05, 2006, 06:29:51 pm »

Don't use this plugin... It isn't done by aMSN team and it is buggy...
Logged

Phil

AMsn is great, and it will be greater :wink:
Fabioamd87
Super Power User
**
Offline Offline

Posts: 467



View Profile
« Reply #2 on: September 05, 2006, 07:28:00 pm »

ok, but more information about the development?
Logged
Phil
Administrator
Super Power User
*****
Offline Offline

Posts: 653


View Profile
« Reply #3 on: September 06, 2006, 08:15:33 pm »

I think it is stopped....
Logged

Phil

AMsn is great, and it will be greater :wink:
Fabioamd87
Super Power User
**
Offline Offline

Posts: 467



View Profile
« Reply #4 on: October 15, 2006, 03:32:03 pm »

why dont leave it on the site?
Logged
hillingar
Newbie

Offline Offline

Posts: 30


View Profile
« Reply #5 on: December 11, 2006, 11:54:49 pm »

Hi all,

the plugin is not buggy, it behaves as it should. It blocks contacts when they appear offline to you, and unblock when they come back online. If you close your client when a contact is offline (hence blocked), next time you open amsn, the block will still be there there. This is an inconvenience but not a bug.

Anyway, I made some changes to the plugin and released it as version 0.2. It is not yet posted on the project page but you can get it here:

http://www.math.washington.edu/~kieroglu/Invisibility.tar.bz2

The changes are:
There are now two lists: Permanently blocked and permanently allowed users. Those in the former list never get unblocked when they log in, and those in the latter never get blocked when they go offline. The inconvenience I mentioned above still exists for neutral users - that is, those in neither list. But it is an easy modification, I can simply add a few lines which unblocks all offline neutral users before aMSN shuts down. Any ideas?
Logged
hillingar
Newbie

Offline Offline

Posts: 30


View Profile
« Reply #6 on: December 12, 2006, 02:57:23 am »

Oh, also, the plugin is translatable now.
Logged
vivia
Administrator
Super Power User
*****
Offline Offline

Posts: 2464


View Profile
« Reply #7 on: December 12, 2006, 11:50:20 am »

Hi, there could be a catch-22 in your scenario:

We both have the Invisibility plugin. I am online, you are offline, so I block you. I go offline. Then you go online, I am offline, so you block me. Then I go online, we have each other blocked, and the only way to have someone unblocked is to appear online to the other person, which can't be, because we are both blocked. I really recommend that you add these lines to unblock all offline neutral users, but what if aMSN crashes?
Logged
hillingar
Newbie

Offline Offline

Posts: 30


View Profile
« Reply #8 on: December 12, 2006, 12:16:35 pm »

Hi Vivia,

I'm aware of the scenario you mentioned, indeed that came up during my test runs Smiley. Since few people are assumed to use this plugin I did not give top priority to that. I decided that doing an unblock at aMSN/plugin start is the better way to go, this way, even if aMSN crashes, all neutral users will get unblocked. The only thing that worries me is the performance, suppose I pull a list of blocked users and unblock those not in the permanent block list. Would this mass unblock slow aMSN down seriously? I don't know how many contacts an average person has, I'm sure my list is below average Smiley.

Hmm, maybe I can put a line

after 100

in the loop. Perhaps there is a better way, suggestions welcome (this is my first serious Tcl code, i.e. > 5 lines, I'm a n00b).
Logged
hillingar
Newbie

Offline Offline

Posts: 30


View Profile
« Reply #9 on: December 12, 2006, 12:21:38 pm »

Ah, btw, the scenario I mentioned is a bit different. This  plugin (the original version) doesn't block offline users, it blocks them when they switch to offline mode, and unblock when they come online. So if A nd B have invisibility, if A switches to appear offline, B will block A, so A will think B became offline and so A will block B. They will never see each other again unless they manually unblock. But if the plugin unblock at aMSN start, this will be resolved.
Logged
hillingar
Newbie

Offline Offline

Posts: 30


View Profile
« Reply #10 on: December 23, 2006, 10:59:15 am »

The unblock-users-at-startup code is added. This fixes the issues mentioned above. You can grab version 0.3 here:

http://www.math.washington.edu/~kieroglu/Invisibility-0.3.zip
Logged
square87
Super Power User
**
Offline Offline

Posts: 427


View Profile
« Reply #11 on: December 24, 2006, 11:14:15 am »

I still have this problem.

Edit:

And...
if A is online and then go offline A is blocked, when it return online is still blocked.
Logged
hillingar
Newbie

Offline Offline

Posts: 30


View Profile
« Reply #12 on: December 24, 2006, 03:00:27 pm »

Interesting. I test it with my two msn accounts and it works. If A goes offline then it is blocked, and it is unblocked when it comes back online.

Make sure that

- The user is not in the permanent block list
- If the "old behaviour" option is selected (bottom one in the pref window) A must become "Online" to be unblocked, i.e. if A logs in "Away", "Busy" states then it won't be unblocked.
Logged
square87
Super Power User
**
Offline Offline

Posts: 427


View Profile
« Reply #13 on: December 27, 2006, 11:13:05 am »

Now i am using last SVN. So I have tested again.

When A is online and then A goes invisible it is blocked when it return online it is unblocked.
When A is online and then goes offline it is blocked, when A goes invisible it is still blocked and when it goes online it is unblocked.
(So when A is invisible and plugin block it A believe that i am offline)
If A is blocked when it goes online is unblocked

I don't see your code, but I _Believe_ that the plugin have to read blocked list and remember in permanent_block_list (PBL) and when a user goes online the plugin have to check if the user is into PBL if this procedure is true so don't unblocked that user. When I'll unblock an user PBL have to be upgraded.
Anyway I don't understand how can I understand if a user is invisible? If it goes offline it is blocked, if it goes invisible it is blocked...
I _Think_ the way for understand if an user is invisible is:
we know that when an user goes online/invisible the client connects to others to download avatar. So if I receive a connection from an user that results offline it means that is an invisible user and we can be informed thanks to an alarm.
When an user is Online and change his status we are informed thanks to an _info_ (changed status) that is transmitted between msn protocol... .
I don't know but if we received an _info_ when an user is invisible and then goes offline we can know when the user goes offline and he isn't invisible anymore.

I ask sorry for my English.
Logged
hillingar
Newbie

Offline Offline

Posts: 30


View Profile
« Reply #14 on: December 28, 2006, 02:27:10 pm »

Hi square87, thank you for your interest.

First of all, I'm not the original author of the plugin, hence it wasn't me who chose the name Invisibility. But this plugin is not intended to tell you when a person is invisible. In the MSN protocol there is no way to tell whether a contact is really offline or just invisible (there was a way long ago, but Microsoft changed the protocol to fix this security bug).

What this plugin does is, as soon as a user A becomes invisible to you (either by signing off or switching to invisible mode or blocking you), the plugin blocks A so that you become invisible to A, too. In other words, A can't "secretly" see whether you are online or offline, anyone who wants to see you must first be visible to you.

Given this description, the behavior you report is normal: To get unblocked again, A must switch to one of the online states.
Logged
Pages: [1] 2
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.11 | SMF © 2006-2009, Simple Machines LLC Valid XHTML 1.0! Valid CSS!