github.com/e154/smart-home@v0.17.2-0.20240311175135-e530a6e5cd45/doc/content/ru/docs/plugins/onvif.md (about) 1 2 --- 3 title: "Plugin ONVIF" 4 linkTitle: "onvif" 5 date: 2024-01-04 6 description: > 7 8 --- 9 10 Проект Smart Home предоставляет плагин ONVIF, который обеспечивает возможность взаимодействия с камерами наблюдения по протоколу ONVIF. Данный плагин реализует несколько методов JavaScript, предназначенных для управления камерами и получения снимков. 11 12 #### Методы JavaScript 13 14 1. **`Camera.continuousMove(X, Y)`**: Этот метод позволяет осуществлять плавное движение камеры по координатам X и Y. 15 16 2. **`Camera.stopContinuousMove()`**: Данный метод останавливает непрерывное движение камеры. 17 18 3. **`OnvifGetSnapshotUri(entityId)`**: Метод для получения URI снимка для указанного идентификатора устройства. 19 20 4. **`DownloadSnapshot(entityId)`**: Метод для загрузки снимка с устройства по его идентификатору. 21 22 #### Статус устройства 23 24 - **`motion` (тип: Boolean)**: Статус, отображающий наличие движения, определенного камерой наблюдения. 25 26 #### Настройки устройства 27 28 - **`address` (тип: String)**: IP-адрес камеры наблюдения. 29 30 - **`onvifPort` (тип: Int)**: Порт для соединения с камерой по протоколу ONVIF. 31 32 - **`rtspPort` (тип: Int)**: Порт для передачи видео по протоколу RTSP. 33 34 - **`userName` (тип: String)**: Имя пользователя для аутентификации при доступе к камере. 35 36 - **`password` (тип: Encrypted)**: Зашифрованный пароль для аутентификации. 37 38 - **`requireAuthorization` (тип: Bool)**: Флаг, указывающий, требуется ли авторизация для взаимодействия с камерой. 39 40 #### Команды управления 41 42 - **`continuousMove`**: Команда для запуска непрерывного движения камеры. 43 44 - **`stopContinuousMove`**: Команда для остановки непрерывного движения камеры. 45 46 #### Статусы устройства 47 48 - **`connected`**: Устройство успешно подключено и готово к работе. 49 50 - **`offline`**: Устройство недоступно или отключено от системы. 51 52 Эти функции позволяют интегрировать камеры наблюдения в систему Smart Home и эффективно управлять ими через плагин ONVIF. 53 54 Пример использования плагина "onvif" для реализации управления камерой: 55 56 ```javascript 57 continuousMove = function (args) { 58 var X, Y; 59 X = args['X'] || 0; 60 Y = args['Y'] || 0; 61 if (Math.abs(X) > Math.abs(Y)) { 62 Y = 0; 63 } else { 64 X = 0; 65 } 66 return Camera.continuousMove(X, Y); 67 }; 68 69 stopStop = function (args) { 70 return Camera.stopContinuousMove(); 71 }; 72 73 ```