среда, 4 февраля 2009 г.

Маленький MUC для Вас. часть 2

Данная статья является продолжением опубликованной ранее статьи  Маленький MUC для Вас. часть 1. Здесь Вы найдёте информацию по использованию чата в Jabber, также она поможет Вам разобраться в различиях между GropuChat и MUC, окажет помощь в первых шагах использования пакета Psi-muc-bundle.



В первой публикации "Маленький MUC для Вас" я остановился на снимке экрана успешного входа в чат в режиме GroupChat. Разберём основные элементы окна чата и выясним главное предназначение каждого из них. Итак, вот скриншот:



От снимка экрана, приведённого в первой публикации, данный отличается наличием добавленных мной цифровых обозначений, для указания каждого из элементов окна. Разберём по порядку:

  1. Кнопка управления темой комнаты. При нажатии на эту кнопку открывается окно редактирования темы комнаты. В случае если у Вас есть права на смену темы, то после нажатия на кнопку ok в появившемся окне тема комнаты сменится на введённую Вами :)

  2. Поле, отображающее текущую тему комнаты.

  3. Панель инструментов. В текущей версии Psi-0.10 на данной панели располагаются только два элемента управления - очистка окна чата (4) слева и добавление в строчку редактирования смайлика из нескольких предлагаемых вариантов справа.

  4. Окно чата - в данном окне отображаются Ваши фразы и фразы Ваших собеседников.

  5. Список участников в данной комнате. Ник каждого из учасников можно выбрать и щелчком правой кнопки мышки вызывается контекстное меню с вариантами действий. По двойному клику левой кнопки мышки на нике открывается диалоговое окно для общения с данным контактом тет-а-тет (для этого вы не обязательно должны быть друг у друга в ростере, общение идёт посредством комнаты и, в общем случае, ваш идентификатор, JID, даже не отображается у собеседника).

  6. Поле ввода вашего текста. После того, как Вы ввели текст его можно отправить нажатием на Enter. Есть возможность отправить многострочный текст путём нажатия Shift+Enter всякий раз, когда нужно начать новую строчку.


В принципе ничего сложного, Вы освоитесь. Проще один раз сделать, чем 10 раз описать процесс общения в чате. Теперь перейдём к более интересной части - отличия MUC и GroupChat в рамках протокола Jabber.

Первое и, пожалуй, самое главное для чего разрабатывался JEP-0045 (а именно он описывает MUC) это введение механизмов управления комнатами сервера конференций и, надо сказать, это удалось очень хорошо; чуствуется наличие опыта общения создателей в самых различных вариациях на тему чатов. Но что-то я отвлёкся. И, коль скоро возможность управления отличает MUC от GroupChat, рассмотрим эти отличия на примере программы psi-muc-bundle. Данная версия Psi отличается от оригинальной версии наличием поддержки протокола MUC, а, значит, подходит для нас наилучшим образом, так как в оригинальной версии Psi в наличии есть лишь поддержка GroupChat.

Скачать эту программу можно по ссылке на странице "Клиенты Jabber" нашего сайта, или вот прямая ссылка на требуемый файл, но она может устареть к моменту прочтения Вами данной статьи.

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

В главном окне программы отличий не заметно, поэтому перейдём сразу к окну, которое нас интересует в первую очередь - окно присоединения к чату. Путь до него пролегает по тем-же пунктам меню, что и в обычном Psi: Меню Ψ → Join Groupchat:



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

  • Remember this groupchat - сохраняет настройки комнаты в закладках и, соответственно, в следующий раз у вас появится возможность выбирать в поле Bookmarks предустановленные настройки для данной комнаты.

  • Forget this groupchat - удаляет настройки комнаты из закладок.

  • Auto-join this groupchat - автоматически подключаться к комнате после подключения к серверу Jabber.


Теперь посмотрим какие интересные вкусности приподнесёт нам окно чата, заходим в конференцию:



