phpBB Simple Chat v2.1.2 — AJAX-чат с оповещениями о новых темах и ответах

Список разделов phpBBex 1.x (поддерживается) Мастерская 1.x

Описание: Только готовые решения! Статьи, заметки, моды и другие полезности для phpBBex 1.x и phpBB 3.0.x.
Модератор: Поддержка

Сообщение #1 VEG » 02.06.2012, 20:05

Простой чат для phpBB3, вдохновлённый чатом сайта delphi.mastak.ru 2001 года. Подходит как для phpBB 3.0.x, так и для phpBBex 1.x.x. Если вам понравился этот чат, вы сделали какие-то модификации, или просто установили его на свой форум — пожалуйста, поделитесь этим здесь, укажите ссылку на ваш форум.

screenshot.png


Возможности

  • Всё AJAX.
  • Приватные сообщения.
  • Звуковое оповещение.
  • Выбор цвета сообщений.
  • Поддержка смайликов.
  • Автоопределение ссылок.
  • Автоблокировка флуда.

Демонстрация работы

https://phpbbex.com/chat/
Имя: demo_ru
Пароль: demo_ru

Установка

Для того, чтобы установить этот чат на свой форум, необходимо выполнить несколько простых операций:
  1. Скачайте
    phpbb3_simplechat.7z
    v2.1.2 [2023/11/19]
    (69.71 КБ) Скачиваний: 350
    .
  2. Скопируйте содержимое каталога root в корень вашего форума.
  3. Выполните содержимое install.sql в вашей базе.
  4. Пройдите по адресу http://example.com/forum/chat/ и удостоверьтесь что чат работает.
  5. Добавьте ссылку на чат там где вам это удобно.

История версий

phpBB Simple Chat v2.1.2 [2023/11/19]
  • Совместимость с phpBBex v1.9.7.
  • Поддержка emoji (при обновлении со старой версии надо пересоздать таблицы).
  • В подсказке ко времени сообщения отображается дата.
  • Формат даты и времени можно настроить.
  • Незначительные косметические изменения.
Скачать:
phpbb3_simplechat.7z
v2.1.2 [2023/11/19]
(69.71 КБ) Скачиваний: 350


phpBB Simple Chat v2.1.1 [2014/01/10]
  • При попадании в базу сообщения с переводом строки чат не перестаёт работать (спасибо Sumanai за замечание)
  • Настройки JOIN_MESSAGES и LEFT_MESSAGES позволяют отключать сообщения о том, что пользователи заходят в чат и покидают его
  • Настройки ANTIFLOOD_DURATION (продолжительность автоматической блокировки в секундах), ANTIFLOOD_SENSITIVITY (чувствительность, чем меньше значение, тем более чувствительна система) и ANTIFLOOD_EXTINCTION (скорость угасания, чем меньше значение, тем более чувствительна система) позволяют настраивать защиту от флуда
  • Лёгкий рефакторинг
  • Комментарии переведены на английский язык
  • Код для поддержки устаревшего IE8 удалён
Скачать:
phpbb3_simplechat.zip
v2.1.1 [2014/01/10]
(78 КБ) Скачиваний: 18811
(версия для 3.1 от Sumanai -
phpbb3_simplechat_3.1.zip
v2.1.1 для phpBB 3.1
(78.05 КБ) Скачиваний: 3665
)

phpBB Simple Chat v2.1 [2012/09/03]
  • HTML5 шаблон
  • HTML5 <audio> для уведомлений
  • Настройки хранятся в локальном хранилище (а не в куках как было раньше)
  • Свежий jQuery из Google CDN
  • Код для поддержки устаревших IE6-IE7 удалён

phpBB Simple Chat v2.0 [2011/05/27] (не публиковалась)
  • Отображение времени в корректном часовом поясе (что выбрал пользователь в профиле)
  • Счётчик количества сообщений за всё время и счётчик количества обновлений за сеанс
  • Когда кто-то переписывается в привате другие не пользователи не слышат звуковое уведомление
  • Хранение 100 последних сообщений вместо 30
  • Сессия длится 3 минуты вместо 1.5
  • Максимальная длина сообщения 250 символов вместо 200
  • По умолчанию звук включен

