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

Board index phpBBex 1.x Мастерская

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

Post #1by VEG » 02.06.2012, 20:05

Простой чат для phpBB3 в стиле чата сайта delphimaster.ru. Подходит как для phpBB, так и для phpBBex. Если вам понравился этот чат, вы сделали какие-то модификации, или просто установили его на свой форум — обязательно напишите об этом здесь, укажите ссылку на ваш форум. Мне будет очень приятно.

screenshot.png


Возможности

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

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

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

Установка

Для того, чтобы установить этот чат на свой форум, необходимо выполнить несколько простых операций:
  • Скачайте
    phpbb3_simplechat.zip
    (78 KiB) Downloaded 16540 times
    (версия для 3.1-
    phpbb3_simplechat_3.1.zip
    Исправленная версия для работы на 3.1
    (78.05 KiB) Downloaded 1428 times
    )
  • Скопируйте содержимое каталога root в корень вашего форума
  • Выполните содержимое install.sql в вашей базе
  • Пройдите по адресу http://example.com/forum/chat/ и удостоверьтесь что чат работает
  • Добавьте ссылку на чат там где вам это удобно

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

phpBB Simple Chat v2.1.1 [10.01.2014]
  • При попадании в базу сообщения с переводом строки чат не перестаёт работать (спасибо Sumanai за замечание)
  • Настройки JOIN_MESSAGES и LEFT_MESSAGES позволяют отключать сообщения о том, что пользователи заходят в чат и покидают его
  • Настройки ANTIFLOOD_DURATION (продолжительность автоматической блокировки в секундах), ANTIFLOOD_SENSITIVITY (чувствительность, чем меньше значение, тем более чувствительна система) и ANTIFLOOD_EXTINCTION (скорость угасания, чем меньше значение, тем более чувствительна система) позволяют настраивать защиту от флуда
  • Лёгкий рефакторинг
  • Комментарии переведены на английский язык
  • Код для поддержки устаревшего IE8 удалён

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

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

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

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

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

Форумский бот для phpBB Simple Chat
Скачать:
phpbb3_simplechat_bot.zip
(19.87 KiB) Downloaded 1786 times


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

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


Ссылки

Русскоязычная поддержка на phpbbguru.net
Англоязычная поддержка на phpbb.com
Last edited by Sumanai on 03.12.2015, 20:07, edited 5 times in total.
Reason: Дополнения для чата
С наилучшими пожеланиями, Евгений
VEG M
Topic author, Администратор
Avatar
Age: 30
Location: Минск, Беларусь
Reputation: 1574
With us: 5 years 7 months


Post #101by VEG » 07.11.2012, 23:09

Грейпфрут, конечно, нет ничего невозможного :) Но для этого нужно изменять логику работы.
С наилучшими пожеланиями, Евгений
VEG M
Topic author, Администратор
Avatar
Age: 30
Location: Минск, Беларусь
Reputation: 1574
With us: 5 years 7 months

Post #102by igorbond » 20.11.2012, 13:15

Подскажите пожалуйста, вот я поставил ваш чат, все норм, но как сделать так чтобы он был блоком как и все остальное , а то он не похож ни на что ??? И еще как сделать так ( у меня 2 стился ) чтобы в каждом стиле он был под этот же стиль ???
igorbond
Гость

Post #103by VEG » 22.11.2012, 13:46

igorbond, к сожалению, готовых рецептов нет. Но вы можете сделать самостоятельно необходимый вид чата. На сайте htmlbook.ru отлично описаны HTML и CSS — с такими знаниями вы легко стилизуете чат так, как вам захочется.
С наилучшими пожеланиями, Евгений
VEG M
Topic author, Администратор
Avatar
Age: 30
Location: Минск, Беларусь
Reputation: 1574
With us: 5 years 7 months

Post #104by Mofforg » 07.12.2012, 10:05

VEG, а можно хотя бы подсвечивать группы нужными цветами в чате? А то что спамеры, что админы - одним цветом)

Про модерирование уж молчу...вы говорите - быстро удаляются, так не у всех чаты с кучей народа. У меня вот десяток сообщений в день, и если будут спамить - будет висеть долго.. Чат это дополнение всё таки.
Mofforg
Новичок
Reputation: 0
With us: 4 yaers 11 months

Post #105by VEG » 07.12.2012, 12:11

Mofforg, к сожалению, серьёзных планов по развитию данного чата на данный момент нет. Планируется небольшое обновление, но там новых возможностей не будет — будут исправлены некоторые проблемы и немного обновлён код.
С наилучшими пожеланиями, Евгений
VEG M
Topic author, Администратор
Avatar
Age: 30
Location: Минск, Беларусь
Reputation: 1574
With us: 5 years 7 months

Post #106by Mofforg » 08.12.2012, 00:10

