Адресация в Jabber
Прежде всего - что же такое "адресация" для систем обмена сообщениями? Это некий набор букв, цифр и специальных символов, идентификатор, который имеет каждый пользователь сети и благодаря которому один пользователь отличается от другого. Для e-mail это электронный адрес, для ICQ - это UIN, всем известные "номерки", которые часто любят угонять, особенно если они длиной в 6-7 цифр. Почему же адресация в этих сетях так различается? Дело в том, что ICQ - централизованный сервис, есть только один сервер, куда подключаются клиенты со всего мира, что является одним из крупных недостатков этой сети.
В Jabber напротив, существует множество серверов, где пользователь может завести себе учетную запись. Поэтому тут используется адресация, подобная той, что используется в электронной почте - в виде пользователь@сервер. Это позволяет не хранить на сервере все возможные идентификаторы пользователей, каждый сервер "знает" только про своих пользователей. Такие идентификаторы называются Jabber ID или сокращенно JID. Для того, чтобы было удобнее отличать Jabber ID от адреса электронной почты иногда к нему добавляют приставку xmpp:. Как и ссылки на электронную почту (mailto:user@server.tld), их можно использовать для совершения разных действий в Jabber. Примеры идентификаторов в Jabber:
- vasya@ya.ru
- маша@jabber.org
- xmpp:kolya@jabber.ru действие по умолчанию (отправка сообщения)
- xmpp:muc@conference.jabber.ru?join - вход в конференцию
- xmpp:coven@chat.shakespeare.lit?invite;jid=hecate@shakespeare.lit - приглашение в конференцию
- xmpp:romeo@montague.net/orchard?sendfile - диалог отправки файла