Skip to content

gistrec/C-P2P-Chat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Чат на си

CircleCI

Децентрализованный P2P чат с использованием UDP пакетов и неблокирующего ввода/вывода!

Основной функционал:

  • При подключении к одному клиенту, к остальным чат подключится сам!
  • Присутствует функция отслеживания активности клиентов. Если кто-то долго не отвечает на пакеты - считаем его отключившимся
  • Псевдографический интерфейс в стиле Midnight Commander
  • Возможность использовать имена

Скриншот


Зависимости

  • ncurses - библиотека предназначенная для управления вводом-выводом на терминал
  • cmake - кроссплатформенная система автоматизации сборки

Сборка

git clone --depth=1 https://github.com/gistrec/C-P2P-Chat.git Test-chat
cd Test-chat

Соберите проект с помощью CMake:

cmake . 
cmake --build . -- -j 2

Запуск

Доступные флаги для запуска:

Флаг Описание
-name <ник> Установка ника
-connect <ip> <port> Подключиться к ip port
-port <port> Установить локальный порт

Флаг -name является обязательным! Пример запуска чата:

./С_P2P_Chat -name Сашка -connect 46.180.227.50 8888 -port 8080

Todos

  • Добавить команды
  • Добавить поддержку разных цветов