
Pidgin имеет множество опций для контакта Google Talk (их можно увидеть, щелкнув правой кнопкой мыши по контакту):
- Отменить уведомление о присутствии
- Отписаться
- Блокировать
- Удалять
Мне интересно, какие из этих опций являются локальными, какие из них влияют на состояние сервера и в чем разница?
решение1
В традиционном XMPP/Jabber существует несколько «компонентов» добавления контакта, отчасти обусловленных тем фактом, что он разработан как федеративная сеть (как электронная почта).
Вы можете отправить сообщение любому пользователю, введя его идентификатор вручную.
Вы можете просто добавить кого-то в свой список друзей, но без каких-либо дополнительных функций, просто добавив идентификатор в закладки. («Удалить» удаляет закладку, отменяет входящую подписку на присутствие и отзывает исходящий доступ к присутствию за один шаг.)
Вы можете разрешить кому-то другому видеть уведомления о вашем присутствии — они смогут узнать, находитесь ли вы в сети. («Отмена уведомлений о присутствии» отменяет это.)
Вы можете подписаться на уведомления о присутствии другого человека – видеть, когда он в сети. («Отписаться» отключает эту функцию.)
Все три опции — серверные. В большинстве чат-приложений добавление кого-то в «контакт» состоит из 2, 3 и 4 вместе. То же самое относится и к Google Talk, я полагаю — если у вас есть кто-то в списке контактов, это автоматически позволяет ему видеть, когда вы в сети, и некоторые из этих пунктов меню вообще не будут работать.
(Разумеется, в большинстве клиентов XMPP шаги упрощены до одного. Пункты меню существуют на тот случай, если кому-то понадобится более точное управление.)
Я не совсем уверен, является ли "Блок" в Pidgin серверным или нет. Я думаю, что это серверный вариант, если ваш сервер поддерживает эту функцию, но не все.