Skip to content

MaximDmitrievich/RostelekomAutoBackend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RostelekomAutoBackend

Rostelekom Auto Backend

Дополнительные Github-репозитории

  1. iOS application

Проблематика

На сегодняшний день в городах остро стоит проблема нехватки парковочных мест. Водители при отсутствии парковочных мест оставляют автомобили на тротуарах, газонах, проезжей части, создавая препятствия на пути других участников дорожного движения, мешая работе экстренных служб и т.д.

Входные условия

Около каждого жилого многоэтажного дома, имеется неогороженная территория, которая может быть использована под парковку автотранспортных легковых средств. Камеры ТСЖ производят видеосъемку придомовой парковочной территории и высылают данные на центральный сервер ЖКУ с интервалом 1 раз в 5 минут.

В область видимости попадают все парковочные места, прилегающие к дому. Часть парковочных мест не имеет разметки на асфальте. Парковочные места не могут быть выделены на местах, зарезервированных под экстренные службы (напротив подъезда). Съемке не препятствуют посторонние предметы (листва деревьев, столбы напротив камеры, освещение и т.д.)

Описание кейса

Задача:

  1. Требуется реализовать серверное приложение, которое будет считывать с сервера ТСЖ фотографии, выявлять на фотографиях свободные парковочные места.

  2. Требуется реализовать мобильное приложение, которое содержит:

    • функционал авторизации жильца дома (логин, пароль, полученные от ЖКУ, в момент подписания договора на предоставление платной услуги).
    • интерфейс геокарты, отображающий свободные парковочные места
    • экран с формой заявки в техническую поддержку, состоящий из полей:
      • выбор категории (выпадающий список: ошибка в приложении, свободное место занято)
      • поле многострочного ввода (не более 1000 символов)
      • кнопка «Отправить» (при нажатии, отправить e-mail сообщение на эл-адрес техподдержки)

Цель приложения — помочь жильцам комфортно найти свободное место за меньшее количество времени. В густозаселенных пунктах, например, Долгопрудный или Зеленоград, для парковки требуется потратить час, а то и больше, чтобы найти где оставить машину, объездив все дворы. Приложение позволит сократить затраты времени на это мероприятие, без необходимости установки платного шлагбаума. Приложение должно быстро и корректно работать на мобильных операционных системах iOS/Android, иметь удобный и интуитивно понятный интерфейс.

Back-End

  1. Язык: Python
  2. Основные библиотеки:
    • aiohttp
    • aiortc
    • open-cv
    • geojson
  3. Dev-Ops
    • docker
    • docker-compose for test
    • kubernetes for prod

Описание API

Базовый url http(s)://{hostid}.ngrok.io/

По координатам

Request:

GET /geocontroller/coords?long={decimal}&lat={decimal}&max_radius={double}
HTTP/1.1 200 OK
Status 200 OK
Content-Type: application/json

Body:
[
    {
        "long": 37.626466,
        "lat": 55.812488,
        "free_places": 4
    }
]

По адресу

GET /geocontroller/address?address={str}&max_radius={double}
HTTP/1.1 200 OK
Status 200 OK
Content-Type: application/json

Body:
[
    {
        "long": 37.626466,
        "lat": 55.812488,
        "free_places": 4
    }
]

About

Rostelekom Auto Backend

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published