Добавление контактов

Для добавления контакта пользователя в ростер нужно знать JabberID этого пользователя. Некоторые пишут его в подписях писем (я, например :)). Проще всего спросить пользователя, какой у него адрес, но это не всегда удобно — тогда можно воспользоваться поиском в каталогах пользователей Jabber.

Для успешного добавления контакта пользователя нужно отослать ему запрос на подписку (запрос на авторизацию) и получить разрешение. Такой запрос означает, что пользователь хочет подписаться на сообщения о присутствии этого контакта, а также видеть его в своём ростере, видеть статус контакта, отсылать ему сообщения и т.д. Удалённый контакт, в свою очередь, тоже может прислать запрос на подписку.

Проще говоря, один пользователь спрашивает разрешения у другого, тот разрешает и спрашивает ответное разрешение. Или не разрешает, если не хочет быть добавленным в чужой ростер. В Jabber нельзя самовольно добавить пользователя, сделав фиктивную авторизацию (как это можно сделать в ICQ) — без разрешения подписки в ростере удалённого пользователя локально он добавлен не будет.