Система является оболочкой для базового обмена сообщениями(командами), основанного на TCP. Разделяется на 2 отдельных приложения:
- клиентское приложение
- серверное приложение
В данном проекте разработан и реализован механизм обхода ограничения протокола TCP в виде максимального окна сообщений (по умолчанию 1024 байт). Проект не подразумевает никакого непосредственного использования, однако может быть использован для осуществления и обработки клиент-серверного взаимодействия других систем.
На данном этапе присутствуют 2 ветки разработки:
- master - стабильная продакшн-ветка
- creating-tests - нестабильная ветка разработки
На продакшн-ветке вроде бы всё работает.
На ветке разработки не обязательно, использовать на страх и риск.
Для запуска необходимо иметь установленный интерпретатор python, версии не ниже 3.7 (версии ниже ещё не тестировались). Процесс запуска:
- Скачать ветку.
Запустить в IDEВыполнить команду оболочкиpython start_server.py
для запуска сервера.Запустить в IDEВыполнить команду оболочкиpython start_client.py
для запуска клиента.
Вызов команд происходит в виде строки формата <имя_команды>:<агрументы(опционально)>
без кавычек соответственно.
- Сервер
- list - отображает список подключенных клиентов;
- stop / q - останавливает сервер.
- Клиент
- s - передает команду на сервер напечатать аргумент команды клиента;
- sd - то же самое, только в целях отладки - сообщения взаимодействия будут отправляться по-очереди по команде пользователя ;
- q - останавливает клиент.