Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Fetch Camera Info Script

Описание

Скрипт разработан для внутреннего использования в специфичных условиях в организации, связанной с видеонаблюдением. Он позволяет собирать наиболее важную информацию по камерам, переданных в аргументе при выполнении скрипта. До создания скрипта вся информация собиралась вручную с использованием прямых подключений к базам и работой с SQL-запросами.

Установка

Установка из данного репозитория не предусматривается и код опубликован лишь для демонстрации.

Принцип работы

При запуске скрипта на вход передается одна или несколько камер через пробел. Примеры запуска:

python fetch_camera_info.py -c CAMERA_NAME
python fetch_camera_info.py --camera CAMERA_NAME
python fetch_camera_info.py -c CAMERA_NAME CAMERA_NAME_2

После запуска пользователю дается интерактивный выбор проекта из списка проектов, который заранее прописан в projects.json

Функция выбора проекта обуславливается внутриорганизационной структурой, так как базы данных с информацией по камерам для каждого проекта свои собственные.

Организация списка проектов в JSON была выбрана из-за, в первую очередь, локального хранения данных и отсутствия сетевой зависимости.

После выбора проекта пользователем скрипт парсит JSON список проектов и находит информацию для подключения к базам данных указанного проекта. Далее с полученными данными скрипт выполняет подключение к базам и находит информацию по камере.

В данном скрипте неоптимизированы подключения к базам, а конкретно скрипт работает по принципу '1 камера = 1 подключение', хотя с логической точки зрения все камеры принадлежат к одному проекту и было бы быстрее работать по принципу '1 камера = 1 запрос'. Я не стал исправлять данный недочет, так как применил решение в другом, связанном с таким функционалом, проекте.

После получения всех данных, скрипт выводит в терминал список камер и информацию по ним в удобном для вставки на Redmine виде.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages