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 КБ) Скачиваний: 333
    .
  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 КБ) Скачиваний: 333


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 КБ) Скачиваний: 18782
(версия для 3.1 от Sumanai -
phpbb3_simplechat_3.1.zip
v2.1.1 для phpBB 3.1
(78.05 КБ) Скачиваний: 3641
)

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 КБ) Скачиваний: 3553


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

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


Ссылки

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


Сообщение #321 vosur » 23.07.2014, 16:23

Спойлер
Создание темы в теме? Это что- то новое :smile:
Наверное, имелось в виду сообщать о создании темы только в некоторых форумах и ответе в темы только в некоторых темах.

Только правкой в коде. Как- то так:
Найти

Код: Выделить всё
if($forum_notification)

Добавить после

Код: Выделить всё
if (!in_array($forum_id, array(4, 5, 6)) return;

Найти

Код: Выделить всё
if($topic_notification)

Добавить после

Код: Выделить всё
if (!in_array($topic_id, array(4, 5, 6)) return;


Цифры 1,2,3 заменить на айди форумов, из которых нужно уведомлять о новой теме, через запятую, цифры 4,5,6- на айди тем, из которых нужны уведомления о новом ответе.
Код не тестировал, использовать на своё страх и риск.
Да-да!) Спасибо, то что нужно!)

