Страница 1 из 11

WebChat - Веб-интерфейс (Последнее обновление 31.08.10)

Добавлено: 03:00, 14.07.2010
$teelR@t
Мы рады Вам представить наш релиз плагина WebChat для чата комфорт
Плагин переработан и под 5-ую версию.

Плагин для CommFort:
Название плагина: WebChat plugin
Текущая версия: 0.1.0.1 (от 31.08.10)
Разработчики:
Аннеков Павел aka SteelRat
Евгений Ионичев aka Mavashi

Скачать

Последние изменения:
0.1.0.1
+ Обработка ошибок на события присылаемые сервером, из-за этого плагин мог сам отваливаться
+ На статусной панели окна плагина появился счётчик предупреждений\ошибок, чтобы можно было сразу увидеть были ли проблемы с соединением или обработкой событий
* Из-за неправильного отображения текста в визуальном логировании под Wine-ом вертикальная полоса прокрутки отключена и сделан перенос текста на новую линию, если он не влезает в окно
* Проблема с расцветкой текста в визуальном логе под wine-ом. Теперь события помечаются цветом также как и в ОС Windows
0.1.0.0
+ Фильтрация IP. Теперь в настройках можно указать ники каких пользователей не стоит отображать в веб-интерфейсе
+ Полное обновление списка пользователей после подключения\восстановления соединения с БД
+ Сделана таблица с настройками бота и чата. И первая запись в ней - ник бота
+ Добавилась цветовая раскраска текста в визуальном логировании для быстрого нахождения ошибок и предупреждений. В текстовых логах события предупреждений и ошибок также помечаются соответствующими словами
+ Изменение в чате статуса бота при разрыве\соединении с БД, чтобы пользователи знали работает сейчас веб-интерфейс или нет
* Проблема, когда после быстрой настройки не включалась отправка сообщений из веба в чат
* Проверка сообщений присланных с веб-чата отключалась при отсутствии соединения с БД и потом больше не включалась, даже когда соединение уже восстанавливалось
0.0.1.2
+ В пункте "Настройки" добавлена кнопка для запуска быстрой настройки
* Сделаны изменения для работы новой версии модуля для Drupal - 1.2
0.0.1.1
* Ошибка с настройкой "Поддерживать соединение".
0.0.1.0
* Ошибка при зависании плагина при получении сообщений с веб-интерфейса.
0.0.0.1
+ Первый релиз плагина

Требования: такие же как и у серверного приложения комфорта.

Для CMS Drupal:
Название модуля: CommFort WebChat (cf_webchat)
Текущая версия: 1.4 (от 31.08.10)

Скачать