Ну мне бы хотя бы намёк как может выглядеть код для отображение цвета группы.
Mofforg
Новичок
Reputation: 0
With us: 4 yaers 11 months

Post #107by VEG » 08.12.2012, 01:11

Получить HTML код имени пользователя с цветом можно вызовом функции:
Code: Select all
get_username_string('full', $user_id, $row['username'], $row['user_colour'])
Если знаете PHP, сможете прикрутить :)
С наилучшими пожеланиями, Евгений
VEG M
Topic author, Администратор
Avatar
Age: 30
Location: Минск, Беларусь
Reputation: 1574
With us: 5 years 7 months

Post #108by angst66 » 15.12.2012, 19:29

VEG wrote:Получить HTML код имени пользователя с цветом
Можно поподробней код помимо {S_USERNAME}?
angst66
Бывалый
Reputation: 13
With us: 5 years 2 months

Post #109by Strel0KK » 23.12.2012, 11:52

Поставил чат, после того как пытаюсь на него зайти выдаёт SQL ошибку
Code: Select all
SQL ERROR [ mysqli ]

Table 'phpbb3.p_chat_sessions' doesn't exist [1146]

SQL

SELECT * FROM p_chat_sessions WHERE last_active < '1356252528' ORDER BY last_active

BACKTRACE

FILE: includes/db/mysqli.php
LINE: 163
CALL: dbal->sql_error()

FILE: chat/index.php
LINE: 88
CALL: dbal_mysqli->sql_query()
Что делать? Как и было написано в инструкции таблицы в phpMyAdmin, я, создал!
Strel0KK
Новичок
Reputation: 0
With us: 4 yaers 11 months

Post #110by VEG » 23.12.2012, 12:08

Strel0KK, у вас изменён префикс таблиц. Перед установкой install.sql замените в этом файле строки «phpbb_» на «p_».
С наилучшими пожеланиями, Евгений
VEG M
Topic author, Администратор
Avatar
Age: 30
Location: Минск, Беларусь
Reputation: 1574
With us: 5 years 7 months

Post #111by Strel0KK » 23.12.2012, 12:35

Спасибо, помогло! Но жаль чат у меня не работает в Opera! :cry: Хотя чат расположенный на сайте здесь у меня работает!
Strel0KK
Новичок
Reputation: 0
With us: 4 yaers 11 months

Post #112by VEG » 23.12.2012, 13:16

Strel0KK, посмотрите в консоли ошибок JavaScript — может быть что-то там полезное по этому поводу есть. Не пользуюсь Opera, точно сказать не могу где она. Но должна быть :)
С наилучшими пожеланиями, Евгений
VEG M
Topic author, Администратор
Avatar
Age: 30
Location: Минск, Беларусь
Reputation: 1574
With us: 5 years 7 months

Post #113by andrei » 13.01.2013, 09:25

