Conference

From JaWiki (Jabber/XMPP wiki)
Revision as of 07:56, 2 December 2006 by Binary (Talk | contribs) (Affiliatons)

Jump to: navigation, search

Введение

Традиционно считается, что службы передачи коротких сообщений из непосредственного чата двух клиентов, нежели общения многих клиентов одновременно, что называется по-разному: "групчат" или "конференция". Функциональность групчатов наследована от таких систем, как Internet Relay Chat (IRC). Jabber-сообщество разработало и внедрило основной протокол групчатов уже в 1999 году. Этот "groupchat 1.0" протокол предоставлял минимальный набор возможностей для комнат общения, но был, скорее, ограничен в возможностях. Новая спецификация (XEP-0045) (Multi-User Chat или MUC) построена на более старом "groupchat 1.0" протоколе, обратно совместимо со старым протоколом, но предоставляет расширенные возможности, такие как приглашения, модерирование и администрирование, и специализированные типы комнат.

Использование

Для использования конференций, необходимо использовать клиент, поддерживающий MUC. На данный момент, большое число клиентов поддерживают его в разной степени. Например, с помощью PSI, Вы можете общаться в конференции, но не можете администрировать и модерировать её (верно до версии 0.10 включительно). Такие клиенты, как Tkabber, JAJC, Bombus поддерживают MUC полностью.

Чтобы войти в конференцию, вам нужно найти соответствующий пункт меню в вашей программе-клиенте. Например, Join Group в Tkabber или Join Groupchat в PSI, ввести имя комнаты и сервер конференций, на котором она находится, например, conference.jabber.ru. Для того, чтобы создать новую комнату, обычно, нужно просто войти в несуществующую комнату на нужном сервере конференций. Список существующих комнат можно увидеть, используя Service Discovery приметильно к серверу конференций.

Типы комнат

  • Fully-Anonymous Room - комната, в которой полный или неполный JID посетителя не может быть виден никем, включая администраторов и владельцев комнаты; такие комнате НЕ РЕКОММЕНДУЮТСЯ.
  • Hidden Room - комната, которая не может быть найдена любым пользователем с помощью стандартных средств, таких как поиск и Service Discovery.
  • Members-Only Room - комната, к которой пользователь не может подключиться, не будучи в её списке пользователей (members list).
  • Moderated Room - комната, в которой только пользователи, обладающие правом голоса (voice) могут посылать сообщения всем посетителям.
  • Non-Anonymous Room - комната, в которой полный JID посетителя виден всем посетителям, хотя посетитель может выбрать любой никнейм.
  • Open Room - комната, в которую может войти любой, даже не находящийся в списке её пользователей.
  • Password-Protected Room - комната, в которую можно войти, только набрав верный пароль.
  • Persistent Room - комната, которая не уничтожается после того, как последний посетитель выходит.
  • Public Room -- комната, которая может быть найдена любым пользователям, используя поиск либо Service Discover.
  • Semi-Anonymous Room - комната, в которой полный JID посетителя может быть виден только администраторами и модераторами комнаты.
  • Temporary Room - комната, которая уничтожается после того, как последний пользователь выходит из неё.
  • Unmoderated Room - комната, в которой любой посетитель может писать сообщения всем посетителям.
  • Unsecured Room -- комната, в которую любой пользователь может войти, не предоставив корректного пароля.

JID и MUC

Как и всё в Jabber, комнаты имеют свой собственный JID, с помощью которого они могут быть идентифицированы, и с их же помощью производится вход в нужную конференцию.

JID комнаты имеет вид имя_комнаты@сервер_конференций. Например, конференция JRuDevels имеет JID jrd@conference.jabber.ru, что означает, что комната имеет имя jrd и расположена она на сервере конференций conference.jabber.ru. Обычно, Вы можете использовать любой сервер конференций посредством S2S-связей между серверами.

JID каждого из посетителей комнаты имеет вид имя_комнаты@сервер_конференций/никнейм, за счет чего достигается анонимность посетителей. В не-анонимных комнатах и администраторам в анонимных, реальный JID посетителя специально. Например, JID пользователя с никнеймом Binary в конференции jrd на сервере конференций conference.jabber.ru будет выглядеть как jrd@conference.jabber.ru/Binary. Заметим, что так как ресурс в JID чувствителен к регистру, то и никнейм пользователей в конференции чувствителен к регистру, поэтому никнеймы Binary и binary могут находится в одной конференции одновременно, не вызывая при этом конфликта.

Роли (Roles)

Роль (Role) - это одно из двух измерений позиции посетителя комнаты (прав и положения).

Определены следущие Роли, которые может иметь посетитель:

  • Moderator
  • Participant
  • Visitor
  • None (отсутствие Роли)

Роли являются временными и они не обязаны оставаться за пользователем во время разных подключений его к комнате. Не существует конкретной привязки ролей к присоединениям (см. далее).

Moderator - наиболее властная из всех ролей, которая может управлять некоторыми ролями других посетителей.

Participant - имеет право голоса (Voice) всегда.

Visitors - не могут посылать сообщения всем посетителям, когда комната является Moderated.

Affiliations

Определено пять типов Affiliation, которые могут принимать посетители:

  • Owner (Владелец)
  • Admin (Администратор)
  • Member
  • Outcast
  • None

Affiliation сохраняется за пользователем в течении нескольких входов в конференцию, они назначаются на основе реального неполного JID посетителя.

Member - позволяет администрации комнаты определить белый список пользователей, которые могут входить в комнату типа Members-Only.

Outcast - забанненый пользователь, не имеющий права на вход в конференцию.

Admin - обладает правом редактирования списка модераторов, бана и кика.

Owner - обладает правами конфигурирования, уничтожения комнаты, а также редактирования списка Администраторов и Владельцев.