Последние изменения:
6.x-1.4
+ Кнопка для очистки чата вверху списка сообщений. Она очистит все сообщения, но сразу же загружает последние 10 сообщений
+ Пользователи, которые отправляют сообщения с веб-интерфейса видят изображение глобуса возле своих ников, а при наведении на ник в начале подсказки пишется "Пользователь с веба", чтобы можно было определить кто пишет с веб-интерфейса
+ При нажатии по ссылке в сообщении, показываемом с чата, на ссылке всплывает подсказка, а открывается она в новом окне
* При ошибках во время проверки новых сообщений (например оборвался интернет), проверка всё равно продолжается
6.x-1.3
+ Ник бота теперь не публикуется в веб-интерфейсе перед ником пользователя, отправившего сообщение из веба. Это гораздо красивей выглядит и есть возможность быстрого обращения к этому пользователю, а не к боту
+ Поддержка просмотра смайлов
+ Ограничение отправки сообщения с веба до 10000 символов
+ Возможность установки канала, в котором будет происходить общение
* Перенос строки под кнопкой "Отправить"
* Немного оптимизирован механизм постоянной проверки на новые сообщения
* Изменён способ отображения всплывающей информации о пользователе из списка. Теперь все браузеры показывают всплывающую информацию адекватно
* Не отображение надписи, когда пользователь возвращается в обычное состояние
6.x-1.2
+ Обработка сообщений входа, выхода пользователей; смены статусов; отправка статусных сообщений (по F9)
+ Обработка окончаний учитывая пол пользователя
* Проблема с отправкой\получением сообщений, если движок Drupal размещался не на главном домене (http://название_сайта/), а на http://название_сайта/какой_то_текст. Теперь можно без проблем размещать движок на отдельных страницах
* Проблема, когда сообщения обновлялись и отсылались только со страницы http://название_сайта/chat
6.x-1.1
+ Обработка ссылок в сообщениях ([text])
+ Возможность вставки обращения к пользователю при нажатии на его ник в блоке списка пользователей или в области сообщений
+ Обработка вставленного изображения ([image])
+ Блокирование области для написания сообщения и кнопки отправки сообщения сразу после нажатия кнопки отправки, и разблокировка после сообщении об успешной отправке или об ошибке
6.x-1.0
+ Первый релиз модуля

Требования:
  • CMS Drupal 6-ой линейки. Желательно самой последней версии.
    PHP версии 5.2, но можно и 5.3.0.
Структура
Данный проект состоит из 2-ух частей: плагин для сервера комфорта версии 4.41 (на более ранних версиях тесты не проводились) и модуль для CMS Drupal. Во время работы плагина все действия, которые он получает от сервера пересылаются в базу данных (далее БД) MySQL. Модуль для CMS Drupal в режиме онлайн выводит данные (сообщения, смена статуса...) из БД для просмотра пользователем. Модуль построен так, что он выводит сообщения практически как только они были написаны в чате.

Особенности
Главных особенностей собственно две:
1. Работа с БД MySQL 5, на которой работают большинство современных сайтов.
2. Плагин полностью поддерживается ОС Linux.
БД MySQL в качестве хранилища для информации поступаемой от плагина является надёжным хранилищем, а также широко используется в CMS Joomla, Drupal, WordPress и др. Если Вы используете какую-либо другую CMS для Вашего сайта, то Вы можете свободно настроить плагин и сделать модуль для этой CMS.
Быстрая настройка плагина позволит с помощью подсказок настроить подключение и взаимодействие с БД.
Плагин будет поставляться в специально сделанной для него установке, которая установит его в место, где находится серверное приложение CommFort и установит настройки по-умолчанию.
Плагин ведёт логирование событий, происходящих в канале и и записывает их в файлы логов, а также выводит собственно в содержимом своего окна.
Так как всем известно, что серверное приложение чата комфорт запускается на ОС Linux через WINE, то мы специально проводили тесты так, чтобы плагин работал одинаково под Windows и под WINE-ом. Если Ваш сервер комфорта уже работает на ОС Linux, то Вам не составит труда добавить к нему наш плагин.

Установка
1. Распаковываем содержимое архива (webchat_comm_plug.rar) в папку сервера комфорта (Например: C:\Program Files\CommFort Server\).
2. Запускаем плагин через меню в окне сервера: Сервер-Плагины-webchat-Запустить.
3. Делаем первоначальную настройку плагина.
Если Вы собираетесь использовать CMS Drupal, то:
4. Если она у Вас не установлена - качаем, устанавливаем.
5. Распаковываем содержимое архива (cf_webchat_drupal_module.rar) в папку с CMS Drupal sites\all\modules.
6. На странице модулей в администрировании Drupal (admin/build/modules) включаем модуль CommFort WebChat.
7. Там же в админке, в настройках модуля (admin/settings/cf_webchat), настраиваем на какой странице будет показываться чат (страница с данным URL должна быть предварительно создана).

Перед первым запуском плагина для сервера не забудьте нажать кнопку "Обновить список пользователей онлайн", чтобы была создана и заполнена таблица в БД с пользователями.

FAQ
Вопрос: Почему после замены файла плагина старой версии новой после перезапуска плагина в его окне показывается всё равно старая версия?
Ответ: Старый плагин никуда не делся, он до сих пор сидит в памяти и именно его запускает сервер комфорта. Или перезагрузите сервер комфорта или измените название файла нового плагина на любое другое и запустите его в окне плагинов.
Вопрос: Почему периодически вылетает ошибка «ошибка «Mysql server has gone away» с пометкой «TBXError»"?
Ответ: Это из-за проблем с поддержкой соединения с БД. Установите во вкладке «Настройки» настройку «Поддерживать соединение» на «Да».
Вопрос: Как бороться со спамом и атаками?
Ответ: Всё довольно просто. В модуле для друпала есть специальное правило – «разрешить отправку сообщений» в разделе Разрешения (/admin/user/permissions). Убираем галку напротив этого правила в колонке «анонимный пользователь» и анонимные пользователи не смогут отправлять сообщения в чат с веб-интерфейса. Но если Вам надо, чтобы и зарегистрированные пользователи проходили проверку, то переходим на страницу «Параметры регистрации» (/admin/user/settings) и выбираем пункт «Посетители могут создавать учетные записи, но требуется разрешение администратора». Заблокировать какого-либо пользователя, чтобы он вообще не смог войти на сайт можно на странице «Правила доступа» (/admin/user/rules), где можно заблокировать пользователя по Имени, Хосту (ip или маска) или E-mail.
Вопрос: Как в логах найти ошибки\предупреждения?
Ответ: Визуальные логи в окне плагина выделяют оливковым цветом предупреждения и красным – ошибки. В текстовых логах события с ошибками помечаются как «!!!ОШИБКА!!!» в начале строки, а события с предупреждениями как «<<Предупреждение>>».
Вопрос: Я скопировал смайлы в папку со смайлами и в настройках указал, чтобы смайлы отображались, но они не показываются. Что делать?
Ответ: Проверьте не забыли ли вы нажать кнопку «Оптимизировать смайлы», её надо нажимать каждый раз когда вы изменяете файл «smiles_serv.txt». Так же проверьте, чтобы название этого файла было полностью строчными (маленькими) буквами. И не забывайте, что в Linux-серверах названия файлов\папок в файле «smiles_serv.txt» должно совпадать с реальными названиями (имеются ввиду строчные и заглавные буквы в названиях).

Re: WebChat (Серверный плагин Веб-интерфейса)

Добавлено: 04:43, 14.07.2010
wizard50
имя веб пользователю сменить можно? то есть если не сколько человек с веба, то под какими именами они сидят?

Re: WebChat (Серверный плагин Веб-интерфейса)

Добавлено: 05:34, 14.07.2010
$teelR@t
Да, можно. Имя берется из ника пользователя вошедшего на Ваш сайт. То биш регнулся на сайте и пиши сколько тебе влезет. А щас мы для теста, так как наверняка никто не захочет регистрироваться на нашем портале, сделали, чтобы анонимы тоже могли писать сообщения.

Re: WebChat (Серверный плагин Веб-интерфейса)

Добавлено: 22:39, 15.07.2010
МегаЮзер
$teelR@t писал(а):бета-тестирование плагина для комфорта под названием WebChat
бета-тестирование подразумевает "пощупать", оценить, отыскать "баги" в плагине.
а как оценить баги, не имея плагина?

Re: WebChat (Серверный плагин Веб-интерфейса)

Добавлено: 23:01, 15.07.2010
$teelR@t
Ну так вот пишите сообщения, а мы будем исправлять баги, если они будут замечены

Re: WebChat (Серверный плагин Веб-интерфейса)

Добавлено: 23:11, 15.07.2010
МегаЮзер
ну если из увиденного, то вот самое первоочередное:
1)
[14:02:11] Demon: переключился в состояние "отошел"
[14:03:55] KRIK: вышел
[14:58:28] WebChat: Аноним №81: ё
[21:56:26] B@uKe~R: вошёл
[22:01:37] WebChat: Аноним №24: тееест
многовато времени разбежечка. надеюсь это не вылет сервака или заедание веба...
2) если не удастся реализовать мультиканальность, то можно попробовать реализовать ЛС...
может кто ещё дополнит.