Всем привет! Долго не решался задать вопрос, но сам так и не смог разобраться, неделю мучился и всё безрезультатно.
На второй странице, пост от 21.09.2012
Да , и как закрыть доступ некоторым группам к чату, не просто спрятать ссылку а не дать права заходить в чат?
Далее там всё элементарно расписано. Но у меня ничего не получилось. Доступ к чату просто закрывается, но в админке ничего не появляется при этом. Вот с этим пунктом
В файлах language/en/acp/permissions_phpbb.php и language/ru/acp/permissions_phpbb.php добавить языковые переменные после строки:
У меня вопросов не возникло, а вот что касается
В файле chat/index.php перед:
Code: Select all
/*
// Проверка бана
Добавить:
Code: Select all
if(!$auth->acl_get('u_usechat'))
{
   if($action!=ACT_LOAD) echo('FullReset();');
   else trigger_error('У вас нет права заходить в чат');
   exit;
}
Я сомневаюсь, правильно ли я вставил код.
Вот что мне пришло в ответ на запрос:
Code: Select all
REPLACE INTO phpbb_acl_options (auth_option, is_global) VALUES ('u_usechat', 1);
Image
Что я сделал не так? Почему в админке не появляется новая функция добавления доступа в чат для определённых групп пользователей?
Вот так я правил файл - точно по инструкции:
Скажите пожалуйста - я правильно всё сделал?
Image
phpbbex 1.7.1 + MySQL 5.5.25a + Apache 2.2.22 + PHP 5.3.14 + phpMyAdmin 3.5.1
Windows XP Pro
andrei M
Бывалый
Reputation: 1
With us: 4 yaers 10 months

Post #114by VEG » 13.01.2013, 10:20

andrei, после выполнения SQL запроса нужно обязательно почистить кэш форума (в админке на главной). А так на первый взгляд выглядит, что всё правильно.
С наилучшими пожеланиями, Евгений
VEG M
Topic author, Администратор
Avatar
Age: 30
Location: Минск, Беларусь
Reputation: 1574
With us: 5 years 7 months

Post #115by andrei » 13.01.2013, 12:32

Ещё такой вопрос. Я в
\styles\prosilver\template\overall_header.html
После
Code: Select all
<ul id="main-menu">
Добавил
Code: Select all
<li><a href="Ссылка">Чат</a></li>
Получилось вот так:
Image
Но вместо "Чат" почему-то стали отображаться значки вопросов, пришлось поэтому прописать в коде Chat по английски. Но в меню-то кириллица нормально отображается!
И ещё одна ссылка на чат (наверху) тоже нормально отображается на русском. Ничего не понимаю...
И подскажите пожалуйста как удалить самую верхнюю ссылку. Я не помню уже на каком из форумов я вычитал совет как можно её туда встроить, и теперь не знаю как её удалить оттуда...
phpbbex 1.7.1 + MySQL 5.5.25a + Apache 2.2.22 + PHP 5.3.14 + phpMyAdmin 3.5.1
Windows XP Pro
andrei M
Бывалый
Reputation: 1
With us: 4 yaers 10 months

Post #116by VEG » 13.01.2013, 13:25

andrei, для редактирования файлов используйте Notepad++ последней версии. При сохранении используйте кодировку UTF-8 без BOM и только её — другие варианты непозволительны!
Ссылка вверху судя по всему вставлена через раздел «Верхние ссылке» на главной в админке.
С наилучшими пожеланиями, Евгений
VEG M
Topic author, Администратор
Avatar
Age: 30
Location: Минск, Беларусь
Reputation: 1574
With us: 5 years 7 months

Post #117by andrei » 13.01.2013, 14:43

Спасибо, всё получилось, "Чат" теперь отображается в меню по-русски, и верхнюю ссылку убрал. Но с правами доступа так ничего и не вышло... Я во-первых так и не нашёл в админке где функция очистить кэш, всё там облазил, потом уже плюнул на всё и просто стал тупо и методично перебирать все кнопки меню и подменю... Так и не нашёл! Наткнулся на сброс статистики. Но это не помогло нисколько, в админке чат так и не появился... Не понимаю - что я не так делаю? Или его обязательно нужно прописывать как новый форум? Но тогда непонятно к чему вся эта бодяга с правкой index.php, когда можно просто ограничить к этому новому форуму под названием "Чат" определённую группу пользователей? Я сейчас исправил всё как было раньше в файлах index.php и permissions_phpbb.php - попробую сейчас заново всё повторить, но уже используя не блокнот как раньше, а Notepad++, последняя попытка!
Да, и скажите - где там, в админке чистится кэш??
phpbbex 1.7.1 + MySQL 5.5.25a + Apache 2.2.22 + PHP 5.3.14 + phpMyAdmin 3.5.1
Windows XP Pro
andrei M
Бывалый
Reputation: 1
With us: 4 yaers 10 months

Post #118by VEG » 13.01.2013, 15:23

andrei, кнопка очистки кэша на главной странице админки. Когда заходите в админку, под статистикой ряд функций с кнопкой «Выполнить». Там и очистка кэша.
С наилучшими пожеланиями, Евгений
VEG M
Topic author, Администратор
Avatar
Age: 30
Location: Минск, Беларусь
Reputation: 1574
With us: 5 years 7 months

Post #119by andrei » 13.01.2013, 16:10

Ничего не выходит! "У вас нет права заходить в чат" Кто бы сомневался... И это притом, что чат не просто установлен, а он создан как форум(такой же как "Видео", "Музыка" и другие форумы, только тип форума я указал "Ссылка"), я прописал доступ к нему всех групп, какие есть а себе вообще выставил все права какие только можно, - всё без толку!!! Кэш чистил, само собой, и в этот раз уж нотэпад++ использовал, но хоть башкой бейся об стену - всё впустую! Ладно, я возвращаю всё как было раньше, смысла больше нет экспериментировать - а доступ можно в админке и обычным путём отрегулировать...
phpbbex 1.7.1 + MySQL 5.5.25a + Apache 2.2.22 + PHP 5.3.14 + phpMyAdmin 3.5.1
Windows XP Pro
andrei M
Бывалый
Reputation: 1
With us: 4 yaers 10 months

Post #120by VEG » 13.01.2013, 16:41

andrei, право на посещение чата должно устанавливаться отдельно. И это право устанавливается в правах доступа к форумам, а в общих правах пользователей. Права к форумам здесь вообще не при чём.
С наилучшими пожеланиями, Евгений
VEG M
Topic author, Администратор
Avatar
Age: 30
Location: Минск, Беларусь
Reputation: 1574
With us: 5 years 7 months

PreviousNext

Return to Мастерская