1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/raingad-im-instant-chat

Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.en.md

[Русский](. /README. md) | English

Мгновенные сообщения

Введение

Raingad-IM — это открытое исходное демонстрационное приложение для мгновенного обмена сообщениями, которое должно использоваться вместе с фронтендом и бэкендом. Оно主要用于学习和交流,并提供了即时通讯的开发思路。许多功能需要自行开发,开发的初衷是为了快速建立内部通讯系统、局域网通讯和社区通讯。

тип url
Исходный код фронтенда https://gitee.com/raingad/im-chat-front
Исходный код бэкенда https://gitee.com/raingad/im-instant-chat
Веб-демо http://im.raingad.com/index.html
Демо H5 http://im.raingad.com/h5
Демонстрационный аккаунт: 13800000002 пароль: gstest
Конечный номер можно изменить на 2, 3, 4, ..., 18, 19, 20
Демонстрационный аккаунт: 13800000020 пароль: 123456

Поддерживаемые функции

  • Поддержка одиночного чата и группового чата, а также отправка смайликов, изображений, голосовых сообщений, видео и файловых сообщений
  • Одиночный чат поддерживает отображение статуса прочитанных и непрочитанных сообщений, а также статуса онлайн
  • Создание, удаление групп, управление участниками группы, объявления группы, бан участников группы и т. д.
  • Поддержка списка контактов на верхней панели и конфиденциальности сообщений
  • Поддержка настройки звуковых напоминаний для новых сообщений и уведомлений в браузере
  • Поддержка администратора для отмены сообщений участников группы
  • Поддержка участников группы не могут добавлять друг друга в друзья-Поддержка одиночных аудио- и видеозвонков (соединение с веб-устройствами и мобильными устройствами, не поддерживается мини-приложениями) -Поддержка предварительного просмотра файлов, изображений и большинства медиа-файлов в режиме онлайн -Поддержка мобильных устройств (H5, APP и мини-приложений, некоторые функции не совместимы) -Новая поддержка корпоративного режима и режима сообщества, режим сообщества поддерживает регистрацию и функцию добавления друзей -Приложение поддерживает отправку одиночных сообщений в режиме онлайн и оффлайн (требуется самостоятельная регистрация для услуги unipush) -Поддержка простого управления бэкендом, включая управление пользователями, группами, системными настройками и т. д.

Архитектура программного обеспечения

Бэкенд-технологическая стек: thinkphp6+workerman+redis Фронтенд-технологическая стек: vue2+Lemon-IMUI+element-UI

Установка

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


Установочный пакет требует определенного опыта в работе с PHP и обслуживанием сервера. Если у вас нет такого опыта, присоединяйтесь к общему чату для связи с автором, автор предоставляет платные услуги по установке!


Предварительная подготовка

Вам необходимо сначала установить среду выполнения. Рекомендуется использовать сервер BAOTA. Рекомендуется использовать архитектуру LNMP. Необходимо установить следующее программное обеспечение:

Среда Версия Примечание Рекомендованная
Linux (CentOS) >= 7.0 Не были протестированы следующие версии 7.9
Nginx >= 1.17 последняя
PHP >= 7.1 Несовместима с PHP8 7.3
MySQL >= 5.7 Обязательно версия 5.7 и выше 5.7
Redis >= 5.0 7.0

Важные операции

  1. PHP необходимо установить расширение: redis fileinfo
  2. PHP необходимо разрешить функции: shell_exec chown exec putenv proc_open pcntl_exec pcntl_alarm pcntl_fork pcntl_waitpid pcntl_wait pcntl_signal pcntl_signal_dispatch

Скачивание исходного кода

Скачайте полный исходный код и установите его на свой сервер. Посмотрите раздел релизов.com/raingad/im-instant-chat/releases) на главной странице проекта Gitee и скачайте последнюю версию из раздела релизов.


Начало установки

  1. Создайте веб-сайт, указав директорию выполнения сайта на директорию 'public' в корне проекта.
  2. Включите псевдо-статический режим и настройте обратный прокси. Ниже приведена конфигурация псевдо-статического режима и обратного прокси для nginx, Apache не поддерживается в данный момент.
