MUCSearch

Multi-User Conference Search

Quick Links

Conformance Statement

This site is provided to help moves to standardised open instant messaging by providing a central location for users to find other users in conference rooms or useful and interesting services. I find XMPP servers from a variety of sources, though they are currently added manually to my index. XMPP is also known as the Jabber® protocol. Updates are performed semi-automatically.

JIDs are included on a good faith basis that publication (anywhere) of JIDs means consent is given for their domain portion to be accessed with browse or disco according to the standardised XEPs. Further, that responses indicate consent for further exploration as indicated by the response, including retrieval of advertised enterties such as vCards.

Ideally, a server will respond to disco requests at the base domain and every loaded component responds correctly on subdomains to disco requests. I have to assume that the server follows the standards correctly, so I like to give them a manual check before including them in my index. This is to try avoid accidently crashing someone elses server due to non-conformance in their or my implementation. Where there are problems, only some subdomains may be indexed and I may use the older browse indexing method.

Disco is the preferred method for crawling, though browse is chosen where the server only supports that, or where I am aware of ways that MUCSearch can crash a server, such as mu-conference containing bugs that cause it to crash when jabber:iq:time is requested from a room JID

MUCSearch uses these features during indexing

Intended treatment of errors during automatic indexing

JIDs that return 500 series codes when browsed, or wait when being disco'ed are hidden from results. The JID may be accessed again in future, if that is successful, it can be seen in search results again. An internal fault counter is incremented on this failure and reset on success.

JIDs that return 400 series codes when browsed, or any statement other than wait during disco are marked as not for crawling, except that the JID may be marked as crawlable again if a superJID includes a reference to this JID in a result. The crawler skips JIDs marked as not for crawling during an automatic crawl, and they are also hidden from results.

The superJID rules are as follows

MUCSearch Modes

Name, and JID match substrings of conference room JID or Names repectively.

Occupant will search for a room occupant of exactly the name entered.

Country shows rooms with a country matching the entered text. This comes from the conference component vCard, or the 2 letter country code of the IP address as looked up by GeoIP, for those without. (which is most of them). See top 30 rooms from your country, where available, as detected by IP Address. This page warns web robots that IP Address is used.

Most of the result page addresses can also be entered as is, into Google Earth or other client that uses content negotiation to select the KML response. Then you can see the locations for chatrooms or servers based on coordinates taken from their vCard, (or guessed from their IP address if they do not have one.) The kml url given for Google Maps contains a temporary workaround as it cannot content negotiate.

IP is also used for Domain search, such as for transport or gateway services.

This search supports entering UTF-8, so you can enter characters from a wide range of international languages.

Results are limited to the top 30 matches in order to provide a fast response.

There is also a fairly primitive gopher version of the jid search, showing the top few results only.

The JID is shown below the result information together with the protocol used to retrieve this result, either disco or browse. This information can be used to request a fresh list of rooms directly from the corresponding server on discovery-capable clients.

Some information is provided from the vCard of the conference server and the individual rooms.

Can I link?

Go for it, linking here is welcomed and highly encouraged, even though permission to link is not needed.

Finding Servers

My main hope is to provide the most complete index of federated XMPP servers, so I sometimes go searching for new servers to add. Listings checked include…

A few places provide maps of XMPP users, including…

Examples

Here is an xmpp enabled zonefile and a vCard

Jabberd 1.4 users can set this information in the XML configuration files provided. Mu-conference allows the same. I have a patch for jabberd2, this allows you to give your server a logo, URL and geographic coordinates in its own vcard. Parts has now been merged into the jabberd2 source, though sm.xml needs the server vcard enabling as well. Look at mine

Contact

You can join our chatroom

I can also be contacted by xmpp or by phone for crawler issues.

I would like to move this site to a persistent domain although bound by geographic location rather than time!