Your Contact List, Buddy List, Roster

Your Contacts

A contact is someone you chat with. Contacts are sometimes referred to as “Buddies”. XMPP clients will allow you to organize your contacts into groups. Whatever client(s) you use to chat, they will all be able to do the following:

  • Add a contact
  • Remove a contact
  • Add a group
  • Remove a group
  • Add a contact to one or more groups
  • Remove a contact from a group

Your roster of contacts is saved on the server, which means that as you add, remove or organize your contacts, they will all automatically appear the same way in all of your devices.

Here we see the contacts of an account with nickname "tex" in three XMPP clients: Swift, Psi, and Gajim. A change in one client will automatically appear in the other clients.

Your Presence

When you add a contact you are also completing an agreement with the person you are adding to your roster. The agreement is that each of you will be subscribing to the other’s presence.

Your presence is how people in your roster see you at a given point in time. Your client broadcasts your presence to your contacts automatically. The baseline states of presence are:

  • Available, Online
  • Free for Chat
  • Away
  • Extended Away
  • Do Not Disturb
  • Offline

People not on your roster cannot see your presence.

Adding a Contact to your Roster

Here are the steps of adding a contact:

Zoe has given Tex her XMPP ID. So, to add her as a contact, Tex right-clicks his name in his Gajim client, and selects "Add Contact..."

In the dialog that appears, he adds her details. He creates a new group called "Coffee Club". By checking the box for "Allow contact to view my status" he is authorizing Zoe to receive his presence. This will save Zoe from having to request his authorization if she adds him to her roster.

Zoe has not yet authorized Tex to receive her presence, so the contact appears with a red question mark.

Zoe receives a notice. She clicks on the notice and then clicks the button "Display Notice". She accepts Tex as a contact to her roster and by doing so agrees to broadcast her presence to him.

Tex receives a notice that Zoe has authorized him to see her presence.

Editing a Contact

Zoe wants her new contact to appear in a group. She does this by editing the contact.

Zoe changes the name to "tex bingles", which is the full name listed in Tex's profile. Then, she adds the contact to a new group called "Downtown Coffee Club".

Now the contact is listed in the group "Downtown Coffee Club".

Topics covered on this page:

  • XEP-0162: Best Practices for Roster and Subscription Management
  • XEP-0310: Presence State Annotations


Broadcasting Your Presence to Your Contacts


Do you need to be left alone? Block that Annoying Contact!

Removing a Contact

Remove a contact from your roster.

Last modified June 2, 2020