dead buddies !

hello
i am using ejabberd 1.0.0 on fedora 4 and GAIM 1.5 and 2.0 beta
I am using a shared-roster group with all registered users. What I noticed is that when I delete a user the buddies which are automaticly created do not disappear. they stay in the list as offline buddies.
are they zombies? it doesn't harm to have them there but it would harm to bury them properly.
any suggestion? maybe a gaim problem?

It seems a GAIM feature/bug

I tried it and you are right, it happens with GAIM. But there's no such problem with other clients like Tkabber.

Even if a roster item is removed, GAIM still shows it. It may be a feature, not a bug, implemented on GAIM for other protocols different to Jabber that require local roster storage (maybe ICQ).

Try this: close GAIM, edit $HOME/.gaim/blist.xml and you will see your roster, stored locally by GAIM on a file, including the 'zombie' contact. This is not required on Jabber since the clients receive the full roster each time they login.

no problem to delete zombies

it isn't a problem to delete them by hand. rightclick is enough. but in a shared roster how does a user know who is a zombie or not. even in real life it is difficult to say. the user can't edit a list like that.
I think I check with the GAIM team.

No, it's not GAIM bug!

It's ejabberd bug... I have the same problem with another client. If user rename contact or move it to another group this contacts stay in roster after deleting them from shared roster. If user don't change contact's name and don't move it to another group this contact disapear from roster after deleting it from shared roster.

what you describe is totally unrelated

magnet wrote:

I have the same problem with another client.

No, it's not the same problem. What you describe is not related to the zombie-GAIM contacts we were discusing here.

magnet wrote:

If user don't change contact's name and don't move it to another group this contact disapear from roster after deleting it from shared roster.

As you say, you are not experiencing the zombie-GAIM contacts thing discussed on this thread.

magnet wrote:

If user rename contact or move it to another group this contacts stay in roster after deleting them from shared roster.

Yes, that's normal, it isn't a bug or feature either on the client or the jabber server. Maybe you understand why does that happen if you understand some implementation details:

  • On ejabberd, each user has a personal roster with his contacts, where he can subscribe, remove, change nick, change group...
  • On mod_shared_roster the admin can define virtual groups of JIDs.
  • When an user logins, ejabberd will send him his personal roster and possibly the virtual groups that may affect him.
  • If a user attempts to modify the nick, subscription type, group or any other detail concerning a contact included on a virtual group, that contact will be added to his personal roster.
  • When that user logins again, ejabberd will send him his personal roster (that includes the new contact), and the unaltered, original virtual groups. So the user will receive the same contact twice: one as his personal roster and another as a JID on the shared roster group.
  • If the account of that new contact is removed, when the user logins he will not receive the new contact on the shared roster group, but will still receive the contact since he manually added him to his personal roster.
magnet wrote:

Re: No, it's not GAIM bug!

As I previously said, the zombie contacts is not a bug on ejabberd, it's more a feature/bug on GAIM.

magnet wrote:

It's ejabberd bug.

If you understood the explanation for your dual-contacts problem, you will see that it's neither a bug on ejabberd or on your Jabber client.

OK, it's not the same probem...

badlop wrote:

If a user attempts to modify the nick, subscription type, group or any other detail concerning a contact included on a virtual group, that contact will be added to his personal roster.

Some programs (pandion, sim and other) automatically rename all contacts in roster, so after first logon all contacts will be added to user personal roster.

badlop wrote:

If the account of that new contact is removed, when the user logins he will not receive the new contact on the shared roster group, but will still receive the contact since he manually added him to his personal roster.

... even if this contact phisically removed from server and will never exist again.

This is big problem for me. Is it possible to turn off this "bug or feature"? Is it possible automatically remove shared roster contacts from user roster even if they are rename or moved?

Syndicate content