location ~* (runtime|application)/{
	return 403;
}
location / {
	if (! -e $request_filename){
		rewrite ^(.*)$ /index.php? s=$1 last; break;
	}
}
# Обратный прокси на порту 8282, изменять не требуется
location /wss {
	proxy_pass http://127.0.0.1:8282;
	proxy_http_version 1.1;
	proxy_set_header Upgrade $http_upgrade;
	proxy_set_header Connection "Upgrade";
	proxy_set_header X-Real-IP $remote_addr;
}
```

3. Если у вас есть доменное имя и вы хотите использовать услуги, такие как аудио- и видеозвонки и голосовые сообщения, вам также нужно настроить сертификат для включения HTTPS. Вы можете использовать бесплатный сертификат 'Let's Encrypt'. Если вам не нужны эти услуги, вы можете напрямую использовать протокол HTTP, но функциональность будет ограничена.
4. Доступ к вашему IP-адресу или доменному имени для входа в кастомный установочный визуализатор.

---

#### Если установка не удалась

1. Введите `public\sql\database.sql` для импорта базы данных в вашу собственную базу данных.
2. Введите корневую директорию проекта, измените `example.env` на `.env`.env` и измените соответствующие параметры базы данных. **Пожалуйста, внимательно прочитайте инструкции по конфигурации в env**.
   > Если вы хотите сохранять файлы чата на OSS, вам нужно настроить их в фоновом режиме. Не изменяйте файлы конфигурации после настройки.
   ### Запуск службы отправки сообщений
  Как чат-программа требует использование WebSocket, нам нужно запустить Workerman. Система уже имеет встроенные соответствующие службы, и вы можете запустить службу с помощью страницы управления из административного интерфейса ( **доступен снизу слева после входа с аккаунтом администратора** ). Если служба в фоновом режиме не запускается успешно, вам нужно выполнить следующие шаги отладки:
   **Причины неудачного запуска системных служб**:
   1. Если вы запустили команды `php think worker:gateway start` или `php start.php start` в терминале, пожалуйста, выполните `killall -9 php` в терминале или перезагрузите сервер перед повторным запуском.
   2. Возможно, PHP не является стандартной версией. Выполните `php -v` в терминале, чтобы проверить, совпадает ли номер версии с выбранной версией PHP при создании сайта. Если номер версии не совпадает, вам нужно изменить версию сайта на стандартную версию PHP и установить соответствующие зависимости и удалить отключенные функции для PHP.
   3. Возможно, это связано с недостаточными правами доступа к директориям.Сбросьте все права доступа директорий до `755` для пользователя `www` и попробуйте снова.
   **Если запуск не удался, вы можете выполнить отладку**
   4. Введите корневую директорию проекта для выполнения `php think worker:gateway start`, или выполните `php start.php start` для запуска службы отправки сообщений. Не используйте `-d` во время тестирования. Под Windows запустите `start_for_win`.
```bat
``файл в корневом каталоге напрямую. Поскольку под Windows существует множество ограничений на использование Workerman, рекомендуется использовать Linux-систему в рабочей среде, в то время как Windows-система рекомендуется только для среды разработки.
5. Сервис сообщений должен открыть порт 8282. Если вам нужно его изменить, измените соответствующие параметры в разделе `WORKER` файла конфигурации окружения. Для пользователей Windows, пожалуйста, измените порт 8282 в [`app\worker\start_gateway.php`]. Номер порта должен быть изменен в зависимости от ситуации.
6. Система использует доменное имя в качестве адреса сервиса websocket напрямую, поэтому необходимо настроить прокси в nginx сайта и слушать порт 8282. Параметры конфигурации прокси уже записаны в псевдо-статике.
7. Для получения дополнительной информации о использовании Workerman, пожалуйста, посетите [официальный сайт Workerman](https://www.workerman.net/).
8. После развертывания пароль для аккаунта администратора: `administrator``123456`, а точка входа управления расположена в нижнем левом углу интерфейса чата.### Установка и развертывание сервисов
Автор предоставляет услуги по установке системы, включая развертывание серверной и клиентской частей в онлайн-режиме, чтобы обеспечить идеальную работу проекта, 200 юаней за раз. Услуги по установке могут предоставить подробные инструкции по установке и документацию интерфейса, если это необходимо, вы можете связаться с автором!

### Группа общения в QQ
Если у вас есть вопросы, пожалуйста, оставьте сообщение или присоединяйтесь к нашей группе QQ!
Это не так просто создать. Нажмите звезду.
[Группа общения в QQ: 1031495465](https://qm.qq.com/q/RgHdvLGiMk)

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

**Приложение для мгновенного обмена сообщениями Raingad-IM: код для серверной части.** Для работы приложения Raingad-IM требуется взаимодействие серверной и клиентской частей. Приложение может быть использовано для быстрой разработки внутренних корпоративных чатов, а также для конфиденциального общения команд. Кроме того, оно подходит для орган... Развернуть Свернуть
Apache-2.0
Отмена

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/raingad-im-instant-chat.git
git@api.gitlife.ru:oschina-mirror/raingad-im-instant-chat.git
oschina-mirror
raingad-im-instant-chat
raingad-im-instant-chat
master