xmpp / ejabberd. show presence of a user to all other users

6,729

The solution turned out to be be creating shared roster groups via the web admin interface.

name: operators
members: operator1@domain, operator2@domain, ...
displayed groups: operators

name: everybody
members: @all@
displayed groups: operators

I also set the operators' Pidgin to hide offline users or else the buddy list quickly grows too long as new guest accounts are added.

Share:
6,729

Related videos on Youtube

SpliFF
Author by

SpliFF

Updated on September 17, 2022

Comments

  • SpliFF
    SpliFF almost 2 years

    I'm using ejabberd to implement a web "live chat". At one point during my experimentation I had it so when you logged in the client would show the presence of all other logged in users. After many config changes I have the system working the way I want except it's stopped reporting the presence of other users.

    Basically I want the client to know when the admin is logged in, as this will enable them to know wether they'll get an answer before writing their question. At the moment it doesn't even tell you if the message you sent was received at all when the admin is offline (it just gets quesued for later delivery).

    I'm using jwchat as the client and although I can capture all presence packets it does not appear that ejabberd is sending them (maybe a privacy thing, I don't know). Any ideas?

    EDIT: Best I can tell I need mod_roster however I cannot find any documentation on how to configure it. Does anyone have any information they can share?

  • SpliFF
    SpliFF about 15 years
    I don't have mod_presence or mod_web_presence, but i don't really understand what those module do or how to configure them. the ejabberd docs are really awful when it comes to modules and their options.
  • KPWINC
    KPWINC about 15 years
    Okay... what made you decide to go with ejabberd as opposed to something like openfire? What are your needs? If you had other/easier software would that work for you?
  • SpliFF
    SpliFF almost 15 years
    ok, but it's my own answer, I thought you couldn't do that?