phpBB Simple Chat v2.0b [2009/01/18]
  • Портирован на phpBB 3
  • Без пасхальных яиц и гостевого входа

phpBB Simple Chat v1.0a [2008/03/21]
  • Стабильная версия для phpBB 2
  • Полная совместимость с IE6
  • Звуковые уведомления через Flash
  • Было несколько забавных пасхальных яиц (робот отвечал на приветствие и слово «упячка»)
  • Была отдельная версия с гостевым входом без регистрации

phpBB Simple Chat v0.0 [2006/03/23] (не публиковалась)
  • Первые наброски

Форумский бот для phpBB Simple Chat
Скачать:
phpbb3_simplechat_bot.zip
(19.87 КБ) Скачиваний: 3571


Небольшой аддон к phpBB Simple Chat, который оповещает в чате о новых темах и ответах в форуме.
Изображение
Установка требует всего 2 небольшие модификации в одном файле. Пока что все строковые переменные находятся прямо в коде. Все это не сложно перевести на другой язык, изменить имя бота и т.д. В следующей версии постараюсь вынести все это в языковые переменные.

Дополнительные правки


Ссылки

Русскоязычная поддержка на phpbbguru.net
Англоязычная поддержка на phpbb.com
Последний раз редактировалось VEG 19.11.2023, 20:28, всего редактировалось 18 раз(а).
Причина: phpBB Simple Chat v2.1.2
VEG M
Автор темы, Администратор
Аватара
Откуда: Finland
Репутация: 1668
С нами: 12 лет 7 месяцев


Сообщение #21 Kordan » 18.09.2012, 21:34

VEG:Можно так:
Код: Выделить всё
if ($forum_id == 4) return;
Но это очень, очень плохо. Хардкодить значения в код неприлично. Но полноценного решения предложить не могу — это надо значительный кусок кода написать.

Спасибо заработало, согласен, но в качестве полумеры покамест пойдет. Пришлось 6 значений прописать.

Добавлено спустя 2 часа 24 минуты 52 секунды:
У меня еще предложение. Было бы не плохо сделать визуальное оповещение о новом сообщении в виде моргания в названии окна вкладки. Т.к. открыто много вкладок и постоянно приходится переключаться для проверки новостей чата. Ну и заодно, если уж придется сделать функцию определения активности окна, можно сделать находится ли человек в активном окне чата, например изменением цвета пользователя, но с задержкой в 5 мин, как в аське, типа пользователь отошел.
Kordan
Репутация: 1
С нами: 12 лет 2 месяца

Сообщение #22 angst66 » 19.09.2012, 08:11

Heroin
Тут почитай всю тему
angst66
Репутация: 13
С нами: 12 лет 2 месяца

Сообщение #23 VEG » 19.09.2012, 10:47

angst66:На форуме есть блоги. Было бы хорошо если бы бот сообщал о новых записях и комментариях.
К сожалению, код блогов никогда не видел и не знаю, как там это реализовать.
angst66:Да , и как закрыть доступ некоторым группам к чату, не просто спрятать ссылку а не дать права заходить в чат?
Это реализовать не сложно. Чуть позднее постараюсь выложить код.
VEG M
Автор темы, Администратор
Аватара
Откуда: Finland
Репутация: 1668
С нами: 12 лет 7 месяцев

Сообщение #24 angst66 » 19.09.2012, 21:01

VEG:К сожалению, код блогов никогда не видел и не знаю, как там это реализовать.

Какой код нужно показать?
angst66
Репутация: 13
С нами: 12 лет 2 месяца

Сообщение #25 Kordan » 20.09.2012, 15:13

Прописал краткие правила пользования чатом для пользователей. Разместил над смайликами. Также можно заметить ссылочки на портал и форум.
Вложения
screenshot.3.png
Kordan
Репутация: 1
С нами: 12 лет 2 месяца

Сообщение #26 VEG » 21.09.2012, 22:38

angst66:Да , и как закрыть доступ некоторым группам к чату, не просто спрятать ссылку а не дать права заходить в чат?

