Разработать почти IP-KVM с джойстиком, но без видео (тендер № 2345)
Специализация:
|
Статус тендера:
Закрыт
|
Описание задания:
Разработка клиент-серверного программного решения, предназначенного для удаленного управления различными устройствами и механизмами по USB:
- клавиатура (104 клавиши),
- мышь (3 кнопки + скролл),
- геймпад (16 кнопок, Xbox 360).
Разрабатываемое программное решение является аналогом IP-KVM-устройств, но без видео и с более широким профилем применения.
Клиент – классическое, консольное, «оконное» приложение, разработанное с использованием кроссплатформенного фреймворка. Фреймворк исполнитель вправе выбирать самостоятельно (желательно Kivy, но последнее слово – за вами).
Сценарий работы: пользователь производит манипуляции с устройствами ввода (нажимает кнопки на клавиатуре, двигает и кликает мышью, нажимает кнопки геймпада и двигает его джойстики). Клиентское ПО преобразовывает (на основании словаря) события фреймворка в байт-код, для дальнейшей записи в виртуальное устройство на сервере. Байт-код передается на сервер по протоколу TCP. Каждое захваченное событие инициирует отдельную передачу состояния устройства клиента, т.е. если зажата кнопка Shift, например, то не должно формироваться непрерывного потока событий, состояние одновременно зажатых кнопок должно отправляться однократно при наступлении уникальных событий.
В связи с разнообразием геймпадов на рынке, в клиентском ПО необходимо реализовать режим «обучения»/калибровки, который позволяет пользователю, выполняющему удаленное управление, сформировать словарь сопоставлений (маппинг) событий фреймворка (действий) с байт-кодами.
Сервер – приложение, разработанное на языке Python для одноплатного компьютера (Single-Board Computer) на архитектуре ARM, с возможностью эмуляции USB HID устройств ввода (RockPi, Raspberry Pi и аналоги). Осуществляет прием запросов, валидирует и записывает байт-коды в виртуальное устройство, созданное на базе USB Gadget API for Linux. Для каждого типа устройств должен быть согласован формат передаваемого запроса.
Для возможности диагностики возникающих проблем, клиент и сервер должны иметь возможность записывать все события в локальный файл журнала.
При необходимости, исполнителю будут переданы наработанные материалы (ссылки) по реализации вышеперечисленного функционала.
|
Ориентировочная стоимость:
30000
|
Тип субъекта:
Физическое лицо
|
Варианты оплаты:
Без предоплаты
|
Место работы:
Дистанционно
|
Дата публикации:
04.09.2021 16:00
|
Чтобы между ЗАКАЗЧИКОМ и ИСПОЛНИТЕЛЕМ было достигнуто полное ВЗАИМОПОНИМАНИЕ, посмотрите этот видеоролик.
Если вы фрилансер, получаете деньги за свои услуги, то пользоваться традиционными сервисами не всегда удобно, например, получить деньги из заграницы от зарубежного заказчика, сейчас практически не реально. В данном случае, выгодно воспользоваться обменными пунктами, где меньше ограничений, лучший курс и скидки. Согласны? На bestchange.ru представлены именно такие обменные пункты, обладающие безупречной репутацией, решающие любые вопросы на раз-два-три. Более 400 проверенных обменных онлайн-сервисов в одном месте — bestchange.ru
Место для Вашей рекламы ;) Хотите разместить рекламу ваших услуг, сервиса или компании в данном месте?
7 дней — 1500 руб.; 14 дней — 2700 руб.; 30 дней — 5700 руб.
Пишите на почту: freten.site@yandex.ru