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 15573 times
    (версия для 3.1-
    phpbb3_simplechat_3.1.zip
    Исправленная версия для работы на 3.1
    (78.05 KiB) Downloaded 1267 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 1684 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: 29
Location: Минск, Беларусь
Reputation: 1573
With us: 5 years 2 months


Post #381by Sumanai » 27.12.2014, 17:12

Я не знаю, ищите на официальном сайте.
Использование поиска продлевает жизнь.
Это форум поддержки форка phpBBex. Поддержка по phpBB осуществляется в других местах.
Sumanai M
Гуру
Avatar
Reputation: 1578
With us: 4 yaers 4 months

Post #382by potap » 29.12.2014, 14:09

Если актуально, для 3.1 надо заменить код подключения стилей чтобы работал
//$template->set_custom_template($phpbb_chat_path.'template', 'simplechat');
$template->set_custom_style('simplechat', $phpbb_chat_path.'template');
potap
Гость

Post #383by Ivan Klabukov » 29.12.2014, 16:07

Спасибо, все заработало!
Ivan Klabukov
Новичок
Reputation: 1
With us: 2 yaers 5 months

Не смог установить чат

Post #384by Константин » 13.01.2015, 19:03

У меня не получилось установить чат на форум, не могу понять в чем дело.... Версия PHPBB 3.1.2 .....
Вот такая фигня вылазит: Фатальная ошибка : Призыв к член функция session_begin () на не-объект в /home/ulovanet/ulovanet.ru/forum/chat/index.php на линии 16

У меня форум на поддомене, может с этим связано.... Если кто знает, подскажите.... Заранее спасибо
Константин
Гость

Post #385by Sumanai » 13.01.2015, 19:56

Константин wrote:Призыв к член функция session_begin () на не-объект в /home/ulovanet/ulovanet.ru/forum/chat/index.php на линии 16

Отключите автоматический перевод и выложите нормальный текст ошибки. А то призывы к члену- как то не цензурно...
А вообще, вы делали правку парочкой сообщений выше?

Added after 25 minutes 42 seconds:
Только что проверил- чат прекрасно работает после правки от potap. Демо. Исправленная версия в первом сообщении, рядом с версией для 3.0.
Использование поиска продлевает жизнь.
Это форум поддержки форка phpBBex. Поддержка по phpBB осуществляется в других местах.
Sumanai M
Гуру
Avatar
Reputation: 1578
With us: 4 yaers 4 months

Post #386by angst66 » 24.01.2015, 17:44

Давно интересует вопрос. При ctrl+f5 страница чата страница открывается не к последнему сообщению, а гораздо выше, приходится все время скроллить вниз. Куда смотреть?
angst66
Бывалый
Reputation: 13
With us: 4 yaers 9 months

Post #387by Sumanai » 24.01.2015, 17:48

Cмотреть на руки, которые перезагружают чат, да с очисткой кеша. Для чего?
Использование поиска продлевает жизнь.
Это форум поддержки форка phpBBex. Поддержка по phpBB осуществляется в других местах.
Sumanai M
Гуру
Avatar
Reputation: 1578
With us: 4 yaers 4 months

Post #388by VEG » 29.01.2015, 13:22

angst66, скорее всего из-за того что в чате много смайликов и по мере их подгрузки текст «раздвигается» по высоте.
С наилучшими пожеланиями, Евгений
VEG M
Topic author, Администратор
Avatar
Age: 29
Location: Минск, Беларусь
Reputation: 1573
With us: 5 years 2 months

Post #389by СергейПрима » 18.02.2015, 18:15

Установил все как написано
прописал путь как в редми написано
вы хотите разместить вот так:
http://example.com/chat/
Необходимо указать относительный путь:
$phpbb_root_path = './../forum/';

Code: Select all
Warning: include(./../forum/common.php) [function.include]: failed to open stream: No such file or directory in /home/users/d/chat/index.php on line 12

Warning: include() [function.include]: Failed opening './../forum/common.php' for inclusion (include_path='.:/usr/local/zend-5.3/share/pear') in /home/users/d/chat/index.php on line 12

Fatal error: Call to a member function session_begin() on a non-object in /home/users/d/chat/index.php on line 16
СергейПрима
Новичок
Reputation: 0
With us: 2 yaers 4 months

Post #390by Sumanai » 18.02.2015, 18:19

СергейПрима wrote:$phpbb_root_path = './../forum/';

У вас форум в папке forum?
Использование поиска продлевает жизнь.
Это форум поддержки форка phpBBex. Поддержка по phpBB осуществляется в других местах.
Sumanai M
Гуру
Avatar
Reputation: 1578
With us: 4 yaers 4 months

Post #391by СергейПрима » 18.02.2015, 18:21

Нет у меня корневая папка
т.е. я нажимаю домен и открывается форум index.php
СергейПрима
Новичок
Reputation: 0
With us: 2 yaers 4 months

Post #392by Sumanai » 18.02.2015, 18:22

Ну так зачем прописываете путь до папки forum?
Пишите в той строке
Code: Select all
$phpbb_root_path = './../';
Использование поиска продлевает жизнь.
Это форум поддержки форка phpBBex. Поддержка по phpBB осуществляется в других местах.
Sumanai M
Гуру
Avatar
Reputation: 1578
With us: 4 yaers 4 months

Post #393by СергейПрима » 18.02.2015, 18:22

из readme_ru:

если у вас форум находится по адресу:
http://example.com/forum/
А чат вы хотите разместить вот так:
http://example.com/chat/
Необходимо указать относительный путь:
$phpbb_root_path = './../forum/';

Added after 45 seconds:
Прописал, как Вы написали (так в принципе стандартно было)

Выдает вот что:

Code: Select all
Общая ошибка
SQL ERROR [ mysqli ]

Unknown column 'last_active' in 'where clause' [1054]

SQL

SELECT * FROM phpbb_chat_sessions WHERE last_active < '1424272799' ORDER BY last_active

BACKTRACE

FILE: (not given by php)
LINE: (not given by php)
CALL: msg_handler()

FILE: [ROOT]/includes/db/dbal.php
LINE: 757
CALL: trigger_error()

FILE: [ROOT]/includes/db/mysqli.php
LINE: 189
CALL: dbal->sql_error()

FILE: [ROOT]/chat/index.php
LINE: 96
CALL: dbal_mysqli->sql_query()

Форум phpbb3
Версия 3.0.12

Added after 46 seconds:
Из sql запроса:

Code: Select all
Импорт успешно завершен, запросов выполнено: 2. (install.sql)
CREATE TABLE IF NOT EXISTS `phpbb_chat_messages` (
`msg_id` int(11) unsigned NOT NULL auto_increment,
`user_id` mediumint(8) unsigned NOT NULL default '0',
`username` varchar(255) collate utf8_bin NOT NULL default '',
`time` int(11) unsigned NOT NULL default '0',
`text` varchar(255) collate utf8_bin NOT NULL default '',
`color` varchar(6) collate utf8_bin NOT NULL default '',
PRIMARY KEY (`msg_id`)
) CHARACTER SET `utf8` COLLATE `utf8_bin`;# MySQL вернула пустой результат (т.е. ноль строк).


CREATE TABLE IF NOT EXISTS `phpbb_chat_sessions` (
`user_id` mediumint(8) unsigned NOT NULL default '0',
`username` varchar(255) collate utf8_bin NOT NULL default '',
`last_active` int(11) unsigned NOT NULL default '0',
`user_status` tinyint(3) unsigned NOT NULL default '0',
`user_activity` smallint(6) NOT NULL default '0',
`user_blocked` tinyint(1) NOT NULL default '0',
UNIQUE KEY `user_id` (`user_id`)
) CHARACTER SET `utf8` COLLAT[...]

Added after 3 minutes 39 seconds:
При обновлении страницы если нажать F5
Значения циферные в last_active < '1424273075' ORDER BY last_active меняются

Added after 17 minutes 46 seconds:
Все разобрался спасибо
СергейПрима
Новичок
Reputation: 0
With us: 2 yaers 4 months

Post #394by Sumanai » 18.02.2015, 18:49

СергейПрима wrote:из readme_ru:
Всё там верно написано. Просто нужно правильно следовать инструкции.
СергейПрима wrote:Все разобрался спасибо
Всегда пожалуйста.
Использование поиска продлевает жизнь.
Это форум поддержки форка phpBBex. Поддержка по phpBB осуществляется в других местах.
Sumanai M
Гуру
Avatar
Reputation: 1578
With us: 4 yaers 4 months

Post #395by СергейПрима » 18.02.2015, 18:51

Как теперь сделать две вещи:
1. Настроить права модератора администратора
2. Как теперь сделать так, чтобы незалогиненный просто мог ввести логин и пароль, чтобы зайти в чат ?
А то так много инфы с шапкой и т.п.

Added after 47 seconds:
Чтобы открывалось просто страница chat где ввести логин и пароль, но чтобы просто была только по середине введите логин и пароль и все..
СергейПрима
Новичок
Reputation: 0
With us: 2 yaers 4 months

Post #396by Sumanai » 19.02.2015, 02:09

СергейПрима wrote:Настроить права модератора администратора
Такого нет.
СергейПрима wrote:чтобы незалогиненный просто мог ввести логин и пароль, чтобы зайти в чат ?
Именно так и есть, смотрите внимательнее.
СергейПрима wrote:А то так много инфы с шапкой и т.п.
И конечно же вы считаете, что за вас её прочитает кто- то другой :smile:
Использование поиска продлевает жизнь.
Это форум поддержки форка phpBBex. Поддержка по phpBB осуществляется в других местах.
Sumanai M
Гуру
Avatar
Reputation: 1578
With us: 4 yaers 4 months

Post #397by leonid.b » 20.02.2015, 19:23

рекомендую обьеденить этот мод с /viewtopic.php?t=384
берется дизайн форума и в iframe вставляется чат. получается намного симпатичнее, выглядит как сообщение форума с чатом.
после установки в одном из разделов создаем категорию-ссылку на chat.php или редактируем overal_header.html
жаль в чате неработают администраторы
так-же мой вариант с iframe не дружит с гостями, форма логина появлялась в ифрейме, пришлось отключить гостей.

ScreenshotChat.png


чат из root копируем в вашфорум/chat/ и все делаем по инструкции установки чата

далее, в каталоге форума/ скрипт chat.php
Spoiler
Code: Select all
<?php
define('IN_PHPBB', true);
$phpbb_root_path = (defined('PHPBB_ROOT_PATH')) ? PHPBB_ROOT_PATH : './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
 
// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup();
// For autorized only
if ($user->data['user_id'] == ANONYMOUS)
{
    login_box('', $user->lang['LOGIN']);
}
 
page_header('CHAT');
 
$template->set_filenames(array(
    'body' => 'chat.html')
);
 

make_jumpbox(append_sid("{$phpbb_root_path}viewforum.$phpEx"));
page_footer();
?>

в шаблонах темы создаем chat.html
Spoiler
Code: Select all
<!-- INCLUDE overall_header.html -->
<h2>{L_CHAT}</h2>

<div class="panel bg1">
    <div class="inner">
   <span class="corners-top"><span></span></span>     
      <div class="content">     
         <iframe style="width: 100%; height: 450px; border: 0px;" src="chat/"></iframe>
         <!-- <hr class="dashed">     
    <p>И под чертой напишем о чём-то ещё</p> -->
      </div>   
   
      <span class="corners-bottom"><span></span></span>
   </div>
</div>

<!-- INCLUDE jumpbox.html -->
<!-- INCLUDE overall_footer.html -->
leonid.b
Новичок
Reputation: 3
With us: 2 yaers 4 months

1aCJ

Post #398by Вадим » 24.02.2015, 19:31

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

Post #399by Girl » 25.02.2015, 21:00

Подскажите пожалуйста что это за ошибка , причём у меня чат не открывается а отображается это, у сестры работает он на другом компе нормально ...
Ошибка
General Error
SQL ERROR [ mysqli ]

Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) [2002]

An sql error occurred while fetching this page. Please contact an administrator if this problem persists.

Added after 4 hours 33 minutes:
error_log
[26-Jan-2015 16:07:25 Europe/Moscow]
PHP Fatal error: Call to undefined function r() in /home/bh45991/public_html/chat/index.php on line 8
Ничего не перемещала и не трогала , само.
Index
8_я define("IN_PHPBB", true);
$phpbb_root_path = './../';
$phpbb_chat_path = './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
header("cache-control: no-cache, must-revalidate");
Как быть?
Girl
Мастер
Avatar
Reputation: 18
With us: 4 yaers 8 months

Post #400by sag-sag » 26.02.2015, 07:40

Girl, я не профи в этом вопросе, но попробуй тупо перезалить всю папку chat!
"Сбит с ног - сражайся на коленях, идти не можешь - лежа наступай". В. Ф. Маргелов
sag-sag M
Гуру
Age: 30
Reputation: 351
With us: 3 yaers 10 months

PreviousNext

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