В файле chat/index.php перед:
Код: Выделить всё
/*
// Проверка бана
Добавить:
Код: Выделить всё
if(!$auth->acl_get('u_usechat'))
{
   if($action!=ACT_LOAD) echo('FullReset();');
   else trigger_error('У вас нет права заходить в чат');
   exit;
}

В файлах language/en/acp/permissions_phpbb.php и language/ru/acp/permissions_phpbb.php добавить языковые переменные после строки:
Код: Выделить всё
   'acl_u_search'      =>
Добавить:
Код: Выделить всё
   'acl_u_usechat'      => array('lang' => 'Может использовать чат', 'cat' => 'misc'),
и:
Код: Выделить всё
   'acl_u_usechat'      => array('lang' => 'Can use chat', 'cat' => 'misc'),

И напоследок выполните запрос:
Код: Выделить всё
REPLACE INTO phpbb_acl_options (auth_option, is_global) VALUES ('u_usechat', 1);

Сразу говорю, что не тестировал. Но по идее должно работать.
VEG M
Автор темы, Администратор
Аватара
Откуда: Finland
Репутация: 1668
С нами: 12 лет 7 месяцев

Сообщение #27 angst66 » 22.09.2012, 08:11

VEG,
А где ид группы прописана?
angst66
Репутация: 13
С нами: 12 лет 2 месяца

Сообщение #28 VEG » 22.09.2012, 12:47

angst66, это добавление нового права в форум. Тем группам, которые должны иметь доступ к чату, просто назначьте через админку право «Может использовать чат».
VEG M
Автор темы, Администратор
Аватара
Откуда: Finland
Репутация: 1668
С нами: 12 лет 7 месяцев

Сообщение #29 angst66 » 22.09.2012, 15:15

Проверил, работает ограничение и по группами и по пользователям. Запрещает только когда отмечено "никогда"
angst66
Репутация: 13
С нами: 12 лет 2 месяца

Цвет администрации

Сообщение #30 angst66 » 26.09.2012, 21:31

Возможно ли прописать для администрации свой, особый цвет шрифта?
angst66
Репутация: 13
С нами: 12 лет 2 месяца

Сообщение #31 angst66 » 28.09.2012, 14:32

Так же вопрос по смайлам. Показывает те смайлы, которые отмечены "показывать на странице ответа". Из за этого на странице ответа приходится держать кучу смайлов, необходимых по мнению юзеров. Нельзя ли не отмеченные таким чебоксом смайлы или просто "еще смайлы" прикрутить к чату?
angst66
Репутация: 13
С нами: 12 лет 2 месяца

Сообщение #32 angst66 » 29.09.2012, 18:46

Добавлю хотелку. Некоторые люди просят , чтобы в окне сообщений слева свой ник выделялся или цветом , или шрифтом. Так им удобней видеть свои сообщения.
angst66
Репутация: 13
С нами: 12 лет 2 месяца

Сообщение #33 Bol1Var » 30.09.2012, 15:27

Всем привет. Еще раз благодарствую VEG'у за классный чат. У меня возник вопрос, напишите пжлст кто знает, как в чате можна отсылать видео, картинки..нужно добавлять какойто bbcode гдето, или уже все готово? подскажите. За ранее спасибо!
Bol1Var
Гость

Сообщение #34 VEG » 30.09.2012, 16:31

angst66:Проверил, работает ограничение и по группами и по пользователям. Запрещает только когда отмечено "никогда"
Так и должно быть, если у зарегистрированных стоит да. Дело в том, что права группы «Зарегистрированные» распространяются на другие группы (кроме гостей и ботов).
angst66:Так же вопрос по смайлам. Показывает те смайлы, которые отмечены "показывать на странице ответа". Из за этого на странице ответа приходится держать кучу смайлов, необходимых по мнению юзеров. Нельзя ли не отмеченные таким чебоксом смайлы или просто "еще смайлы" прикрутить к чату?
Путём некоторой переработки вёрстки шаблона можно добиться этого. В следующем релизе учту это пожелание. Небольшое обновление планируется. Хочу ещё немного «причесать» код, чтобы не так стыдно было (чат писался очень давно) :)
angst66:Добавлю хотелку. Некоторые люди просят , чтобы в окне сообщений слева свой ник выделялся или цветом , или шрифтом. Так им удобней видеть свои сообщения.
В качестве меры выделения своих сообщений задумывался выбор цвета сообщения. Если у каждого пользователя он свой — проблем нет :) Хотя, в оригинальном чате на delpimaster.ru (который и вдохновил меня когда-то) была подсветка строк с именем пользователя (у времени другой фон).

delphimaster.png
Чат delphimaster.ru


Так что может быть тоже что-то такое добавлю (как вдохновения хватит).

Добавлено спустя 3 минуты 37 секунд:
Bol1Var:Всем привет. Еще раз благодарствую VEG'у за классный чат. У меня возник вопрос, напишите пжлст кто знает, как в чате можна отсылать видео, картинки..нужно добавлять какойто bbcode гдето, или уже все готово? подскажите. За ранее спасибо!
Это же чат, и обработка BBCode в нём намеренно выключена. Если хотите вернуть — нужно копать код, который парсит смайлики. Для обработки BBCode phpBB использует тот же класс. К сожалению, более детально не подскажу — много времени уходит на подготовку юбилейного релиза phpBBex.
VEG M
Автор темы, Администратор
Аватара
Откуда: Finland
Репутация: 1668
С нами: 12 лет 7 месяцев

Сообщение #35 Bol1Var » 30.09.2012, 17:20

Хорошо, VEG, но это же твой чат и если пользователь твоего чата, обращается с помощью к тебе на форум..ты просто обязан ему помочь - это подчеркивает твое проффесиональное отношение к твоей работе! Поэтому я хочу, чтобы ты мне и грубо говоря многим, кто нуждается в решении этого вопроса помог!
Код: Выделить всё
// Парсим смайлики и ссылки в сообщениях больше 1
         if(utf8_strlen($text)>1)
         {
            $message_parser = new parse_message($text); // "0" воспринимает как NULL
            $message_parser->magic_url(false);
            $message_parser->smilies(0);
            $text = (string) $message_parser->message;
            unset($message_parser);
            $text = str_replace("<a ", "<a target='_blank' ", $text); // Ссылки в новом окне
            $text = str_replace("{SMILIES_PATH}", "{$phpbb_root_path}{$config['smilies_path']}", $text);
         }
         $text = str_replace("to [".$user->data['username']."]", "<span class=\"to\">to [".$user->data['username']."]</span>", $text);
         $text = addslashes($text);
         echo("LogMessage($msg_id, '$time', '$username', '$text', '$color');\n");
      }
      echo("SetLastId($last_id);\n");
вот этот код, напиши пжлст, код, который нужно прописать, чтобы в чате, можна было выбирать переменные bbcode - video, media, img.
Буду благодарен, как и большинство пользователей чата!
P.S. нету времени уделить на это внимание сейчас, удели попоже. С Уважением!
Bol1Var
Гость

Сообщение #36 VEG » 01.10.2012, 01:32

Bol1Var, чат предоставляется «как есть», какие-либо правки в основную поддержку не входят. Идея внедрения BBCode в чат мне не нравится, поэтому ничего не обещаю.
VEG M
Автор темы, Администратор
Аватара
Откуда: Finland
Репутация: 1668
С нами: 12 лет 7 месяцев

Сообщение #37 angst66 » 01.10.2012, 12:13

Кнопочку вызова виртуальной клавиатуры бы надо, просят люди. Не все могут печатать вслепую в темноте, а кто то выводит инет на экран телевизора.
angst66
Репутация: 13
С нами: 12 лет 2 месяца

Сообщение #38 VEG » 01.10.2012, 12:16

angst66, виртуальную клавиатуру (которая встроена в Windows) невозможно запустить из браузера. Её пользователь может запустить только сам, через пуск. Ну или Win+R, osk и ввод :)
VEG M
Автор темы, Администратор
Аватара
Откуда: Finland
Репутация: 1668
С нами: 12 лет 7 месяцев

Сообщение #39 Bol1Var » 01.10.2012, 21:11

хаха, несерйозный человек!
Bol1Var
Гость

Сообщение #40 angst66 » 05.10.2012, 13:06

VEG, Я про ту виртуальную клавиатуру, которая встраивается на сайт. http://winrus.com/vk/readme_r.htm , разработчик дал варианты, а я не могу разобратся, может подскажешь?
angst66
Репутация: 13
С нами: 12 лет 2 месяца

Пред.След.

Вернуться в Мастерская 1.x