Изменений достаточно много, поэтому опишу основные:

  1. В списке контактов появилось разделение по атрибуту доступа к различным вариантам управления комнатой и участия в её "жизни". Так Moderator - это статус пользователей, которые имеют право на разрешение либо запрещение присутствия того или иного пользователя в конференции, Participant - обычный участник конференции, Visitor - посетитель, наименее привелигированный статус в конференции, зачастую, даже не может отправить сообщение в конференцию. Кроме того появились различные варианты доступа к настройкам конференций. Так, есть владельцы конференции (Owner), Администраторы (admin), или другие (none).

  2. В контекстном меню области управления темой конференции (топик) появились новые пункты управления комнатой (о них позже).

  3. Появились новые элементы управления на панельке, которая ранее содержала лишь две кнопочки - очистки области чата и добавления смайликов. Теперь здесь присутствуют также: кнопка редактирования списков доступа к каналу (с изображением AE), кнопка редактирования настроек конференции (ключик), кнопка уничтожения конференции (бомба) и кнопка управления закладками (соответственно закладка). В зависимости от уровня Ваших привелегий на конкретной конференции те или иные элементы управления могут быть отключены.


Теперь рассмотрим опции настройки комнаты. Прошу заметить, что возможность настройки доступна тогда и только тогда, если у Вас имеются соответствующие права на управление конференцией, если конференция была создана Вами, то Вы, автоматически, становитесь её владельцем и у Вас максимальное количество "рычажков" управления. Приступим:



Пункты настройки по порядку сверху вниз:

  1. Room title - устанавливает заголовок комнаты. Заголовок - это то, как комната будет представлена "публике", то есть, если Вы открываете комнату с адресом avtofan@conference.mytlt.ru, то Вашим потенциальным посетителям будет гораздо удобнее её найти под именем "Настоящие автомобильные фанаты" :) От топика (текущей темы обсуждения) заголовок комнаты отличается тем, что темы меняются, а заголовок остаётся.

  2. Make room persistent - указывает серверу, чтобы он сохранял данную комнату в своей базе даже в случае когда комнату покинет последний посетитель.

  3. Make room public searchable - комната с установленным флагом будет отображаться в списке комнат сервера конференций. Иначе она будет как-бы "анонимной".

  4. Make participants list public - отображать список текущих посетителей конференции при запросе информации о комнате "извне", то есть если информацию о комнате запрашивает пользователь, который ещё не присоединился к конференции.

  5. Make room password protected - чтобы присоединиться к конференции необходимо ввести пароль (поля для ввода такового ниже под именем Password), помните соответствующее поле в окошке присоединения к конференции?

  6. Make room semianonymous - не отображать реальные адреса посетителей конференции (администратор видит адрес посетителя).

  7. Make room members-only - к комнате могут присоединиться только посетители из списка участников данной комнаты.

  8. Make room moderated - принимать участие в конференции могут только посетители из списка Participants (Visitors могут лишь читать обсуждение).

  9. Default users as participants - по-умолчанию выдавать пользователю привелегии участника (Participant) конференции, в ином случае по-умолчанию пользователю присваивается привилегия посетилеля (Visitor).

  10. Allow users to change subject - позволять пользователям без особых привилегий менять тему обсуждения конференции (топик).

  11. Allow users to send private messages - позволять пользователям обмениваться "личными" сообщениями, то есть тет-а-тет.

  12. Allow users to query other users - позволять пользователям запрашивать информацию о других пользователях (VCard, другая информация)

  13. Allow users to send invites - позволять пользователям посылать приглашение другому пользователю (то есть пользователи получают возможность приглашать присоединиться к данной конференции другого пользователя из своего контакт-листа)


Вот, в принципе и всё. Перейдём к списку распределения доступа между пользователями конференции (кнопочка AE):



Здесь присутствуют списки владельцев (Owner), администраторов (Admin), пользователей (Member), не относящихся ни к одной группе (None) и отключённых пользователей (Bannded). Справа от списка есть два поля для управления каждым элементом из списка - поле уровня доступа и поле причины (используется только при отключении пользователя от конференции). Снизу есть дополнительные кнопки помимо стандартных Ok и Cancel: Add JID - добавляет в список нового пользователя по его JID и Reset - сбрасывает изменения списка.

Кроме того изменять данные списки доступа возможно и из основного окна чата, элементы управления присутствуют в контекстном меню, если щёлкнуть правой кнопкой мышки на требуемом контакте то можно сменить режим доступа:



Вот, собственно и всё. Через некоторое время будет дополнительная статья о Psi-muc-bundle, в которой я постараюсь описать дополнительные возможности этого пакета не касающиеся чата

Холомьёв  Григорий Юрьевич, 2006

Комментариев нет:

Отправить комментарий