Единый форум поддержки

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Единый форум поддержки » Новые возможности форумов » Собственный чат для форумов MyBB - ChatX


Собственный чат для форумов MyBB - ChatX

Сообщений 41 страница 48 из 48

1

© 2017-2019, C3La-NS

На MyBB сейчас редко выходят новые скрипты, поэтому решил, что пришло время внести свою небольшую лепту.

Чат для форума Chat X

https://i.imgur.com/3rx8zKE.png

На MyBB мне всегда не хватало двух функций: портала и мгновенного чата.
Первое было реализовано, вернее подобие, но тем не менее оно работает и многие оценили, многие предлагали свои наработки, за что им большое спасибо.
Когда-то я занимался и чатом, сделал перетаскиваемое окошко в виде мини-диалога для сервиса Cbox. Правда, так как я не сриптописец, код вышел кривой, сложный, сложный в установке и с глюками, в общем, не рекомендую.

Последние, скажем, два года, периодическими набегами, я работал над новой версией чата. За основу был взят интересный скрипт на Tutorialzine, и доведен до такой степени, что от оригинального кода едва ли что-то осталось, за исключением разве что зависимых библиотек. Работа была проделана действительно большая, я начинал с нуля, с абсолютно нулевым знанием PHP и JavaScript, переделал все, что только было в моих силах, дошел до уровня "что-то знаю и понимаю в PHP и JavaScript" (за это моему чату отдельное спасибо, давно хотел освоить хотя бы на базовом уровне). Конечно, поскольку я любитель, красивый, четкий код совсем не обещаю. В дальнейшем буду приводить к более логичному виду, упрощать, и тут не помешала бы помощь умельцев.

Чат вроде работает, при этом работает в современных браузерах, например в IE не работает, но думаю, на дворе 2019 год, очень мало людей все еще используют тот же IE.

Количество багов сведено к минимуму, надеюсь не заметите, а если что-то и есть или обнаружится - будем править.

Также заранее хочу внести ясность. Идея чата для форумов MyBB не нова, люди до меня использовали различные сервисы. Я же свою разработку позиционирую не как сервис, а как скрипт (по крайней мере текущие наработки). Это ключевое отличие. Здесь вам не будет рекламы, копирайтов, платных услуг. Кроме того, текущие наработки скрипта бесплатны. Вы можете делать все что угодно с кодом: любая модификация приветствуется. Также, я не обязуюсь оказывать тех. поддержку пользователей, то есть моя помощь и обслуживание будет зависеть от желания, настроения, положения планет. На текущем этапе проекта мне все равно будут ли люди пользоваться скриптом или нет. Разработка велась в собственное удовольствие.

Дополнительно смею заранее сообщить о концепции и задумке ChatX.
Возможно данный чат заметно отличается своей концепцией от других сайтовых и форумных аналогов. Этот продукт - по большей части моё личное видение на то, каким чат может быть. Я не опирался на аналоги, лишь на базовые принципы. Выбранная исходная идея - компактный мини-диалог, нечто похожее на мини-диалоги в соцсетях (а-ля Вконтакте).

https://imgur.com/8KD7BIK.png

 

https://i.imgur.com/ZRCvmH0.png   Демонстрация


Требования:
Данный скрипт имеет ряд требований, которые, с одной стороны, могут отпугнуть, с другой - без некоторых требований скрипт попросту не мог бы существовать.

1) Наличие сервера. Мы собираемся отправлять и выводить сообщения, для этого нам нужно где-то их хранить. MyBB такой возможности не предоставляет, поэтому вам понадобится аккаунт на хостинге, с поддержкой PHP не ниже версии 5.5. У вас нет хостинга? - Можете купить. Не хотите покупать? - Можете зарегистрироваться бесплатно например на Beget.free, сам скрипт там же и разрабатывался (мигрируя с платного на бесплатный время от времени). Для скрипта не требуется база данных MySQL, потому что он настолько простой, что будем хранить сообщения прямо в файлах. На этом заканчиваются требования от хостинга.

2) Готовность внести некоторые правки в код (минимальные и простые). Хотя скрипт и так разрабатывался из соображений наименьшего вмешательства пользователя в настройку, установку, есть вещи которые я не смог автоматизировать или из-за недостатка знаний или потому, что это невозможно физически. Благо, они необязательные.

На этом, пожалуй, все.

Возможности чата:
Перечисляю основный возможности и особенности чата:

Свернутый текст