Re: WebChat (Серверный плагин Веб-интерфейса)

Добавлено: 00:13, 16.07.2010
R@t@tUi
реализовать ЛС
разве это возможно без внешней авторизации?
Получается, что лс кому-то отослать еще можно, а вот получить нереально :)

Re: WebChat (Серверный плагин Веб-интерфейса)

Добавлено: 02:57, 16.07.2010
D1nam1T
Сделай элементарную защиту на длину сообщения, и на количество посылок в секунду, а то можно такого натворить :D


PS.
ЛС думаю можно реализовать следующим способом, когда с сайта отправляешь ЛС к ЛС добавляется Web и номер пользователя например [web_21] и не удаляйте этот текст это нужно для получения отправителю (это что бы из ЛС текст не удалили, или что-то в этом роде) когда бот получает ЛС если находит в тексте содержимое в скобках, [web_21], передает юзеру сидящему через веб под номером ЛС. Или можно сделать что бы сервер генерировал произвольный текст при отправке, а когда с чата отправляют если текст совпадает, например " Это сообщение послано с веб не удаляйте номер, иначе получатель его не получит ваше сообщение [!8856516516]" то сообщение отправляется адресату.

Довольно примитивный способ, но реализуемый.

Re: WebChat (Серверный плагин Веб-интерфейса)

