Как создать свой чат
Свой чат на платформе RGP Chat — это отдельный чат с вашим адресом (chat.вашсайт.ru), вашими участниками, комнатами и
модераторами. Войти в него могут только люди, которых вы впустили со своего сайта.
Есть два пути. Выберите по тому, кто будет держать сервер.
| Путь А. На наших серверах | Путь Б. На своём сервере | |
|---|---|---|
| Кто держит сервер | Мы | Вы |
| Что нужно от вас | Домен и сайт с входом пользователей | Сервер, домен, программист или админ |
| Время запуска | Около часа после заявки | 15–20 минут по инструкции |
| Где данные | У нас | Только у вас |
| Обновления | Мы | Вы, по SELF-HOST.md |
Что понадобится в любом случае
- Домен или поддомен под чат. Рекомендуем
chat.вашсайт.ru. - Сайт, на котором пользователи уже входят в свой аккаунт. Чат не заводит отдельных паролей: человека пускает ваш сайт
подписанной ссылкой («билетом»). Сделать билет — несколько строк кода, примеры на Python, PHP и Node.js в
DEVELOPER-GUIDE.md. - Числовой id у каждого пользователя вашего сайта (автоинкремент таблицы пользователей подойдёт).
- Владелец чата: id вашего пользователя, который станет главным администратором.
Путь А. На наших серверах
- Заявка. Сообщите: желаемый адрес (
chat.вашсайт.ru), название чата, цвет кнопок, список комнат, id владельца, адрес входа на вашем сайте. Пока работает ручная заявка владельцу платформы. Форма заявки наchatrgp.ru— в планах (см.PLATFORM.md). - DNS. Мы пришлём IP. Вы создаёте у регистратора домена запись типа
A: имяchat(или полныйchat.вашсайт.ru), значение — наш IP. Через 5–60 минут она заработает. - Создание. Мы запускаем один скрипт
tools/provision_chat.sh: он создаёт базу, секреты, настройки, сайт в nginx и сертификат HTTPS. В конце скрипт печатает секрет билетов. Мы передаём его вам безопасным способом: он нужен вашему серверу. - Подключение сайта. Вы добавляете на сайт кнопку «Открыть чат», которая строит билет (
DEVELOPER-GUIDE.md, раздел 3). - Ключ API и вебхуки (если нужны вашим системам) создаём по вашему запросу командой
tools/chatctl.php. - Первый вход. Войдите на сайт под владельцем, нажмите «Открыть чат». В чате у владельца есть кнопка «Администрирование»: назначьте модераторов.
Путь Б. На своём сервере
Пошаговая инструкция с командами — SELF-HOST.md. Коротко: поставить nginx, PHP и MariaDB, распаковать пакет rgp-chat-*.tar.gz,
создать базу, заполнить config.php и secrets.php, выпустить сертификат, добавить cron для вебхуков. Первое подключение сайта и
работа с API те же, что в пути А (DEVELOPER-GUIDE.md).
Чек-лист перед тем, как звать людей
- Чат открывается по HTTPS без предупреждений браузера.
- Вход с вашего сайта по кнопке «Открыть чат» работает, имя и аватар подтянулись.
- Назначены модераторы, есть хотя бы один кроме владельца.
- Файлы
secrets.php,config.php, каталогиlib/,tools/,cron/не открываются из браузера (ответ 403). - Секрет билетов и ключи API лежат только на серверах, не в коде страниц.
- Настроены резервные копии базы и загрузок (на наших серверах делаем мы).
- Написаны правила чата и ссылка на политику обработки персональных данных на вашем сайте.
Ответственность владельца чата
Владелец чата отвечает за то, что в нём происходит. Договоритесь с юристом, прежде чем открывать чат широкой публике:
- вы оператор персональных данных ваших участников (в России это 152-ФЗ): нужны политика, согласие и срок хранения;
- вы удаляете запрещённый законом контент и реагируете на жалобы;
- правила чата и контакт для обращений должны быть видны участникам.
Платформа даёт инструменты: модераторы, скрытие и удаление сообщений, блокировка участников, жалобы, журнал действий. Содержимое чата проверяет владелец.
Как отключить чат
Чат на наших серверах мы можем остановить по вашей просьбе и выдать архив базы и загрузок. На своём сервере вы просто отключаете
сайт в nginx. Данные остаются у вас: база chat_<имя> и каталог uploads/.