Внешний вид мини-диалога, перетаскивается по экрану, при этом запоминает координаты. Для удобства чтения, можно изменять размер по вертикали. Сворачивается в правый нижний угол по клику, запоминает состояние. Если чат уйдет по какой-либо причине за видимую область - координаты будут сброшены. Подгружает последние 20 сообщений, для этого парсит Json. Быстрое и медленное обновление (запросы к серверу): как часто обновляется контент (настраивается в панели), также отдельная кнопочка ручного обновления контента. Чат поддерживает основные BB-теги, работает по схожей схеме, что и на MyBB. Эмоджи + преобразование текстовых смайликов в графические, при включённой соответствующей опции. Есть загрузка графических файлов на сторонний фотохостинг (imgur.com) и вставка их в сообщения. Отправка по кнопке самолетика или по клавише ENTER. Публичный режим работы - когда каждый может публиковать и просматривать сообщения просто указав свой ник-нейм. Приватный режим - когда читать сообщения и писать могут только авторизованные пользователи. Модераторская панель, где вы можете управлять сообщениями, пользователями, изменять настройки чата. Есть возможность автоматического удаления, после N-ого времени (кроме последних 50 сообщений (опционально)), но требует ручного добавления скрипта в CRON. Работает на большинстве сайтов, где установлен код и указан соответствующий домен через настройки (необходимо для соблюдения политики CORS). Гибкая настройка цветовой гаммы чата (отдельным файлом). Русская версия интерфейса, английская. Безопасно (вроде): Cookies защищены, пароли хэшируются современными методами, JSON-файлы (которые выступают в роли БД) недоступны извне. Скрипт подгружается асинхронно, следовательно замедлять работу форума не будет. База данных организована непосредственно в файлах. Наиболее простая процедура установки, работа приложения из коробки.

Интеграция с MyBB:
Скрипт имеет достаточно простенькую, но рабочую систему авторизации по данным форума. Далее описывается принцип работы, варианты работы и некоторые особенности, которые следует знать:

Свернутый текст

1. Принцип работы авторизации по данным форума
1.1 Интеграция с MyBB должна быть включена в настройках чата.
1.2 Чат использует две переменные на форуме UserLogin (логин текущего пользователя) и UserUniqueID (уникальный идентификатор, служащий паролем для чата).
1.3 Чат попытается авторизовать автоматически при загрузке страницы, при условии, что этот пользователь - не гость.
1.4 Если чат определит, что в базе данных чата такого пользователя не существует и при этом на форуме такой пользователь существует, пользователю будет предложено "войти в конференцию", после нажатия соответствующей кнопки, пользователь будет зарегистрирован в базе данных чата.

2. Варианты работы чата с интеграцией для MyBB
2.1 Интеграция с MyBB выключена: в таком случае пользователям придется самостоятельно регистрироваться в чате и самостоятельно авторизовываться (если данные опции включены).
2.2 Интеграция с MyBB включена, читать сообщения могут все, регистрация новых пользователей разрешена: в таком случае все пользователи вашего форума смогут состоять в чате, при этом процесс авторизации будет интегрирован с MyBB; кроме того, в чате смогут состоять гости форума, предварительно указав свое имя. Обратите внимание, для гостей будет отсутствовать специальная иконка https://i.imgur.com/d69Oq8H.png (индикатор авторизованного пользователя).
2.3 Интеграция с MyBB включена, читать сообщения могут только авторизованные пользователи, регистрация новых пользователей разрешена: в таком случае все пользователи вашего форума смогут состоять в чате, при этом процесс авторизации будет интегрирован с MyBB; гости, тем не менее, не смогут состоять в чате.
2.4 Интеграция с MyBB включена, читать сообщения могут только авторизованные пользователи, регистрация новых пользователей запрещена: в таком случае все существующие пользователи вашего форума смогут состоять в чате, при этом процесс авторизации будет интегрирован с MyBB; новые пользователи не смогут состоять в чате; гости также не смогут состоять в чате.
2.5 Интеграция с MyBB включена, читать сообщения могут все, регистрация новых пользователей запрещена: в таком случае все существующие пользователи вашего форума смогут состоять в чате, при этом процесс авторизации будет интегрирован с MyBB; новые пользователи не смогут состоять в чате; гости, тем не менее, смогут состоять в чате.

3. Особенности работы чата с интеграцией для MyBB
3.1 Чат более уязвим к взлому доступа к чату (форум остается незатронутым)
3.2 Являясь модератором чата, ни при каких условиях не передавайте третьим лицам (к которым у вас нет доверия) свой UserUniqueID. Не передавайте третьим лицам исходный код вашего форума, поскольку он может содержать ваш UserUniqueID.

Работоспособность и ограничения:

Скрипт работает в современных браузерах. Поддержка браузеров выглядит следующим образом:

https://i.imgur.com/pjD0L4z.png

https://i.imgur.com/8HEkxSy.png

https://i.imgur.com/69ZEiRE.png

https://i.imgur.com/qB2Eaxb.png

https://i.imgur.com/VBRAvKR.png

https://i.imgur.com/JMjwj9B.png

Работоспособность подтверждена
Работоспособность отсутствует

Использование скрипта на RusFF возможно, но требует дополнительной настройки (из-за их библиотек), могут быть некоторые изъяны. В текущей версии я не предоставляю поддержку RusFF, но надеюсь реализовать в дальнейшем. Если Вы, тем не менее, хотите установить чат на RusFF, пожалуйста, напишите мне в Личные Сообщения.




Установка:

Итак, если Вы хотите подключить чат к себе на форум, сделать это можно следующими способами:

Установка вручную на сервер:
Данный способ имеет важное преимущество - чат будет полностью ваш, вы ни от кого не зависите, вы восхитительны и молодцы. Минусы - устанавливать надо самому, нужен хостинг.
Шаги довольно логичные:

1) Скачайте архив ChatX (ЗЫ: рекомендуется самая последняя версия). СКАЧАТЬ / ИСТОЧНИК 2.
2) разархивируйте zip-файл на хостинге в предпочтительной вам директории (рекомендуется, чтобы хостинг был подключен к домену, с IP-адресом не тестировали).

Подробная процедура на примере Beget.Free

1) Пройдите процедуру регистрации на Beget.Free. Внимание! Требуется рабочий номер телефона!
2) Вам будет предоставлен бесплатный домен третьего уровня, который будет выглядеть примерно так: fh5415z7.bget.ru;
3) Авторизовавшись в аккаунте, перейдите в панель управления (https://cp.beget.com/main);
4) Перейдите в Файловый менеджер. Откроется новая вкладка с содержимым вашего сайта;
5) Вы должны перейти в директорию вашего сайта (то есть, например, fh5415z7.bget.ru => public_html);
6) Загрузите через файловый менеджер скаченный архив ChatX, кликнув по пункту "Загрузить файлы";
7) Как только архив будет загружен, распакуйте его. Для этого нажмите по файлу правой кнопкой мыши и выберите опцию "Распаковать архив";
8) Если Вы сделали все правильно, архив должен распаковаться в автоматически создавшуюся папку "chatx";
9) Наберите адрес вашего сайта в новой вкладке и добавьте после домена директорию chatx (то есть, fh5415z7.bget.ru/chatx/);
10) Вы должны увидеть серый фон страницы, а в нижнем правом углу будет свернутый виджет чата. Теперь остается только авторизоваться как модератор чата, перейти в модер-панель, скопировать код виджета и вставить его на форум. Установка завершена!


Дополнительно: сервис Beget позволяет бесплатно подключать SSL-сертификаты через сервис Let's Encrypt. В панели управления откройте ссылку "Домены и поддомены", напротив вашего домена найдите иконку SSL-сертификата - https://i.imgur.com/1E4mtMG.png. Пройдите требуемые шаги установки.
SSL-сертификат заметно повысит безопасность чата, а также получит бОльшее доверие со стороны браузера.

3) Зайдите на ваш сайт, в директорию /chatx/
Если перед вами страница с серым фоном, а в правом нижнем углу свернутый виджет чата - Вы сделали все правильно.
4) Протестируйте чат, чтобы понять совместим ли он с вашим хостингом. Если все работает - супер.
5) Авторизуйтесь в модераторскую панель, перейдите в "Настройки чата" введите в поле "Внешний домен" адрес вашего форума без конечного слэша ( / ). Затем перейдите на главную модераторской панели, скопируйте готовый виджет и добавьте куда-нибудь на форум.
Готово.

Установка через меня на мой сервер:
Внимание! Количество заявок ограничено, я не располагаю мощным сервером, поэтому буду смотреть по нагрузке.

1) Оставьте заявку под этой темой:

Код:
[b]Адрес форума[/b]
[b]Имя администратора чата[/b]
[b]Количество зарегистрированных пользователей[/b]

2) Если есть свободные места - я отправлю данные личным сообщением.

(!) Используя ChatX через мой сервер вы обязуетесь исполнять правила.

Пользовательское соглашение

Используя чат "ChatX" Вы обязуетесь исполнять пользовательское соглашение MyBB, а также соглашение CELANS.RU (XLNS.RU).

Пользователь в полной мере ответственен за все действия, производимые под его регистрационным именем и паролем его виджета ChatX, расположенного на серверах CELANS.RU, приведённое далее.