Добавлено спустя 3 часа 35 минут:
Проверил.. Не работает((
vosur M
Репутация: 1
С нами: 10 лет 3 месяца

Сообщение #322 Sumanai » 23.07.2014, 20:24

vosur:Не работает((

Чем точнее будет описание, как не работает, тем лучше. Я работу этого кода ни разу не видел.
И да, на всякий пожарный, точно туда добавляли?
Sumanai M
Аватара
Репутация: 1677
С нами: 11 лет 8 месяцев

Сообщение #323 vosur » 23.07.2014, 22:11

Sumanai:Чем точнее будет описание, как не работает, тем лучше. Я работу этого кода ни разу не видел.
И да, на всякий пожарный, точно туда добавляли?
Добавлял в файл functions_posting.php, тот самый, в который этот чат бот прописался.
А проблема такая: когда я вписываю любую из этих строк, то на месте чата появляется просто бело окно.
vosur M
Репутация: 1
С нами: 10 лет 3 месяца

Сообщение #324 Sumanai » 23.07.2014, 22:54

Всё- таки придётся ставить, чтобы узнать, чего ему там не хватает.
Sumanai M
Аватара
Репутация: 1677
С нами: 11 лет 8 месяцев

Сообщение #325 vosur » 24.07.2014, 01:06

Sumanai :Всё- таки придётся ставить, чтобы узнать, чего ему там не хватает.
Очень буду благодарен, если Вы мне поможете, потому что чат и бот хорошие, но чувствую, что потом бот будет очень флудить..
vosur M
Репутация: 1
С нами: 10 лет 3 месяца

Сообщение #326 VEG » 24.07.2014, 01:58

По идее просто приведённые Sumanai строки добавьте сразу после:
Код: Выделить всё
function chat_notification($mode, $subject, $topic_title, $forum_name, $forum_id, $topic_id, $post_id)
{
Должно будет работать.
VEG M
Автор темы, Администратор
Аватара
Откуда: Finland
Репутация: 1667
С нами: 12 лет 5 месяцев

Сообщение #327 vosur » 24.07.2014, 04:32

VEG:Должно будет работать.
Как-то не хочет работать...

Добавлено спустя 56 минут 24 секунды:
В общем, столкнулся с такими проблемами..
Когда я эти строчки вставлял, то у меня вместо чата было бело окно - с этим с правился, просто добавил недостающую скобку
[quote=Sumanai]if (!in_array($topic_id, array(4, 5, 6))) return;[/quote]
Я в этом не силен, поэтому просто случайно сделал и чат стал отображаться.
Потом я столкнулся с такой проблемой: когда я добавляю две строчки(на проверку форума и поста), то работает только одна строчка. То есть у меня отображалось в чате, что я создал тему в 4, 5, 6-м форуме и не отображалось, что я создал в других. На то, что я пишу в темах никакой реакции не было.
vosur M
Репутация: 1
С нами: 10 лет 3 месяца

Сообщение #328 VEG » 24.07.2014, 09:40

vosur, вставляйте одну из двух строк. Одна фильтрует по списку тем, вторая — по списку разделов. Если добавите обе строки — нужно будет, чтобы выполнилось оба условия одновременно, то есть тема должна быть в указанных разделах и её id должен быть из списка. Чтобы уведомление писалось, когда совпал или topic_id, или forum_id, пишите строку вида:
Код: Выделить всё
if (!in_array($forum_id, array(4, 5, 6) && !in_array($topic_id, array(4, 5, 6))) return;
VEG M
Автор темы, Администратор
Аватара
Откуда: Finland
Репутация: 1667
С нами: 12 лет 5 месяцев

Сообщение #329 vosur » 24.07.2014, 16:04

VEG:
Код: Выделить всё
   if (!in_array($forum_id, array(4, 5, 6) && !in_array($topic_id, array(4, 5, 6))) return;
Сразу заметил вроде как недостающие скобки, но добавил эту функцию, как есть - част исчез. Потом добавил недостающие скобки
if (!in_array($forum_id, array(4, 5, 6))) && (!in_array($topic_id, array(4, 5, 6))) return;

НО все равно чат не появился
vosur M
Репутация: 1
С нами: 10 лет 3 месяца

Сообщение #330 VEG » 24.07.2014, 16:11

vosur, тут только одной скобки не хватало, должно быть так:
Код: Выделить всё
if (!in_array($forum_id, array(4, 5, 6)) && !in_array($topic_id, array(4, 5, 6))) return;
VEG M
Автор темы, Администратор
Аватара
Откуда: Finland
Репутация: 1667
С нами: 12 лет 5 месяцев

Сообщение #331 vosur » 24.07.2014, 16:15

VEG:if (!in_array($forum_id, array(4, 5, 6)) && !in_array($topic_id, array(4, 5, 6))) return;
Ураа..!!) Заработало. Спасибо Вам большое!!!
vosur M
Репутация: 1
С нами: 10 лет 3 месяца

Сообщение #332 Kuralesov » 15.09.2014, 20:53

Доброго дня суток!

Можно ли как-то увеличить количество символов в сообщении, сделать более 250?
Kuralesov
Репутация: 4
С нами: 10 лет 11 месяцев

Сообщение #333 Dr.Death » 15.09.2014, 21:09

В базе и в файле
Код: Выделить всё
// Messages longer than 255 symbols are not allowed
if(utf8_strlen($text) > 255) $text = utf8_substr($text, 0, 255);
Dr.Death M
Аватара
Репутация: 69
С нами: 10 лет 3 месяца

Сообщение #334 Kuralesov » 15.09.2014, 21:37

Dr.Death:В базе и в файле

В файле я видел эту строчку, но у меня почему-то не бьётся почему при ограничении 250 символов в Index.php стоит 255? Правильно ли я понимаю что вместо 255 необходимо указать нужное количество символов?
Покопался в базе, но где менять не нашёл... :eh:
Kuralesov
Репутация: 4
С нами: 10 лет 11 месяцев

Сообщение #335 angst66 » 28.09.2014, 22:13

А почему в яблочных устройствах нет звука? Тестировалось на айпеде, айфоне.
angst66
Репутация: 13
С нами: 12 лет 1 месяц

Сообщение #336 VEG » 05.10.2014, 17:00

angst66, возможно, яблочные устройства печалит, что первым источником указан файл в формате Ogg Vorbis. У продуктов Apple несварение желудка от свободных форматов.

Добавлено спустя 29 секунд:
Kuralesov, нужно ещё увеличить размер соответствующего поля в базе и лимит символов в поле ввода (смотрите шаблон chat_body.html).
VEG M
Автор темы, Администратор
Аватара
Откуда: Finland
Репутация: 1667
С нами: 12 лет 5 месяцев

Сообщение #337 Рарогъ » 20.10.2014, 10:47

Что я сделал не так?
- Скачал чат вот отсюда
- Распаковал и залил папку chat в корень форума
- Запустил чат и получил ошибку об отсутствии базы
- Выполнил SQL скрипт, в результате в базе появились 2 таблицы
- Запустил чат и в результате получаю вот это:
Изображение
Что не так?

Добавлено спустя 2 минуты 44 секунды:
В поле ввода сообщения красный круг с восклицательным знаком - говорит, что не может соединиться...... С чем или кем?????
Рарогъ M
Аватара
Откуда: Анапа
Репутация: 13
С нами: 11 лет 7 месяцев

Сообщение #338 Sumanai » 20.10.2014, 15:44

Рарогъ:Что не так?

Нажмите F12, обновите страницу и посмотрите на лог ошибок.
Sumanai M
Аватара
Репутация: 1677
С нами: 11 лет 8 месяцев

Сообщение #339 Рарогъ » 20.10.2014, 20:39

Sumanai:Нажмите F12, обновите страницу и посмотрите на лог ошибок.
Если я нажимаю F12, у меня открывается всплывающий терминал Yakuake.... Можно попроще сказать что нужно выполнить? Где посмотреть лог ошибок.... Ну а пока не поступило ценных указаний выкладываю что уже сделал:
1. Удалил таблицы
2. Обновил страницу браузера, сделал скриншот ошибки. (файл 1 во вложении)
3. Заново их создал в phpmyadmin
4. Попробовал обновить страницу - результат пустой экран (как в предыдущем сообщении)
5. Попробовал написать несколько сообщений (get get get, 11111, 22222, 33333)
6. Посмотрел в phpmyadmin - сообщения записались в базу. (файл 2 во вложении)
7. Ну и обновил страницу, после чего посмотрел лог файла error.log на хостинге:
[Mon Oct 20 21:27:03 2014] [error] [client 183.60.215.4] client denied by server configuration: /home/rarog70/zlatovlasta.info/docs/forum/viewtopic.php
[Mon Oct 20 21:27:03 2014] [error] [client 183.60.215.4] client denied by server configuration: /home/rarog70/zlatovlasta.info/docs/forum/viewtopic.php
[Mon Oct 20 21:28:56 2014] [error] [client 183.60.215.4] client denied by server configuration: /home/rarog70/zlatovlasta.info/docs/forum/memberlist.php
[Mon Oct 20 21:28:56 2014] [error] [client 183.60.215.4] client denied by server configuration: /home/rarog70/zlatovlasta.info/docs/forum/memberlist.php
Смотрите... может что подскажете...

Добавлено спустя 3 минуты 20 секунд:
183.60.215.4 - я так понял китайская подсеть.... котору. наверное забаню нафиг..... других ошибок нету.....
Вложения
1.jpg
1.jpg (106.64 КБ) Просмотров: 7802
2.jpg
Рарогъ M
Аватара
Откуда: Анапа
Репутация: 13
С нами: 11 лет 7 месяцев

Сообщение #340 Sumanai » 20.10.2014, 21:12

Рарогъ:Если я нажимаю F12, у меня открывается всплывающий терминал Yakuake....

В общем веб инспектор нужен, или файрбаг. Файрбаг предпочтительнее- это дополнение файрфокса, если что.

Рарогъ:1. Удалил таблицы
2. Обновил страницу браузера, сделал скриншот ошибки. (файл 1 во вложении)

Это ожидаемая ошибка, зачем так делать? Само собой при отсутствии таблиц будет ошибка "Таблица не существует".
Sumanai M
Аватара
Репутация: 1677
С нами: 11 лет 8 месяцев

Пред.След.

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



cron