Добавлено: 10:12, 16.07.2010
$teelR@t
Реализация многоканальности в планах, ничего сложного в этом нет.
На счет задержки, так то просто плагин выключался на некоторое время.
На счет защиты на длинну сообщения, так ее надо делать не элементарной, так как длинна сообщения регулируется в настройках сервера, как вариант для начала можно сделать ограничение на минимальную длинну из настроек сервака.

Re: WebChat (Серверный плагин Веб-интерфейса)

Добавлено: 23:22, 16.07.2010
kamatozzz
под каким ip отображаются веб пользователи, айпи сервера?
как ограничивать веб ползователей уже продумали?

мужики огромный респект вам за проделанную работу и в дальнейшем, да прибудет с вами сила!

Re: WebChat (Серверный плагин Веб-интерфейса)

Добавлено: 23:49, 16.07.2010
$teelR@t
Список веб пользователей нельзя встроить в список пользователей в иенте, возможно сделаем типа запроса списка из чата. Друпал имеет полную инфу о пользователе, который щас на сайте, в том числе и его ip.

С веба могут общаться только зарегистрированные на сайте пользователи, а ограничить их не составит труда. Можно или права убрать ему или учетку заблокировать.
Сила то прибыла... Время побольше бы:)

Re: WebChat (Серверный плагин Веб-интерфейса)

Добавлено: 03:33, 23.07.2010
$teelR@t
Извините за опоздание, если ничего не помешает, то сегодня ночью сделаем релиз плагина :D

Re: WebChat (Серверный плагин Веб-интерфейса)

Добавлено: 04:19, 24.07.2010
$teelR@t
Выложил плагин и модуль для друпала. Написал небольшой мануал по установке этого всего. Читайте шапку и пользуйтесь. Жду море вопросов по установке и найденных багах.

Re: WebChat (Серверный плагин Веб-интерфейса) Первый релиз

Добавлено: 23:19, 24.07.2010
kamatozzz
а будет ли модуль для joomla и компонент?

Re: WebChat (Серверный плагин Веб-интерфейса) Первый релиз

Добавлено: 23:24, 24.07.2010
МегаЮзер
$teelR@t, спасибище огроменное. вот теперь правда уважаю. извини, что посомневался.
обязательно опробую в работе!

по делу следующее предложение:
пусть анонимы не могут постить в чат, а в уголке будет что-то типа "вход", куда можно ввести свой логин и пароль на чат, и тогда уже будет возможно постить. это защитит чат от возможного сапма через веб-моржу со стороны конкурентов.
в бета-версии, которая была до выпуска финалки, постить анонимы моглию