Пользователь обязуется не использовать услуги CELANS.RU для целей, противоречащих Российскому законодательству, нарушающих конфиденциальность информации или вызывающих сбои в работе системы. В случае нарушения этого обязательства любые данные пользователя могут быть удалены без предупреждения.

Пользователь не может требовать изменения предоставляемых услуг. Любые предложения носят лишь рекомендательный и ознакомительный характер, которые администрация CELANS.RU вправе не учитывать.

Публичное обсуждение действий представителя услуг может повлечь приостановку оказания услуг в одностороннем порядке без разъяснения причин.

Администрация CELANS.RU имеет право в одностороннем порядке прекратить оказание услуг.

Администрация CELANS.RU имеет право изменять пользовательское соглашение без предупреждения пользователей.


Мой сайт с новостями, полезными инструкциями и проч. — XLNS.RU

+12

41

в связи с введением на сервисе иконок браузера и оськи выявлен косяк

Код:
    [class^="icon-"]:before, [class*=" icon-"]:before {
        font-family: "chatx-icons" !important;
        font-style: normal !important;
        font-weight: normal !important;
        font-variant: normal !important;
        text-transform: none !important;
        speak: none;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }

этот код в стилях чата вызывает баги отображение иконок сервиса.

пока лень копаться и фиксить, но если у кого-то будет проблема - сообщите, постараемся придумать что-то.

Когда C3La-NS вернется с армии, надо будет сказать, чтоб использовался менее жёсткий код для иконок, которые не затрагивает все иконки форума, а только чат

+2

42

kernel поменял селекторы, так что проблемы больше быть не должно.
но стоит все равно подкорректировать стиль скрипта, т.к. классы, содержащие "icon-" - не редкость

+1

43

Скрытый текст:

Для просмотра скрытого текста - войдите или зарегистрируйтесь.

+7

44

Не могу залогиниться в чате под админом. Что не так? Пишет логин или пароль не опознаны. А если пытюсь зарегаться как Admin- пишет Имя занято

Инструкция шедевральна..  Авторизуйтесь в модераторскую панель, перейдите в "Настройки чата" введите в поле "Внешний домен" адрес вашего форума без конечного слэша ( / ).

В какую модераторскую панель? Панель сайта? Панель Чата? Под какими данные входить, откуда их брать?

В чате жму логин и ввожу админские данные - аккмунт не опознан , Жму на чат менеджмент - птыюсь там залогиниться - тоже самое

Отредактировано SeriousX (Пн, 16 Ноя 2020 23:25:05)

+1

45

SeriousX
Чел ушёл в Армию, год не будет ( точнее прошло 3 мес)  :flag:

Логиниться нужно на сайте, где создавали чат(наскок я помню) (Там на сайте со своим PHP нужно распаковать выданный архив и зайти по адресу,
короче см. пункт Установка вручную на сервер:

Spoiler

Отредактировано Deff (Вт, 17 Ноя 2020 01:48:32)

+3

46

Deff написал(а):

SeriousX
Чел ушёл в Армию, год не будет ( точнее прошло 3 мес)  :flag:

Логиниться нужно на сайте, где создавали чат(наскок я помню) (Там на сайте со своим PHP нужно распаковать выданный архив и зайти по адресу,
короче см. пункт Установка вручную на сервер:

Spoiler

Беустановочная версия без автора не регает новые...

Мда.. печаль..

Чат то я установил. Текста написано пофига а установка в "2 клика" Вот только не пойму, почему чат не логинится. Я авторизован на сайте. Захожу по адресу первоначальному домен.ру/chatx где серая страница с чатом только. По инструкции надо залогиниться в админ панель чата и провести дальнейшие настройки чтобы получить код для вставки на сайт. Но Вот тут он и не входит в админ панель чата. Что не так я сделал? Может он с базой не соеднился? В каком файле вообще настройки чата лежат.

+2

47

SeriousX написал(а):

Но Вот тут он и не входит в админ панель чата. Что не так я сделал? Может он с базой не соеднился? В каком файле вообще настройки чата лежат.

Ну я делал вточно так вроде б и логинилось...

Попробуйте снести директорию установки иустановить заново...  :question:

+1

48

Блин ваще вилы.. ни одного рабочего чата нет для Mybb.. Установил Arrowchat 2.1.1 и все отлоично было пока не заметил баг - При быстром редактировании сообщения пропадают кнопки Сохранить и отменить. Убираю строки чата из футера 0 кнопки появляются но чат пропадает. Куда тока не пихал не смог найти места чтобы и чат работал и кнопки не пропадали...

0


Вы здесь » Единый форум поддержки » Новые возможности форумов » Собственный чат для форумов MyBB - ChatX