-
Описание модулей:
- configs - пакет с утилитами приёма передачи данных и глобальными переменными, используемыми в проекте,
- logs - пакет с конфигурацией логирования и сами логи работы,
- unit-tests - автотесты для проверки работоспособности функций проекта,
- decorators - декораторы для логирования вызовов функций,
- server.py - основной серверный модуль,
- client.py - основной клиентский модуль,
- launcher.py - вспомогательная утилита для одновременного запуска сервера и нескольких клиентов,
- run.sh - скрипт для запуска серверно/клиентского модуля в новом окне терминала
-
Клиентский модуль - client.py
Модуль поддерживает отправку сообщений адресатам, одновременно с этим приём новых сообщений.
Поддерживаются опции командной строки:
- Адрес сервера. Позволяет указать адрес сервера для подключения. По умолчанию Localhost.
- Порт сервера. Позволяет указать порт, по которому будет производиться подключение. По умолчанию 7777
- -n или --name. Имя пользователя в системе. По умолчанию не задан. Если не указать данный параметр, программа при запуске запросит имя пользователя для авторизации в системе.
После запуска приложения будет произведена попытка установить соединение с сервером.
В случае удачи будет выведена справка по внутренним командам приложения:
- message отправить сообщение. После ввода команды приложение запросит имя получателя и само сообщение,
- help повторно выводит справку о командах приложения,
- exit завершает работу приложения.
-
Серверный модуль - server.py
Модуль обеспечивает пересылку сообщений поступаемых от клиентов адресатам. Сообщения обрабатываются на сервере и отправляются только адресату.
Поддерживаются опции командной строки:
- Номер порта. Номер порта на котором сервер будет принимать входящие подключения. По умолчанию 7777,
- Адрес. Адрес с которого сервер будет принимать подключения. По умолчанию слушаются все адреса.
После запуска сервера никакие дополнительные действия не требуются.
katerinkaivanova / python-console-messenger Goto Github PK
View Code? Open in Web Editor NEWКонсольный мессенджер. Приём и отправка сообщений с помощью потоков в P2P-формате (на клиентской стороне).