Service Discovery
From PsiWiki
Contents |
About Service Discovery
Service Discovery allows you to:
- add the ability to talk to friends who use other instant messengers
- find a friend who uses Jabber
- create or join a conference room where multiple people can chat together
- other things, as Jabber is an extensible protocol and anything can be added in the future
Generally speaking, the Service Discovery dialog will allow you to:
- browse different servers/components, displayed in a tree (the root of the tree is the address you have typed in the Address Bar)
- do specific actions on the nodes of the tree, depending on their type/capabilities
Browsing using Service Discovery
- Click the "Psi" button or right click the account name in the roster window.
- Select Service Discovery, the Service Discovery window opens.
The Address drop down list shows the Jabber server you are currently connected to. You can also enter the address of another Jabber server (to find a list of open Jabber servers look at jabber.org).
Server components
Server components are usually the first root child nodes listed when browsing a Jabber server.
Most known server components are:
- Jabber User Directory (JUD) - stores information on jabber users
- Multi User Chat (MUC) - allows multiple people to chat together
- Gateways - allows interaction with proprietary (IM) networks
Depending on their functionalities, you can perform several actions on them.
Actions
Actions can be found:
- in the toolbar
- in the context menu (right click) of each node displayed
They may appear disabled if a certain functionality is not advertised. It may happen for some components not to work correctly and not advertise correct functionalities. Contact the server administrator or use a similar component on another server.
Register/Unregister
Some components provide the possibility to register with them. Once registered, the components will appear in the roster just like any other contact, but in a special group called "Agents/Transports". You would be able to do with the component the same actions you do with a normal contact, such as chatting - some components even "react" to commands sent via chat messages.
Typical components providing this action: Gateway, Jabber User Directory
It's possible to unregister a service (Psi considers all JIDs without user names as services) if you have it in your roster, and you delete it using normal GUI actions. Then Psi silently tries to unregister your service in the background. It's also possible to manually unregister service, but you'll currently need to use XML Console. It actually consists of registering, but with no information in all fields (empty fields).
According to Peter Saint-Andre from jabber.org you can manually unregister/deregister from a gateway or transport service by entering the following statement into Psi's xml console:
<iq type='set' to='icq.jabber.org'> <query xmlns='jabber:iq:register'> <remove/> </query> </iq>
NB: Please note that icq.jabber.org is just an example. Make sure you replace it with the service you want to unregister from!
Just to make sure you can also remove the authorisation. To do so, enter this query (again, replace icq.jabber.org with the service or gateway that you are using:
<iq type='set' to='icq.jabber.org'> <query xmlns='jabber:iq:roster'> <item jid='icq.jabber.org' subscription='remove'/> </query> </iq>
Search
TODO: content: Find a Friend Who Uses Psi
Typical components providing this action: Jabber User Directory
Join
TODO: the option is available for MUC components
Typical components providing this action: Multi User Chat
This page needs work! Please help by adding more content, reorganizing, anything. Thanks!

