Skip to content

Клиент-серверное приложение для получения списка кораблей, соединенное gRPC

Notifications You must be signed in to change notification settings

graiendor/space_reports

Repository files navigation

space_reports

Клиент-серверное приложение для получения списка кораблей, соединенное gRPC

Функционал

Сервер ожидает запроса от клиента. Как только приходит запрос с координатами - случайно генерирует корабли согласно enum классу Spaceship:

alignment: Alignment
name: str
vessel_class: Vessel_class
length: float
size: int
armed: bool
officers: list[dict[str, str]]

Клиент первой версии всего лишь выводить корабли в формате json

Второй - осуществляет их отбраковку с помощью pydantic

Третьей - осуществляет добавление полученных кораблей в базу данных. Также позволяет обнаружить предателей (офицеров, которые присутствуют одновременно и на вражеском, и на союзном кораблях) и вывести их список.

Запуск

make build - формирует прото файлы

make server - запускает сервер

python3 reporting_client_* [options] - запускает клиент 1, 2 или 3.

В случае первого и второго необходимо подать координаты в формате: [int] [int] [float] [int] [int] [float] В случае третьего нужно либо добавить перед ними scan либо подать list_of_traitors

About

Клиент-серверное приложение для получения списка кораблей, соединенное gRPC

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published