Умный домофон Сокол Плюс

В данном разделе вы найдете всю информацию о новом умном домофоне Сокол Плюс, инструкции по подключению и настройке, а также API и актуальные прошивки.

Общая информация

Сокол Плюс — гибридная домофонная панель нового поколения с прочным цельнометаллическим корпусом, способная работать в самых суровых температурных условиях от -50 до +50°С.

 

API документация размещена по ссылке.

 

Габаритные размеры: 292х99x6 мм (толщина указана при врезном монтаже)

ДОМЧЕГ.png

Технические требования:

Что нужно для подключения?

Паспорт умного домофона Сокол Плюс (rev. 5)

1. Общая информация

Многоабонентский домофон ISCOM X1 rev.5 (торговое название — Сокол Плюс) предназначен для организации санкционированного доступа в жилые многоквартирные здания, офисные помещения.

Домофон позволяет осуществлять видеонаблюдение за пространством перед входной дверью, поддерживать голосовую и видеосвязь с посетителем, имеет встроенную ИК подсветку, детектор движения, OSD с настройкой.

Домофон подключается к сети Интернет и с помощью установленного приложения на смартфоне абонента позволяет осуществлять видеосвязь с посетителем. Аудио и видео передается с использованием протокола SIP, RTSP. Имеет RFID-считыватель Mifare. Открытие двери осуществляется по беспроводным RFID-меткам либо по команде API. К домофону, помимо основного выхода, имеется возможность подключения дополнительного выхода.  Управление основным выходом осуществляется через встроенную плату управления замком (магнит-домофон). Управление дополнительным выходом осуществляется за счет возможности подключения внешней платы управления замком. 

Домофон имеет металлический антивандальный пыле- и влагозащищенный корпус. 

Домофон в своем конструктиве имеет оптический тампер, который сообщает о тревоге в случае вскрытия корпуса устройства, снятия его с крепления или отрыва от поверхности. 

Устройство имеет большой диапазон питания, а также, возможность измерения и подстройки напряжения входного питания.

Устройство может быть установлено как на улице, так и внутри помещения.  Диапазон рабочих температур от - 50 до + 50 °С, допустимая относительная влажность 75 % при температуре + 15 °С.

2. Комплектность

Домофон изготовлен как моноблочное устройство, включающее: кнопочную клавиатуру, дисплей, микрофон, динамик, видеокамеру, считыватель ключей RFID, светодиодный индикатор, отображающий рабочий режим устройства, блоки разъемов для подключения вызывных панелей и электропитания.

Панель выполнена из прочного алюминиевого сплава, все элементы панели имеют скрытое исполнение, что обеспечивает высокие антивандальные свойства.

3. Технические характеристики

Назначение Полнофункциональный IP-домофон
Исполнение Моноблок
Считыватель/ключи RFID-считыватель MIFARE. Возможность подключения внешнего считывателя Wiegand
Дисплей 6-символьный 14-сегментный светодиодный дисплей с адаптивной яркостью свечения. Предусмотрена возможность подключения OLED-дисплея (опция)
ЭКСПЛУАТАЦИЯ
Блок питания

9-27В 5А (DC)
Рекомендуется подавать по ШВВП 2х0.75 (до 25м) или ПВС 2х1.5 (более 25м).

Кабель для протяжки абонентского стояка — КСПВ 10х0,5 или 20х0,5 (при этажности свыше 5 этажей).

Поддерживаемые коммутаторы

Домофон поддерживает одновременное подключение до четырех координатно-матричных коммутаторов (ККМ Визит — до трех).

Аналоговые:

Рекомендуемые:
Цифрал КМГ-100
Beward ККМ-100S2

Протестированы и поддерживаются:
Визит БК-4
Визит БК-10
Визит БК-100М
Метаком COM 80 U
Метаком COM 80 UD
Элтис КМ100-7.2

Цифровые:

Даксис ДП-К2Д

Поддерживаемые трубки

Аналоговые:

Рекомендуемые:
Цифрал КМ-2НО

Протестированы и поддерживаются:
Vizit УКП-7, Vizit УКП-12, Факториал

Цифровые:

Laskomex LM-8D

Потребляемая мощность Не более 12 Вт
Рабочий диапазон температур от -50 до +50 °C
Класс защиты IP66, IK08
Корпус Металлический антивандальный корпус и антивандальная герметичная клавиатура с подсветкой
Вес (нетто) 800 гр
Габаритные размеры 293,6 х 98,9 х 43 мм
293,6 х 98,9 х 6 мм (при врезном монтаже)
Количество ключей 25000 (7 байт)
Количество абонентов 10000 квартир
СЕТЬ И ИНТЕРФЕЙСЫ
Сетевой интерфейс 10BASE-T/100BASE-TX
Поддерживаемые протоколы передачи данных и управления TCP/IP, SIP v.2.0, HTTP, DDNS, DHCP, RTSP, UDP, NTP, TCP, ICMP, ARP, IGMP, FTP, DNS, IPv4, RTP
Соединение DHCP, статический адрес
Разъемы и интерфейсы

RJ45 - для подключения сети (кабель для подключения — витая пара (UTP 4PR 24AWG, CU, CAT5e) или патчкорд)

Клеммный терминал:

  •  5 контактный - для подключения питания и управление замком; 
  • 10 контактный - для подключения периферии (коммутаторы до 3шт, кнопка выхода, подсветка кнопки выход);
  • 12 контактный - для подключения аналогового выхода (при наличии опции), дополнительного считывателя Wegand, внешней платы для управления вторым выходом;
  • 5 контактный для подключения прочей периферии
Аналоговый видеовыход NTSC 976x494 (доп.опция)
Дополнительно Поддержка внешних считывателей стандарта Wiegand-26, 34, 36, 40, 42, 56, 58, 64.
Наличие отдельного выхода для подключения периферии 
КАМЕРА
Камера HD-камера Goke k7205V300 5 Мп, фиксированный широкоугольный объектив 110 градусов по горизонтали
Разрешение 2 Мп (при использовании более одного потока)
Сенсор 1/2.8” ultra low lux CMOS sensor
Особенности камеры Изображение высокого качества даже в сложных условиях освещенности с технологией 2D/3DNR-шумоподавления, поддержка ONVIF, технология компенсации засветки HLC, BLC
Ночная съемка ИК-подсветка с дальностью до 10 м, интеллектуальная ИК-подсветка (smart IR) без засветки объектов в диапазоне от 0,1 до 5 м, светочувствительная матрица (не более 0,01 лк (цветное) и 0,001 лк (черно-белое))
Дополнительно Детектор движения; технология расширенного динамического диапазона: WDR

КМОП-матрица

1/2.8”
ВИДЕО
Формат видео Н.264 (High Main and Baseline)
Разрешение (основной и дополнительный потоки) 1080p, 720p, 576p, 480p, 360p
Скорость кадров До 30к/с в зависимости от выбранного разрешения
Поддерживаемый диапазон битрейта

32 Кбит/с‐6144 Кбит/с, значение по умолчанию ‐ 1536 Кбит/с (с шагом 512 Кбит/с)

Технология компенсации засветки

WDR, BLC, HLC (реализована заводская калибровка без возможности внешней настройки)

Дополнительно Поддержка битрейта в формате CBR с вариацией: +-10%;
ЗВУК
Звук Встроенный динамик и микрофон с программной обработкой аудиосигнала и системой эхоподавления
Компрессия G.711 (a-law, u-law), AAC
Передача данных Аудио в дуплекс формате и видео передается с использованием протокола SIP, RTP поверх TCP, присутствуют механизмы эхо- и шумоподавления
ДОПОЛНИТЕЛЬНО
Количество одновременных видеопотоков до 5
Программируемые кнопки SOS и Консьерж
Голосовые оповещения

Проигрывание заранее записанных на домофон звуковых сообщений в момент входа/выхода

Отображение титров (OSD)

Отображение до трех строк (текст, дата, время)

Соответствие спецификациям

ONVIF

4. Общий вид

rev5.jpg

Рисунок 1 — Общий вид устройства.

5. Функционал

5.1. Аналоговые функции

5.2. Цифровые функции

6. Требования безопасности

По безопасности домофон соответствует требованию Технического регламента Таможенного союза «Электромагнитная совместимость технических средств» (ТР ТС 020/2011).

Все работы с домофоном (установка, обслуживание) должны выполняться только при ОТКЛЮЧЕНИИ ПИТАНИЯ.

Включение всех устройств в сеть 230В производится после монтажа всей системы. Окончательная установка всей системы проводится после проверки ее работоспособности.

Запрещается:

7. Подготовка к использованию

Перед включением оборудования внимательно ознакомьтесь с Инструкцией по подключению и эксплуатации

Помните, что неправильная установка и настройка оборудования может привести к нарушениям работоспособности и выходу из строя!

7.1. Установка

Для обеспечения надежной работы домофона следует использовать стабилизированный источник с напряжением постоянного тока 9-27 В.

Домофон состоит из лицевой панели и монтажного кожуха, тыльная сторона которого монтируется в специально подготовленную нишу в стене здания или неподвижной створке двериМожно воспользоваться трафаретом

Рекомендуемая высота установки домофона —  158+/5 см до верхнего края. Не рекомендуется устанавливать домофон на подвижной части двери, так как это может привести к смещению видеомодуля.

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

При монтаже домофона избегайте попадания посторонних частиц в прорези зон динамика и микрофона. Это может привести к искажению звука.

7.2. Подключение

Подключение периферийных устройств (коммутаторы, кнопка выхода со стороны подъезда) осуществляется через клеммные колодки, расположенные на тыльной стороне кожуха. Маркировка клемм для подключения изображена ниже (Рисунок 2).

схема расключения.png

Рисунок 2 — Маркировка клемм для подключения кабелей.

Подсоединение проводов может выполняться только при выключенном питании.

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

Рекомендации по монтажу линии связи:

7.3. Настройка

После проверки всех соединений можно подключать электропитание. Блок питания должен соответствовать требованиям, указанным в разделе «7.1. Установка».

Затем необходимо провести все проверки и настроить домофон через web-интерфейс в соответствии с инструкцией по эксплуатации.

7.4. Обслуживание

Перед тем, как проводить периодическое обслуживание, отключите домофон от электросети.

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

8. Технические неисправности и методы их устранения

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

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

9. Транспортировка, хранение и срок службы

Условия транспортирования изделий — по группе Ж ГОСТ 23216, а в части воздействия климатических факторов, по группе 5 (ОЖ4) ГОСТ 15150.

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

Хранение готовой продукции осуществляют в упаковке, в закрытых  помещениях с естественной вентиляцией без искусственно регулируемых климатических условий по группе 3 (Ж) по ГОСТ 15150 в диапазоне температур от - 50 °С до +50 °С и относительной влажности 52% при +25 °С в условиях, исключающих воздействие прямых солнечных лучей, атмосферных осадков, кислотных, щелочных и других примесей, материалов, являющихся источниками агрессивных паров, а также других агрессивных сред.

Срок службы — не менее 10 лет.

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

К критериям предельного состояния домофона, при котором не допускается дальнейшая эксплуатации относятся: 

Для предотвращения нанесения вреда окружающей среде, здоровью человека при утилизации к домофону предъявляются следующие требования: домофон утилизировать, рассортировать детали по видам материалов и направить на утилизацию.

10. Комплект поставки

11. Гарантийные обязательства

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

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

Производитель обеспечивает гарантию на срок 12 месяцев со дня покупки, но не более 18 месяцев со дня изготовления. Гарантия распространяется только на производственный брак. Гарантийным случаем считается отсутствие следов вскрытия панели и повреждения гарантийной пломбы, расположенной на месте крепления/соединения лицевой и задней крышки. Гарантия не распространяется на повреждения, возникшие в результате нарушения порядка подключения или эксплуатации устройства, отсутствия технического обслуживания, несоблюдения покупателем правил транспортировки и хранения, при обнаружении на изделии следов постороннего вмешательства, самостоятельного ремонта, при обнаружении несанкционированных изменений конструкции изделия, если изделие эксплуатировалось не в соответствии со своими целевым предназначением или в условиях, для которых оно не предназначено, а также если обнаружены повреждения изделия, вызванные неправильным подключением к источнику электропитания.

Производитель устанавливает срок службы на данное изделие в течение 10 лет со дня продажи при условии соблюдения покупателем правил транспортирования, хранения, подключения и эксплуатации, изложенных в настоящем Паспорте устройства, а также в Инструкции по подключению и эксплуатации.

Сохраняйте в течение срока службы документы, прилагаемые к изделию при его продаже (накладные, паспорт, чек).

Производитель не несет ответственности за:

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

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

Более подробная информация о техническом обслуживании размещена по ссылке.

12. Сведения об утилизации

Домофоны относятся к малоопасным твердым бытовым отходам и подлежат утилизации в соответствии с ГОСТ Р 55102.

Для предотвращения нанесения вреда окружающей среде, здоровью человека при утилизации к домофону предъявляются следующие требования: домофон утилизировать, рассортировать детали по видам материалов и направить на утилизацию.

13. Сертификаты и другая разрешительная документация

14. Контакты производителя

ООО фирма «Интерсвязь»
г. Челябинск, пр. Победы, 288, оф.702
тел.: +7 (351) 7777777
e-mail: info@domofon-sokol.ru

Обновление прошивки

Обновление прошивки

Что нового? [Firmware]

2.5.0.11.2 — 20.12.2024

Прошивка 2.5.0.11.2

Ссылка на файлы прошивки: https://www.is74.ru/upload/domofonsokol/firmware/x5/2.5.0.11.2.zip
Ссылка для обновления: http://firmware.domofon-sokol.ru/X5/2.5.0.11.2/

Актуальный API можно скачать на странице API-документация

Рекомендуем сначала обновиться до версии 2.5.0.10.13 по прописанному в документации алгоритму. После этого — обновиться на данную прошивку 2.5.0.11.2 стандартным способом.

#Web-Интерфейс

#SIP-клиент

#RTSP-сервер

## HTTP-сервер

#Обновление прошивки

#Микроконтроллер

Режим шифрования SL3 доступен на определенных партиях домофона

2.5.0.10.13 — 12.09.2024

Прошивка 2.5.0.10.13

Ссылка на файлы прошивки: https://www.is74.ru/upload/domofonsokol/firmware/x5/2.5.0.10.13.zip
Ссылка для обновления: http://firmware.domofon-sokol.ru/X5/2.5.0.10.13/

Актуальный API можно скачать на странице API-документация

Обновление на данную версию прошивки возможно НАЧИНАЯ С ВЕРСИИ 2.5.0.6.5

ВАЖНО! Данная версия прошивки является переходной и предназначена для устранения возможных проблем с зависанием панели при обновлении.
ОБЯЗАТЕЛЬНО обновитесь на данную версию прошивки перед обновлением на последующие версии.

Алгоритм действий при обновлении на данную версию прошивки

  1. Перезагрузить панель;
  2. Запустить обновление только на раздел OPT:
    • через API — opt;

      {
      "url": "http://firmware.domofon-sokol.ru/X5/2.5.0.10.13",
      "mcu": false,
      "opt": true,
      "media": false,
      "rootfs": false
      }
    • через web-интерфейс — Обновить приложения;

      image.png

  3. Проверить, что версия раздела OPT соответствует данной: 2.5.0.10.13
    • Если соответствует, перейти к пункту 4;
    • Если не соответствует, повторить пункты 1 и 2;
  4. Запустить обычное обновление устройства.

Если во время прошивки через web-интерфейс вы получаете ошибку "Ошибка при проверке подлинности файла /tmp/complex/firmware.bin", то обновление необходимо запустить через API или обратиться за помощью к инженерам группы поддержки

#Web-Интерфейс

#SIP-клиент

#RTSP-сервер

## HTTP-сервер

ВАЖНО! После обновления будет работать только метод "/v3/system/upgrade"

#UART-клиент

#Обновление прошивки

#Микроконтроллер

2.5.9.0.4 — 18.07.2024

Прошивка 2.5.0.9.4

Ссылка на файлы прошивки: https://www.is74.ru/upload/domofonsokol/firmware/x5/2.5.0.9.4.zip
Ссылка для обновления: http://firmware.domofon-sokol.ru/X5/2.5.0.9.4/

Актуальный API можно скачать на странице API-документация

#WEB-интерфейс

Было:  /v2/camera/osd
Стало: /v3/camera/osd
Было:  /v2/system/upgrade
Стало: /v3/system/upgrade
Порог выключения: 200.000
Порог включения: 1.500.000 

#SIP-клиент

#RTSP-сервер

#HTTP-сервер

[GET,PUT] /relay/door_controller
{
    "timeout": 170,                   - таймаут опроса модулей
    "busErrors": 2,                   - кол-во ошибок на линии RS-485;
    "modules": [                      - список модулей
        {                               - ...
            "type": "NCS102",             - наименование модуля;
            "enabled": true,              - состояние опроса модуля;
            "address": 0,                 - адрес модуля на шине RS-485;
            "version": "1.2.1.11.5",      - версия программного обеспечения;
            "openTime": 9,                - время открытия двери; 
            "button": false,              - состояние кнопки открытия;
            "tamper": false,              - состояние датчика открытия;
            "alwaysOpen": false,          - режим "Двери постоянно открыты";
            "errors": 0                   - кол-во ошибок при взаимодействии с модулем;
        }
    ]
}
[GET/PUT] /v3/system/upgrade
[GET/PUT/DELETE] - /openCode/settings
{
    "commonCode": {      - Параметры общего кода открытия;
        "enable": false,   - Флаг включения;
        "value": 12349     - Значение;
    }
}

#Микроконтроллер

2.5.0.6.5 — 22.05.2024

Прошивка 2.5.0.6.5

Ссылка на файлы прошивки: https://www.is74.ru/upload/domofonsokol/firmware/x5/2.5.0.6.5.zip
Ссылка для обновления: http://firmware.domofon-sokol.ru/X5/2.5.0.6.5/

Актуальный API можно скачать на странице API-документация

#SIP-клиент

#Микроконтроллер

ВАЖНО! Старый формат логов открытия дверей станет недоступным

#WEB-интерфейс

#HTTP-сервер

#RTSP-сервер

2.5.0.4.3 — 01.04.2024

Прошивка 2.5.0.4.3

Ссылка на файлы прошивки: https://www.is74.ru/upload/domofonsokol/firmware/x5/2.5.0.4.3.zip
Ссылка для обновления: http://firmware.domofon-sokol.ru/X5/2.5.0.4.3/

Актуальный API можно скачать на странице API-документация

#SIP-клиент

#HTTP-сервер

#Микроконтроллер

#WEB-интерфейс

#RTSP-сервер

Обновление прошивки

Инструкция по обновлению прошивки

Для домофона Сокол доступно два варианта обновления:

1. Через собственный http-сервер 

Инструкция для Linux

Важно, чтобы сервер работал по протоколу http, а не https. 

1.1. Если на Вашем сервере не установлен python, то рекомендуем установить python3, если же python установлен, то для запуска скрипта использовать Вашу версию python. 

Установите python3 с помощью команды:

sudo apt install python3

1.2. Скачайте файлы прошивки со страницы Что нового rev.5? [Firmware]

1.3. Создайте папку с помощью команды:

mkdir /srv/tftp/ISComX1

1.4. Распакуйте архив с прошивкой в эту папку (пример пути после распаковки: /srv/tftp/ISComX1/2.5.0.4.3)

1.4.1. Переходим в папку где лежат прошивки и запускаем http сервер:

python3 -m http.server

1.5. Зайдите в web-интерфейс панели в раздел Система->Обновление

1.6. Нажмите обновить

1.7. Для отслеживания обновления подключитесь к панели по telnet и введите команду:

tail -f /tmp/complex.Logs (до версий 2.5.6.х включительно)

или

tail -f /tmp/iscom/log/upgrade.log (начиная с версий 2.5.7.х)

1.8. По окончанию обновления панель перезагрузится

ВАЖНО: ни в коем случае не отключайте домофон от сети во время обновления.

2. Сервер компании Интерсвязь (в случае, если панель имеет доступ в Интернет): http://firmware.domofon-sokol.ru/

2.1. Зайдите в web-интерфейс умного домофона и перейдите в раздел «Система» -> «Обновление».

2.2. В поле «Путь до папки с файлами на http сервере:» укажите http://{адрес}:{порт}/{ревизия устройства x5}/{версия прошивки}

Например:

    - http://firmware.domofon-sokol.ru/X5/2.5.0.4.3, где 2.5.0.4.3 — версия прошивки, на которую вы хотите обновиться.

    - http://192.168.0.101:8000/2.5.0.4.3 (пример заполнения на панели при условии, что http запущен на Linux с помощью команды python3 -m http.server)

2.3. После запуска обновления в течение 30 секунд на экране будет светиться надпись "boot". Это означает, что обновление запущено.

2.4. Примерное время обновления устройства 2 минуты. После завершения обновления панель перегрузится и после этого будет готова к работе.

ВАЖНО: ни в коем случае не отключайте домофон от сети во время обновления.

Ремонт и техническое обслуживание

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

Сопутствующие документы и примеры их заполнения

Документ Назначение
Приложение №1_Акт рекламации.docx Заполняется Заказчиком при обнаружении проблемы с устройством до истечения гарантийного срока на оборудование.

Заполненный акт направляется по электронной почте: innovation@intersvyaz.net

Образец заполнения.
Приложение №1.1_Заказ.docx Заполняется Заказчиком при обнаружении проблемы с устройством после истечения гарантийного срока на оборудование.

Заполненный акт направляется по электронной почте: innovation@intersvyaz.net

Образец заполнения.
Приложение_№2_Акт_выявленных_дефектов.docx Заполняется Исполнителем после выполнения работ до истечения гарантийного срока на оборудование.
Приложение_№3_Акт_о_вып_ремонтных_работах.docx Заполняется Исполнителем после выполнения работ после истечения гарантийного срока на оборудование. На акте требуется подпись и печать Заказчика.

Инструкции по монтажу и эксплуатации

Инструкции по монтажу и эксплуатации

Предмонтаж, монтаж и подключение домофона

Список поддерживаемого оборудования можно найти в паспорте устройства.

1. Предмонтаж

Проложить кабель UTP (4-х парный), кабель ШВВП или ПВС от блока вызова домофона (БВД) до точки подключения домофона (например: до слаботочного щитка). 
Прокладывать кабели необходимо максимально скрыто. Также нужно проложить кабель UTP до точки подключения к сети Ethernet.

Прокладку кабеля по «входной группе» тамбуру до блока вызова домофона (БВД) сделать защищенной и незаметной.

Если невозможно проложить кабель внутри металлической двери, то предстоит сделать это другим вандалозащищенным способом.

2. Монтаж вызывной панели

Обесточить старую вызывную панель. Убедиться, что отсутствует напряжение на проводах. Аккуратно отключить провода от вызывной панели, открутить панель и вынуть из двери.

Установить новую панель на место старой. Рекомендуемая высота установки – 150 (+-5) см от пола до камеры.
Ниже изображена общая схема колодок панели «Сокол Плюс» (Рисунок 1).

image.png

Рисунок 1 — Общая схема клеммных колодок панели «Сокол Плюс».

Размер монтажного отверстия и лекало для монтажа можно найти на этой странице.

2.1. Подключение вызывной панели

Контакт «1» РЕ (Земля) колодки 1 используется для заземления домофона на корпус двери. Необходимо соединить проводом ШВВП (плоский кабель для подключения техники) соответствующий контакт с корпусом двери, обеспечив надежный контакт (очистить от ржавчины и краски место заземления на корпусе двери, провод заземления должен быть надежно прикреплен к корпусу двери).

Подключите основное питание домофона проводом ШВВП (плоский кабель для подключения техники) или ПВС (силовой гибкий провод) в контакты «2» (+12VDC) и «3» (-12VDC) (Рисунок 2).

а®бг≠Ѓ™_12.png

Рисунок 2 — Подключение контактов «1», «2», «3» в нижней клеммной колодке.

Подключение магнита и кнопки «Вход» к домофону осуществляется непосредственно на колодках 1 и 2. Замок подключается к контактам 4 и 5 колодки 1, кнопка – к контактам 7 (Кнопка) и 8 (Общий) на колодке 2.

а®бг≠Ѓ™_13.png

Рисунок 3 — Подключение магнита и кнопки «Вход».

3. Работа в слаботочном щитке

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

Отсоедините от коммутатора провода «Десятки» и «Единицы». В той же последовательности подключите их к новому домофонному коммутатору. 
Шина десятков и шина единиц используются для подключения на абонентском коммутаторе (ККМ) домофонных трубок. 

Абонентские трубки имеют полярность: «+» (плюсовой) контакт всегда «Десяток», «-» (минусовой) всегда «Единица». 

Неверное подключение одной трубки вызывает некорректную работу домофонных вызовов на трубки по всему подъезду.

Подключите провод с «плюсовой» клеммы блока питания в разъем U+ на коммутаторе. Также подключите провод питания ПВС (силовой гибкий провод) или ШВВП (плоский кабель для подключения техники) от домофона, соблюдая полярность.

Подключите провода до коммутатора по схемам ниже в указанные контакты, места соединения проводов надежно изолируйте.

Схемы подключения различных коммутаторов размещены по ссылке.

После подключения необходимо провести проверку напряжения с помощью мультиметра для определения напряжения на панели «Сокол Плюс» (следует измерять на первой клеммной колодке, а не на блоке питания).

Рабочий диапазон напряжения панели 10-30V DC.

4. Проверка вызывной панели

После монтажа при необходимости произведите настройку домофона через web-интерфейс и проверьте работоспособность дополнительного оборудования:

Инструкции по монтажу и эксплуатации

Шаблон для лекала для монтажа домофона Сокол Плюс

Для ускорения процесса монтажа умного домофона Сокол Плюс на подъезд можно изготовить лекало.

На изображении указаны расстояния между монтажными отверстиями и размер выреза.

telegram-cloud-photo-size-2-5373090558328819125-y.jpg

Инструкции по монтажу и эксплуатации

Схемы подключения коммутаторов

1. Аналоговые коммутаторы

1.1. Cyfral / Beward / Eltis

image.png

1.1.1 Cyfral от блока питания

Коммутатору Cyfral иногда требует больше напряжения, чем может выдать панель (до 13,5В).
В таком случае дополнительно к указанной схеме необходимо подать напряжение от блока питания напрямую в коммутатор.

tg_image_2830787059.jpeg

1.2 Факториал

image.png

1.3 Метаком

image.png

1.4 Визит

image.png

2. Цифровые коммутаторы

2.1 Даксис ДП-К2Д

image.png

Рабочий диапазон напряжения панели 10-30V DC.

Инструкции по монтажу и эксплуатации

Подключение дополнительного входа

Считыватель

Интерфейсы

    Панель поддерживает подключение считывателей по интерфейсу Wiegand со следующими идентификаторами ключей:

Схема подключения

image.png

Плата управления замком

Цифрал

Подключение ПУЗ.png

Сокол

image.png

Инструкции по монтажу и эксплуатации

Подключение внешних модулей Beward NCS-102

Панель поддерживает подключение до 4-х внешних модулей дверей Beward NCS-102 по шине RS485.  Для подключения модулей к панели потребуется преобразователь UART-RS485.

Обратите внимание, что для корректной работы прошивка внешних модулей должна быть не ниже версии 1.2.1.11.5

Схема подключения

Подключение внешних модулей.png

Инструкции по монтажу и эксплуатации

Сервисный режим. Преднастройка домофона с клавиатуры

Панель предоставляет возможность выполнения некоторых команд с помощью клавиатуры.

По умолчанию данные коды активны. Коды команд можно отключить через API (метод /serviceCode/settings) или web-интерфейс на странице «Домофон» -> «Квартиры» -> «Коды».

Порядок действий для активации сервисного режима (открытый ввод кода):

  1. Ввести пароль для перехода в сервисный режим (данный пароль имеет длину 6 символов)
  2. Нажать кнопку «Вызов»
  3. Ввести номер функции (см. Таблицу 1)
  4. Нажать кнопку «Вызов» (при активации функции 0 домофон перейдет в обычный режим)
  5. Ввести параметры команды (см. Таблицу 1)
  6. Нажать кнопку вызова
  7. Для выхода из сервисного режима необходимо ввести сервисный пароль 
  8. Нажать кнопку вызова, домофон перейдет в обычный режим
  9. В случае неудачного выполнения на экране появится соответствующее сообщение.

Порядок действий для активации сервисного режима (скрытый ввод кода):

  1. Нажать кнопку «Вызов»
  2. Ввести пароль для перехода в сервисный режим (данный пароль имеет длину 6 символов)
  3. Нажать кнопку «Вызов»
  4. Ввести номер функции (см. Таблицу 1)
  5. Нажать кнопку «Вызов» (при активации функции 0 домофон перейдет в обычный режим)
  6. Ввести параметры команды (см. Таблицу 1)
  7. Нажать кнопку вызова
  8. Для выхода из сервисного режима необходимо ввести сервисный пароль 
  9. Нажать кнопку вызова, домофон перейдет в обычный режим
  10. В случае неудачного выполнения на экране появится соответствующее сообщение.

Стандартный пароль для входа в сервисный режим: 123456
Рекомендуем изменить сервисный пароль:
 - API метод - /serviceCode/settings
 - Web-интерфейс - «Домофон» -> «Коды» -> 3 точки -> «Сервисные коды»

Номер функции Описание функции Параметры
1 Отключение использования сервисных кодов с помощью клавиатуры. 
2 Режим регулировки громкости аналоговой трубки и динамика панели с помощью клавиш во время разговора.
После активации режима на дисплее появиться надпись «Регулировка громкости».
Активируйте функцию и совершите вызов в необходимую квартиру. Во время звонка отрегулируйте громкость клавишами.
Функциональные клавиши:
  - «1» (тише на 1 дБ) и «3» (громче на 1 дБ) — настраивают громкость звука в аналоговой трубке; 
  - «4» (тише на 1 дБ) и «6» (громче на 1 дБ) —  настраивают громкость динамика панели;
  - «Вызов» — сохраняет подобранные значения в настройки квартиры;
  - «0» — сбрасывает подобранные значения к настройкам квартиры
3 Авторегулировка уровней напряжения абонентских трубок всех квартир. При выборе этой функции автоматически происходит выход из сервисного режима и начинается регулировка уровней напряжения на всех квартирах.
4 Авторегулировка уровней напряжения абонентских трубок диапазона квартир 1. Набрать начальный номер квартиры, нажать клавишу Вызов
2. Набрать конечный номер квартиры, нажать клавишу Вызов
3. Далее произойдет выход из сервисного режима и начнется авторегулировка выбранного диапазона квартир.
5 Включение / выключение автосбора ключей с привязкой к номеру квартиры

После включения режима:

  1. Набрать «Номер квартиры»;
  2. Нажать кнопку «Вызов»;
  3. Прикладывать ключи к считывателю для привязки ключей к указанной квартире;
  4. Если требуется указать другую квартиру, повторяем пункты 1 - 3.
Клавиша «Сброс» выключает режим и выходит
из сервисного режима.
6 Включение / выключение режима открытие двери любым ключом


7 Включение / выключение режима проверки обратного идентификатора ключа


8 Включение / выключение режима открытых дверей


API Документация

Описание

В данном документе описаны методы для взаимодействия с домофонной панелью Сокол Плюс через HTTP-запросы.

На устройстве по умолчанию 2 виртуальных сетевых интерфейса:
 - Динамический;
 - Статический (192.168.0.100).

Метод для настройки сетевых интерфейсов:
   /v1/network

Данные для авторизации по умолчанию:
   - логин: root
   - пароль: 123456

Метод для смены пароля по умолчанию:
   /user/change_password


Обязательные заголовки

Некоторые методы могут иметь другое значение для указанных заголовков или новые заголовки.

Запрос

Наименование

Значение Описание
GET, PUT, POST, DELETE

Authorization

Basic cm9vdDoxMjM0NTY=
Заголовок "Базовой авторизации"
PUT, POST, DELETE

Content-Type

application/json
Тип передаваемых данных

Content-Length

0
Размер передаваемых данных

Ответ

Заголовки

Наименование

Значение Описание

Authorization

Basic cm9vdDoxMjM0NTY=
Заголовок "Базовой авторизации"

Content-Type

application/json
Тип возвращаемых данных

Content-Length

0
Размер возвращаемых данных

X-Device-Mac

08:13:00:00:00:00
Мак адрес устройства
Коды

Наименование

Значение

Успешные

  • 200 OK;
  • 201 OK;
  • 204 OK.

Пользовательские

  • 400 Bad Request;
  • 401 Unauthorized;
  • 404 Not Found;
  • 405 Method Not Allowed;
  • 422 Unprocessable Entity.

Серверные

  • 500 Internal Server Error;
  • 501 Not Implemented.

Авторизация

/auth/check

Метод проверки данных, используемых для авторизации, при вызове API-методов.
Для авторизации поддерживается "Базовая аутентификация (Basic access authentication)" .

GET - Проверка авторизации
Ответы
200 OK

Авторизация пройдена

Заголовки:

Наименование

Значение Описание

Content-Type

text/html; charset=ISO-8859-1
Тип возвращаемых данных
401 Unauthorized

- Не корректно передан заголовок Authorization
- Используются не корректные данные логин или пароль

Заголовки:

Наименование

Значение Описание

WWW-Authenticate

Basic realm="Access to camofon", charset="UTF-8"
Заголовок обязательной авторизации

Content-Type

text/html; charset=ISO-8859-1
Тип возвращаемых данных
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/auth/check'

Пользователь

/user/change_password

Метод смены текущего пароля пользователя на новый.

В прошивках старше 31.07 отключена возможность использовать кириллицу при смене пароля.

Описание параметров

Название

Тип Описание
newPassword String

Новый пароль для указанного пользователя в заголовке авторизации.

 - По умолчанию: 123456

PUT - Обновление пароля пользователя
Запрос

Тело: 

{
  "newPassword": "123456"
}
Ответы
200 OK

 Успешная смена пароля

Заголовки:

Название

Значение Описание

Content-Type

text/html; charset=ISO-8859-1 Тип возвращаемых данных
400 Bad Request

 Ошибка проверки переданных параметров

Тело:

Название

Тип Описание

errors

Array Массив возвращаемых ошибок.

   field

   String    Название переменной к которой относиться ошибка.

   message

   String    Сообщение об ошибки для переменной из поля "field".
{
    "errors": [
        {
            "field": "newPassword",
            "message": "Ошибка получения поля newPassword из запроса"
        }
    ]
}
Примеры

CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/user/change_password' \
--data-raw '{"newPassword": "123456"}'

Параметры API

/v1/api

Методы получения и настройки параметров HTTP-сервера.

Описание параметров

Название

Тип
Описание

port

Integer

Порт для работы HTTP-сервера.

 - По умолчанию: 80

GET - Получение параметров
Ответы
200 OK

Успешное получение данных

 Тело:

{
    "port": 80
}
Примеры

Curl:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v1/api'
PUT - Изменение параметров
Запрос

Тело:

{
    "port": 80
}
Ответы
200 OK

Успешное изменение параметров

Тело:

{
    "port": 80
}
400 Bad Request

Ошибка проверки переданных параметров

Тело:

Название

Тип
Описание

errors

Array Массив возвращаемых ошибок.

   message

   String    Сообщение с ошибкой.
{
    "errors": [
        {
            "message": "Не удалось распарсить json"
        }
    ]
}
Примеры

 CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/v1/api' \
--data-raw '{"port": 80}'

Параметры DDNS

/v1/ddns

Методы получение и изменения параметров ddns клиента, основанного на открытом No-IP протоколе.

Описание параметров

Название

Тип
Описание
enabled Boolean

Флаг включения / отключения DDNS клиента.

 - По умолчанию: false

interval Integer

Интервал отправки http запросов на сервер.

 - По умолчанию: 300

server

Object Параметры подключения к сервере
   port    Integer

   Порт сервера для отправки запросов.

    - По умолчанию: 8081

   address    String

    Адрес сервера для отправки запросов.

    - По умолчанию: 10.199.63.7

   username    String

   Логин для авторизации.

    - По молчанию: default

   password    String    Пароль для авторизации.

    - По молчанию: default

data

Object Отправляемые данные.
   hostname    String

   Передаваемый тип устройства.

    - По умолчанию: ddns.ISCom

GET - Получение параметров
Ответы
200 OK

 Успешное получение параметров

Тело:

{
    "enabled": true,
    "interval": 300,
    "server": {
        "port": 8081,
        "address": "10.199.63.7",
        "username": "default",
        "password": "default"
    },
    "data": {
        "hostname": "ddns.ISCom"
    }
}
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v1/ddns'
PUT - Изменение параметров
Запрос

Тело:

{
    "enabled": true,
    "interval": 300,
    "server": {
        "port": 8081,
        "address": "10.199.63.7",
        "username": "default",
        "password": "default"
    },
    "data": {
        "hostname": "ddns.ISCom"
    }
}
Ответы
200 OK

 Успешное изменение параметров

Тело:

{
    "enabled": true,
    "interval": 300,
    "server": {
        "port": 8081,
        "address": "10.199.63.7",
        "username": "default",
        "password": "default"
    },
    "data": {
        "hostname": "ddns.ISCom"
    }
}
Примеры

 CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/v1/ddns' \
--data-raw '{
    "enabled": true,
    "interval": 300,
    "server": {
        "port": 8081,
        "address": "10.199.63.7",
        "username": "default",
        "password": "default"
    },
    "data": {
        "hostname": "ddns.ISCom"
    }
}'
DELETE - Сброс параметров
Ответы
200 OK

 Успешный сброс параметров

Тело:

Название

Тип
Описание
enabled Boolean

Флаг включения / отключения DDNS клиента.

 - По умолчанию: false

interval Integer

Интервал отправки http запросов на сервер.

 - По умолчанию: 300

server

Object Параметры подключения к сервере
   port    Integer

   Порт сервера для отправки запросов.

    - По умолчанию: 8081

   address    String

    Адрес сервера для отправки запросов.

    - По умолчанию: 10.199.63.7

   username    String

   Логин для авторизации.

    - По молчанию: default

   password    String    Пароль для авторизации.

    - По молчанию: default

data

Object Отправляемые данные.
   hostname    String

   Передаваемый тип устройства.

    - По умолчанию: ddns.ISCom

{
    "enabled": true,
    "interval": 300,
    "server": {
        "port": 8081,
        "address": "10.199.63.7",
        "username": "default",
        "password": "default"
    },
    "data": {
        "hostname": "ddns.ISCom"
    }
}
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request DELETE 'http://192.168.0.100:80/v1/ddns'

Видеопоток

RTSP

Методы получения основного и дополнительного видеопотоков.

По умолчанию "Альтернативный видеопоток 2" выключен
Для включения используйте метод: /camera/codec

Основной видеопоток

VLC:

vlc rtsp://root:123456@192.168.0.100:554/ch0

FFPLAY:

ffplay rtsp://root:123456@192.168.0.100:554/ch0
Альтернативный видеопоток

VLC:

vlc rtsp://root:123456@192.168.0.100:554/ch1

FFPLAY:

ffplay rtsp://root:123456@192.168.0.100:554/ch1
Альтернативный видеопоток 2

VLC:

vlc rtsp://root:123456@192.168.0.100:554/ch2

FFPLAY:

ffplay rtsp://root:123456@192.168.0.100:554/ch2

/camera/md

Методы получение и изменения параметров детектора движения видеопотока.

Описание параметров

Название

Тип
Описание
md_enable Boolean

Флаг включения / отключения детектора движения.

 - По умолчанию: false

md_area_thr Integer

Минимальный размер детектируемой области.  Для людей на близком расстоянии примерно 100000 пикселей.

 - По умолчанию: 30000 пикселей

md_send_snapshot_enable Boolean

Флаг включения / отключения отправки картинок на сервер указанный в параметре "snap_send_url".

 - По умолчанию: false

md_send_snapshot_interval Integer

Интервал в секундах между отправкой картинок на сервер.

 - Ограничение: 1 - 20 секунд

 - По умолчанию: 1 секунда

 

ВАЖНО! Будет отправлена одна картинка, даже если за этот период было задетектировано больше движений.

md_rects_enable Boolean

Флаг включения / отключения отображения рамок детектора.

 - По умолчанию: false

md_logs_enable Boolean

Флаг включения / отключения отправки событий детектора в логи.

 - По умолчанию: false

md_rect_color String

Цвет отображающихся рамок детектора. 

 - По умолчанию: 0xFF0000

md_frame_int Integer

Интервал между кадрами, отправляемыми на поиск движения.

 - По умолчанию: 30 кадров

md_frame_shift Integer

Смещение второго кадра, участвующего в определении детекции.

 - По умолчанию: 1 кадр

md_max_rect_ratio Double

Максимальное соотношение длина / ширина прямоугольника для отображения.

 - По умолчанию: 8.0

snap_send_url String

HTTP адрес на который будут отправляться картинки детектора.

 - По умолчанию: ""

Добавлено после версий от 01.08

md_active_time
Integer

Если после последней детекции движения проходит md_active_time секунд, то отправляется событие EVENT: Detected motion finished оповещающее о конце движения.

 

Для отправки событий о начале и конце движения, также должны быть установлены параметры md_enable и  md_logs_enable в значения true.

 

- По умолчанию: 1 секунда

 - Ограничение: 1 - 5 секунд

 

 

При использовании удаленного HTTP-сервера детекции (snap_send_url).

Данные формата application/json отправляются на HTTP-сервер с помощью POST метода.

Название

Тип
Описание

time

String Дата и время в формате "%y-%m-%d %H:%M:%S".

df_id

String Мак адрес устройства без символов двоеточия.

img_bytes

String Представление картинки в base64 строке.
GET - Получение параметров
Ответы
200 OK

 Успешное получение параметров

Тело:

{
    "md_enable": false,
    "md_area_thr": 30000,
    "md_send_snapshot_enable": false,
    "md_send_snapshot_interval": 1,
    "md_rects_enable": false,
    "md_logs_enable": false,
    "md_rect_color": "0xFF0000",
    "md_frame_int": 30,
    "md_frame_shift": 1,
    "md_max_rect_ratio": 8.0,
    "snap_send_url": ""
}
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/camera/md'
PUT - Изменение параметров
Запрос

Тело:

{
    "md_enable": false,
    "md_area_thr": 30000,
    "md_send_snapshot_enable": false,
    "md_send_snapshot_interval": 1,
    "md_rects_enable": false,
    "md_logs_enable": false,
    "md_rect_color": "0xFF0000",
    "md_frame_int": 30,
    "md_frame_shift": 1,
    "md_max_rect_ratio": 8.0,
    "snap_send_url": ""
}
Ответы
200 OK

 Успешное получение параметров

Тело:

{
    "md_enable": false,
    "md_area_thr": 30000,
    "md_send_snapshot_enable": false,
    "md_send_snapshot_interval": 1,
    "md_rects_enable": false,
    "md_logs_enable": false,
    "md_rect_color": "0xFF0000",
    "md_frame_int": 30,
    "md_frame_shift": 1,
    "md_max_rect_ratio": 8.0,
    "snap_send_url": ""
}
400 Bad Request

 Ошибка проверки переданных параметров

Тело:

Название

Тип
Описание

errors

Array Массив возвращаемых ошибок.

   message

   String    Сообщение с ошибкой.
{
    "errors": [
        {
            "message": "Ошибка получения md настроек: 400 (JSON поле data отсутствует)"
        }
    ]
}
Примеры

CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/camera/md' \
--data-raw '{
    "md_enable": false,
    "md_area_thr": 30000,
    "md_send_snapshot_enable": false,
    "md_send_snapshot_interval": 1,
    "md_rects_enable": false,
    "md_logs_enable": false,
    "md_rect_color": "0xFF0000",
    "md_frame_int": 30,
    "md_frame_shift": 1,
    "md_max_rect_ratio": 8.0,
    "snap_send_url": ""
}'

 

/camera/rtsp

Методы получение и изменения параметра порта rtsp.

Описание параметров

Название

Тип
Описание
port Int

Текущий порт для получения rtsp потока.

 - Ограничения: 100 - 65535

 - По умолчанию: 554

GET - Получение параметров
Ответы
200 OK

 Успешное получение параметров

Тело:

{
    "port": 554
}
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/camera/rtsp'
PUT - Изменение параметров
Запрос

Тело:

{
    "port": 554
}
Ответы
200 OK

 Успешное получение параметров

Тело:

{
    "port": 554
}
400 Bad Request

 Ошибка проверки переданных параметров

Тело:

Название

Тип
Описание

errors

Array Массив возвращаемых ошибок.

   message

   String    Сообщение с ошибкой.
{
    "errors": [
        {
            "message": "Ошибка получения rtsp настроек: 400 (JSON поле data отсутствует)"
        }
    ]
}
Примеры

CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/camera/rtsp' \
--data-raw '{
    "port": 554
}'

 

/camera/audio

Методы получение и изменения параметров звука.

Описание параметров

Название

Тип
Описание
aac_enable Boolean

Флаг включения / отключения кодирования звука в AAC.

  - По умолчанию: false (звук в PCMU)

format String

Формат кодирования звука.

  - По умолчанию: AAC

  - Поддерживаемые варианты:

    - AAC;

    - PCM;

    - PCMA (G.711A);

    - PCMU (G.711U);

mic_gain Integer

Усиление микрофона.

  - По умолчанию: -30

spk_gain Integer

Громкость динамика.

  - По умолчанию: 6

micGain Integer

Программное усиление микрофона.

  - По умолчанию: 5

GET - Получение параметров
Ответы
200 OK

Успешное получение параметров

Тело:

{
    "aac_enable": true,
    "format": "AAC",
    "mic_gain": -30,
    "spk_gain": 6,
    "micGain": 5
}
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/camera/audio'
PUT - Изменение параметров
Запрос

Тело:

{
    "aac_enable": true,
    "format": "AAC",
    "mic_gain": -30,
    "spk_gain": 6,
    "micGain": 5
}
Ответы
200 OK

 Успешное изменение параметров

Тело:

{
    "aac_enable": true,
    "format": "AAC",
    "mic_gain": -30,
    "spk_gain": 6,
    "micGain": 5
}
400 Bad Request

 Ошибка проверки переданных параметров

Тело:

Название

Тип
Описание

errors

Array Массив возвращаемых ошибок.

   message

   String    Сообщение с ошибкой.
{
    "errors": [
        {
            "message": "Ошибка получения md настроек: 400 (JSON поле data отсутствует)"
        }
    ]
}
Примеры

 CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/camera/audio' \
--data-raw '{
    "aac_enable": true,
    "format": "AAC",
    "mic_gain": -30,
    "spk_gain": 6,
    "micGain": 5
}'

/camera/codec

Методы получения и изменения параметров видеопотоков (основного, альтернативных).

Описание параметров

Название

Тип
Описание
Channels Array

Массив видео потоков.

   Channel    Integer

   Номер видео потока.

   Type    String

   Тип кодека видео.

   Profile    Integer

   Профиль кодека.

    - По умолчанию: 1 (Main)

    - Поддерживаемые варианты:

       - 0 - Baseline;

       - 1 - Main;

       - 2 - High;

   ByFrame    Boolean

Флаг, указывающий формат получения потока (покадрово /попакетно)

   Width / Height    Integer

   Разрешение видео потока. 

     - Поддерживаемые варианты:

       - 1920х1080 (основной поток);

       - 1280х720;

       - 720х576;

       - 704х576;

       - 640х480;

       - 640х360.

   GopMode    String

   Режим, определяющий использование P (в том числе SP, VI) и B кадров и их чередование.

   - По умолчанию: 2

   - Поддерживаемые варианты:

      - NormalP

      - SmartP

      - DualP

   IPQpDelta    Integer

   Разница между средним значением и текущим значением QP.

    - Ограничения: -10 - 30     

    - По умолчанию: 2

   RcMode    String

   Режим управления кодированием.

    - По умолчанию: AVBR

   IFrameInterval    Integer

   Интервал опорного кадра (кадр/сек).

    - По умолчанию: 30

   MaxBitrate    Integer

   Максимальный битрейт видеопотока (Кбит/сек).

GET - Получение параметров
Ответы
200 OK

 Успешное получение параметров

Тело:

{
    "Channels": [
        {
            "Channel": 0,
            "Type": "H264",
            "Profile": 0,
            "ByFrame": true,
            "Width": 1920,
            "Height": 1080,
            "GopMode": "NormalP",
            "IPQpDelta": 2,
            "RcMode": "AVBR",
            "IFrameInterval": 30,
            "MaxBitrate": 4096
        },
        ...
        {
            "Channel": 2,
            "Enabled": true,
            "Type": "H264",
            "Profile": 1,
            "ByFrame": true,
            "Width": 640,
            "Height": 480,
            "GopMode": "NormalP",
            "IPQpDelta": 2,
            "RcMode": "AVBR",
            "IFrameInterval": 30,
            "MaxBitrate": 1536
        }
    ]
}
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/camera/codec'
PUT - Изменение параметров
Запрос

Тело:

{
    "Channels": [
        {
            "Channel": 0,
            "Type": "H264",
            "Profile": 1,
            "ByFrame": true,
            "Width": 1280,
            "Height": 720,
            "GopMode": "NormalP",
            "IPQpDelta": 2,
            "RcMode": "AVBR",
            "IFrameInterval": 30,
            "MaxBitrate": 3072
        },
        ...,
        {
            "Channel": 2,
            "Type": "H264",
            "Profile": 1,
            "ByFrame": true,
            "Width": 640,
            "Height": 480,
            "GopMode": "NormalP",
            "IPQpDelta": 2,
            "RcMode": "AVBR",
            "IFrameInterval": 30,
            "MaxBitrate": 1536
        }
    ]
}
Ответы
200 OK

 Успешное получение параметров

Тело:

{
    "Channels": [
        {
            "Channel": 0,
            "Type": "H264",
            "Profile": 0,
            "ByFrame": true,
            "Width": 1920,
            "Height": 1080,
            "GopMode": "NormalP",
            "IPQpDelta": 2,
            "RcMode": "AVBR",
            "IFrameInterval": 30,
            "MaxBitrate": 4096
        },
        ...,
        {
            "Channel": 2,
            "Enabled": true,
            "Type": "H264",
            "Profile": 1,
            "ByFrame": true,
            "Width": 640,
            "Height": 480,
            "GopMode": "NormalP",
            "IPQpDelta": 2,
            "RcMode": "AVBR",
            "IFrameInterval": 30,
            "MaxBitrate": 1536
        }
    ]
}
400 Bad Request

Ошибка проверки переданных параметров

Тело:

Название

Тип
Описание

errors

Array Массив возвращаемых ошибок.

   message

   String    Сообщение с ошибкой.
{
    "errors": [
        {
            "message": "Ошибка получения md настроек: 400 (JSON поле data отсутствует)"
        }
    ]
}
Примеры

 CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/camera/codec' \
--data-raw '{
    "Channels": [
        {
            "Channel": 0,
            "Type": "H264",
            "Profile": 0,
            "ByFrame": true,
            "Width": 1920,
            "Height": 1080,
            "GopMode": "NormalP",
            "IPQpDelta": 2,
            "RcMode": "AVBR",
            "IFrameInterval": 30,
            "MaxBitrate": 4096
        },
        {
            "Channel": 1,
            "Type": "H264",
            "Profile": 1,
            "ByFrame": true,
            "Width": 1280,
            "Height": 720,
            "GopMode": "NormalP",
            "IPQpDelta": 2,
            "RcMode": "AVBR",
            "IFrameInterval": 30,
            "MaxBitrate": 1536
        },
        {
            "Channel": 2,
            "Enabled": true,
            "Type": "H264",
            "Profile": 1,
            "ByFrame": true,
            "Width": 640,
            "Height": 480,
            "GopMode": "NormalP",
            "IPQpDelta": 2,
            "RcMode": "AVBR",
            "IFrameInterval": 30,
            "MaxBitrate": 1536
        }
    ]
}'

/camera/picture

Методы получение и изменения параметров картинки (отражение по вертикали, отражение по горизонтали).

Описание параметров

Название

Тип
Описание

Image

Object

Параметры отражения картинки по вертикали и по горизонтали.

   Flip

   Boolean

   Отражение картинки по вертикали.

    - По умолчанию: false

   Mirror

   Boolean

   Отражение картинки по горизонтали.

    - По умолчанию: false

GET - Получение параметров
Ответы
200 OK

 Успешное получение параметров

Тело:

{
    "Image": {
        "Flip": false,
        "Mirror": false
    }
}
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/camera/picture'
PUT - Изменение параметров
Запрос

Тело:

{
    "Image": {
        "Flip": false,
        "Mirror": false
    }
}
Ответы
200 OK

 Успешное изменение параметров

Тело:

{
    "Image": {
        "Flip": false,
        "Mirror": false
    }
}
400 Bad Request

Ошибка проверки переданных параметров

Тело:

Название

Тип
Описание

errors

Array Массив возвращаемых ошибок.

   message

   String    Сообщение с ошибкой.
{
    "errors": [
        {
            "message": "Ошибка получения md настроек: 400 (JSON поле data отсутствует)"
        }
    ]
}
Примеры

CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/camera/picture' \
--data-raw '{
    "Image": {
        "Flip": false,
        "Mirror": false
    }
}'

/camera/snapshot

Метод получение картинки с видеопотока в данный момент.

Размер картинки зависит от размера основного видеопотока
Для смены размера картинки видеопотока используйте:
   /camera/codec

GET - Получение картинки
Ответы
200 OK

 Заголовки:

Название

Значение Описание

Content-Type

image/jpeg Тип возвращаемых данных

Тело:

*** Бинарное представление картинки ***
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100/camera/snapshot'

/camera/whiteBlack

Методы получения и изменения параметров черно-белого режима видеопотока. Для перехода в цветной и черно-белый режим используется экспозиция.

- Для перехода потока в цветной режим: необходимо значение "exposureCurrent" менее "exposureLight"
- Для перехода потока в черно-белый режим: необходимо значение "exposureCurrent" более  "exposureNight" 

Описание параметров

Название

Тип
Описание

state

Boolean

Текущее состояние черно-белого режима.

threshold

Object Пороги переключения черно-белого режима.

   exposureCurrent

   Integer    Текущее значение экспозиции сенсора.
   exposureLight    Integer

   Порог включение цветного режима.

    - Ограничения: 0 - 4294967295

    - По умолчанию: 22000

   exposureNight    Integer

   Порог включения черно-белого режима.

    - Ограничения: 0 - 4294967295

    - По умолчанию: 250000

GET - Получение параметров
Ответы
200 OK

 Успешное получение данных

Тело:

{
    "state": false,
    "threshold": {
        "exposureCurrent": 100000,
        "exposureLight": 22000,
        "exposureNight": 250000
    }
}
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/camera/whiteBlack'
PUT - Изменение параметров
Запрос

Тело:

{
    "threshold": {
        "exposureLight": 22000,
        "exposureNight": 250000
    }
}
Ответы
200 OK

 Успешное изменение параметров

Тело:

{
    "state": false,
    "threshold": {
        "exposureCurrent": 100000,
        "exposureLight": 22000,
        "exposureNight": 250000
    }
}
400 Bad Request

 Ошибка проверки переданных параметров

Тело:

Название

Тип
Описание

errors

Array Массив возвращаемых ошибок.

   message

   String    Сообщение с ошибкой.
{
    "errors": [
        {
            "message": "Ошибка получения md настроек: 400 (JSON поле data отсутствует)"
        }
    ]
}
Примеры

CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/camera/whiteBlack' \
--data-raw '{
    "threshold": {
        "exposureLight": 22000,
        "exposureNight": 250000
    }
}'

/v2/camera/osd

Методы получения и изменения параметров наложения текста на видеопоток (osd).

Видео поток поддерживает отображение до 3-х строк.

Описание параметров

Название

Тип
Описание

size

Integer

Размер отображаемой информации.

text String

Отображаемый текст.

 - Длина строки: 0 - 100 символов

color

String Цвет osd в hex.

date

Object Параметры отображения даты.

   enable

   Boolean    Флаг включения / отключения отображения даты.
   format    String

   Формат отображаемой даты (форматы).

time

Object Параметры отображения времени.

   enable

   Boolean    Флаг включения / отключения отображения времени.
   format    String    Формат отображаемового времени (форматы).

position

Object Параметры смещения текста.

   x

   Integer    Смещение по оси "X" (пиксели).

   y

   Integer    Смещение по оси "Y" (пиксели).

background

Object Параметры отображения фона.

   enable

   Boolean    Флаг включения / отключения фона.
   color    String

   Цвет фона в hex.

GET - Получение параметров
Ответы
200 OK

Успешное получение параметров

Тело:

[
    {
        "size": 2,
        "text": "",
        "color": "0xFFFFFF",
        "date": {
            "enable": true,
            "format": "%d-%m-%Y"
        },
        "time": {
            "enable": true,
            "format": "%H:%M:%S"
        },
        "position": {
            "x": 2,
            "y": 10
        },
        "background": {
            "enable": false,
            "color": "0x0053DE"
        }
    },
    ...,
    {
        "size": 1,
        "text": "",
        "color": "0xFFFFFF",
        "date": {
            "enable": false,
            "format": ""
        },
        "time": {
            "enable": false,
            "format": ""
        },
        "position": {
            "x": 140,
            "y": 0
        },
        "background": {
            "enable": false,
            "color": "0xFFFFFF"
        }
    }
]
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v2/camera/osd'
PUT - Изменение параметров
Запрос

Тело:

[
    {
        "size": 1,
        "text": "Строка 1",
        "color": "0xFFFFFF",
        "date": {
            "enable": false,
            "format": "%d-%m-%Y"
        },
        "time": {
            "enable": false,
            "format": "%H:%M:%S"
        },
        "position": {
            "x": 10,
            "y": 10
        },
        "background": {
            "enable": false,
            "color": "0x000000"
        }
    },
    ...,
    {
        "size": 3,
        "text": "Строка 3",
        "color": "0xFFFFFF",
        "date": {
            "enable": false,
            "format": ""
        },
        "time": {
            "enable": false,
            "format": ""
        },
        "position": {
            "x": 10,
            "y": 60
        },
        "background": {
            "enable": false,
            "color": "0x000000"
        }
    }
]
Ответы
200 OK

 Успешное изменение параметров

Тело:

[
    {
        "size": 1,
        "text": "Строка 1",
        "color": "0xFFFFFF",
        "date": {
            "enable": false,
            "format": "%d-%m-%Y"
        },
        "time": {
            "enable": false,
            "format": "%H:%M:%S"
        },
        "position": {
            "x": 10,
            "y": 10
        },
        "background": {
            "enable": false,
            "color": "0x0053DE"
        }
    },
    ...,
    {
        "size": 3,
        "text": "Строка 3",
        "color": "0xFFFFFF",
        "date": {
            "enable": false,
            "format": ""
        },
        "time": {
            "enable": false,
            "format": ""
        },
        "position": {
            "x": 10,
            "y": 60
        },
        "background": {
            "enable": false,
            "color": "0xFFFFFF"
        }
    }
]
400 Bad Request

Ошибка проверки переданных параметров

Тело:

Название

Тип
Описание

errors

Array Массив возвращаемых ошибок.

   message

   String    Сообщение с ошибкой.
{
    "errors": [
        {
            "message": "Ошибка получения md настроек: 400 (JSON поле data отсутствует)"
        }
    ]
}
Примеры

CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/v2/camera/osd' \
--data-raw '[
    {
        "size": 1,
        "text": "Строка 1",
        "color": "0xFFFFFF",
        "date": {
            "enable": false,
            "format": "%d-%m-%Y"
        },
        "time": {
            "enable": false,
            "format": "%H:%M:%S"
        },
        "position": {
            "x": 10,
            "y": 10
        },
        "background": {
            "enable": false,
            "color": "0x0053DE"
        }
    },
    {
        "size": 2,
        "text": "Строка 2",
        "color": "0xFFFFFF",
        "date": {
            "enable": false,
            "format": ""
        },
        "time": {
            "enable": false,
            "format": ""
        },
        "position": {
            "x": 10,
            "y": 30
        },
        "background": {
            "enable": false,
            "color": "0x000000"
        }
    },
    {
        "size": 3,
        "text": "Строка 3",
        "color": "0xFFFFFF",
        "date": {
            "enable": false,
            "format": ""
        },
        "time": {
            "enable": false,
            "format": ""
        },
        "position": {
            "x": 10,
            "y": 60
        },
        "background": {
            "enable": false,
            "color": "0xFFFFFF"
        }
    }
]'

/v2/camera/picture

Методы получение и изменения параметров картинки видеопотока.

Описание параметров

Название

Тип
Описание

u8Contr

Integer

Контрастность изображения.

 - По умолчанию: 50 

 

ВАЖНО!

 - При значении больше 50-ти - контрастность увеличена.

 - При значении меньше 50-ти - контрастность уменьшена.

u8Luma

Integer

Яркость изображения. 

 - По умолчанию: 50 

 

ВАЖНО!

 - При значении больше 50-ти - яркость увеличена.

 - При значении меньше 50-ти - яркость уменьшена.

u8Satu

Integer Насыщенность изображения.

 - По умолчанию: 50 

 

ВАЖНО!

 - При значении больше 50-ти - насыщенность увеличена.

 - При значении меньше 50-ти - насыщенность уменьшена.

u8Hue

Integer Регулировка оттенка изображения.

 - По умолчанию: 50 

 

ВАЖНО!

 - При значении больше 50-ти - регулировка изменяется по часовой стрелке: красный имеет синий оттенок, синий имеет зеленый оттенок.

 - При значении меньше 50-ти - регулировакаи изменяется против часовой стрелки: синий имеет красный оттенок, красный имеет зеленый оттенок.

wb

Object Параметры баланса белого

   u8RGStrength

   Integer    

   u8BGStrength

   Integer    

dehaze

Object Параметры устранения дымки.

   u8strength

   Integer

   Интенсивность устранения дымки.

 

ВАЖНО! Чем больше значение, тем больше устранение дымки (влияет на контрастность изображения).

drc

Object

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

 

Соотношение яркости между самым ярким и самым темным объектом.

   u16Strength

   Integer

      Интенсивность.
        - По умолчанию: 

 

ВАЖНО! Чем больше значение, тем ярче общее изображение.

   u16StrengthMax

   Integer

      Граница светлого.
        - По умолчанию: 

 

ВАЖНО! Чем больше значение, тем больше ярких областей распознается.

   u16StrengthMin

   Integer

      Граница темного.
        - По умолчанию: 

 

ВАЖНО! Чем больше значение, тем меньше темных областей распознается.

iso

Object

   index

   Integer

   params

   Object

      0-15

      Object

         sharpness

         Object

            au16TextureFreq

            Integer

            au16EdgeFreq

            Integer

            au8OverShoot

            Integer

            au8UnderShoot

            Integer

            au8DetailCtrl

            Integer

            au8RGain

            Integer

            au8GGain

            Integer

            au8BGain

            Integer

            au8SkinGain

            Integer

            au16MaxSharpGain

            Integer
GET - Получение параметров
Ответы
200 OK

 Успешное получение параметров

Тело:

{
    "u8Contr": 42,
    "u8Luma": 52,
    "u8Satu": 52,
    "u8Hue": 50,
    "wb": {
        "u8RGStrength": 128,
        "u8BGStrength": 128
    },
    "dehaze": {
        "u8strength": 125
    },
    "drc": {
        "u16Strength": 100,
        "u16StrengthMax": 127,
        "u16StrengthMin": 0
    },
    "iso": {
        "index": 2,
        "params": {
            "0": {
                "sharpness": {
                    "au16TextureFreq": 183,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 13,
                    "au8UnderShoot": 58,
                    "au8DetailCtrl": 139,
                    "au8RGain": 28,
                    "au8GGain": 31,
                    "au8BGain": 28,
                    "au8SkinGain": 25,
                    "au16MaxSharpGain": 63
                }
            },
            "1": {
                "sharpness": {
                    "au16TextureFreq": 183,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 13,
                    "au8UnderShoot": 58,
                    "au8DetailCtrl": 139,
                    "au8RGain": 28,
                    "au8GGain": 31,
                    "au8BGain": 28,
                    "au8SkinGain": 25,
                    "au16MaxSharpGain": 63
                }
            },
            "2": {
                "sharpness": {
                    "au16TextureFreq": 183,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 13,
                    "au8UnderShoot": 55,
                    "au8DetailCtrl": 139,
                    "au8RGain": 28,
                    "au8GGain": 31,
                    "au8BGain": 28,
                    "au8SkinGain": 25,
                    "au16MaxSharpGain": 63
                }
            },
            "3": {
                "sharpness": {
                    "au16TextureFreq": 215,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 13,
                    "au8UnderShoot": 55,
                    "au8DetailCtrl": 139,
                    "au8RGain": 28,
                    "au8GGain": 31,
                    "au8BGain": 28,
                    "au8SkinGain": 25,
                    "au16MaxSharpGain": 63
                }
            },
            "4": {
                "sharpness": {
                    "au16TextureFreq": 215,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 19,
                    "au8UnderShoot": 53,
                    "au8DetailCtrl": 128,
                    "au8RGain": 28,
                    "au8GGain": 31,
                    "au8BGain": 28,
                    "au8SkinGain": 25,
                    "au16MaxSharpGain": 63
                }
            },
            "5": {
                "sharpness": {
                    "au16TextureFreq": 183,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 18,
                    "au8UnderShoot": 34,
                    "au8DetailCtrl": 130,
                    "au8RGain": 16,
                    "au8GGain": 45,
                    "au8BGain": 26,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 58
                }
            },
            "6": {
                "sharpness": {
                    "au16TextureFreq": 183,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 11,
                    "au8UnderShoot": 34,
                    "au8DetailCtrl": 130,
                    "au8RGain": 16,
                    "au8GGain": 45,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 42
                }
            },
            "7": {
                "sharpness": {
                    "au16TextureFreq": 183,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 1,
                    "au8UnderShoot": 34,
                    "au8DetailCtrl": 130,
                    "au8RGain": 26,
                    "au8GGain": 45,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 42
                }
            },
            "8": {
                "sharpness": {
                    "au16TextureFreq": 250,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 1,
                    "au8UnderShoot": 28,
                    "au8DetailCtrl": 130,
                    "au8RGain": 8,
                    "au8GGain": 45,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 42
                }
            },
            "9": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 24,
                    "au8UnderShoot": 28,
                    "au8DetailCtrl": 116,
                    "au8RGain": 8,
                    "au8GGain": 45,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            },
            "10": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 96,
                    "au8OverShoot": 40,
                    "au8UnderShoot": 50,
                    "au8DetailCtrl": 120,
                    "au8RGain": 31,
                    "au8GGain": 31,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            },
            "11": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 96,
                    "au8OverShoot": 40,
                    "au8UnderShoot": 50,
                    "au8DetailCtrl": 120,
                    "au8RGain": 31,
                    "au8GGain": 31,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            },
            "12": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 96,
                    "au8OverShoot": 10,
                    "au8UnderShoot": 15,
                    "au8DetailCtrl": 120,
                    "au8RGain": 31,
                    "au8GGain": 31,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            },
            "13": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 96,
                    "au8OverShoot": 10,
                    "au8UnderShoot": 15,
                    "au8DetailCtrl": 120,
                    "au8RGain": 31,
                    "au8GGain": 31,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            },
            "14": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 96,
                    "au8OverShoot": 10,
                    "au8UnderShoot": 15,
                    "au8DetailCtrl": 120,
                    "au8RGain": 31,
                    "au8GGain": 31,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            },
            "15": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 96,
                    "au8OverShoot": 10,
                    "au8UnderShoot": 15,
                    "au8DetailCtrl": 120,
                    "au8RGain": 31,
                    "au8GGain": 31,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            }
        }
    }
}
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v2/camera/picture'
PUT - Изменение параметров
Запрос

Тело:

{
    "u8Contr": 42,
    "u8Luma": 52,
    "u8Satu": 52,
    "u8Hue": 50,
    "wb": {
        "u8RGStrength": 128,
        "u8BGStrength": 128
    },
    "dehaze": {
        "u8strength": 125
    },
    "drc": {
        "u16Strength": 100,
        "u16StrengthMax": 127,
        "u16StrengthMin": 0
    },
    "iso": {
        "index": 2,
        "params": {
            "0": {
                "sharpness": {
                    "au16TextureFreq": 183,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 13,
                    "au8UnderShoot": 58,
                    "au8DetailCtrl": 139,
                    "au8RGain": 28,
                    "au8GGain": 31,
                    "au8BGain": 28,
                    "au8SkinGain": 25,
                    "au16MaxSharpGain": 63
                }
            },
            "1": {
                "sharpness": {
                    "au16TextureFreq": 183,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 13,
                    "au8UnderShoot": 58,
                    "au8DetailCtrl": 139,
                    "au8RGain": 28,
                    "au8GGain": 31,
                    "au8BGain": 28,
                    "au8SkinGain": 25,
                    "au16MaxSharpGain": 63
                }
            },
            "2": {
                "sharpness": {
                    "au16TextureFreq": 183,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 13,
                    "au8UnderShoot": 55,
                    "au8DetailCtrl": 139,
                    "au8RGain": 28,
                    "au8GGain": 31,
                    "au8BGain": 28,
                    "au8SkinGain": 25,
                    "au16MaxSharpGain": 63
                }
            },
            "3": {
                "sharpness": {
                    "au16TextureFreq": 215,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 13,
                    "au8UnderShoot": 55,
                    "au8DetailCtrl": 139,
                    "au8RGain": 28,
                    "au8GGain": 31,
                    "au8BGain": 28,
                    "au8SkinGain": 25,
                    "au16MaxSharpGain": 63
                }
            },
            "4": {
                "sharpness": {
                    "au16TextureFreq": 215,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 19,
                    "au8UnderShoot": 53,
                    "au8DetailCtrl": 128,
                    "au8RGain": 28,
                    "au8GGain": 31,
                    "au8BGain": 28,
                    "au8SkinGain": 25,
                    "au16MaxSharpGain": 63
                }
            },
            "5": {
                "sharpness": {
                    "au16TextureFreq": 183,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 18,
                    "au8UnderShoot": 34,
                    "au8DetailCtrl": 130,
                    "au8RGain": 16,
                    "au8GGain": 45,
                    "au8BGain": 26,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 58
                }
            },
            "6": {
                "sharpness": {
                    "au16TextureFreq": 183,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 11,
                    "au8UnderShoot": 34,
                    "au8DetailCtrl": 130,
                    "au8RGain": 16,
                    "au8GGain": 45,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 42
                }
            },
            "7": {
                "sharpness": {
                    "au16TextureFreq": 183,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 1,
                    "au8UnderShoot": 34,
                    "au8DetailCtrl": 130,
                    "au8RGain": 26,
                    "au8GGain": 45,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 42
                }
            },
            "8": {
                "sharpness": {
                    "au16TextureFreq": 250,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 1,
                    "au8UnderShoot": 28,
                    "au8DetailCtrl": 130,
                    "au8RGain": 8,
                    "au8GGain": 45,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 42
                }
            },
            "9": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 24,
                    "au8UnderShoot": 28,
                    "au8DetailCtrl": 116,
                    "au8RGain": 8,
                    "au8GGain": 45,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            },
            "10": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 96,
                    "au8OverShoot": 40,
                    "au8UnderShoot": 50,
                    "au8DetailCtrl": 120,
                    "au8RGain": 31,
                    "au8GGain": 31,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            },
            "11": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 96,
                    "au8OverShoot": 40,
                    "au8UnderShoot": 50,
                    "au8DetailCtrl": 120,
                    "au8RGain": 31,
                    "au8GGain": 31,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            },
            "12": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 96,
                    "au8OverShoot": 10,
                    "au8UnderShoot": 15,
                    "au8DetailCtrl": 120,
                    "au8RGain": 31,
                    "au8GGain": 31,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            },
            "13": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 96,
                    "au8OverShoot": 10,
                    "au8UnderShoot": 15,
                    "au8DetailCtrl": 120,
                    "au8RGain": 31,
                    "au8GGain": 31,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            },
            "14": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 96,
                    "au8OverShoot": 10,
                    "au8UnderShoot": 15,
                    "au8DetailCtrl": 120,
                    "au8RGain": 31,
                    "au8GGain": 31,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            },
            "15": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 96,
                    "au8OverShoot": 10,
                    "au8UnderShoot": 15,
                    "au8DetailCtrl": 120,
                    "au8RGain": 31,
                    "au8GGain": 31,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            }
        }
    }
}
Ответы
200 OK

 Успешное изменение параметров

Тело:

{
    "u8Contr": 42,
    "u8Luma": 52,
    "u8Satu": 52,
    "u8Hue": 50,
    "wb": {
        "u8RGStrength": 128,
        "u8BGStrength": 128
    },
    "dehaze": {
        "u8strength": 125
    },
    "drc": {
        "u16Strength": 100,
        "u16StrengthMax": 127,
        "u16StrengthMin": 0
    },
    "iso": {
        "index": 2,
        "params": {
            "0": {
                "sharpness": {
                    "au16TextureFreq": 183,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 13,
                    "au8UnderShoot": 58,
                    "au8DetailCtrl": 139,
                    "au8RGain": 28,
                    "au8GGain": 31,
                    "au8BGain": 28,
                    "au8SkinGain": 25,
                    "au16MaxSharpGain": 63
                }
            },
            "1": {
                "sharpness": {
                    "au16TextureFreq": 183,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 13,
                    "au8UnderShoot": 58,
                    "au8DetailCtrl": 139,
                    "au8RGain": 28,
                    "au8GGain": 31,
                    "au8BGain": 28,
                    "au8SkinGain": 25,
                    "au16MaxSharpGain": 63
                }
            },
            "2": {
                "sharpness": {
                    "au16TextureFreq": 183,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 13,
                    "au8UnderShoot": 55,
                    "au8DetailCtrl": 139,
                    "au8RGain": 28,
                    "au8GGain": 31,
                    "au8BGain": 28,
                    "au8SkinGain": 25,
                    "au16MaxSharpGain": 63
                }
            },
            "3": {
                "sharpness": {
                    "au16TextureFreq": 215,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 13,
                    "au8UnderShoot": 55,
                    "au8DetailCtrl": 139,
                    "au8RGain": 28,
                    "au8GGain": 31,
                    "au8BGain": 28,
                    "au8SkinGain": 25,
                    "au16MaxSharpGain": 63
                }
            },
            "4": {
                "sharpness": {
                    "au16TextureFreq": 215,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 19,
                    "au8UnderShoot": 53,
                    "au8DetailCtrl": 128,
                    "au8RGain": 28,
                    "au8GGain": 31,
                    "au8BGain": 28,
                    "au8SkinGain": 25,
                    "au16MaxSharpGain": 63
                }
            },
            "5": {
                "sharpness": {
                    "au16TextureFreq": 183,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 18,
                    "au8UnderShoot": 34,
                    "au8DetailCtrl": 130,
                    "au8RGain": 16,
                    "au8GGain": 45,
                    "au8BGain": 26,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 58
                }
            },
            "6": {
                "sharpness": {
                    "au16TextureFreq": 183,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 11,
                    "au8UnderShoot": 34,
                    "au8DetailCtrl": 130,
                    "au8RGain": 16,
                    "au8GGain": 45,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 42
                }
            },
            "7": {
                "sharpness": {
                    "au16TextureFreq": 183,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 1,
                    "au8UnderShoot": 34,
                    "au8DetailCtrl": 130,
                    "au8RGain": 26,
                    "au8GGain": 45,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 42
                }
            },
            "8": {
                "sharpness": {
                    "au16TextureFreq": 250,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 1,
                    "au8UnderShoot": 28,
                    "au8DetailCtrl": 130,
                    "au8RGain": 8,
                    "au8GGain": 45,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 42
                }
            },
            "9": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 24,
                    "au8UnderShoot": 28,
                    "au8DetailCtrl": 116,
                    "au8RGain": 8,
                    "au8GGain": 45,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            },
            "10": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 96,
                    "au8OverShoot": 40,
                    "au8UnderShoot": 50,
                    "au8DetailCtrl": 120,
                    "au8RGain": 31,
                    "au8GGain": 31,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            },
            "11": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 96,
                    "au8OverShoot": 40,
                    "au8UnderShoot": 50,
                    "au8DetailCtrl": 120,
                    "au8RGain": 31,
                    "au8GGain": 31,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            },
            "12": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 96,
                    "au8OverShoot": 10,
                    "au8UnderShoot": 15,
                    "au8DetailCtrl": 120,
                    "au8RGain": 31,
                    "au8GGain": 31,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            },
            "13": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 96,
                    "au8OverShoot": 10,
                    "au8UnderShoot": 15,
                    "au8DetailCtrl": 120,
                    "au8RGain": 31,
                    "au8GGain": 31,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            },
            "14": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 96,
                    "au8OverShoot": 10,
                    "au8UnderShoot": 15,
                    "au8DetailCtrl": 120,
                    "au8RGain": 31,
                    "au8GGain": 31,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            },
            "15": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 96,
                    "au8OverShoot": 10,
                    "au8UnderShoot": 15,
                    "au8DetailCtrl": 120,
                    "au8RGain": 31,
                    "au8GGain": 31,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            }
        }
    }
}
400 Bad Request

Ошибка проверки переданных параметров

Тело:

Название

Тип
Описание

errors

Array Массив возвращаемых ошибок.

   message

   String    Сообщение с ошибкой.
{
    "errors": [
        {
            "message": "Ошибка получения md настроек: 400 (JSON поле data отсутствует)"
        }
    ]
}
Примеры

CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/v2/camera/picture' \
--data-raw '{
    "u8Contr": 42,
    "u8Luma": 52,
    "u8Satu": 52,
    "u8Hue": 50,
    "wb": {
        "u8RGStrength": 128,
        "u8BGStrength": 128
    },
    "dehaze": {
        "u8strength": 125
    },
    "drc": {
        "u16Strength": 100,
        "u16StrengthMax": 127,
        "u16StrengthMin": 0
    },
    "iso": {
        "index": 2,
        "params": {
            "0": {
                "sharpness": {
                    "au16TextureFreq": 183,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 13,
                    "au8UnderShoot": 58,
                    "au8DetailCtrl": 139,
                    "au8RGain": 28,
                    "au8GGain": 31,
                    "au8BGain": 28,
                    "au8SkinGain": 25,
                    "au16MaxSharpGain": 63
                }
            },
            "1": {
                "sharpness": {
                    "au16TextureFreq": 183,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 13,
                    "au8UnderShoot": 58,
                    "au8DetailCtrl": 139,
                    "au8RGain": 28,
                    "au8GGain": 31,
                    "au8BGain": 28,
                    "au8SkinGain": 25,
                    "au16MaxSharpGain": 63
                }
            },
            "2": {
                "sharpness": {
                    "au16TextureFreq": 183,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 13,
                    "au8UnderShoot": 55,
                    "au8DetailCtrl": 139,
                    "au8RGain": 28,
                    "au8GGain": 31,
                    "au8BGain": 28,
                    "au8SkinGain": 25,
                    "au16MaxSharpGain": 63
                }
            },
            "3": {
                "sharpness": {
                    "au16TextureFreq": 215,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 13,
                    "au8UnderShoot": 55,
                    "au8DetailCtrl": 139,
                    "au8RGain": 28,
                    "au8GGain": 31,
                    "au8BGain": 28,
                    "au8SkinGain": 25,
                    "au16MaxSharpGain": 63
                }
            },
            "4": {
                "sharpness": {
                    "au16TextureFreq": 215,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 19,
                    "au8UnderShoot": 53,
                    "au8DetailCtrl": 128,
                    "au8RGain": 28,
                    "au8GGain": 31,
                    "au8BGain": 28,
                    "au8SkinGain": 25,
                    "au16MaxSharpGain": 63
                }
            },
            "5": {
                "sharpness": {
                    "au16TextureFreq": 183,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 18,
                    "au8UnderShoot": 34,
                    "au8DetailCtrl": 130,
                    "au8RGain": 16,
                    "au8GGain": 45,
                    "au8BGain": 26,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 58
                }
            },
            "6": {
                "sharpness": {
                    "au16TextureFreq": 183,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 11,
                    "au8UnderShoot": 34,
                    "au8DetailCtrl": 130,
                    "au8RGain": 16,
                    "au8GGain": 45,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 42
                }
            },
            "7": {
                "sharpness": {
                    "au16TextureFreq": 183,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 1,
                    "au8UnderShoot": 34,
                    "au8DetailCtrl": 130,
                    "au8RGain": 26,
                    "au8GGain": 45,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 42
                }
            },
            "8": {
                "sharpness": {
                    "au16TextureFreq": 250,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 1,
                    "au8UnderShoot": 28,
                    "au8DetailCtrl": 130,
                    "au8RGain": 8,
                    "au8GGain": 45,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 42
                }
            },
            "9": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 0,
                    "au8OverShoot": 24,
                    "au8UnderShoot": 28,
                    "au8DetailCtrl": 116,
                    "au8RGain": 8,
                    "au8GGain": 45,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            },
            "10": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 96,
                    "au8OverShoot": 40,
                    "au8UnderShoot": 50,
                    "au8DetailCtrl": 120,
                    "au8RGain": 31,
                    "au8GGain": 31,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            },
            "11": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 96,
                    "au8OverShoot": 40,
                    "au8UnderShoot": 50,
                    "au8DetailCtrl": 120,
                    "au8RGain": 31,
                    "au8GGain": 31,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            },
            "12": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 96,
                    "au8OverShoot": 10,
                    "au8UnderShoot": 15,
                    "au8DetailCtrl": 120,
                    "au8RGain": 31,
                    "au8GGain": 31,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            },
            "13": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 96,
                    "au8OverShoot": 10,
                    "au8UnderShoot": 15,
                    "au8DetailCtrl": 120,
                    "au8RGain": 31,
                    "au8GGain": 31,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            },
            "14": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 96,
                    "au8OverShoot": 10,
                    "au8UnderShoot": 15,
                    "au8DetailCtrl": 120,
                    "au8RGain": 31,
                    "au8GGain": 31,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            },
            "15": {
                "sharpness": {
                    "au16TextureFreq": 170,
                    "au16EdgeFreq": 96,
                    "au8OverShoot": 10,
                    "au8UnderShoot": 15,
                    "au8DetailCtrl": 120,
                    "au8RGain": 31,
                    "au8GGain": 31,
                    "au8BGain": 31,
                    "au8SkinGain": 31,
                    "au16MaxSharpGain": 80
                }
            }
        }
    }
}'

/v3/camera/osd

Методы получения и изменения параметров наложения текста на видеопоток (osd).

Видео поток поддерживает отображение до 3-х строк.

Описание параметров

Название

Тип
Описание

size

Integer

Размер отображаемой информации.

text String

Отображаемый текст.

 - Длина строки: 0 - 100 символов

color

String Цвет osd в hex.

date

Object Параметры отображения даты.

   enable

   Boolean    Флаг включения / отключения отображения даты.
   format    String

   Формат отображаемой даты (форматы).

time

Object Параметры отображения времени.

   enable

   Boolean    Флаг включения / отключения отображения времени.
   format    String    Формат отображаемового времени (форматы).

position

Object Параметры смещения текста.

   x

   Integer    Смещение по оси "X" в процентном соотношении.

   y

   Integer    Смещение по оси "Y" в процентном соотношении.

background

Object Параметры отображения фона.

   enable

   Boolean    Флаг включения / отключения фона.
   color    String

   Цвет фона в hex.

GET - Получение параметров
Ответы
200 OK

Успешное получение параметров

Тело:

[
    {
        "size": 2,
        "text": "",
        "color": "0xFFFFFF",
        "date": {
            "enable": true,
            "format": "%d-%m-%Y"
        },
        "time": {
            "enable": true,
            "format": "%H:%M:%S"
        },
        "position": {
            "x": 2,
            "y": 10
        },
        "background": {
            "enable": false,
            "color": "0x0053DE"
        }
    },
    ...,
    {
        "size": 1,
        "text": "",
        "color": "0xFFFFFF",
        "date": {
            "enable": false,
            "format": ""
        },
        "time": {
            "enable": false,
            "format": ""
        },
        "position": {
            "x": 140,
            "y": 0
        },
        "background": {
            "enable": false,
            "color": "0xFFFFFF"
        }
    }
]
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v3/camera/osd'
PUT - Изменение параметров
Запрос

Тело:

[
    {
        "size": 1,
        "text": "Строка 1",
        "color": "0xFFFFFF",
        "date": {
            "enable": false,
            "format": "%d-%m-%Y"
        },
        "time": {
            "enable": false,
            "format": "%H:%M:%S"
        },
        "position": {
            "x": 10,
            "y": 10
        },
        "background": {
            "enable": false,
            "color": "0x000000"
        }
    },
    ...,
    {
        "size": 3,
        "text": "Строка 3",
        "color": "0xFFFFFF",
        "date": {
            "enable": false,
            "format": ""
        },
        "time": {
            "enable": false,
            "format": ""
        },
        "position": {
            "x": 10,
            "y": 60
        },
        "background": {
            "enable": false,
            "color": "0x000000"
        }
    }
]
Ответы
200 OK

 Успешное изменение параметров

Тело:

[
    {
        "size": 1,
        "text": "Строка 1",
        "color": "0xFFFFFF",
        "date": {
            "enable": false,
            "format": "%d-%m-%Y"
        },
        "time": {
            "enable": false,
            "format": "%H:%M:%S"
        },
        "position": {
            "x": 10,
            "y": 10
        },
        "background": {
            "enable": false,
            "color": "0x0053DE"
        }
    },
    ...,
    {
        "size": 3,
        "text": "Строка 3",
        "color": "0xFFFFFF",
        "date": {
            "enable": false,
            "format": ""
        },
        "time": {
            "enable": false,
            "format": ""
        },
        "position": {
            "x": 10,
            "y": 60
        },
        "background": {
            "enable": false,
            "color": "0xFFFFFF"
        }
    }
]
400 Bad Request

Ошибка проверки переданных параметров

Тело:

Название

Тип
Описание

errors

Array Массив возвращаемых ошибок.

   message

   String    Сообщение с ошибкой.
{
    "errors": [
        {
            "message": "Ошибка получения md настроек: 400 (JSON поле data отсутствует)"
        }
    ]
}
Примеры

CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/v3camera/osd' \
--data-raw '[
    {
        "size": 1,
        "text": "Строка 1",
        "color": "0xFFFFFF",
        "date": {
            "enable": false,
            "format": "%d-%m-%Y"
        },
        "time": {
            "enable": false,
            "format": "%H:%M:%S"
        },
        "position": {
            "x": 10,
            "y": 10
        },
        "background": {
            "enable": false,
            "color": "0x0053DE"
        }
    },
    {
        "size": 2,
        "text": "Строка 2",
        "color": "0xFFFFFF",
        "date": {
            "enable": false,
            "format": ""
        },
        "time": {
            "enable": false,
            "format": ""
        },
        "position": {
            "x": 10,
            "y": 30
        },
        "background": {
            "enable": false,
            "color": "0x000000"
        }
    },
    {
        "size": 3,
        "text": "Строка 3",
        "color": "0xFFFFFF",
        "date": {
            "enable": false,
            "format": ""
        },
        "time": {
            "enable": false,
            "format": ""
        },
        "position": {
            "x": 10,
            "y": 60
        },
        "background": {
            "enable": false,
            "color": "0xFFFFFF"
        }
    }
]'


Коды

/openCode

Методы получения и добавления кодов на устройство.

Описание параметров
Название
Тип

Описание

code Integer

Идентификатор "Кода доступа".

panelCode Integer

Номер квартиры к которой привязан "Код доступа".

GET - Получение списка
Ответы
200 OK

Тело:

[
    {
        "code": 12345,
        "panelCode": 0
    }
]
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/openCode'
POST - Добавление кода
Запрос

Тело:

{
    "code": 12345,
    "panelCode": 0
}
Ответы
201 OK

 Успешное добавление кода

Тело:

[
    {
        "code": 12345,
        "panelCode": 0
    }
]
400 Bad Request

Ошибка проверки переданных параметров

Тело:

Название
Тип

Описание

errors Array

Массив возвращаемых ошибок.

   field    String

   Название переменной к которой относиться ошибка.

   message    String

   Сообщение об ошибки для поля "field".

{
    "errors": [
        {
            "message": "Код 12345 уже существует"
        }
    ]
}
Примеры

 CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request POST 'http://192.168.0.100:80/openCode' \
--data-raw '{
    "code": 12345,
    "panelCode": 0
}'

/openCode/clear

Метод очистки кодов на устройстве.

DELETE - Удаление кодов
Ответы
204 OK

Успешное удаление кодов

Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request DELETE 'http://192.168.0.100:80/openCode/clear'

/openCode/{номер квартиры}

Методы получения и изменения кодов у указанной квартиры. 

Описание параметров
Название
Тип

Описание

code Integer

Идентификатор "Кода доступа".

panelCode Integer

Номер квартиры к которой привязан "Код доступа".

GET - Получение кодов
Ответы
200 OK

Успешное получение списка кодов

Тело:

[
    {
        "code": 12345,
        "panelCode": 0
    }
]
400 Bad Request

 Ошибка проверки переданных параметров

Тело:

Название
Тип

Описание

errors Array

Массив возвращаемых ошибок.

   field    String

   Название переменной к которой относиться ошибка.

   message    String

   Сообщение об ошибки для поля "field".

{
    "errors": [
        {
            "message": "Неверный формат номера квартиры"
        }
    ]
}
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/openCode/0'
DELETE - Удаление кодов
Ответы
204 OK

 Успешное удаление кодов для указанной квартиры

400 Bad Request

 Ошибка проверки переданных параметров

Тело:

Название
Тип

Описание

errors Array

Массив возвращаемых ошибок.

   field    String

   Название переменной к которой относиться ошибка.

   message    String

   Сообщение об ошибки для поля "field".

{
    "errors": [
        {
            "message": "Неверный формат номера квартиры"
        }
    ]
}
404 Not Found

 Ошибка при удалении не существующих кодов для указанной квартиры

Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request DELETE 'http://192.168.0.100:80/openCode/1'

/openCode/{номер квартиры}/{идентификатор кода}

Метод удаления указанного кода для указанной квартиры.

DELETE - Удаление кода
Ответы
204 OK

 Успешное удаление кода

400 Bad Request

 Ошибка проверки переданных параметров

Тело:

Название
Тип

Описание

errors Array

Массив возвращаемых ошибок.

   field    String

   Название переменной к которой относиться ошибка.

   message    String

   Сообщение об ошибки для поля "field".

{
    "errors": [
        {
            "message": "Неверный формат номера квартиры"
        }
    ]
}
404 Not Found

Ошибка при удалении не существующего кода для указанной квартиры

Тело:

Название

Тип
Описание

errors

Object

Массив возвращаемых ошибок.

   message

   String

   Сообщение об ошибке.

{
    "errors": [
        {
            "message": "Код в указанной квартире не существует"
        }
    ]
}
Примеры

CURL: 

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request DELETE 'http://192.168.0.100:80/openCode/0/12345'

/openCode/settings

Метод получения и изменения параметров кодов открытия

Описание параметров

Название

Тип
Описание

commonCode

Object

   enable

   Boolean Флаг включения общего кода
По умолчанию: false

   value

   Integer Значение общего кода
По умолчанию: 0
Ограничения: уникальный код в пределах 10000...99999
GET - Получение параметров
Ответы
200 OK

 Успешное получение данных

Тело: 

{
    "commonCode": {
        "enable": false,
        "value": 12349
    }
}
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET '192.168.0.100/openCode/settings'
PUT - Изменение параметров
Запрос

Тело:

{
    "commonCode": {
        "enable": false,
        "value": 12345
    }
}
Ответы
200 OK

 Успешное получение данных

Тело: 

{
    "commonCode": {
        "enable": false,
        "value": 12345
    }
}
400 Bad Requst

Ошибка проверки переданных параметров

Тело:

Название

Тип
Описание

errors

Array Массив возвращаемых ошибок.

   message

   String    Сообщение с ошибкой.
{
    "errors": [
        {
            "message": "Код 12345 уже существует"
        }
    ]
}

* * *

{
    "errors": [
        {
            "message": "Общий код может быть выбран из диапазона от 10000 до 99999"
        }
    ]
}
Примеры

CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT '192.168.0.100/openCode/settings' \
--data '{
    "commonCode": {
        "enable": false,
        "value": 12345
    }
}'
DELETE - Удаление параметров
Ответы
204 OK

Успешное удаление общего кода

Примеры

CURL:

curl \
--request DELETE '192.168.0.100/openCode/settings' \

Ключи

/key/settings

Методы получение и изменения параметров панели при взаимодействии с ключами.

Описание параметров
Название
Тип

Описание

inverse_uid_open Boolean

Режим проверки обратного идентификатора ключа.

 - По умолчанию: true


ВАЖНО: Панель приложенный ключ проверит  два раза прямой и обратный идентификатор т.е. AABBCCDD и DDCCBBAA.

any_key_open Boolean

Режим открытия двери любым ключом.

 - По умолчанию: true

 

ВАЖНО: При включенном режиме ключи приложенные к считывателю не записываются в базу данных.

ВАЖНО: Режим автосбора ключей будет проигнорирован, если включен данный режим.

autocollect Object

Параметры режима автосбора ключей.

   enabled    Boolean

   Флаг включения / выключения режима.

    - По умолчанию: false

   room    Integer

   Номер квартиры к которой будут привязаны приложенные ключи.

    - По умолчанию: 0

   keyMask    String

   Маска идентификатора ключа

    - По умолчанию: xxxxxxxxxxxxxx


ВАЖНО: На панель будет добавлены только те ключи, которые пройдут маску.

   access    Object

   Параметры назначаемых доступов добавленных через режим автосбора ключей.

      main       Boolean

      Доступ на открытие основной двери.

      - По умолчанию: true

      second       Boolean

      Доступ на открытие дополнительной двери.

      - По умолчанию: false

      gates       Object

      Параметры доступов на открытие внешних модулей NCS-102.

         0-3          Boolean

         Доступ на открытие внешних модулей NCS-102 с адресами 0-3.

         - По умолчанию: false

encryption Object

Параметры проверки шифрованных ключей.

    enabled    Boolean

   Флаг включения / выключения режима.

    - По умолчанию: false

   key_type    String

   Тип ключа для авторизации в сектор ключа.

    - Ограничения: A, B

    - По умолчанию: A

   key_auth    String

   Значение ключа для авторизации в сектор ключа.

    - Длина строки: 12 символов (16-ой системе)

    - По умолчанию: FFFFFFFFFFFF

   sector   Integer

   Сектор, который будет проверяться на шифрование.

    - Ограничения: 0 - 15, 255

    - По умолчанию: 255

   increment    Object

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

      enabled       Boolean

      Флаг включения / выключения режима.

       - По умолчанию: false

      block       Integer

     Блок в котором будет увеличиваться значение инкремента.

      - Ограничения: 0 - 2

      - По умолчанию: 0

      openByError       Boolean

      Флаг открытия двери при ошибке инкремента.

      - По умолчанию: false

GET - Получение параметров
Ответы
200 OK

Успешное получение параметров

Тело:

{
  "inverse_uid_open": false,
  "any_key_open": false,
  "autocollect": {
    "enabled": true,
    "room": 0,
    "keyMask": "xxxxxxxxxxxxxx",
    "access": {
      "main": true,
      "second": false,
      "gates": {
        "0": false,
        "1": false,
        "2": false,
        "3": false
      }
    }
  },
  "encryption": {
    "increment": {
      "enabled": false,
      "block": null,
      "openByError": false
    },
    "enabled": false,
    "key_type": "A",
    "key_auth": "FFFFFFFFFFFF",
    "sector": 255
  }
}
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/key/settings'
PUT - Изменение параметров
Запрос

Тело:

{
  "inverse_uid_open": false,
  "any_key_open": false,
  "autocollect": {
    "enabled": true,
    "room": 0,
    "keyMask": "xxxxxxxxxxxxxx",
    "access": {
      "main": true,
      "second": false,
      "gates": {
        "0": false,
        "1": false,
        "2": false,
        "3": false
      }
    }
  },
  "encryption": {
    "increment": {
      "enabled": false,
      "block": null,
      "openByError": false
    },
    "enabled": false,
    "key_type": "A",
    "key_auth": "FFFFFFFFFFFF",
    "sector": 255
  }
}
Ответы
200 OK

Успешное получение параметров

Тело:

{
  "inverse_uid_open": false,
  "any_key_open": false,
  "autocollect": {
    "enabled": true,
    "room": 0,
    "keyMask": "xxxxxxxxxxxxxx",
    "access": {
      "main": true,
      "second": false,
      "gates": {
        "0": false,
        "1": false,
        "2": false,
        "3": false
      }
    }
  },
  "encryption": {
    "increment": {
      "enabled": false,
      "block": null,
      "openByError": false
    },
    "enabled": false,
    "key_type": "A",
    "key_auth": "FFFFFFFFFFFF",
    "sector": 255
  }
}
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/key/settings' \
--data-raw '{
  "inverse_uid_open": false,
  "any_key_open": false,
  "autocollect": {
    "enabled": true,
    "room": 0,
    "keyMask": "xxxxxxxxxxxxxx",
    "access": {
      "main": true,
      "second": false,
      "gates": {
        "0": false,
        "1": false,
        "2": false,
        "3": false
      }
    }
  },
  "encryption": {
    "increment": {
      "enabled": false,
      "block": null,
      "openByError": false
    },
    "enabled": false,
    "key_type": "A",
    "key_auth": "FFFFFFFFFFFF",
    "sector": 255
  }
}'

/key/store

Методы получения и добавления ключей.

Описание параметров
Название
Тип

Описание

uuid String

Идентификатор ключа.

panelCode Integer

Номер квартиры к которой привязан ключ.

encryption Boolean

Флаг включения / выключения персональной проверки шифрования.

 

ВАЖНО! Работает при включенном общем параметре "Проверка шифрования".

access Object

Флаги доступа ко входам

   main    Boolean

   Флаг открытия первого входа. 

   second    Boolean

   Флаг открытия второго входа. 

   gates    Object

   Флаги открытия внешних входов.

      0, 1, 2, 3       Boolean

      Флаг открытия внешнего входа. 

GET - Получение ключей
Ответы
200 OK

 Успешное получение списка ключей

Тело:

[
    {
        "uuid": "000000AABBCCDD",
        "panelCode": 1,
        "encryption": true,
        "access": {
            "main": true,
            "second": false,
            "gates": {
                "0": false,
                "1": false,
                "2": false,
                "3": false
            }
        }
    }
]
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/key/store'
POST - Добавление ключа
Запрос

Тело:

{
  "uuid": "000000AABBCCDD",
  "panelCode": 1,
  "encryption": true,
  "access": {
    "main": true,
    "second": false,
    "gates": {
      "0": false,
      "1": false,
      "2": false,
      "3": false
    }
  }
}
Ответы
200 OK

 Успешное добавление ключа

Тело:

[
    {
        "uuid": "000000AABBCCDD",
        "panelCode": 1,
        "encryption": true,
        "access": {
            "main": true,
            "second": false,
            "gates": {
                "0": false,
                "1": false,
                "2": false,
                "3": false
            }
        }
    }
]
400 Bad Request

Ошибка проверки переданных параметров

Тело:

Название
Тип

Описание

errors Array

Массив возвращаемых ошибок.

   field    String

   Название переменной к которой относиться ошибка.

   message    String

   Сообщение об ошибки для поля "field".

{
    "errors": [
        {
            "message": "Ключ уже существует - 000000AABBCCDD"
        }
    ]
}
Примеры

CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request POST 'http://192.168.0.100:80/key/store' \
--data-raw '{
  "uuid": "000000AABBCCDD",
  "panelCode": 1,
  "encryption": true,
  "access": {
    "main": true,
    "second": false,
    "gates": {
      "0": false,
      "1": false,
      "2": false,
      "3": false
    }
  }
}'

/key/store/clear

Метод удаления всех ключей.

DELETE - Удаление ключей
Ответы
204 OK

 Успешное удаление ключей

Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request DELETE 'http://192.168.0.100:80/key/store/clear'

/key/store/merge

Метод изменения указанных ключей.

Описание параметров
Название
Тип

Описание

uuid String

Идентификатор ключа.

panelCode Integer

Номер квартиры к которой привязан ключ.

encryption Boolean

Флаг включения / выключения персональной проверки шифрования.

 

ВАЖНО! Работает при включенном общем параметре "Проверка шифрования".

access Object

Флаги доступа ко входам

   main    Boolean

   Флаг открытия первого входа. 

   second    Boolean

   Флаг открытия второго входа. 

   gates    Object

   Флаги открытия внешних входов.

      0, 1, 2, 3       Boolean

      Флаг открытия внешнего входа. 

PUT - Изменение ключей
Запрос

Тело:

[
    {
        "uuid": "000000BBCCDDEE",
        "panelCode": 1,
        "encryption": true,
        "access": {
            "main": true,
            "second": false,
            "gates": {
                "0": false,
                "1": false,
                "2": false,
                "3": false
            }
        }
    }
]
Ответы
200 OK

Успешное изменение ключей

Тело:

[
  {
    "uuid": "000000AABBCCDD",
    "panelCode": 1,
    "encryption": true,
    "access": {
      "main": true,
      "second": false,
      "gates": {
        "0": false,
        "1": false,
        "2": false,
        "3": false
      }
    }
  },
  {
    "uuid": "000000BBCCDDEE",
    "panelCode": 1,
    "encryption": true,
    "access": {
      "main": true,
      "second": false,
      "gates": {
        "0": false,
        "1": false,
        "2": false,
        "3": false
      }
    }
  }
]
400 Bad Request

Ошибка проверки переданных параметров

Тело:

Название
Тип

Описание

errors Array

Массив возвращаемых ошибок.

   field    String

   Название переменной к которой относиться ошибка.

   message    String

   Сообщение об ошибки для поля "field".

{
    "errors": [
        {
            "message": "Номер квартиры должен быть от 0 до 9999"
        }
    ]
}
Примеры

 CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/key/store/merge' \
--data-raw '[
  {
    "uuid": "000000BBCCDDEE",
    "panelCode": 1,
    "encryption": true,
    "access": {
      "main": true,
      "second": false,
      "gates": {
        "0": false,
        "1": false,
        "2": false,
        "3": false
      }
    }
  }
]'

/key/store/{идентификатор ключа}

Методы получения и изменения указанного ключа.

Описание параметров
Название
Тип

Описание

uuid String

Идентификатор ключа.

panelCode Integer

Номер квартиры к которой привязан ключ.

encryption Boolean

Флаг включения / выключения персональной проверки шифрования.

 

ВАЖНО! Работает при включенном общем параметре "Проверка шифрования".

access Object

Флаги доступа ко входам

   main    Boolean

   Флаг открытия первого входа. 

   second    Boolean

   Флаг открытия второго входа. 

   gates    Object

   Флаги открытия внешних входов.

      0, 1, 2, 3       Boolean

      Флаг открытия внешнего входа. 

GET - Получение параметров
Ответы
200 OK

Успешное получение параметров

Тело:

{
    "uuid": "000000AABBCCDD",
    "panelCode": 1,
    "encryption": true,
    "access": {
        "main": true,
        "second": false,
        "gates": {
            "0": false,
            "1": false,
            "2": false,
            "3": false
        }
    }
}
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100/key/store/000000AABBCCDD'
PUT - Изменение параметров

В прошивках позднее 08.08.2024: если использовать этот метод для ключа, которого нет в БД, то такой ключ будет добавлен в БД

Запрос

Тело:

{
    "uuid": "000000AABBCCDD",
    "panelCode": 1,
    "encryption": true,
    "access": {
        "main": true,
        "second": false,
        "gates": {
            "0": false,
            "1": false,
            "2": false,
            "3": false
        }
    }
}
Ответы
200 OK

 Успешное изменение параметров

Тело:

{
    "uuid": "000000AABBCCDD",
    "panelCode": 1,
    "encryption": true,
    "access": {
        "main": true,
        "second": false,
        "gates": {
            "0": false,
            "1": false,
            "2": false,
            "3": false
        }
    }
}
Примеры

CURL: 

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/key/store/000000AABBCCDD' \
--data-raw '{
    "uuid": "000000AABBCCDD",
    "panelCode": 1,
    "encryption": true,
    "access": {
        "main": true,
        "second": false,
        "gates": {
            "0": false,
            "1": false,
            "2": false,
            "3": false
        }
    }
}'
DELETE - Удаление ключа
Ответы
200 OK

Успешное удаление ключа 

400 Bad Request

Ошибка проверки переданных параметров

Тело:

Название
Тип

Описание

errors Array

Массив возвращаемых ошибок.

   field    String

   Название переменной к которой относиться ошибка.

   message    String

   Сообщение об ошибки для поля "field".

{
    "errors": [
        {
            "field": "uuid",
            "message": "Ключ не является HEX-строкой: 0000000000-123"
        }
    ]
}
404 Not Found

  Ошибка при удалении не существующего ключа для указанной квартиры

Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request DELETE 'http://192.168.0.100:80/key/store/000000AABBCCDD'

/key/{номер квартиры}

Методы для работы с ключами, привязанными к конкретной квартире

Метод не доступен для устройств на прошивке ниже 2.5.0.9.4 (включительно).

DELETE - Удаление ключей конкретной квартиры
Ответы
204 OK

Успешное удаление ключей

400 Bad Request

Ошибка проверки переданных параметров

Тело:

Название
Тип

Описание

errors Array

Массив возвращаемых ошибок.

   field    String

   Название переменной к которой относиться ошибка.

   message    String

   Сообщение об ошибки для поля "field".

{
    "errors": [
        {
            "message": "Номер квартиры не найден"
        }
    ]
}
404 Not Found

  Ошибка при удалении не существующего ключа для указанной квартиры

Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY='
--request DELETE '192.168.1.51/key/34' \

/v1/key/markup/mifare

Методы получения и изменения разметки "Mifare" для прошивки ключей.

Описание параметров
Название
Тип

Описание

enabled Boolean

Флаг включения / выключения прошивки ключей.

 - По умолчанию: false

numSectors Integer

Количество прошиваемых секторов за раз в момент удержания ключа.

 - Ограничения: 1 - 16

 - По умолчанию: 16

markup Object

Разметка для прошивки Mifare ключей по протоколу SL1.

   0 - 15    String

   Поддерживаемые сектора для прошивки в ключах.

      skip       Object

      Параметры пропуска указанного сектора.

          err          Boolean

         Пропуск сектора при ошибке во время прошивки.

          - По умолчанию: false

          always          Boolean

         Пропуск сектора при любых действиях.

          - По умолчанию: false

      key       Object

      Параметры авторизации в сектор ключа.

         type          String

         Тип ключа для авторизации в сектор ключа.

          - Ограничения: A, B

          - По умолчанию: A

         value          String

         Значение ключа для авторизации в сектор ключа.

          - Длина строки: 12 символов (16-ой системе)

          - По умолчанию: FFFFFFFFFFFF

      0 - 3       String

      Блоки для указания различной информации.

 

      ВАЖНО! Блок под номером 3 является управляющим блоком. Настоятельно рекомендуем ознакомиться с возможными данными для указания в данный блок. 

GET - Получение параметров
Ответы
200 OK

Успешное получение параметров

Тело:

{
    "enable": false,
    "numSectors": 16,
    "markup": {
        "0": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        ...,
        "15": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        }
    }
}
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v1/key/markup/mifare'
PUT - Изменение параметров
Запрос

Тело:

{
    "enable": false,
    "numSectors": 16,
    "markup": {
        "0": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "1": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "2": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "3": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "4": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "5": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "6": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "7": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "8": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "9": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "10": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "11": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "12": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "13": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "14": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "15": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        }
    }
}
Ответы
200 OK

 Успешное изменение параметров

Тело:

{
    "enable": false,
    "numSectors": 16,
    "markup": {
        "0": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        ...,
        "15": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        }
    }
}
Примеры

 CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/v1/key/markup/mifare' \
--data-raw '{
    "enable": false,
    "numSectors": 16,
    "markup": {
        "0": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "1": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "2": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "3": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "4": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "5": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "6": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "7": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "8": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "9": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "10": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "11": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "12": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "13": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "14": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        },
        "15": {
            "skip": {
                "err": true,
                "always": true
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": null,
            "2": null,
            "1": null,
            "0": null
        }
    }
}'
DELETE - Сброс параметров к стандартным
Ответы
204 OK

Успешный сброс параметров

Пример

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v1/key/markup/mifare'

Квартиры

/panelCode

Методы получения и добавления квартир на устройство.

Описание параметров
Название
Тип

Описание

panelCode Integer

Номер квартиры.

callsEnabled Object

Параметры разрешения вызовов в АТ и SIP.

   sip     Boolean

   Флаг включения / выключения вызовов в SIP. 

   - По умолчанию: true

   handset    Boolean

   Флаг включения / выключения вызовов в АТ.

   - По умолчанию: true

soundOpenTh Boolean

Флаг включения / выключения звука открытия двери при открытии привязанным ключом к квартире.

debtor

с версий позже 30.07.2024

Boolean

Флаг, обозначающий квартиру должника.

    - По умолчанию: false

 

При включенном оффлайн-ассистенте и установке этого флага, житель этой квартиры будет получать звуковое уведомление из динамика домофона, когда прикладывает свой ключ и ключ открывает дверь.

volumes Object

Персональные громкости при вызове в квартиру.

 

Важно! Значения "255" или "null" означают, что используются не персональные настройки квартир, а общие настройки для квартир.

   thCall    Integer

   Громкость мелодии трубки во время вызова в АТ.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   thTalk    Integer

   Громкость в трубке во время разговора по АТ.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   uartFrom    Integer

   Громкость на панели во время разговора по SIP.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   uartTo    Integer

   Усиление микрофона панели во время разговора по SIP.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   panelCall    Integer

   Системные звуки панели.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   panelTalk    Integer

   Громкость на панели во время разговора по АТ.

     - Ограничения: 0 - 254, 255 или null

     - По умолчанию: null

resistances Object

Параметры сопротивления трубки для смены состояний.

 

Важно! Значения "255" или "null" означают, что используются не персональные настройки квартир, а общие настройки для квартир.

   quiescent

   Integer

   Уровень поднятия трубки.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   answer    Integer

   Уровень открытия двери.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

GET - Получение квартир
Ответы
200 OK

Успешное получение квартир

Тело:

[
    {
        "panelCode": 1,
        "callsEnabled": {
            "sip": true,
            "handset": true
        },
        "soundOpenTh": null,
        "debtor": false,
        "volumes": {
            "thCall": null,
            "thTalk": null,
            "uartFrom": null,
            "uartTo": null,
            "panelCall": null,
            "panelTalk": null
        },
        "resistances": {
            "quiescent": null,
            "answer": null
        },
        "sipAccounts": [
            "1"
        ]
    },
    ...,
    {
        "panelCode": 100,
        "callsEnabled": {
            "sip": true,
            "handset": true
        },
        "soundOpenTh": null,
        "debtor": false,
        "volumes": {
            "thCall": null,
            "thTalk": null,
            "uartFrom": null,
            "uartTo": null,
            "panelCall": null,
            "panelTalk": null
        },
        "resistances": {
            "quiescent": null,
            "answer": null
        },
        "sipAccounts": [
            "100"
        ]
    }
]
Примеры

CURL:

curl 
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/panelCode'
POST - Добавление квартиры
Запрос

Тело:

{
    "panelCode": 1,
    "callsEnabled": {
        "sip": false,
        "handset": true
    },
    "soundOpenTh": null,
    "debtor": false,
    "volumes": {
        "thCall": null,
        "thTalk": null,
        "uartFrom": null,
        "uartTo": null,
        "panelCall": null,
        "panelTalk": null
    },
    "resistances": {
        "quiescent": null,
        "answer": null
    }
}
Ответы
200 OK

Успешное добавление квартиры

Тело:

{
    "panelCode": 1,
    "callsEnabled": {
        "sip": false,
        "handset": true
    },
    "soundOpenTh": null,
    "debtor": false,
    "volumes": {
        "thCall": null,
        "thTalk": null,
        "uartFrom": null,
        "uartTo": null,
        "panelCall": null,
        "panelTalk": null
    },
    "resistances": {
        "quiescent": null,
        "answer": null
    }
}
400 Bad Request

Ошибка при добавлении существующей квартиры

Тело:

Название
Тип

Описание

errors Array

Массив возвращаемых ошибок.

   field    String

   Название переменной к которой относиться ошибка.

   message    String

   Сообщение об ошибки для переменной из поля "field".

{
    "errors": [
        {
            "field": "panelCode",
            "message": "Квартира уже существует - 1"
        }
    ]
}
Примеры

 CURL:

curl 
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request POST 'http://192.168.0.100:80/panelCode' \
--data-raw '{
    "panelCode": 1,
    "callsEnabled": {
        "sip": false,
        "handset": true
    },
    "soundOpenTh": null,
    "debtor": false,
    "volumes": {
        "thCall": null,
        "thTalk": null,
        "uartFrom": null,
        "uartTo": null,
        "panelCall": null,
        "panelTalk": null
    },
    "resistances": {
        "quiescent": null,
        "answer": null
    }
}'

/v1/panelCode

Методы получения и добавления квартир на устройство.

Описание параметров
Название
Тип

Описание

panelCode Integer

Номер квартиры.

callsEnabled Object

Параметры разрешения вызовов в АТ и SIP.

   sip     Boolean

   Флаг включения / выключения вызовов в SIP. 

   - По умолчанию: true

   handset    Boolean

   Флаг включения / выключения вызовов в АТ.

   - По умолчанию: true

soundOpenTh Boolean

Флаг включения / выключения звука открытия двери при открытии привязанным ключом к квартире.

debtor

с версий позже 30.07.2024

Boolean

Флаг, обозначающий квартиру должника.

    - По умолчанию: false

 

При включенном оффлайн-ассистенте и установке этого флага, житель этой квартиры будет получать звуковое уведомление из динамика домофона, когда прикладывает свой ключ и ключ открывает дверь.

volumes Object

Персональные громкости при вызове в квартиру.

 

Важно! Значения "255" или "null" означают, что используются не персональные настройки квартир, а общие настройки для квартир.

   thCall    Integer

   Громкость мелодии трубки во время вызова в АТ.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   thTalk    Integer

   Громкость в трубке во время разговора по АТ.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   uartFrom    Integer

   Громкость на панели во время разговора по SIP.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   uartTo    Integer

   Усиление микрофона панели во время разговора по SIP.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   panelCall    Integer

   Системные звуки панели.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   panelTalk    Integer

   Громкость на панели во время разговора по АТ.

     - Ограничения: 0 - 254, 255 или null

     - По умолчанию: null

resistances Object

Параметры сопротивления трубки для смены состояний.

 

Важно! Значения "255" или "null" означают, что используются не персональные настройки квартир, а общие настройки для квартир.

   quiescent

   Integer

   Уровень поднятия трубки.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   answer    Integer

   Уровень открытия двери.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

GET - Получение квартир
Ответы
200 OK

Успешное получение квартир

Тело:

[
    {
        "panelCode": 1,
        "callsEnabled": {
            "sip": true,
            "handset": true
        },
        "soundOpenTh": null,
        "debtor": false,
        "volumes": {
            "thCall": null,
            "thTalk": null,
            "uartFrom": null,
            "uartTo": null,
            "panelCall": null,
            "panelTalk": null
        },
        "resistances": {
            "quiescent": null,
            "answer": null
        }
    },
    ...,
    {
        "panelCode": 100,
        "callsEnabled": {
            "sip": true,
            "handset": true
        },
        "soundOpenTh": null,
        "debtor": false,
        "volumes": {
            "thCall": null,
            "thTalk": null,
            "uartFrom": null,
            "uartTo": null,
            "panelCall": null,
            "panelTalk": null
        },
        "resistances": {
            "quiescent": null,
            "answer": null
        }
    }
]
Примеры

CURL:

curl 
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v1/panelCode'
POST - Добавление квартиры
Запрос

Тело:

{
    "panelCode": 1,
    "callsEnabled": {
        "sip": false,
        "handset": true
    },
    "soundOpenTh": null,
    "debtor": false,
    "volumes": {
        "thCall": null,
        "thTalk": null,
        "uartFrom": null,
        "uartTo": null,
        "panelCall": null,
        "panelTalk": null
    },
    "resistances": {
        "quiescent": null,
        "answer": null
    }
}
Ответы
200 OK

Успешное добавление квартиры

Тело:

{
    "panelCode": 1,
    "callsEnabled": {
        "sip": false,
        "handset": true
    },
    "soundOpenTh": null,
    "debtor": false,
    "volumes": {
        "thCall": null,
        "thTalk": null,
        "uartFrom": null,
        "uartTo": null,
        "panelCall": null,
        "panelTalk": null
    },
    "resistances": {
        "quiescent": null,
        "answer": null
    }
}
400 Bad Request

Ошибка при добавлении существующей квартиры

Тело:

Название
Тип

Описание

errors Array

Массив возвращаемых ошибок.

   field    String

   Название переменной к которой относиться ошибка.

   message    String

   Сообщение об ошибки для переменной из поля "field".

{
    "errors": [
        {
            "field": "panelCode",
            "message": "Квартира уже существует - 1"
        }
    ]
}
Примеры

 CURL:

curl 
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request POST 'http://192.168.0.100:80/v1/panelCode' \
--data-raw '{
    "panelCode": 1,
    "callsEnabled": {
        "sip": false,
        "handset": true
    },
    "soundOpenTh": null,
    "debtor": false,
    "volumes": {
        "thCall": null,
        "thTalk": null,
        "uartFrom": null,
        "uartTo": null,
        "panelCall": null,
        "panelTalk": null
    },
    "resistances": {
        "quiescent": null,
        "answer": null
    }
}'

/panelCode/clear

Метод удаления всех квартир с устройства.

DELETE - Удаление квартир
Ответы
204 OK

 Успешное удаление квартир

Примеры

 CURL:

curl 
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request DELETE 'http://192.168.0.100:80/panelCode/clear'

/panelCode/settings

Методы получения и изменения параметров "SOS" и "Консьерж".

Описание параметров

Название

Тип Описание

consiergeRoom

String

"Номер квартиры" или "SIP аккаунт" на который будет вызов при нажатии на кнопку "Консьерж". 

 - По умолчанию: 999

sosRoom

String

"Номер квартиры" или "SIP аккаунт" на который будет вызов при нажатии на кнопку "SOS".  

 - По умолчанию: ""

sosDelay

Boolean

Флаг включения / выключения задержки при нажатии кнопки "SOS". 

 - По умолчанию: true

sosDelayTime

Integer

Время которое необходимо удерживать кнопку "SOS" для совершения вызова. 

 - Ограничения: 1 - 10 секунд

 - По умолчанию: 3 секунды

- Для установления значения по умолчанию также можно записать 0 или 255

sosType

Boolean

Тип отображаемой строки при удержании кнопки "SOS".

 - true - "112";

 - false - "SOS".

 - По умолчанию: true

soundOpenPanel

Boolean

Флаг включения / выключения звуков открытия и ошибок при прикладывании ключа. 

 - По умолчанию: true

soundOpenTh

Boolean

Флаг включения / выключения звуков открытия при прикладывании ключа привязанного к квартире.

 - По умолчанию: false

typeSound Integer

Общий тип эхоподавления используемый для персональных настроек квартир со значением "255" или "null".

 - Ограничение: 0, 1, 3

 - По умолчанию: 3

GET - Получение параметров
Ответы
200 OK

Успешное получение параметров

Тело: 

{
    "consiergeRoom": "999",
    "sosRoom": "",
    "sosDelay": true,
    "soundOpenPanel": true,
    "soundOpenTh": false,
    "typeSound": 3,
    "sosType": true,
    "sosDelayTime": 255
}
Примеры

CURL:

curl 
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/panelCode/settings'
PUT - Изменение параметров
Запрос

Тело:

{
    "consiergeRoom": "999",
    "sosRoom": "",
    "sosDelay": true,
    "soundOpenPanel": true,
    "soundOpenTh": false,
    "typeSound": 3,
    "sosType": true,
    "sosDelayTime": 255
}
Ответы
200 OK

Успешное изменение параметров 

Тело:

{
    "consiergeRoom": "999",
    "sosRoom": "",
    "sosDelay": true,
    "soundOpenPanel": true,
    "soundOpenTh": false,
    "typeSound": 3,
    "sosType": true,
    "sosDelayTime": 255
}
Примеры

 CURL:

curl 
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/panelCode/settings' \
--data-raw '{
    "consiergeRoom": "999",
    "sosRoom": "",
    "sosDelay": true,
    "soundOpenPanel": true,
    "soundOpenTh": false,
    "typeSound": 3,
    "sosType": true,
    "sosDelayTime": 255
}'

/panelCode/diag

Метод массового замера уровня сопротивления абонентских трубок для указанных квартир.

Описание параметров

Название

Тип Описание

1 - 5

Object Номер квартиры к которой относятся данные.

   resist

   Integer

   Значение сопротивления измеренное панелью.

    - Ограничения: 0 - 255

   status

   String

   Положение трубки полученное из ограничений общих параметров "quiesence" и "answer"

    - Ограничения:

      - down - положенная трубка (зеленый);

      - up - поднятая трубка (желтый);

      - error - ошибка при замере (красный).

   error

   String    Сообщение ошибки при значении "error" в параметре "status". 
POST - Получение замеров
Запрос

Тело:

[1, 2, 3, 4, 5]
Ответы
200 OK

 Успешное получение замеров

Тело:

{
    "1": {
        "resist": 75,
        "status": "down"
    },
    "2": {
        "resist": 190,
        "status": "up"
    },
    "3": {
        "resist": 0,
        "status": "error",
        "error": "Обрыв трубки, кв. 3"
    },
    "4": {
        "resist": 0,
        "status": "error",
        "error": "Обрыв трубки, кв. 4"
    },
    "5": {
        "resist": 0,
        "status": "error",
        "error": "Обрыв трубки, кв. 5"
    }
}
Примеры

CURL:

curl 
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request POST 'http://192.168.0.100:80/panelCode/diag' \
--data-raw '[1, 2, 3, 4, 5]'

/panelCode/{номер квартиры}

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

Описание параметров
Название
Тип

Описание

panelCode Integer

Номер квартиры.

callsEnabled Object

Параметры разрешения вызовов в АТ и SIP.

   sip     Boolean

   Флаг включения / выключения вызовов в SIP. 

   - По умолчанию: true

   handset    Boolean

   Флаг включения / выключения вызовов в АТ.

   - По умолчанию: true

soundOpenTh Boolean

Флаг включения / выключения звука открытия двери при открытии привязанным ключом к квартире.

debtor

с версий позже 30.07.2024

Boolean

Флаг, обозначающий квартиру должника.

    - По умолчанию: false

 

При включенном оффлайн-ассистенте и установке этого флага, житель этой квартиры будет получать звуковое уведомление из динамика домофона, когда прикладывает свой ключ и ключ открывает дверь.

volumes Object

Персональные громкости при вызове в квартиру.

 

Важно! Значения "255" или "null" означают, что используются не персональные настройки квартир, а общие настройки для квартир.

   thCall    Integer

   Громкость мелодии трубки во время вызова в АТ.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   thTalk    Integer

   Громкость в трубке во время разговора по АТ.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   uartFrom    Integer

   Громкость на панели во время разговора по SIP.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   uartTo    Integer

   Усиление микрофона панели во время разговора по SIP.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   panelCall    Integer

   Системные звуки панели.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   panelTalk    Integer

   Громкость на панели во время разговора по АТ.

     - Ограничения: 0 - 254, 255 или null

     - По умолчанию: null

resistances Object

Параметры сопротивления трубки для смены состояний.

 

Важно! Значения "255" или "null" означают, что используются не персональные настройки квартир, а общие настройки для квартир.

   quiescent

   Integer

   Уровень поднятия трубки.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   answer    Integer

   Уровень открытия двери.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

GET - Получение параметров
Ответы
200 OK

Успешное получение параметров

Тело:

{
    "panelCode": 1,
    "callsEnabled": {
        "sip": true,
        "handset": true
    },
    "soundOpenTh": null,
    "debtor": false,
    "volumes": {
        "thCall": null,
        "thTalk": null,
        "uartFrom": null,
        "uartTo": null,
        "panelCall": null,
        "panelTalk": null
    },
    "resistances": {
        "quiescent": null,
        "answer": null
    }
}
Примеры

CURL: 

curl 
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/panelCode/1'
PUT - Изменение параметров
Запрос

Тело:

{
    "panelCode": 1,
    "callsEnabled": {
        "sip": true,
        "handset": true
    },
    "soundOpenTh": null,
    "debtor": false,
    "volumes": {
        "thCall": null,
        "thTalk": null,
        "uartFrom": null,
        "uartTo": null,
        "panelCall": null,
        "panelTalk": null
    },
    "resistances": {
        "quiescent": null,
        "answer": null
    }
}
Ответы
200 OK

Успешное изменение параметров

Тело:

{
    "panelCode": 1,
    "callsEnabled": {
        "sip": true,
        "handset": true
    },
    "soundOpenTh": null,
    "debtor": false,
    "volumes": {
        "thCall": null,
        "thTalk": null,
        "uartFrom": null,
        "uartTo": null,
        "panelCall": null,
        "panelTalk": null
    },
    "resistances": {
        "quiescent": null,
        "answer": null
    }
}
Примеры

CURL:

curl 
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/panelCode/1' \
--data-raw '{
    "panelCode": 1,
    "callsEnabled": {
        "sip": true,
        "handset": true
    },
    "soundOpenTh": null,
    "debtor": false,
    "volumes": {
        "thCall": null,
        "thTalk": null,
        "uartFrom": null,
        "uartTo": null,
        "panelCall": null,
        "panelTalk": null
    },
    "resistances": {
        "quiescent": null,
        "answer": null
    }
}'
DELETE - Удаление квартиры
Ответы
204 OK

Успешное удаление квартиры

Примеры

CURL:

curl 
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request DELETE 'http://192.168.0.100:80/panelCode/1'

/v1/panelCode/{номер квартиры}

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

Описание параметров
Название
Тип

Описание

panelCode Integer

Номер квартиры.

callsEnabled Object

Параметры разрешения вызовов в АТ и SIP.

   sip     Boolean

   Флаг включения / выключения вызовов в SIP. 

   - По умолчанию: true

   handset    Boolean

   Флаг включения / выключения вызовов в АТ.

   - По умолчанию: true

soundOpenTh Boolean

Флаг включения / выключения звука открытия двери при открытии привязанным ключом к квартире.

debtor

с версий позже 30.07.2024

Boolean

Флаг, обозначающий квартиру должника.

    - По умолчанию: false

 

При включенном оффлайн-ассистенте и установке этого флага, житель этой квартиры будет получать звуковое уведомление из динамика домофона, когда прикладывает свой ключ и ключ открывает дверь.

volumes Object

Персональные громкости при вызове в квартиру.

 

Важно! Значения "16" или "null" означают, что используются не персональные настройки квартир, а общие настройки для квартир.

   thCall    Integer

   Громкость мелодии трубки во время вызова в АТ.

    - Ограничения: 0 - 16, null

    - По умолчанию: null

   thTalk    Integer

   Громкость в трубке во время разговора по АТ.

    - Ограничения: 0 - 16, null

    - По умолчанию: null

   uartFrom    Integer

   Громкость на панели во время разговора по SIP.

    - Ограничения: 0 - 16, null

    - По умолчанию: null

   uartTo    Integer

   Усиление микрофона панели во время разговора по SIP.

    - Ограничения: 0 - 16, null

    - По умолчанию: null

   panelCall    Integer

   Системные звуки панели.

    - Ограничения: 0 - 16, null

    - По умолчанию: null

   panelTalk    Integer

   Громкость на панели во время разговора по АТ.

     - Ограничения: 0 - 16, null

     - По умолчанию: null

resistances Object

Параметры сопротивления трубки для смены состояний.

 

Важно! Значения "256" или "null" означают, что используются не персональные настройки квартир, а общие настройки для квартир.

   quiescent

   Integer

   Уровень поднятия трубки.

    - Ограничения: 0 - 256, null

    - По умолчанию: null

   answer    Integer

   Уровень открытия двери.

    - Ограничения: 0 - 256, null

    - По умолчанию: null

GET - Получение параметров
Ответы
200 OK

Успешное получение параметров

Тело:

{
    "panelCode": 1,
    "callsEnabled": {
        "sip": true,
        "handset": true
    },
    "soundOpenTh": null,
    "debtor": false,
    "volumes": {
        "thCall": null,
        "thTalk": null,
        "uartFrom": null,
        "uartTo": null,
        "panelCall": null,
        "panelTalk": null
    },
    "resistances": {
        "quiescent": null,
        "answer": null
    }
}
Примеры

CURL: 

curl 
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v1/panelCode/1'
PUT - Изменение параметров
Запрос

Тело:

{
    "panelCode": 1,
    "callsEnabled": {
        "sip": true,
        "handset": true
    },
    "soundOpenTh": null,
    "debtor": false,
    "volumes": {
        "thCall": null,
        "thTalk": null,
        "uartFrom": null,
        "uartTo": null,
        "panelCall": null,
        "panelTalk": null
    },
    "resistances": {
        "quiescent": null,
        "answer": null
    }
}
Ответы
200 OK

Успешное изменение параметров

Тело:

{
    "panelCode": 1,
    "callsEnabled": {
        "sip": true,
        "handset": true
    },
    "soundOpenTh": null,
    "debtor": false,
    "typeSound": 3,
    "volumes": {
        "thCall": null,
        "thTalk": null,
        "uartFrom": null,
        "uartTo": null,
        "panelCall": null,
        "panelTalk": null
    },
    "resistances": {
        "quiescent": null,
        "answer": null
    }
}
Примеры

CURL:

curl 
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/v1/panelCode/1' \
--data-raw '{
    "panelCode": 1,
    "callsEnabled": {
        "sip": true,
        "handset": true
    },
    "soundOpenTh": null,
    "debtor": false,
    "volumes": {
        "thCall": null,
        "thTalk": null,
        "uartFrom": null,
        "uartTo": null,
        "panelCall": null,
        "panelTalk": null
    },
    "resistances": {
        "quiescent": null,
        "answer": null
    }
}'
DELETE - Удаление квартиры
Ответы
204 OK

Успешное удаление квартиры

Примеры

CURL:

curl 
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request DELETE 'http://192.168.0.100:80/v1/panelCode/1'

/panelCode/{номер квартиры}/levels

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

Описание параметров
Название
Тип

Описание

volumes Object

Персональные громкости при вызове в квартиру.

 

Важно! Значения "255" или "null" означают, что используются не персональные настройки квартир, а общие настройки для квартир.

   thCall    Integer

   Громкость мелодии трубки во время вызова в АТ.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   thTalk    Integer

   Громкость в трубке во время разговора по АТ.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   uartFrom    Integer

   Громкость на панели во время разговора по SIP.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   uartTo    Integer

   Усиление микрофона панели во время разговора по SIP.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   panelCall    Integer

   Системные звуки панели.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   panelTalk    Integer

   Громкость на панели во время разговора по АТ.

     - Ограничения: 0 - 254, 255 или null

     - По умолчанию: null

resistances Object

Параметры сопротивления трубки для смены состояний.

 

Важно! Значения "255" или "null" означают, что используются не персональные настройки квартир, а общие настройки для квартир.

   quiescent

   Integer

   Уровень поднятия трубки.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   answer    Integer

   Уровень открытия двери.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

GET - Получение параметров
Ответы
200 OK

 Успешное получение параметров

Тело:

{
    "volumes": {
        "thCall": null,
        "thTalk": null,
        "uartFrom": null,
        "uartTo": null,
        "panelCall": null,
        "panelTalk": null
    },
    "resistances": {
        "quiescent": null,
        "answer": null
    }
}
Примеры

 CURL:

curl 
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/panelCode/1/levels'
PUT - Изменение параметров
Запрос

Тело:

{
    "volumes": {
        "thCall": null,
        "thTalk": null,
        "uartFrom": null,
        "uartTo": null,
        "panelCall": null,
        "panelTalk": null
    },
    "resistances": {
        "quiescent": null,
        "answer": null
    }
}
Ответы
200 OK

 Успешное изменение параметров

Тело:

{
    "volumes": {
        "thCall": null,
        "thTalk": null,
        "uartFrom": null,
        "uartTo": null,
        "panelCall": null,
        "panelTalk": null
    },
    "resistances": {
        "quiescent": null,
        "answer": null
    }
}
Примеры

CURL:

curl 
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/panelCode/1/levels' \
--data-raw '{
    "volumes": {
        "thCall": null,
        "thTalk": null,
        "uartFrom": null,
        "uartTo": null,
        "panelCall": null,
        "panelTalk": null
    },
    "resistances": {
        "quiescent": null,
        "answer": null
    }
}'

/v1/panelCode/{номер квартиры}/levels

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

Описание параметров
Название
Тип

Описание

volumes Object

Персональные громкости при вызове в квартиру.

 

Важно! Значения "16" или "null" означают, что используются не персональные настройки квартир, а общие настройки для квартир.

   thCall    Integer

   Громкость мелодии трубки во время вызова в АТ.

    - Ограничения: 0 - 16, null

    - По умолчанию: null

   thTalk    Integer

   Громкость в трубке во время разговора по АТ.

    - Ограничения: 0 - 16, null

    - По умолчанию: null

   uartFrom    Integer

   Громкость на панели во время разговора по SIP.

    - Ограничения: 0 - 16, null

    - По умолчанию: null

   uartTo    Integer

   Усиление микрофона панели во время разговора по SIP.

    - Ограничения: 0 - 16, null

    - По умолчанию: null

   panelCall    Integer

   Системные звуки панели.

    - Ограничения: 0 - 16, null

    - По умолчанию: null

   panelTalk    Integer

   Громкость на панели во время разговора по АТ.

     - Ограничения: 0 - 16, null

     - По умолчанию: null

resistances Object

Параметры сопротивления трубки для смены состояний.

 

Важно! Значения "16" или "null" означают, что используются не персональные настройки квартир, а общие настройки для квартир.

   quiescent

   Integer

   Уровень поднятия трубки.

    - Ограничения: 0 - 16, null

    - По умолчанию: null

   answer    Integer

   Уровень открытия двери.

    - Ограничения: 0 - 16, null

    - По умолчанию: null

GET - Получение параметров
Ответы
200 OK

 Успешное получение параметров

Тело:

{
    "volumes": {
        "thCall": null,
        "thTalk": null,
        "uartFrom": null,
        "uartTo": null,
        "panelCall": null,
        "panelTalk": null
    },
    "resistances": {
        "quiescent": null,
        "answer": null
    }
}
Примеры

 CURL:

curl 
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v1/panelCode/1/levels'
PUT - Изменение параметров
Запрос

Тело:

{
    "volumes": {
        "thCall": null,
        "thTalk": null,
        "uartFrom": null,
        "uartTo": null,
        "panelCall": null,
        "panelTalk": null
    },
    "resistances": {
        "quiescent": null,
        "answer": null
    }
}
Ответы
200 OK

 Успешное изменение параметров

Тело:

{
    "volumes": {
        "thCall": null,
        "thTalk": null,
        "uartFrom": null,
        "uartTo": null,
        "panelCall": null,
        "panelTalk": null
    },
    "resistances": {
        "quiescent": null,
        "answer": null
    }
}
Примеры

CURL:

curl 
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/v1/panelCode/1/levels' \
--data-raw '{
    "volumes": {
        "thCall": null,
        "thTalk": null,
        "uartFrom": null,
        "uartTo": null,
        "panelCall": null,
        "panelTalk": null
    },
    "resistances": {
        "quiescent": null,
        "answer": null
    }
}'

/panelCode/{номер квартиры}/resist

Метод получения уровня сопротивления трубки у указанной квартиры. 

Описание параметров

Название

Тип Описание

resist

Integer

Значение сопротивления измеренное панелью.

 - Ограничения: 0 - 255

status

String

Положение трубки полученное из ограничений общих параметров "quiesence" и "answer"

 - Ограничения:

   - down - положенная трубка (зеленый);

   - up - поднятая трубка (желтый).

GET - Получение параметров
Ответы
200 OK

 Успешное получение параметров

Тело:

{
    "resist": 3.0,
    "status": "down"
}

или

{
    "resist": 7.0,
    "status": "up"
}
500 Internal Server Error

Внутренняя ошибка при обработке метода

Тело:

{
    "errors": [
        {
            "message": "Обрыв трубки, кв. 1"
        }
    ]
}
Примеры

 CURL:

curl 
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/panelCode/1/resist'

/v1/panelCode/{номер квартиры}/resist

Метод получения уровня сопротивления трубки у указанной квартиры. 

Описание параметров

Название

Тип Описание

resist

Integer

Значение сопротивления измеренное панелью.

 - Ограничения: 0 - 255

status

String

Положение трубки полученное из ограничений общих параметров "quiesence" и "answer"

 - Ограничения:

   - down - положенная трубка (зеленый);

   - up - поднятая трубка (желтый).

GET - Получение параметров
Ответы
200 OK

 Успешное получение параметров

Тело:

{
    "resist": 3.0,
    "status": "down"
}

или

{
    "resist": 7.0,
    "status": "up"
}
500 Internal Server Error

Внутренняя ошибка при обработке метода

Тело:

{
    "errors": [
        {
            "message": "Обрыв трубки, кв. 1"
        }
    ]
}
Примеры

 CURL:

curl 
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v1/panelCode/1/resist'

/panelCode/rooms_update

Метод массового обновления параметров указанных квартир.

Описание параметров
Название
Тип

Описание

panelCode Integer

Номер квартиры.

callsEnabled Object

Параметры разрешения вызовов в АТ и SIP.

   sip     Boolean

   Флаг включения / выключения вызовов в SIP. 

   - По умолчанию: true

   handset    Boolean

   Флаг включения / выключения вызовов в АТ.

   - По умолчанию: true

soundOpenTh Boolean

Флаг включения / выключения звука открытия двери при открытии привязанным ключом к квартире.

typeSound Integer

Режимы эхоподавления при вызове в АТ.

 - Ограничения: 0, 1, 2, 3
   - 0, 1, 2 - варианты эхоподавления;
   - 3 - общие настройки.

 - По умолчанию: 3 

volumes Object

Персональные громкости при вызове в квартиру.

 

Важно! Значения "255" или "null" означают, что используются не персональные настройки квартир, а общие настройки для квартир.

   thCall    Integer

   Громкость мелодии трубки во время вызова в АТ.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   thTalk    Integer

   Громкость в трубке во время разговора по АТ.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   uartFrom    Integer

   Громкость на панели во время разговора по SIP.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   uartTo    Integer

   Усиление микрофона панели во время разговора по SIP.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   panelCall    Integer

   Системные звуки панели.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   panelTalk    Integer

   Громкость на панели во время разговора по АТ.

     - Ограничения: 0 - 254, 255 или null

     - По умолчанию: null

resistances Object

Параметры сопротивления трубки для смены состояний.

 

Важно! Значения "255" или "null" означают, что используются не персональные настройки квартир, а общие настройки для квартир.

   quiescent

   Integer

   Уровень поднятия трубки.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   answer    Integer

   Уровень открытия двери.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   debtor

с версий позже 30.07.2024

Boolean

Флаг, обозначающий квартиру должника.

    - По умолчанию: false

 

При включенном оффлайн-ассистенте и установке этого флага, житель этой квартиры будет получать звуковое уведомление из динамика домофона, когда прикладывает свой ключ и ключ открывает дверь.

PUT - Обновление параметров
Запрос

Тело:

[
    {
        "panelCode": 1,
        "callsEnabled": {
            "sip": true,
            "handset": true
        },
        "soundOpenTh": null,
        "typeSound": null,
        "volumes": {
            "thCall": null,
            "thTalk": null,
            "uartFrom": null,
            "uartTo": null,
            "panelCall": null,
            "panelTalk": null
        },
        "resistances": {
            "quiescent": null,
            "answer": null
        }
    },
    {
        "panelCode": 2,
        "callsEnabled": {
            "sip": true,
            "handset": true
        },
        "soundOpenTh": null,
        "typeSound": null,
        "volumes": {
            "thCall": null,
            "thTalk": null,
            "uartFrom": null,
            "uartTo": null,
            "panelCall": null,
            "panelTalk": null
        },
        "resistances": {
            "quiescent": null,
            "answer": null
        }
    }
]
Ответы
200 OK

 Успешное обновление параметров

400 Bad Request

 Ошибка при добавлении существующей квартиры

Тело:

Название
Тип

Описание

errors Array

Массив возвращаемых ошибок.

   message    String

   Сообщение об ошибке.

{
    "errors": [
        {
            "message": "Не удалось распарсить JSON 15: ']' expected near end of file"
        }
    ]
}
Примеры

CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/panelCode/rooms_update' \
--data-raw '[
    {
        "panelCode": 1,
        "callsEnabled": {
            "sip": true,
            "handset": true
        },
        "soundOpenTh": null,
        "typeSound": null,
        "volumes": {
            "thCall": null,
            "thTalk": null,
            "uartFrom": null,
            "uartTo": null,
            "panelCall": null,
            "panelTalk": null
        },
        "resistances": {
            "quiescent": null,
            "answer": null
        }
    },
    {
        "panelCode": 2,
        "callsEnabled": {
            "sip": true,
            "handset": true
        },
        "soundOpenTh": null,
        "typeSound": null,
        "volumes": {
            "thCall": null,
            "thTalk": null,
            "uartFrom": null,
            "uartTo": null,
            "panelCall": null,
            "panelTalk": null
        },
        "resistances": {
            "quiescent": null,
            "answer": null
        }
    }
]'

/panelCode/adjustLevels

Метод авто регулировки уровней трубок для указанного диапазона квартир в матрицах ККМ.

Описание параметров
Название
Тип

Описание

1, 2, 3 object

Номер квартиры.

   resist    float

   Уровень напряжения на абонентской трубке.

   status    string

   Статус в котором находиться трубка.

   error    string

   Описание ошибки при замере напряжения.

POST - Авто регулировка уровней трубок для диапазона квартир
Запрос

Тело:

Тип

Описание

Integer[]

Номера квартир по которым необходимо выполнить авто регулировку уровней трубок.

[1, 2, 3]
Ответы
200 OK

Тело:

{
    "1": {
        "resist": 9.431,
        "status": "up"
    },
    "2": {
        "resist": 3.059,
        "status": "down"
    },
    "3": {
        "resist": 0.0,
        "status": "error",
        "error": "Обрыв трубки, кв. 3"
    }
}
Примеры

CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request POST 'http://192.168.0.100:80/panelCode/adjustLevels' \
--data-raw '[1, 2, 3]'

/panelCode/adjustLevels/all

Метод авто регулировки уровней трубок для всех квартир в матрицах ККМ.

Описание параметров
Название
Тип

Описание

1, 2, 3 object

Номер квартиры.

   resist    float

   Уровень напряжения на абонентской трубке.

   status    string

   Статус в котором находиться трубка.

   error    string

   Описание ошибки при замере напряжения.

POST - Авто регулировка уровней трубок для всех квартир
Ответы
200 OK

Тело:

{
    "1": {
        "resist": 9.431,
        "status": "up"
    },
    "2": {
        "resist": 3.059,
        "status": "down"
    },
    "3": {
        "resist": 0.0,
        "status": "error",
        "error": "Обрыв трубки, кв. 3"
    }
}
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \ 
--request POST 'http://192.168.0.100:80/panelCode/adjustLevels/all'

Калитка

/gate/settings

Методы получение и изменения параметров панели в режиме "Калитка".

Описание параметров

Название

Тип Описание

gateMode

Boolean

Флаг включения / выключения режима калитки.

 - По умолчанию: false

prefixHouse

Boolean

Флаг включения / выключения вызовы с префиксом.

 - По умолчанию: false

direct

Object

Параметры прямых вызовов с устройства на устройство.

   mode

   Boolean

   Флаг включения / выключения прямых вызовов.

    - По умолчанию: false

   rules

   Object

   Правила для прямых вызовов.

      0

      String

      Префикс дома при вызове.

       - Ограничения: цифры

       - По умолчанию: 0

 

      ВАЖНО! Если требуются прямые вызовы, но не включен префикс, то всегда указываем 0. В остальных случаях указываем необходимый префикс дома.

         1 - 10

         String

         Диапазон квартир при наборе которого будет уходить вызов на указанное устройство.

GET - Получение параметров
Ответы
200 OK

 Успешное получение параметров

Тело:

{
    "gateMode": false,
    "prefixHouse": false,
    "direct": {
        "mode": false,
        "rules": {
           "0": {
              "1-10": "192.168.0.101"
           }
        }
    }
}
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/gate/settings'
PUT - Изменение параметров
Запрос

Тело:

{
    "gateMode": false,
    "prefixHouse": false,
    "direct": {
        "mode": false,
        "rules": {
           "0": {
              "1-10": "192.168.0.101"
           }
        }
    }
}
Ответы
200 OK

 Успешное изменение параметров

Тело:

{
    "gateMode": false,
    "prefixHouse": false,
    "direct": {
        "mode": false,
        "rules": {
           "0": {
              "1-10": "192.168.0.101"
           }
        }
    }
}
Примеры

CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/gate/settings' \
--data-raw '{
    "gateMode": false,
    "prefixHouse": false,
    "direct": {
        "mode": false,
        "rules": {}
    }
}'

Уровни звука

/levels

Методы получения и изменения общих уровней громкости и сопротивлений абонентских трубок.

Описание параметров
Название
Тип

Описание

resistances Object

Параметры сопротивления трубки для смены состояний.

 

Важно! Значения "255" или "null" означают, что используются не персональные настройки квартир, а общие настройки для квартир.

   break

   Integer

   Уровень при неисправности трубки.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   error

   Integer

   Уровень при обрыве.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   quiescent

   Integer

   Уровень поднятия трубки.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   answer    Integer

   Уровень открытия двери.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

volumes Object

Персональные громкости при вызове в квартиру.

 

Важно! Значения "255" или "null" означают, что используются не персональные настройки квартир, а общие настройки для квартир.

   thTalk    Integer

   Громкость в трубке во время разговора по АТ.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   uartFrom    Integer

   Громкость на панели во время разговора по SIP.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   uartTo    Integer

   Усиление микрофона панели во время разговора по SIP.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   panelCall    Integer

   Системные звуки панели.

    - Ограничения: 0 - 254, 255 или null

    - По умолчанию: null

   panelTalk    Integer

   Громкость на панели во время разговора по АТ.

     - Ограничения: 0 - 254, 255 или null

     - По умолчанию: null

GET - Получение параметров
Ответы
200 OK

 Успешное получение параметров

Тело:

{
    "resistances": {
        "break": 240,
        "error": 105,
        "quiescent": 255,
        "answer": 255
    },
    "volumes": {
        "panelCall": 110,
        "panelTalk": 125,
        "thTalk": 250,
        "thCall": 130,
        "uartFrom": 135,
        "uartTo": 255
    }
}
Примеры

CURL:

curl 
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/levels'
PUT - Изменение параметров
Запрос

Тело:

{
    "resistances": {
        "break": 240,
        "error": 105,
        "quiescent": 255,
        "answer": 255
    },
    "volumes": {
        "panelCall": 110,
        "panelTalk": 125,
        "thTalk": 250,
        "thCall": 130,
        "uartFrom": 135,
        "uartTo": 255
    }
}
Ответы
200 OK

 Успешное изменение параметров

Тело:

{
    "resistances": {
        "break": 240,
        "error": 105,
        "quiescent": 255,
        "answer": 255
    },
    "volumes": {
        "panelCall": 110,
        "panelTalk": 125,
        "thTalk": 250,
        "thCall": 130,
        "uartFrom": 135,
        "uartTo": 255
    }
}
Примеры

 CURL:

curl 
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/levels' \
--data-raw '{
    "resistances": {
        "break": 240,
        "error": 105,
        "quiescent": 255,
        "answer": 255
    },
    "volumes": {
        "panelCall": 110,
        "panelTalk": 125,
        "thTalk": 250,
        "thCall": 130,
        "uartFrom": 135,
        "uartTo": 255
    },
    "noise": {
        "line": null
    }
}'

/v1/levels

Методы получения и изменения общих уровней громкости и сопротивлений абонентских трубок.

Описание параметров
Название
Тип

Описание

resistances Object

Параметры сопротивления трубки для смены состояний.

 

Важно! Значения "256" или "null" означают, что используются не персональные настройки квартир, а общие настройки для квартир.

   quiescent

   Integer

   Уровень поднятия трубки.

    - Ограничения: 0 - 40, null

    - По умолчанию: null

   answer    Integer

   Уровень открытия двери.

    - Ограничения: 0 - 40, null

    - По умолчанию: null

error Integer

Уровень ошибки. Если значение вольтажа в линии меньше, чем указанное, панель при замерах либо звонках воспримет как ошибку.

- Ограничения: 0 - 65535, null

- По умолчанию: null

break Integer

Уровень обрыва. Если значение вольтажа в линии больше, чем указанное, панель при замерах либо звонках воспримет как обрыв.

- Ограничения: 0 - 65535, null

- По умолчанию: null

volumes Object

Персональные громкости при вызове в квартиру.

 

Важно! Значения "16" или "null" означают, что используются не персональные настройки квартир, а общие настройки для квартир.

   thTalk    Integer

   Громкость в трубке во время разговора по АТ.

    - Ограничения: 0 - 16, null

    - По умолчанию: null

   uartFrom    Integer

   Громкость на панели во время разговора по SIP.

    - Ограничения: 0 - 16, null

    - По умолчанию: null

   uartTo    Integer

   Усиление микрофона панели во время разговора по SIP.

    - Ограничения: 0 - 16, null

    - По умолчанию: null

   panelCall    Integer

   Системные звуки панели.

    - Ограничения: 0 - 16, null

    - По умолчанию: null

   panelTalk    Integer

   Громкость на панели во время разговора по АТ.

     - Ограничения: 0 - 16, null

     - По умолчанию: null

GET - Получение параметров
Ответы
200 OK

 Успешное получение параметров

Тело:

{
  "resistances": {
    "quiescent": null,
    "answer": null
  },
  "volumes": {
    "panelCall": 5,
    "uartFrom": 12,
    "uartTo": 16,
    "panelTalk": 12,
    "thTalk": 4,
    "thCall": 1,
    "thGate": 13
  }
}
Примеры

CURL:

curl 
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v1/levels'
PUT - Изменение параметров
Запрос

Тело:

{
  "resistances": {
    "quiescent": null,
    "answer": null
  },
  "volumes": {
    "panelCall": 5,
    "uartFrom": 12,
    "uartTo": 16,
    "panelTalk": 12,
    "thTalk": 4,
    "thCall": 1,
    "thGate": 13
  }
}
Ответы
200 OK

 Успешное изменение параметров

Тело:

{
  "resistances": {
    "quiescent": null,
    "answer": null
  },
  "volumes": {
    "panelCall": 5,
    "uartFrom": 12,
    "uartTo": 16,
    "panelTalk": 12,
    "thTalk": 4,
    "thCall": 1,
    "thGate": 13
  }
}
Примеры

 CURL:

curl 
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/v1/levels' \
--data-raw '{
  "resistances": {
    "quiescent": null,
    "answer": null
  },
  "volumes": {
    "panelCall": 5,
    "uartFrom": 12,
    "uartTo": 16,
    "panelTalk": 12,
    "thTalk": 4,
    "thCall": 1,
    "thGate": 13
  }
}'


Логи

/log/last

Метод получения последних 100 строк логов.

GET - Получение логов
Ответы
200 OK

 Успешное получение логов

Заголовки:

Название

Значение Описание

Content-Type

text/plain Тип возвращаемых данных

Тело:

2023-08-14T13:48:07.458354+05:00 081300000000 UART[1001]: STM32.DEBUG: 07F765003901000003401084846270882020
2023-08-14T13:48:08.976034+05:00 081300000000 API[1037]: Вызов метода: 1 /camera/snapshot [192.168.0.10]
2023-08-14T13:48:08.978101+05:00 081300000000 STREAMER[986]: ProcessRequest with command: make_snapshot
2023-08-14T13:48:09.008538+05:00 081300000000 STREAMER[986]: Make snapshot: save to file 339469 bytes
2023-08-14T13:48:28.977651+05:00 081300000000 API[1037]: Вызов метода: 1 /camera/snapshot [192.168.0.10]
2023-08-14T13:48:28.986152+05:00 081300000000 STREAMER[986]: ProcessRequest with command: make_snapshot
2023-08-14T13:48:29.032053+05:00 081300000000 STREAMER[986]: Make snapshot: save to file 340180 bytes
2023-08-14T13:48:30.961621+05:00 081300000000 API[1037]: Вызов метода: 1 /system/fw_env [192.168.0.10]
2023-08-14T13:48:31.083043+05:00 081300000000 UART[1001]: STM32.DEBUG: 06
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/log/last'

/v2/logs/{сервис}

Метод получения логов указанного сервиса.

Список поддерживаемых параметров "{сервис}":
   - all - все логи устройства;
   - api - логи HTTP сервера;
   - uart - логи UART клиента;
   - ddns - логи DDNS клиента;
   - camofon - логи SIP клиента;
   - streamer - логи RTSP сервера;
   - ircut - логи переключения ИК шторки;
   - upgrade - логи обновления устройства.

GET - Получение логов
Ответы
200 OK

Успешное получение логов

Заголовки:

Название

Значение Описание

Content-Type

text/plain Тип возвращаемых данных

Тело: 

2023-08-14T13:48:07.458354+05:00 081300000000 UART[1001]: STM32.DEBUG: 07F765003901000003401084846270882020
2023-08-14T13:48:08.976034+05:00 081300000000 API[1037]: Вызов метода: 1 /camera/snapshot [192.168.0.10]
2023-08-14T13:48:08.978101+05:00 081300000000 STREAMER[986]: ProcessRequest with command: make_snapshot
2023-08-14T13:48:09.008538+05:00 081300000000 STREAMER[986]: Make snapshot: save to file 339469 bytes
2023-08-14T13:48:28.977651+05:00 081300000000 API[1037]: Вызов метода: 1 /camera/snapshot [192.168.0.10]
2023-08-14T13:48:28.986152+05:00 081300000000 STREAMER[986]: ProcessRequest with command: make_snapshot
2023-08-14T13:48:29.032053+05:00 081300000000 STREAMER[986]: Make snapshot: save to file 340180 bytes
2023-08-14T13:48:30.961621+05:00 081300000000 API[1037]: Вызов метода: 1 /system/fw_env [192.168.0.10]
2023-08-14T13:48:31.083043+05:00 081300000000 UART[1001]: STM32.DEBUG: 06
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v2/log/all'

Настройки сети

/v1/network

Методы получения и изменения виртуальных сетевых интерфейсов.

Устройство поддерживает до 3-х виртуальных сетевых интерфейсов.

Описание параметров

Название

Тип Описание

inet

String

Тип виртуального сетевого интерфейса.

Ограничения: dhcp, static

inetStatic

Object

Параметры для настройки статического виртуального сетевого интерфейса.

   netmask

   String

   Сетевая маска при подключении к сети.

    - Ограничения: IPv4 адрес

    - По умолчанию: 255.255.255.0

   gateway

   String

   Сетевой шлюз при подключении к сети.

    - Ограничения: IPv4 адрес

    - По умолчанию: ""

   ipAddress

   String

   IP адрес устройства при подключении к сети.

    - Ограничения: IPv4 адрес

    - По умолчанию: 192.168.0.100

   dnsServer

   String

   IP адрес DNS сервера.

    - Ограничения: IPv4 адрес

    - По умолчанию: ""

GET - Получение параметров
Ответы
200 OK

Успешное получение параметров 

Тело:

[
    {
        "inet": "dhcp"
    },
    {
        "inet": "static",
        "inetStatic": {
            "netmask": "255.255.255.0",
            "gateway": "",
            "ipAddress": "192.168.0.100",
            "dnsServer": ""
        }
    }
]
Примеры

CURL:

curl 
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v1/network'
PUT - Изменение параметров
Запрос

Тело: 

[
    {
        "inet": "dhcp"
    },
    {
        "inet": "static",
        "inetStatic": {
            "netmask": "255.255.255.0",
            "gateway": "",
            "ipAddress": "192.168.0.100",
            "dnsServer": ""
        }
    }
]
Ответы
200 OK

 Успешное изменение параметров

Тело: 

[
    {
        "inet": "dhcp"
    },
    {
        "inet": "static",
        "inetStatic": {
            "netmask": "255.255.255.0",
            "gateway": "",
            "ipAddress": "192.168.0.100",
            "dnsServer": ""
        }
    }
]
Примеры

CURL:

curl 
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/v1/network' \
--data-raw '[
    {
        "inet": "dhcp"
    },
    {
        "inet": "static",
        "inetStatic": {
            "netmask": "255.255.255.0",
            "gateway": "192.168.0.1",
            "ipAddress": "192.168.0.100",
            "dnsServer": "192.168.0.1"
        }
    }
]'
DELETE - Сброс к стандартным
Ответы
200 OK

 Успешный сброс к стандартным

Тело:

[
    {
        "inet": "dhcp"
    },
    {
        "inet": "static",
        "inetStatic": {
            "netmask": "255.255.255.0",
            "gateway": "",
            "ipAddress": "192.168.0.100",
            "dnsServer": ""
        }
    }
]
Примеры

 CURL:

curl 
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request DELETE 'http://192.168.0.100:80/v1/network'

/v1/network/ping

Метод для проверки доступности хоста.

Описание параметров
Название
Тип

Описание

addr String

Ip-адрес хоста

- Обязательное поле

numberPack
Integer

Число пакетов, которое необходимо отправить указанному адресу

- Обязательное поле

- Ограничения: [1; 100]

interval Integer

Интервал между пакетами в мсек 

- Ограничения: [1; 10000]

- По умолчанию: 1000

sizePack Integer

Размер пакетов в байтах

- Ограничения: [1; 65535]

- По умолчанию: 56

timeout Integer

Таймаут для пакета

- Ограничения: [1; 10]

- По умолчанию: 5

PUT - Выполнить команду ping
Запрос

Тело:

{
    "addr": "192.168.0.100",
    "numberPack": 1,
    "interval" : 1000,
    "sizePack" : 39,
    "timeout" : 1
}
Ответы
200 OK

Заголовки:

Название

Значение Описание

Content-Type

text/html; charset=ISO-8859-1 Тип возвращаемых данных

Тело:
Массив строк - результат выполнения команды

[
    "PING 192.168.0.100 (192.168.0.100): 39 data bytes",
    "47 bytes from 192.168.0.100: seq=0 ttl=64 time=0.207 ms",
    "47 bytes from 192.168.0.100: seq=1 ttl=64 time=0.210 ms",
    "47 bytes from 192.168.0.100: seq=2 ttl=64 time=0.201 ms",
    "47 bytes from 192.168.0.100: seq=3 ttl=64 time=0.201 ms",
    "47 bytes from 192.168.0.100: seq=4 ttl=64 time=0.203 ms",
    "47 bytes from 192.168.0.100: seq=5 ttl=64 time=0.213 ms",
    "--- 192.168.0.100 ping statistics ---",
    "6 packets transmitted, 6 packets received, 0% packet loss",
    "round-trip min/avg/max = 0.201/0.205/0.213 ms"
]
400 Bad Request

 Ошибка при задании настроек для команд

Тело:

Название
Тип

Описание

errors Array

Массив возвращаемых ошибок.

   message    String

   Сообщение об ошибке.

{
    "errors": [
        {
            "message": "Ошибка! Валидация адреса не пройдена"
        }
    ]
}
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--header 'Content-Type: application/json' \
--request PUT 'http://192.168.0.100:80/v1/network/ping' \
--data-raw '{
    "addr": "192.168.0.100",
    "numberPack": 5,
    "interval" : 1000,
    "sizePack" : 39,
    "timeout" : 1
}'

/v1/network/traceroute

Метод для отслеживания маршрута данных, которые следуют к указанному хосту

Описание параметров
Название
Тип

Описание

addr String

Ip-адрес хоста

- Обязательное поле

numberHops
Integer

Максимальное количество переходов

- Обязательное поле

- Ограничения: 1 - 100

 

Рекомендуем: проверять доступность маршрута изначально на маленьком числе переходов т.к. если маршрут не доступен то проверка может занимать до нескольких минут. 
udpPort Integer

Порт назначения для запроса 

- По умолчанию: 33434

timeout Integer

Максимальное время ожидания для каждого ответа

- Ограничения: 1 - 10

- По умолчанию: 2

PUT - Выполнить команду traceroute
Запрос

Тело:

{
    "addr": "192.168.0.100",
    "numberHops": 1,
    "udpPort" : 33434,
    "timeout" : 1
}
Ответы
200 OK

Заголовки:

Название

Значение Описание

Content-Type

text/html; charset=ISO-8859-1 Тип возвращаемых данных

Тело:
Массив строк - результат выполнения команды

[
    "traceroute to 192.168.1.48 (192.168.1.48), 100 hops max, 38 byte packets",
    " 1  192.168.1.48 (192.168.1.48)  0.044 ms  0.056 ms  0.021 ms"
]
400 Bad Request

 Ошибка при задании настроек для команд

Тело:

Название
Тип

Описание

errors Array

Массив возвращаемых ошибок.

   message    String

   Сообщение об ошибке.

{
    "errors": [
        {
            "message": "Ошибка! Валидация адреса не пройдена"
        }
    ]
}
Примеры

CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/v1/network/traceroute' \
--data-raw '{
    "addr": "192.168.0.100",
    "numberHops": 1,
    "udpPort" : 33434,
    "timeout" : 1
}'


/v1/network/syslog

Метод для задания адреса отправки логов

Описание параметров

Название

Тип Описание

addr

String

Адрес сервера для отправки событий 

- По умолчанию:  logserv.sokol

port

Integer

Порт сервер для отправки  событий

- По умолчанию: 514

Появится в будущих прошивках

severity

integer

Уровень логирования

- По умолчанию: 6

- Значения: 

  • 0 - Emergency
  • 1 - Alert
  • 2 - Critical
  • 3 - Error
  • 4 - Warning
  • 5 - Notice
  • 6 - Info
  • 7 - Debug

transport

integer

Транспорт отправки событий

- По умолчанию: 1

- Значения:

  • 1 - UDP
  • 2 - TCP
GET - Получение параметров
Ответы
200 OK

Успешное получение параметров 

Тело:

{
    "addr": "logserv.sokol",
    "port": 514,
    "severity": 6,
    "transport": 1
}
Примеры

CURL:

curl 
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
-request GET 'http://192.168.0.100:80/v1/network/syslog'
PUT - Изменение параметров
Запрос

Тело: 

{
    "addr": "192.168.0.100",
    "port": 514,
    "severity": 6,
    "transport": 1
}
Ответы
200 OK

 Успешное изменение параметров

Тело: 

{
    "addr": "192.168.0.100",
    "port": 514,
    "severity": 6,
    "transport": 1
}
Примеры

CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v1/network/syslog' \
--data-raw '{
    "addr": "192.168.0.100",
    "port": 514,
    "severity": 6,
    "transport": 1
}'

Уведомления

/v1/notification/forced/list

Метод получения списка аудиофайлов для воспроизведения.

Описание параметров
Название
Тип

Описание

name String

Наименование файла.

GET - Получение списка
Ответы
200 OK

Успешное получение списка файлов

Тело:

[
    {
        "name": "test.wav"
    }
]
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v1/notification/forced/list'

/v1/notification/forced/play

Метод запуска воспроизведения указанного аудиофайла.

Описание параметров
Название
Тип

Описание

name String

Наименование файла для запуска воспроизведения.

repeat Integer

Количество повторений воспроизведений указанного файла.

PUT - Воспроизведения аудио файла
Запрос

Тело:

{
    "name": "test.wav",
    "repeat": 3
}
Ответы
200 OK

Успешное воспроизведение аудио файла

Тело:

{
    "name": "test.wav",
    "repeat": 3
}
Примеры

 CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/v1/notification/forced/play' \
--data-raw '{
    "name": "test.wav",
    "repeat": 3
}'

/v1/notification/debtor/list

Методы для работы с аудиофайлом для оповещения должников.

Методы данного раздела временно не доступны.

Метод не доступен для устройств на прошивке ниже 2.5.0.9.4 (включительно).

Для оповещения должников об оплате домофона, необходимо:
   1. включить оффлайн-ассистента;
   2. установить в настройках квартиры флаг "debtor" (задолжник) в состояние "true";
   3. убедиться, что в папке /media/assistant/key/debtor существует файл для воспроизведения;

GET - Получение списка
Ответы
200 OK

Успешное получение списка файлов

Тело:

[
    {
        "name": "1.wav"
    }
]
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v1/notification/debtor/list'
PUT - Изменение файла
Запрос

 Заголовки:

Название

Значение Описание

Content-Type

audio/wave или 

audio/wav или

audio/x-wav или

audio/x-pn-wav

Тип передаваемых данных

Тело:

*** Бинарный файл ***
Ответы
200 OK

 Успешное изменение файла

[
    {
        "name": "1.wav"
    }
]
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--header 'Content-Type: audio/wave' \
--data-binary '@/C:/Downloads/1.wav'
--request PUT 'http://192.168.0.100:80/v1/notification/debtor/list'
DELETE - Удаление всех аудиозаписей для должников
Ответы
200 OK

Успешное удаление

Тело:

[]
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request DELETE 'http://192.168.0.100:80/v1/notification/debtor/list'

Оповещение

Методы данного раздела временно не доступны.

/v1/notification/alarm

Методы для работы с аудио файлом для речевого оповещения в случае ЧС.

GET - Получение списка
Ответ
200 OK

Успешное получение списка файлов

[
    {
        "name": "1.wav"
    },
    {
        "name": "2.wav"
    }
]
PUT - Добавление нового файла
Запрос

 Заголовки:

Название

Значение

Описание

Content-Disposition

attachment; filename="filename.wav" Желаемое имя файла. Поле не обязательное - возможна авто генерация имен

Content-Type

audio/wave или 

audio/wav или

audio/x-wav или

audio/x-pn-wav

Тип передаваемых данных

Тело:

*** Бинарный файл ***
Ответ
200 OK

 Успешное добавление файла

[
    {
        "name": "1.wav"
    },
    {
        "name": "2.wav"
    }
]
DELETE - Удаление конкретного аудиофайла
Запрос

Заголовки:

Название

Значение

Описание

Content-Type

 

application/json

 

Тип передаваемых данных
{
  "name": "1.wav"
}

 

Ответ
200 OK

Успешное удаление файла

500

Файл отсутствует либо не верный формат json в теле запроса.

/v1/notification/alarm/play

Метод запуска воспроизведения указанного аудио файла.

Воспроизведение происходит непрерывно. Остановка производиться отдельным методом /v1/notification/alarm/stop

PUT - Воспроизведения аудио файла
Запрос

Тело:

{
    "name": "test.wav"
}


Ответ
200 OK

 

/v1/notification/alarm/stop

Метод остановки речевого воспроизведения.

PUT - Остановка текущего воспроизведения аудиофайла

 


Ассистент

/assistant/settings

Метод получения и изменения параметров оффлайн ассистента.

Метод не доступен для устройств на прошивке ниже 2.5.0.14.0 (включительно).

Описание параметров
Название
Тип

Описание

assistant Object

Параметры ассистента

   enable    Boolean

   Состояние ассистента

   По умолчанию: true

   online    Boolean

   Режим ассистента:

   По умолчанию: true

      - true: онлайн;

      - false: оффлайн;

offlineVoice Object

Параметры оффлайн ассистента

   volumes    Object

   Параметры громкости

      rfVolume       Integer

      Общая громкость

      По умолчанию: 12      

      Диапазон значений: [0; 15]

      bass       Integer

      Эквалайзер: низкие частоты

      По умолчанию: 10

      Диапазон значений: [-15; 15]

      middle       Integer

      Эквалайзер: средние частоты

      По умолчанию: 10

      Диапазон значений: [-15; 15]

      treble       Integer

      Эквалайзер: высокие частоты

      По умолчанию: 10

      Диапазон значений: [-15; 15]

GET - Получение параметров
Ответы
200 OK

Успешное получение параметров

Тело:

{
  "assistant": {
    "enable": true,
    "online": true
  },
  "offlineVoice": {
    "volumes": {
      "rfVolume": 12,
      "bass": 10,
      "middle": 10,
      "treble": -15
    }
  }
}
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/assistant/settings'
PUT - Изменить параметры
Запрос

Тело:

{
  "assistant": {
    "enable": true,
    "online": true
  },
  "offlineVoice": {
    "volumes": {
      "rfVolume": 12,
      "bass": 10,
      "middle": 10,
      "treble": -15
    }
  }
}
Ответы
200 OK

Успешное изменение параметров 

Тело:

{
  "assistant": {
    "enable": true,
    "online": true
  },
  "offlineVoice": {
    "volumes": {
      "rfVolume": 12,
      "bass": 10,
      "middle": 10,
      "treble": -15
    }
  }
}
Примеры

CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/assistant/settings' \
--data-raw '{
  "assistant": {
    "enable": true,
    "online": true
  },
  "offlineVoice": {
    "volumes": {
      "rfVolume": 12,
      "bass": 10,
      "middle": 10,
      "treble": -15
    }
  }
}'
DELETE - Сброс параметров
Ответы
200 OK

Успешное изменение параметров 

Тело:

{
  "assistant": {
    "enable": true,
    "online": true
  },
  "offlineVoice": {
    "volumes": {
      "rfVolume": 12,
      "bass": 10,
      "middle": 10,
      "treble": -15
    }
  }
}
Примеры

CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request DELETE 'http://192.168.0.100:80/assistant/settings'

Ассистент / Оповещение (работа с локальными файлами)

Методы данного раздела временно не доступны.

Методы для ассистента, речевого оповещения в случае тревоги и задолженности повторяются за исключением самого типа оповещения, который отличается следующими значениями.

тип_оповещения

/assistant/button/neutral - Кнопка открытия двери
/assistant/key/open/neutral - Открытие панели ключом или цифровым кодом
/assistant/key/error/neutral - Ошибка открытия панели ключом или цифровым кодом
/assistant/tamper/alarm - Сработка тампера
/assistant/key/debtor - Оповещение задолжников
/notification/alarm - Речевое оповещение
/notification/forced - Принудительно воспроизвести файл на панели

/v1/{типы_оповещения}

GET - Получение списка файлов / состояние воспроизведения
Ответ
200 OK

Успешное получение списка файлов

[
    "isPlay": false,
    {
        "isPlay": false,
        "name": "1.wav"
    },
    {
        "isPlay": false,
        "name": "2.wav"
    }
]
DELETE - Удаление всех файлов данного типа
Ответ
200 OK

Успешное удаление файлов

/v1/{типы_оповещения}/list

GET - Получение списка файлов / состояние воспроизведения
Ответ
200 OK

Успешное получение списка файлов

[
    "isPlay": false,
    {
        "isPlay": false,
        "name": "1.wav"
    },
    {
        "isPlay": false,
        "name": "2.wav"
    }
]
DELETE - Удаление файлов по указанному списку
Запрос

Заголовки:

Название

Значение

Описание

Content-Type

 

application/json

 

Тип передаваемых данных
["7.wav", "8.wav"]
Ответ
200 OK

Успешное удаление файлов


/v1/{типы_оповещения}/file

PUT - Добавление нового файла
Запрос

 Заголовки:

Название

Значение

Описание

Content-Disposition

attachment; filename="filename.wav" Желаемое имя файла. Поле не обязательное - возможна авто генерация имен

Content-Type

audio/wave или 

audio/wav или

audio/x-wav или

audio/x-pn-wav

Тип передаваемых данных

Тело:

*** Бинарный файл ***
Ответ
200 OK

 Успешное добавление файла

[
    {
        "name": "1.wav"
    },
    {
        "name": "2.wav"
    }
]
DELETE - Удаление конкретного аудиофайла
Запрос

Заголовки:

Название

Значение

Описание

Content-Type

 

application/json

 

Тип передаваемых данных
{
  "name": "1.wav"
}

 

Ответ
200 OK

Успешное удаление файла

500

Файл отсутствует либо не верный формат json в теле запроса.

Бегущая строка

/panelDisplay/settings

Методы получения и изменения параметров бегущей строки на дисплее.

Описание параметров
Название
Тип

Описание

speed Integer

Скорость бегущей сроки в мсек. Например, 500 значит 500 мсек.

- По умолчанию: 500

- Ограничения: [50; 1000]

strDisplay Boolean

Флаг включения / выключения бегущей строки.

 - По умолчанию: false

imgStr String

Текст отображения на дисплее.

 - Длина строки: [0; 99] символов 

 - По умолчанию: ""

 

ВАЖНО! Поддерживается латинский алфавит и цифры ASCII.

GET - Получение параметров
Ответы
200 OK

Успешное получение параметров

Тело:

{
    "strDisplay": true,
    "speed": 400,
    "imgStr": "74174"
}
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/panelDisplay/settings'
PUT - Изменить параметры
Запрос

Тело:

{
    "strDisplay": true,
    "speed": 400,
    "imgStr": "74174"
}
Ответы
200 OK

Успешное изменение параметров 

Тело:

{
    "strDisplay": true,
    "speed": 400,
    "imgStr": "74174"
}
Примеры

CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/panelDisplay/settings' \
--data-raw '{
    "strDisplay": true,
    "speed": 400,
    "imgStr": "74174"
}'

/v1/display

Методы получения и изменения параметров бегущей строки на дисплее.

Описание параметров
Название
Тип

Описание

enable Boolean

Флаг включения / выключения бегущей строки.

 - По умолчанию: false

text String

Текст отображения на дисплее.

 - Длина строки: [0; 99] символов 

 - По умолчанию: ""

 

ВАЖНО! Поддерживается латинский алфавит и цифры ASCII.

speed Integer

Скорость бегущей сроки в мсек. Например, 500 значит 500 мсек.

- По умолчанию: 500

- Ограничения: [50; 1000]

GET - Получение параметров
Ответы
200 OK

Успешное получение параметров

Тело:

{
    "enable": true,
    "text": "123456",
    "speed": 1000
}
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v1/display'
PUT - Изменить параметры
Запрос

Тело:

{
    "enable": true,
    "text": "123456",
    "speed": 1000
}
Ответы
200 OK

Успешное изменение параметров 

Тело:

{
    "enable": true,
    "text": "123456",
    "speed": 1000
}
Примеры

CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/v1/display' \
--data-raw '{
    "enable": true,
    "text": "123456",
    "speed": 1000
}'

Реле

/relay/info

Метод получения поддерживаемых номеров реле.

GET - Получение параметров
Ответы
200 OK

Успешное получение параметров

Тело:

[1, 2]
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/relay/info'

/relay/settings

Методы получения и изменения общих параметров реле. 

Описание параметров
Название
Тип

Описание

alwaysOpenNetMode Boolean

Флаг включения / выключения режима открытых дверей при недоступности сети.

 - По умолчанию: false

alwaysOpen Boolean

Флаг включения / выключения режима открытых дверей.

 - По умолчанию: false

GET - Получение параметров
Ответы
200 OK

Успешное получение параметров

Тело:

{
    "alwaysOpenNetMode": false,
    "alwaysOpen": false
}
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/relay/settings'
PUT - Изменение параметров
Запрос

Тело:

{
    "alwaysOpenNetMode": false,
    "alwaysOpen": false
}
Ответы
200 OK

Успешное изменение параметров

Тело:

{
    "alwaysOpenNetMode": false,
    "alwaysOpen": false
}
Примеры

 CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/relay/settings' \
--data-raw '{
    "alwaysOpenNetMode": false,
    "alwaysOpen": false
}'

/relay/{номер реле}/open

Метод открытия указанного номера реле. 

PUT - Открытие реле
Ответы
204 OK

Успешное открытие реле

Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/relay/1/open'

/relay/{номер реле}/settings

Методы получения и изменения параметров указанного номера реле.

Описание параметров
Название
Тип

Описание

switchTime Integer

Время удержания двери в открытом состоянии.

 - Ограничения: 1 - 10 секунд

 - По умолчанию: 1

alwaysOpen Boolean

Флаг включения / выключения режима открытых дверей.

 - По умолчанию: false

GET - Получение параметров
Ответы
200 OK

Успешное получение параметров

Тело:

{
    "switchTime": 1,
    "alwaysOpen": false
}
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/relay/1/settings'
PUT - Изменение параметров
Запрос

Тело:

{
    "switchTime": 1
}
Ответы
200 OK

Успешное изменение параметров

Тело:

{
    "switchTime": 1
}
Примеры

CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/relay/1/settings' \
--data-raw '{
    "switchTime": 1
}'

/relay/doors/mapping

Метод для связывания считывателей с доступными для открытия входами/выходами.

Описание параметров
Название
Тип

Описание

mainReader,
secondReader,

extReader0,
extReader1,
extReader2,
extReader3
Object


mainReader - считыватель на панели.

secondReader - дополнительный считыватель.

extReader0,1,2,3 - внешние модули входов.


   main Boolean

Флаг открытия первого входа.
- По умолчанию: true

   second Boolean

Флаг открытия второго входа.
- По умолчанию: true

   gates Object

Флаги открытия внешних входов

      1, 2, 3, 4 Boolean

   Флаг открытия внешнего входа.
   - По умолчанию: false

GET - Получение параметров
Ответы
200 OK

Успешное получение параметров

Тело:

{
    "mainReader": {
        "main": true,
        "second": false,
        "gates": {
            "0": false,
            "1": false,
            "2": false,
            "3": false
        }
    },
    "secondReader": {
        "main": false,
        "second": true,
        "gates": {
            "0": false,
            "1": false,
            "2": false,
            "3": false
        }
    },
    ...,
    "extReader3": {
        "main": false,
        "second": false,
        "gates": {
            "0": false,
            "1": false,
            "2": false,
            "3": true
        }
    }
}
Примеры

CURL:

curl 
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/relay/doors/mapping'
PUT - Изменение параметров
Запрос

Тело:

{
    "mainReader": {
        "main": true,
        "second": false,
        "gates": {
            "0": false,
            "1": false,
            "2": false,
            "3": false
        }
    },
    "secondReader": {
        "main": false,
        "second": true,
        "gates": {
            "0": false,
            "1": false,
            "2": false,
            "3": false
        }
    },
    ...,
    "extReader3": {
        "main": false,
        "second": false,
        "gates": {
            "0": false,
            "1": false,
            "2": false,
            "3": true
        }
    }
}
Ответы
200 OK

Успешное получение параметров

Тело:

{
    "mainReader": {
        "main": true,
        "second": false,
        "gates": {
            "0": false,
            "1": false,
            "2": false,
            "3": false
        }
    },
    "secondReader": {
        "main": false,
        "second": true,
        "gates": {
            "0": false,
            "1": false,
            "2": false,
            "3": false
        }
    },
    ...,
    "extReader3": {
        "main": false,
        "second": false,
        "gates": {
            "0": false,
            "1": false,
            "2": false,
            "3": true
        }
    }
}
Примеры

CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/relay/doors/mapping' \
--data '{
    "mainReader": {
        "main": true,
        "second": false,
        "gates": {
            "0": false,
            "1": false,
            "2": false,
            "3": false
        }
    },
    "secondReader": {
        "main": false,
        "second": true,
        "gates": {
            "0": false,
            "1": false,
            "2": false,
            "3": false
        }
    },
    "extReader0": {
        "main": false,
        "second": false,
        "gates": {
            "0": true,
            "1": false,
            "2": false,
            "3": false
        }
    },
    "extReader1": {
        "main": false,
        "second": false,
        "gates": {
            "0": false,
            "1": true,
            "2": false,
            "3": false
        }
    },
    "extReader2": {
        "main": false,
        "second": false,
        "gates": {
            "0": false,
            "1": false,
            "2": true,
            "3": false
        }
    },
    "extReader3": {
        "main": false,
        "second": false,
        "gates": {
            "0": false,
            "1": false,
            "2": false,
            "3": true
        }
    }
}'

/relay/external/{адрес_контроллера}/open

Метод открытия дверей, управляемых внешними контроллерами. 

PUT - Открытие реле
Ответы
204 OK

Успешное открытие реле

400 Bad Request

Ошибка проверки переданных параметров

Тело:

Название

Тип
Описание

errors

Array Массив возвращаемых ошибок.

   message

   String    Сообщение с ошибкой.
{
    "errors": [
        {
            "message": "Контроллер с адресом 0 отключен"
        }
    ]
}
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/relay/external/1/open'

/relay/door_controller

Метод для настройки внешних модулей входов

В данный момент поддерживаются внешние модули входов Beward NCS-102

Описание параметров
Название
Тип

Описание

Тип запроса

timeout Integer Таймаут между посылками в шине
Ограничения: 170-1000 мс
GET
PUT
busErrors Integer Количество ошибок в шине. Сюда записываются ошибки, которые не удалось идентифицировать как ошибки, используемые в реализации протокола. GET
modules Array Массив параметров модулей (4 элемента) GET
PUT
  ...    Object  
   type    String Тип модуля. На данный момент поддерживаются только модули Beward NCS-102 GET
   enabled    Boolean Флаг включения/выключения модуля GET
PUT
   address    Integer

Адрес модуля на шине RS-485

Ограничения: 0-3

GET
PUT
   version    String Версия модуля* GET
   openTime    Integer Время открытия двери
Ограничения: 1-9 секунд
GET
PUT
   button    Boolean Фактическое** состояние кнопки GET
   tamper    Boolean Фактическое** состояние тампера GET
   alwaysOpen    Boolean Состояние режима открытых дверей

GET
PUT


* обновляется при каждой перенастройке модулей; через ~10 секунд после каждого запуска
** значение отправляется самим модулем через 30 секунд после старта и далее обновляется каждые 25 секунд


   errors    Integer Количество ошибок, которые удалось идентифицировать как ошибку, отправленную модулем в соответствии с реализованным протоколом GET
  connection    Boolean

Подключение к модулю.

Флаг меняется потере и возобновлении связи с модулем или его питания. 

GET
GET - Получение параметров
Ответы
200 OK

Успешное получение параметров

Тело:

{
    "timeout": 170,
    "busErrors": 0,
    "modules": [
        {
            "type": "NCS102",
            "enabled": true,
            "address": 0,
            "version": "1.2.1.11.5",
            "openTime": 9,
            "button": false,
            "tamper": false,
            "alwaysOpen": false,
            "errors": 0,
            "connection": true
        },
        {
            "type": "NCS102",
            "enabled": true,
            "address": 1,
            "version": "1.2.1.11.5",
            "openTime": 5,
            "button": false,
            "tamper": false,
            "alwaysOpen": false,
            "errors": 0,
            "connection": true
        },
        {
            "type": "NCS102",
            "enabled": true,
            "address": 2,
            "version": "1.2.1.11.5",
            "openTime": 5,
            "button": false,
            "tamper": false,
            "alwaysOpen": false,
            "errors": 0,
            "connection": true
        },
        {
            "type": "NCS102",
            "enabled": true,
            "address": 3,
            "version": "1.2.1.11.5",
            "openTime": 5,
            "button": false,
            "tamper": false,
            "alwaysOpen": false,
            "errors": 0,
            "connection": true
        }
    ]
}
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/relay/door_controller'
PUT - Изменение параметров
Запрос

Тело:

{
    "timeout": 170,
    "modules": [
        {
            "enabled": true,
            "address": 0,
            "alwaysOpen": false,
            "openTime": 9
        },
        {
            "enabled": true,
            "address": 1,
            "alwaysOpen": false,
            "openTime": 7
        },
        {   
            "enabled": true,
            "address": 2,
            "alwaysOpen": false,
            "openTime": 6
        },
        {
            "enabled": true,
            "address": 3,
            "alwaysOpen": false,
            "openTime": 6
        }
    ]
}

 

Ответы
200 OK

Успешное получение параметров

Тело:

{
    "timeout": 170,
    "busErrors": 0,
    "modules": [
        {
            "type": "NCS102",
            "enabled": true,
            "address": 0,
            "version": "1.2.1.11.5",
            "openTime": 9,
            "button": false,
            "tamper": false,
            "alwaysOpen": false,
            "errors": 0,
            "connection": true
        },
        {
            "type": "NCS102",
            "enabled": true,
            "address": 1,
            "version": "1.2.1.11.5",
            "openTime": 5,
            "button": false,
            "tamper": false,
            "alwaysOpen": false,
            "errors": 0,
            "connection": true
        },
        {
            "type": "NCS102",
            "enabled": true,
            "address": 2,
            "version": "1.2.1.11.5",
            "openTime": 5,
            "button": false,
            "tamper": false,
            "alwaysOpen": false,
            "errors": 0,
            "connection": true
        },
        {
            "type": "NCS102",
            "enabled": true,
            "address": 3,
            "version": "1.2.1.11.5",
            "openTime": 5,
            "button": false,
            "tamper": false,
            "alwaysOpen": false,
            "errors": 0,
            "connection": true
        }
    ]
}
400 Bad Request

Ошибка проверки переданных параметров

Тело:

Название

Тип
Описание

errors

Array Массив возвращаемых ошибок

   message

   String    Сообщение с ошибкой
{
    "errors": [
        {
            "message": "Адрес должен быть от 0 до 3"
        }
    ]
}
Примеры

CURL:

curl  \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/relay/door_controller' \
--data '{
    "timeout": 170,
    "modules": [
        {
            "enabled": true,
            "address": 0,
            "alwaysOpen": false,
            "openTime": 9
        },
        {
            "enabled": true,
            "address": 1,
            "alwaysOpen": false,
            "openTime": 7
        },
        {   
            "enabled": true,
            "address": 2,
            "alwaysOpen": false,
            "openTime": 6
        },
        {
            "enabled": true,
            "address": 3,
            "alwaysOpen": false,
            "openTime": 6
        }
    ]
}'


SIP

Обращаем ваше внимание!
Если отсутствует SIP регистрация, то проверьте доступен ли SIP-сервер. А также убедитесь, что IP-адрес, используемый для авторизации, является основным сетевым интерфейсом.

/sip/options

Методы получения и изменения sip-параметров для управления вызовом;

Описание параметров
Название
Тип

Описание

dtmf Object

Параметры DTMF для выходов;

   1    String

   Символ необходимый для открытия выхода 1.

    - Длина: 1 символ

    - По умолчанию: 1

   2    String

   Символ необходимый для открытия выхода 2.

    - Длина: 1 символ

    - По умолчанию: 2

callDelay Integer

Задержка вызова в АТ.

 - Ограничения: 0 - 255 секунд

 - По умолчанию: 0 секунд

talkDuration Integer

Время разговора с момента поднятия трубки в АТ или в SIP.

 - Ограничения: 1 - 255 секунд

 - По умолчанию: 180 секунд

ringDuration Integer

Время совершения вызова до поднятия трубки в АТ или в SIP.

 - Ограничения: 1 - 255 секунд

 - По умолчанию: 60 секунд

echoD Boolean

Флаг включения / выключения алгоритма эхоподавления в SIP.

 - По умолчанию: true

GET - Получение параметров
Ответы
200 OK

Тело:

{
    "dtmf": {
        "1": "1",
        "2": "2"
    },
    "callDelay": 0,
    "talkDuration": 180,
    "ringDuration": 60,
    "echoD": true
}
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/sip/options'
PUT - Изменение параметров
Запрос

Тело:

{
    "dtmf": {
        "1": "1",
        "2": "2"
    },
    "callDelay": 0,
    "talkDuration": 180,
    "ringDuration": 60,
    "echoD": true
}
Ответы
200 OK

Успешное изменение параметров

Тело:

{
    "dtmf": {
        "1": "1",
        "2": "2"
    },
    "callDelay": 0,
    "talkDuration": 180,
    "ringDuration": 60,
    "echoD": true
}
Примеры

 CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/sip/options' \
--data-raw '{
    "dtmf": {
        "1": "1",
        "2": "2"
    },
    "callDelay": 0,
    "talkDuration": 180,
    "ringDuration": 60,
    "echoD": true
}'

/sip/settings

Методы получения и изменения sip-параметров для авторизации на сервере.

Описание параметров
Название
Тип

Описание

videoEnable Boolean

Флаг включения / выключения видео-потока в видео вызове;

 - По умолчанию: true

remote Object

Параметры авторизации на SIP сервере.

   port    Integer

   Порт сервера на который отправляются вызовы.

    - По умолчанию: 5060

   domain    String

   Адрес сервера на который отправляются вызов.

    - По умолчанию: domain.com

   portRegister    Integer

   Порт сервера на который отправляются запросы регистрации.

    - По умолчанию: 5060

   domainRegister    String

   Адрес сервера на который отправляются запросы регистрации.

    - По умолчанию: domain.com

   username    String

   Логин для авторизации на сервере.

     - По умолчанию: "" 

   password    String

   Пароль для авторизации на сервере.

     - По умолчанию: ""

   proxy    Object

   Параметры для работы с прокси сервером;

      port       Integer

      Порт прокси сервера;

        - По умолчанию: "" 

      domain       String

      Адрес прокси сервера;

        - По умолчанию: "" 

      enable       Boolean

      Флаг использования прокси сервера;

        - По умолчанию: false

   transport    Object

   Протоколы для работы с серверами;

      udp       Boolean

      Флаг использования UDP;

        - По умолчанию: true

      tcp       Boolean

      Флаг использования TCP;

        - По умолчанию: false

   registerStatus    Boolean

   Флаг текущего состояния авторизации на сервере.

videoEnable Boolean

Флаг включения / выключения видео-потока в видео вызове;

 - По умолчанию: true

videoStreamId Integer

Идентификатор включения / выключения видео-потока в видео вызове;

 - По умолчанию: 1

0 - основной поток
-  альтернативный поток

GET - Получение параметров
Ответы
200 OK

 Успешное получение параметров

Тело:

{
  "remote": {
    "port": 5060,
    "domain": "domain.com",
    "portRegister": 5060,
    "domainRegister": "domain.com",
    "username": "",
    "password": "",
    "proxy": {
      "port": 5060,
      "domain": "",
      "enable": false
    },
    "transport": {
      "udp": true,
      "tcp": false
    },
    "registerStatus": false
  },
  "videoEnable": true,
  "videoStreamId": 1
}
Примеры

 CURL:

curl 
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/sip/settings'
PUT - Изменение параметров
Запрос

Тело:

{
  "remote": {
    "port": 5060,
    "domain": "domain.com",
    "portRegister": 5060,
    "domainRegister": "domain.com",
    "username": "",
    "password": "",
    "proxy": {
      "port": 5060,
      "domain": "",
      "enable": false
    },
    "transport": {
      "udp": true,
      "tcp": false
    },
    "registerStatus": false
  },
  "videoEnable": true,
  "videoStreamId": 1
}
Ответы
200 OK

 Успешное изменение параметров

Тело:

{
  "remote": {
    "port": 5060,
    "domain": "domain.com",
    "portRegister": 5060,
    "domainRegister": "domain.com",
    "username": "",
    "password": "",
    "proxy": {
      "port": 5060,
      "domain": "",
      "enable": false
    },
    "transport": {
      "udp": true,
      "tcp": false
    },
    "registerStatus": false
  },
  "videoEnable": true,
  "videoStreamId": 1
}
Примеры

CURL:

curl 
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/sip/settings' \
--data-raw '{
  "remote": {
    "port": 5060,
    "domain": "domain.com",
    "portRegister": 5060,
    "domainRegister": "domain.com",
    "username": "",
    "password": "",
    "proxy": {
      "port": 5060,
      "domain": "",
      "enable": false
    },
    "transport": {
      "udp": true,
      "tcp": false
    },
    "registerStatus": false
  },
  "videoEnable": true,
  "videoStreamId": 1
}'

/sip/test/{номер квартиры}

Метод создания тестового вызова в абонентскую трубку и SIP для указанного номера квартиры.

Описание параметров

С версии прошивки выше 2.5.0.3.2

Название
Тип

Описание

prefixHouse Integer

Префикс для калитки. Необходимо указывать, если калитка с префиксом.

 - Ограничения: 1-65535

GET - Отправка тестового вызова
Ответы
200 OK

 Успешная отправка тестового вызова

Тело:

{
    "prefixHouse": 2
}
500 Internal Server Error

Внутренняя ошибка при обработке метода

Примеры

CURL:

curl 
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/sip/test/1'

/sip/test/sip/{номер квартиры}

Метод создания тестового вызова в SIP для указанного номера квартиры.

GET - Отправка тестового вызова
Ответы
200 OK

Успешная отправка тестового вызова 

Заголовки:

Название

Значение
Описание

Content-Type

text/html; charset=ISO-8859-1 Тип возвращаемых данных
Примеры

CURL:

curl 
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/sip/test/sip/1'

/sip/test/analog/{номер квартиры}

Метод создания тестового вызова в абонентскую трубку для указанного номера квартиры.

GET - Отправка тестового вызова
Ответы
200 OK

 Успешная отправка тестового вызова

Заголовки:

Название

Значение
Описание

Content-Type

text/html; charset=ISO-8859-1 Тип возвращаемых данных
Примеры

CURL:

curl 
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/sip/test/analog/1'

Вызовы

/v1/call/stop

Метод завершения текущего вызова.

PUT - Завершение вызова
Ответы
200 OK

 Успешное завершение вызова

Примеры

CURL:

curl 
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/v1/call/stop'

Матрицы

/switch/info/models

Метод получения списка поддерживаемых коммутаторов устройством.

Описание параметров
Название
Тип

Описание

id String

Модель поддерживаемового коммутатора.

name String

Наименование поддерживаемового коммутатора.

eCount Integer

Количество единиц используемых для коммутации.

GET - Получение списка
Ответы
200 OK

Успешное получение списка

Тело:

[
    {
        "id": "FACTORIAL",
        "name": "Факториал",
        "eCount": 8
    },
    {
        "id": "CYFRAL",
        "name": "Цифрал",
        "eCount": 10
    },
    {
        "id": "VIZIT",
        "name": "Визит",
        "eCount": 10
    },
    {
        "id": "METAKOM",
        "name": "Метаком",
        "eCount": 10
    },
    {
        "id": "ELTIS",
        "name": "Элтис",
        "eCount": 10
    }
]
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/switch/info/models'

/switch/settings

Методы получения и изменения общих параметров для коммутаторов.

Описание параметров
Название
Тип

Описание

modelId String

Модель используемого коммутатора.

   Метод для получения поддерживаемых коммутаторов: /switch/info/models

GET - Получение параметров
Ответы
200 OK

 Успешное получение параметров

Тело:

{
    "modelId": "CYFRAL"
}
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/switch/settings'
PUT - Изменение параметров
Запрос

Тело:

{
    "modelId": "CYFRAL"
}
Ответы
200 OK

Успешное изменение параметров

Тело:

{
    "modelId": "CYFRAL"
}
Примеры

CURL: 

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/switch/settings' \
--data-raw '{
    "modelId": "CYFRAL"
}'

/switch/matrix/{номер матрицы коммутации}

Методы получения и изменения указанной матрицы коммутации.

Панель поддерживает подключение до 3-х коммутаторов:
   - Визит.

Панель поддерживает подключение до 4-х коммутаторов:
   - Элтис;
   - Бевард;
   - Цифрал;
   - Метаком;
   - Факториал.

Описание параметров
Название
Тип

Описание

capacity Integer

Размер указанного коммутатора.
 - Ограничения: 0, 10, 20, 40, 64, 80, 100, 160, 220
 - По умолчанию: 0

matrix Array

Двумерный массив с номерами квартир для коммутатора.

GET - Получение параметров
Ответы
200 OK

Тело:

{
    "capacity": 100,
    "matrix": [
        [
            100,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9
        ],
        ...,
        [
            90,
            91,
            92,
            93,
            94,
            95,
            96,
            97,
            98,
            99
        ]
    ]
}
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/switch/matrix/1'
PUT - Изменение параметров
Запрос

Тело:

{
    "capacity": 100,
    "matrix": [
        [
            100,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9
        ],
        [
            10,
            11,
            12,
            13,
            14,
            15,
            16,
            17,
            18,
            19
        ],
        [
            20,
            21,
            22,
            23,
            24,
            25,
            26,
            27,
            28,
            29
        ],
        [
            30,
            31,
            32,
            33,
            34,
            35,
            36,
            37,
            38,
            39
        ],
        [
            40,
            41,
            42,
            43,
            44,
            45,
            46,
            47,
            48,
            49
        ],
        [
            50,
            51,
            52,
            53,
            54,
            55,
            56,
            57,
            58,
            59
        ],
        [
            60,
            61,
            62,
            63,
            64,
            65,
            66,
            67,
            68,
            69
        ],
        [
            70,
            71,
            72,
            73,
            74,
            75,
            76,
            77,
            78,
            79
        ],
        [
            80,
            81,
            82,
            83,
            84,
            85,
            86,
            87,
            88,
            89
        ],
        [
            90,
            91,
            92,
            93,
            94,
            95,
            96,
            97,
            98,
            99
        ]
    ]
}
Ответы
200 OK

 Успешное изменение параметров

Тело:

{
    "capacity": 100,
    "matrix": [
        [
            100,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9
        ],
        [
            10,
            11,
            12,
            13,
            14,
            15,
            16,
            17,
            18,
            19
        ],
        [
            20,
            21,
            22,
            23,
            24,
            25,
            26,
            27,
            28,
            29
        ],
        [
            30,
            31,
            32,
            33,
            34,
            35,
            36,
            37,
            38,
            39
        ],
        [
            40,
            41,
            42,
            43,
            44,
            45,
            46,
            47,
            48,
            49
        ],
        [
            50,
            51,
            52,
            53,
            54,
            55,
            56,
            57,
            58,
            59
        ],
        [
            60,
            61,
            62,
            63,
            64,
            65,
            66,
            67,
            68,
            69
        ],
        [
            70,
            71,
            72,
            73,
            74,
            75,
            76,
            77,
            78,
            79
        ],
        [
            80,
            81,
            82,
            83,
            84,
            85,
            86,
            87,
            88,
            89
        ],
        [
            90,
            91,
            92,
            93,
            94,
            95,
            96,
            97,
            98,
            99
        ]
    ]
}
Примеры

 CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/switch/matrix/1' \
--data-raw '{
    "capacity": 100,
    "matrix": [
        [
            100,
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9
        ],
        [
            10,
            11,
            12,
            13,
            14,
            15,
            16,
            17,
            18,
            19
        ],
        [
            20,
            21,
            22,
            23,
            24,
            25,
            26,
            27,
            28,
            29
        ],
        [
            30,
            31,
            32,
            33,
            34,
            35,
            36,
            37,
            38,
            39
        ],
        [
            40,
            41,
            42,
            43,
            44,
            45,
            46,
            47,
            48,
            49
        ],
        [
            50,
            51,
            52,
            53,
            54,
            55,
            56,
            57,
            58,
            59
        ],
        [
            60,
            61,
            62,
            63,
            64,
            65,
            66,
            67,
            68,
            69
        ],
        [
            70,
            71,
            72,
            73,
            74,
            75,
            76,
            77,
            78,
            79
        ],
        [
            80,
            81,
            82,
            83,
            84,
            85,
            86,
            87,
            88,
            89
        ],
        [
            90,
            91,
            92,
            93,
            94,
            95,
            96,
            97,
            98,
            99
        ]
    ]
}'

 

/v1/switch/models

Метод получения списка поддерживаемых коммутаторов устройством.

Метод не доступен для устройств на прошивке ниже 2.5.0.9.4 (включительно).

Описание параметров
Название
Тип

Описание

id String

Модель поддерживаемового коммутатора.

name String

Наименование поддерживаемового коммутатора.

eCount Integer

Количество единиц используемых для коммутации.

dCount Integer

Количество десятков используемых для коммутации.

switchCount Integer

Количество возможных коммутаторов подключаемых друг в друга.

GET - Получение списка
Ответы
200 OK

Успешное получение списка

Тело:

[
    {
        "id": 0,
        "name": "Факториал",
        "eCount": 8,
        "dCount": 0,
        "switchCount": 1
    },
    {
        "id": 1,
        "name": "Цифрал",
        "eCount": 10,
        "dCount": 0,
        "switchCount": 1
    },
    {
        "id": 2,
        "name": "Визит",
        "eCount": 10,
        "dCount": 0,
        "switchCount": 1
    },
    {
        "id": 3,
        "name": "Метаком",
        "eCount": 10,
        "dCount": 0,
        "switchCount": 1
    },
    {
        "id": 4,
        "name": "Элтис",
        "eCount": 10,
        "dCount": 0,
        "switchCount": 1
    },
    {
        "id": 10,
        "name": "Бевард",
        "eCount": 10,
        "dCount": 0,
        "switchCount": 1
    },
    {
        "id": 11,
        "name": "Бевард ККМ-105",
        "eCount": 10,
        "dCount": 10,
        "switchCount": 5
    },
    {
        "id": 12,
        "name": "Бевард ККМ-108",
        "eCount": 10,
        "dCount": 10,
        "switchCount": 8
    },
    {
        "id": 13,
        "name": "Бевард ККМ-100S2",
        "eCount": 10,
        "dCount": 10,
        "switchCount": 1
    },
    {
        "id": 20,
        "name": "Цифрал КМГ-100",
        "eCount": 10,
        "dCount": 10,
        "switchCount": 1
    },
    {
        "id": 30,
        "name": "Элтис КМ100-7.2",
        "eCount": 10,
        "dCount": 10,
        "switchCount": 1
    },
    {
        "id": 40,
        "name": "ДП-К2Д",
        "eCount": 0,
        "dCount": 0,
        "switchCount": 1
    },
    {
        "id": 50,
        "name": "Визит БК-4",
        "eCount": 4,
        "dCount": 1,
        "switchCount": 1
    },
    {
        "id": 51,
        "name": "Визит БК-10",
        "eCount": 10,
        "dCount": 1,
        "switchCount": 1
    },
    {
        "id": 52,
        "name": "Визит БК-100М",
        "eCount": 10,
        "dCount": 10,
        "switchCount": 1
    },
    {
        "id": 60,
        "name": "Метаком COM 80",
        "eCount": 10,
        "dCount": 8,
        "switchCount": 1
    },
    {
        "id": 61,
        "name": "Метаком COM 80 U",
        "eCount": 10,
        "dCount": 8,
        "switchCount": 1
    },
    {
        "id": 62,
        "name": "Метаком COM 80 UD",
        "eCount": 10,
        "dCount": 8,
        "switchCount": 1
    },
    {
        "id": 63,
        "name": "Метаком COM 160 U",
        "eCount": 10,
        "dCount": 16,
        "switchCount": 1
    },
    {
        "id": 64,
        "name": "Метаком COM 160 UD",
        "eCount": 10,
        "dCount": 16,
        "switchCount": 1
    },
    {
        "id": 65,
        "name": "Метаком COM 220 U",
        "eCount": 10,
        "dCount": 22,
        "switchCount": 1
    },
    {
        "id": 66,
        "name": "Метаком COM 220 UD",
        "eCount": 10,
        "dCount": 22,
        "switchCount": 1
    }
]
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v1/switch/info/models'

/v1/switch/{номер матрицы коммутации}

Методы получения и изменения указанной матрицы коммутации.

Метод не доступен для устройств на прошивке ниже 2.5.0.9.4 (включительно).

Панель поддерживает подключение до 3-х коммутаторов:
   - Визит.

Панель поддерживает подключение до 4-х коммутаторов:
   - Элтис;
   - Бевард;
   - Цифрал;
   - Метаком;
   - Факториал.

Описание параметров
Название
Тип

Описание

type Integer

Тип используемого коммутатора.

matrices Array

Список подматриц.

   ...    Object

   Объект подматрицы.

      id       Integer

      Номер матрицы.

      matrix       Integer

      Массив со списками квартир.

      capacity       Integer

      Количество квартир в матрице.

GET - Получение параметров
Ответы
200 OK

 Тело:

{
    "type":10,
    "matrices":[
        {
            "id":1,
            "matrix":[
                [10, 1, 2, 3, 4, 5, 6, 7, 8, 9]
            ],
            "capacity":10
        }
    ]
}
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v1/switch/1'
PUT - Изменение параметров
Запрос

Тело:

{
    "type":10,
    "matrices":[
        {
            "id":1,
            "matrix":[
                [10, 1, 2, 3, 4, 5, 6, 7, 8, 9]
            ],
            "capacity":10
        }
    ]
}
Ответы
200 OK

 Успешное изменение параметров

Тело:

{
    "type":10,
    "matrices":[
        {
            "id":1,
            "matrix":[
                [10, 1, 2, 3, 4, 5, 6, 7, 8, 9]
            ],
            "capacity":10
        }
    ]
}
Примеры

 CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/v1/switch/1' \
--data-raw '{
    "type":10,
    "matrices":[
        {
            "id":1,
            "matrix":[
                [10, 1, 2, 3, 4, 5, 6, 7, 8, 9]
            ],
            "capacity":10
        }
    ]
}'

Микроконтроллер

/v1/mcu/info

Метод получения информации о микроконтроллере.

Описание параметров
Название
Тип

Описание

power Object

Параметры питания панели;

   dc    Float

   Входное напряжение;

chipId Integer

Идентификатор микроконтроллера;

GET - Получение параметров
Ответы
200 OK

Успешное получение параметров

Тело:

{
    "power": {
        "dc": 12.412
    },
    "chipId": 2321944743649890300
}
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v1/mcu/info'

Сервисные коды

/serviceCode/settings

Метод получения и изменения параметров сервисного кода для настройки панели через клавиатуру.

Описание параметров
Название
Тип

Описание

enabled Boolean

Флаг включения / выключения режима ввода сервисных кодов.

    - По умолчанию: true

pass Integer

Код доступа для сервисных функций

    - По умолчанию: 123456

GET - Получение параметров
Ответы
200 OK

Успешное получение параметров

Тело:

{
    "enabled": true,
    "pass": 874123
}
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/serviceCode/settings'
PUT - Изменение параметров
Запрос

Тело:

{
    "enabled": true,
    "pass": 123456
}
Ответы
200 OK

 Успешное получение параметров

Тело:

{
    "enabled": true,
    "pass": 123456
}
400 Bad Request

Ошибка проверки передаваемых данных

Тело:

Название
Тип

Описание

errors Array

Массив возвращаемых ошибок.

   message    String

   Сообщение об ошибке.

{
    "errors": [
        {
            "message": "pass - Значение должно быть в диапазоне от 100000 до 999999"
        }
    ]
}
Примеры

 CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/serviceCode/settings' \
--data-raw '{
    "enabled": true,
    "pass": 123456
}'

Системное

/system/tz

Метод получения поддерживаемых временных зон.

GET - Получение списка
Ответы
200 OK

Успешное получение списка

Тело:

[
    "Africa/Abidjan",
    "Africa/Accra",
    "Africa/Addis_Ababa",
    "Africa/Algiers",
    "Africa/Asmara",
    "Africa/Asmera",
    "Africa/Bamako",
    "Africa/Bangui",
    "Africa/Banjul",
    "Africa/Bissau",
    "Africa/Blantyre",
    "Africa/Brazzaville",
    "Africa/Bujumbura",
    "Africa/Cairo",
    "Africa/Casablanca",
    "Africa/Ceuta",
    "Africa/Conakry",
    "Africa/Dakar",
    "Africa/Dar_es_Salaam",
    "Africa/Djibouti",
    "Africa/Douala",
    "Africa/El_Aaiun",
    "Africa/Freetown",
    "Africa/Gaborone",
    "Africa/Harare",
    "Africa/Johannesburg",
    "Africa/Juba",
    "Africa/Kampala",
    "Africa/Khartoum",
    "Africa/Kigali",
    "Africa/Kinshasa",
    "Africa/Lagos",
    "Africa/Libreville",
    "Africa/Lome",
    "Africa/Luanda",
    "Africa/Lubumbashi",
    "Africa/Lusaka",
    "Africa/Malabo",
    "Africa/Maputo",
    "Africa/Maseru",
    "Africa/Mbabane",
    "Africa/Mogadishu",
    "Africa/Monrovia",
    "Africa/Nairobi",
    "Africa/Ndjamena",
    "Africa/Niamey",
    "Africa/Nouakchott",
    "Africa/Ouagadougou",
    "Africa/Porto-Novo",
    "Africa/Sao_Tome",
    "Africa/Timbuktu",
    "Africa/Tripoli",
    "Africa/Tunis",
    "Africa/Windhoek",
    "America/Adak",
    "America/Anchorage",
    "America/Anguilla",
    "America/Antigua",
    "America/Araguaina",
    "America/Argentina/Buenos_Aires",
    "America/Argentina/Catamarca",
    "America/Argentina/ComodRivadavia",
    "America/Argentina/Cordoba",
    "America/Argentina/Jujuy",
    "America/Argentina/La_Rioja",
    "America/Argentina/Mendoza",
    "America/Argentina/Rio_Gallegos",
    "America/Argentina/Salta",
    "America/Argentina/San_Juan",
    "America/Argentina/San_Luis",
    "America/Argentina/Tucuman",
    "America/Argentina/Ushuaia",
    "America/Aruba",
    "America/Asuncion",
    "America/Atikokan",
    "America/Atka",
    "America/Bahia",
    "America/Bahia_Banderas",
    "America/Barbados",
    "America/Belem",
    "America/Belize",
    "America/Blanc-Sablon",
    "America/Boa_Vista",
    "America/Bogota",
    "America/Boise",
    "America/Buenos_Aires",
    "America/Cambridge_Bay",
    "America/Campo_Grande",
    "America/Cancun",
    "America/Caracas",
    "America/Catamarca",
    "America/Cayenne",
    "America/Cayman",
    "America/Chicago",
    "America/Chihuahua",
    "America/Coral_Harbour",
    "America/Cordoba",
    "America/Costa_Rica",
    "America/Creston",
    "America/Cuiaba",
    "America/Curacao",
    "America/Danmarkshavn",
    "America/Dawson",
    "America/Dawson_Creek",
    "America/Denver",
    "America/Detroit",
    "America/Dominica",
    "America/Edmonton",
    "America/Eirunepe",
    "America/El_Salvador",
    "America/Ensenada",
    "America/Fort_Nelson",
    "America/Fort_Wayne",
    "America/Fortaleza",
    "America/Glace_Bay",
    "America/Godthab",
    "America/Goose_Bay",
    "America/Grand_Turk",
    "America/Grenada",
    "America/Guadeloupe",
    "America/Guatemala",
    "America/Guayaquil",
    "America/Guyana",
    "America/Halifax",
    "America/Havana",
    "America/Hermosillo",
    "America/Indiana/Indianapolis",
    "America/Indiana/Knox",
    "America/Indiana/Marengo",
    "America/Indiana/Petersburg",
    "America/Indiana/Tell_City",
    "America/Indiana/Vevay",
    "America/Indiana/Vincennes",
    "America/Indiana/Winamac",
    "America/Indianapolis",
    "America/Inuvik",
    "America/Iqaluit",
    "America/Jamaica",
    "America/Jujuy",
    "America/Juneau",
    "America/Kentucky/Louisville",
    "America/Kentucky/Monticello",
    "America/Knox_IN",
    "America/Kralendijk",
    "America/La_Paz",
    "America/Lima",
    "America/Los_Angeles",
    "America/Louisville",
    "America/Lower_Princes",
    "America/Maceio",
    "America/Managua",
    "America/Manaus",
    "America/Marigot",
    "America/Martinique",
    "America/Matamoros",
    "America/Mazatlan",
    "America/Mendoza",
    "America/Menominee",
    "America/Merida",
    "America/Metlakatla",
    "America/Mexico_City",
    "America/Miquelon",
    "America/Moncton",
    "America/Monterrey",
    "America/Montevideo",
    "America/Montreal",
    "America/Montserrat",
    "America/Nassau",
    "America/New_York",
    "America/Nipigon",
    "America/Nome",
    "America/Noronha",
    "America/North_Dakota/Beulah",
    "America/North_Dakota/Center",
    "America/North_Dakota/New_Salem",
    "America/Ojinaga",
    "America/Panama",
    "America/Pangnirtung",
    "America/Paramaribo",
    "America/Phoenix",
    "America/Port-au-Prince",
    "America/Port_of_Spain",
    "America/Porto_Acre",
    "America/Porto_Velho",
    "America/Puerto_Rico",
    "America/Punta_Arenas",
    "America/Rainy_River",
    "America/Rankin_Inlet",
    "America/Recife",
    "America/Regina",
    "America/Resolute",
    "America/Rio_Branco",
    "America/Rosario",
    "America/Santa_Isabel",
    "America/Santarem",
    "America/Santiago",
    "America/Santo_Domingo",
    "America/Sao_Paulo",
    "America/Scoresbysund",
    "America/Shiprock",
    "America/Sitka",
    "America/St_Barthelemy",
    "America/St_Johns",
    "America/St_Kitts",
    "America/St_Lucia",
    "America/St_Thomas",
    "America/St_Vincent",
    "America/Swift_Current",
    "America/Tegucigalpa",
    "America/Thule",
    "America/Thunder_Bay",
    "America/Tijuana",
    "America/Toronto",
    "America/Tortola",
    "America/Vancouver",
    "America/Virgin",
    "America/Whitehorse",
    "America/Winnipeg",
    "America/Yakutat",
    "America/Yellowknife",
    "Antarctica/Casey",
    "Antarctica/Davis",
    "Antarctica/DumontDUrville",
    "Antarctica/Macquarie",
    "Antarctica/Mawson",
    "Antarctica/McMurdo",
    "Antarctica/Palmer",
    "Antarctica/Rothera",
    "Antarctica/South_Pole",
    "Antarctica/Syowa",
    "Antarctica/Troll",
    "Antarctica/Vostok",
    "Arctic/Longyearbyen",
    "Asia/Aden",
    "Asia/Almaty",
    "Asia/Amman",
    "Asia/Anadyr",
    "Asia/Aqtau",
    "Asia/Aqtobe",
    "Asia/Ashgabat",
    "Asia/Ashkhabad",
    "Asia/Atyrau",
    "Asia/Baghdad",
    "Asia/Bahrain",
    "Asia/Baku",
    "Asia/Bangkok",
    "Asia/Barnaul",
    "Asia/Beirut",
    "Asia/Bishkek",
    "Asia/Brunei",
    "Asia/Calcutta",
    "Asia/Chita",
    "Asia/Choibalsan",
    "Asia/Chongqing",
    "Asia/Chungking",
    "Asia/Colombo",
    "Asia/Dacca",
    "Asia/Damascus",
    "Asia/Dhaka",
    "Asia/Dili",
    "Asia/Dubai",
    "Asia/Dushanbe",
    "Asia/Famagusta",
    "Asia/Gaza",
    "Asia/Harbin",
    "Asia/Hebron",
    "Asia/Ho_Chi_Minh",
    "Asia/Hong_Kong",
    "Asia/Hovd",
    "Asia/Irkutsk",
    "Asia/Istanbul",
    "Asia/Jakarta",
    "Asia/Jayapura",
    "Asia/Jerusalem",
    "Asia/Kabul",
    "Asia/Kamchatka",
    "Asia/Karachi",
    "Asia/Kashgar",
    "Asia/Kathmandu",
    "Asia/Katmandu",
    "Asia/Khandyga",
    "Asia/Kolkata",
    "Asia/Krasnoyarsk",
    "Asia/Kuala_Lumpur",
    "Asia/Kuching",
    "Asia/Kuwait",
    "Asia/Macao",
    "Asia/Macau",
    "Asia/Magadan",
    "Asia/Makassar",
    "Asia/Manila",
    "Asia/Muscat",
    "Asia/Nicosia",
    "Asia/Novokuznetsk",
    "Asia/Novosibirsk",
    "Asia/Omsk",
    "Asia/Oral",
    "Asia/Phnom_Penh",
    "Asia/Pontianak",
    "Asia/Pyongyang",
    "Asia/Qatar",
    "Asia/Qostanay",
    "Asia/Qyzylorda",
    "Asia/Rangoon",
    "Asia/Riyadh",
    "Asia/Saigon",
    "Asia/Sakhalin",
    "Asia/Samarkand",
    "Asia/Seoul",
    "Asia/Shanghai",
    "Asia/Singapore",
    "Asia/Srednekolymsk",
    "Asia/Taipei",
    "Asia/Tashkent",
    "Asia/Tbilisi",
    "Asia/Tehran",
    "Asia/Tel_Aviv",
    "Asia/Thimbu",
    "Asia/Thimphu",
    "Asia/Tokyo",
    "Asia/Tomsk",
    "Asia/Ujung_Pandang",
    "Asia/Ulaanbaatar",
    "Asia/Ulan_Bator",
    "Asia/Urumqi",
    "Asia/Ust-Nera",
    "Asia/Vientiane",
    "Asia/Vladivostok",
    "Asia/Yakutsk",
    "Asia/Yangon",
    "Asia/Yekaterinburg",
    "Asia/Yerevan",
    "Atlantic/Azores",
    "Atlantic/Bermuda",
    "Atlantic/Canary",
    "Atlantic/Cape_Verde",
    "Atlantic/Faeroe",
    "Atlantic/Faroe",
    "Atlantic/Jan_Mayen",
    "Atlantic/Madeira",
    "Atlantic/Reykjavik",
    "Atlantic/South_Georgia",
    "Atlantic/St_Helena",
    "Atlantic/Stanley",
    "Australia/ACT",
    "Australia/Adelaide",
    "Australia/Brisbane",
    "Australia/Broken_Hill",
    "Australia/Canberra",
    "Australia/Currie",
    "Australia/Darwin",
    "Australia/Eucla",
    "Australia/Hobart",
    "Australia/LHI",
    "Australia/Lindeman",
    "Australia/Lord_Howe",
    "Australia/Melbourne",
    "Australia/NSW",
    "Australia/North",
    "Australia/Perth",
    "Australia/Queensland",
    "Australia/South",
    "Australia/Sydney",
    "Australia/Tasmania",
    "Australia/Victoria",
    "Australia/West",
    "Australia/Yancowinna",
    "Brazil/Acre",
    "Brazil/DeNoronha",
    "Brazil/East",
    "Brazil/West",
    "CET",
    "CST6CDT",
    "Canada/Atlantic",
    "Canada/Central",
    "Canada/Eastern",
    "Canada/Mountain",
    "Canada/Newfoundland",
    "Canada/Pacific",
    "Canada/Saskatchewan",
    "Canada/Yukon",
    "Chile/Continental",
    "Chile/EasterIsland",
    "Cuba",
    "EET",
    "EST",
    "EST5EDT",
    "Egypt",
    "Eire",
    "Etc/GMT",
    "Etc/GMT+0",
    "Etc/GMT+1",
    "Etc/GMT+10",
    "Etc/GMT+11",
    "Etc/GMT+12",
    "Etc/GMT+2",
    "Etc/GMT+3",
    "Etc/GMT+4",
    "Etc/GMT+5",
    "Etc/GMT+6",
    "Etc/GMT+7",
    "Etc/GMT+8",
    "Etc/GMT+9",
    "Etc/GMT-0",
    "Etc/GMT-1",
    "Etc/GMT-10",
    "Etc/GMT-11",
    "Etc/GMT-12",
    "Etc/GMT-13",
    "Etc/GMT-14",
    "Etc/GMT-2",
    "Etc/GMT-3",
    "Etc/GMT-4",
    "Etc/GMT-5",
    "Etc/GMT-6",
    "Etc/GMT-7",
    "Etc/GMT-8",
    "Etc/GMT-9",
    "Etc/GMT0",
    "Etc/Greenwich",
    "Etc/UCT",
    "Etc/UTC",
    "Etc/Universal",
    "Etc/Zulu",
    "Europe/Amsterdam",
    "Europe/Andorra",
    "Europe/Astrakhan",
    "Europe/Athens",
    "Europe/Belfast",
    "Europe/Belgrade",
    "Europe/Berlin",
    "Europe/Bratislava",
    "Europe/Brussels",
    "Europe/Bucharest",
    "Europe/Budapest",
    "Europe/Busingen",
    "Europe/Chisinau",
    "Europe/Copenhagen",
    "Europe/Dublin",
    "Europe/Gibraltar",
    "Europe/Guernsey",
    "Europe/Helsinki",
    "Europe/Isle_of_Man",
    "Europe/Istanbul",
    "Europe/Jersey",
    "Europe/Kaliningrad",
    "Europe/Kiev",
    "Europe/Kirov",
    "Europe/Lisbon",
    "Europe/Ljubljana",
    "Europe/London",
    "Europe/Luxembourg",
    "Europe/Madrid",
    "Europe/Malta",
    "Europe/Mariehamn",
    "Europe/Minsk",
    "Europe/Monaco",
    "Europe/Moscow",
    "Europe/Nicosia",
    "Europe/Oslo",
    "Europe/Paris",
    "Europe/Podgorica",
    "Europe/Prague",
    "Europe/Riga",
    "Europe/Rome",
    "Europe/Samara",
    "Europe/San_Marino",
    "Europe/Sarajevo",
    "Europe/Saratov",
    "Europe/Simferopol",
    "Europe/Skopje",
    "Europe/Sofia",
    "Europe/Stockholm",
    "Europe/Tallinn",
    "Europe/Tirane",
    "Europe/Tiraspol",
    "Europe/Ulyanovsk",
    "Europe/Uzhgorod",
    "Europe/Vaduz",
    "Europe/Vatican",
    "Europe/Vienna",
    "Europe/Vilnius",
    "Europe/Volgograd",
    "Europe/Warsaw",
    "Europe/Zagreb",
    "Europe/Zaporozhye",
    "Europe/Zurich",
    "Factory",
    "GB",
    "GB-Eire",
    "GMT",
    "GMT+0",
    "GMT-0",
    "GMT0",
    "Greenwich",
    "HST",
    "Hongkong",
    "Iceland",
    "Indian/Antananarivo",
    "Indian/Chagos",
    "Indian/Christmas",
    "Indian/Cocos",
    "Indian/Comoro",
    "Indian/Kerguelen",
    "Indian/Mahe",
    "Indian/Maldives",
    "Indian/Mauritius",
    "Indian/Mayotte",
    "Indian/Reunion",
    "Iran",
    "Israel",
    "Jamaica",
    "Japan",
    "Kwajalein",
    "Libya",
    "MET",
    "MST",
    "MST7MDT",
    "Mexico/BajaNorte",
    "Mexico/BajaSur",
    "Mexico/General",
    "NZ",
    "NZ-CHAT",
    "Navajo",
    "PRC",
    "PST8PDT",
    "Pacific/Apia",
    "Pacific/Auckland",
    "Pacific/Bougainville",
    "Pacific/Chatham",
    "Pacific/Chuuk",
    "Pacific/Easter",
    "Pacific/Efate",
    "Pacific/Enderbury",
    "Pacific/Fakaofo",
    "Pacific/Fiji",
    "Pacific/Funafuti",
    "Pacific/Galapagos",
    "Pacific/Gambier",
    "Pacific/Guadalcanal",
    "Pacific/Guam",
    "Pacific/Honolulu",
    "Pacific/Johnston",
    "Pacific/Kiritimati",
    "Pacific/Kosrae",
    "Pacific/Kwajalein",
    "Pacific/Majuro",
    "Pacific/Marquesas",
    "Pacific/Midway",
    "Pacific/Nauru",
    "Pacific/Niue",
    "Pacific/Norfolk",
    "Pacific/Noumea",
    "Pacific/Pago_Pago",
    "Pacific/Palau",
    "Pacific/Pitcairn",
    "Pacific/Pohnpei",
    "Pacific/Ponape",
    "Pacific/Port_Moresby",
    "Pacific/Rarotonga",
    "Pacific/Saipan",
    "Pacific/Samoa",
    "Pacific/Tahiti",
    "Pacific/Tarawa",
    "Pacific/Tongatapu",
    "Pacific/Truk",
    "Pacific/Wake",
    "Pacific/Wallis",
    "Pacific/Yap",
    "Poland",
    "Portugal",
    "ROC",
    "ROK",
    "Singapore",
    "Turkey",
    "UCT",
    "US/Alaska",
    "US/Aleutian",
    "US/Arizona",
    "US/Central",
    "US/East-Indiana",
    "US/Eastern",
    "US/Hawaii",
    "US/Indiana-Starke",
    "US/Michigan",
    "US/Mountain",
    "US/Pacific",
    "US/Pacific-New",
    "US/Samoa",
    "UTC",
    "Universal",
    "W-SU",
    "WET",
    "Zulu"
]
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/system/tz'

/system/info

Метод получения системной информации устройства.

Описание параметров
Название
Тип

Описание

model String

Название модели используемой камеры.

temperature Double

Значение температуры процессора камеры.

 - Нормальная температура до 95°C.

chipId String

Идентификатор чипа камеры.

mac String

Мак адрес устройства.

deviceID String

Серийный номер устройства.

deviceModel String

Наименование устройства.

uptime Integer

Время работы устройства.

registerStatus Boolean

Флаг состояния SIP регистрации.

GET - Получение параметров
Ответы
200 OK

 Успешное получение параметров

Тело:

{
    "model": "GK7205V300",
    "temperature": 84.68,
    "chipId": "232ae91c800955e300000000000000000000000000000000",
    "mac": "08:53:00:00:00:00",
    "deviceID": "5300000000",
    "deviceModel": "ISCom X1 (rev.5)",
    "uptime": 416,
    "registerStatus": false
}
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/system/info'

/system/load

Метод получения количества свободной и задействованной памяти системой устройства.

Описание параметров
Название
Тип

Описание

memory

Obejct Параметры использованной и задействованной памяти системой и приложениями;

   system

   Object    Параметры памяти системы:

      used

      Integer       Количество задействованной памяти;

      free

      Integer       Количество свободной памяти;

   services

   Object    Параметры использования памяти приложениями;

      api
      uart
      ddns
      streamer
      camofon
      upgrade
      proguard
      ircut

      Object       Наименование приложения

         pid

         Integer          Номер процессора;

         used

         Integer          Количество используемой памяти;

processor

Object Параметры загруженность процессора за:

   1

   Float    1-у минуту;

   5

   Float    5-ть минут;

   15

   Float    15-ть минут;
GET - Получение параметров
Ответы
200 OK

 Успешное получение параметров

Тело:

{
  "memory": {
    "system": {
      "used": 19568,
      "free": 17060
    },
    "services": {
      "api": {
        "pid": 1136,
        "used": 3032
      },
      "uart": {
        "pid": 1093,
        "used": 1056
      },
      "ddns": {
        "pid": 1033,
        "used": 1204
      },
      "streamer": {
        "pid": 1052,
        "used": 7516
      },
      "camofon": {
        "pid": 1115,
        "used": 3628
      },
      "upgrade": {
        "pid": 1156,
        "used": 1056
      },
      "proguard": {
        "pid": 1011,
        "used": 1000
      },
      "ircut": {
        "pid": 1010,
        "used": 728
      }
    }
  },
  "processor": {
    "1": 2.48,
    "5": 2.1,
    "15": 1.11
  }
}
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/system/load'

/system/settings

Методы получения и изменения системных настроек.

Описание параметров
Название
Тип

Описание

log_level Object

Уровни логирования приложений.

   api

   uart
   camofon

   streamer
   proguard

   store

   baresip

   libre

   Integer

   Уровень логирования приложения:

    - 1 - Trace;
    - 2 - Debug;
    - 3 - Info;
    - 4 - Warning;
    - 5 - Error;
    - 6 - Fatal.

    - По умолчанию: 3

tz

String

Текущая временная зона (Поддерживаемые зоны).

 - По умолчанию: Asia/Yekaterinburg

dateTime

String

Текущая дата и время

dns

Object

Параметры DNS серверов

 

ВАЖНО! Является устаревшим, советуем использовать метод /v1/network для получения и изменения сетевых настроек включая сервера dns.

   auto

   Boolean

   Флаг работы с dns серверами.

    - true - автоматически;

    - false - в ручную.

    - По умолчанию: true

   nameservers

   Array

   Массив строк с dns серверами.

ntp

Array

Массив строк с ntp серверами.

assist

Object

Параметры для работы ассистента.

   enable

   Boolean

   Флаг включения / выключения ассистента.

    - По умолчанию: true

   online

   Boolean

   Флаг переключения онлайн и оффлайн ассистента.

    - По умолчанию: true

 

   ВАЖНО! Онлайн ассистент подразумевает входящие вызовы на панель при реагировании на различные события в логах.

GET - Получение параметров
Ответы
200 OK

Успешное получение параметров

Тело: 

{
    "log_level": {
        "api": 3,
        "uart": 3,
        "camofon": 3,
        "streamer": 3,
        "proguard": 3,
        "store": 3,
        "baresip": 3,
        "libre": 3
    },
    "tz": "Asia/Yekaterinburg",
    "dateTime": "2024-06-06T13:21:38+0500",
    "dns": {
        "auto": true,
        "nameservers": [
            "78.29.2.21",
            "78.29.2.22"
        ]
    },
    "ntp": [
        "0.pool.ntp.org",
        "1.pool.ntp.org",
        "time.is74.ru"
    ],
    "assist": {
        "enable": true,
        "online": true
    }
}
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/system/settings'
PUT - Изменение параметров
Запрос

Тело:

{
    "log_level": {
        "api": 3,
        "uart": 3,
        "camofon": 3,
        "streamer": 3,
        "proguard": 3,
        "store": 3,
        "baresip": 3,
        "libre": 3
    },
    "tz": "UTC",
    "dns": {
        "auto": true,
        "nameservers": [
            "78.29.2.21",
            "78.29.2.22"
        ]
    },
    "ntp": [
        "0.pool.ntp.org",
        "1.pool.ntp.org",
        "10.100.12.14"
    ],
    "assist": {
        "enable": true,
        "online": true
    }
}
Ответы
200 OK

 Успешное получение параметров

Тело: 

{
    "log_level": {
        "api": 3,
        "uart": 3,
        "camofon": 3,
        "streamer": 3,
        "proguard": 3,
        "store": 3,
        "baresip": 3,
        "libre": 3
    },
    "tz": "Asia/Yekaterinburg",
    "dateTime": "2024-06-06T13:21:38+0500",
    "dns": {
        "auto": true,
        "nameservers": [
            "78.29.2.21",
            "78.29.2.22"
        ]
    },
    "ntp": [
        "0.pool.ntp.org",
        "1.pool.ntp.org",
        "time.is74.ru"
    ],
    "assist": {
        "enable": true,
        "online": true
    }
}
Примеры

CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/system/settings' \
--data-raw '{
    "log_level": {
        "api": 3,
        "uart": 3,
        "camofon": 3,
        "streamer": 3,
        "proguard": 3,
        "store": 3,
        "baresip": 3,
        "libre": 3
    },
    "tz": "UTC",
    "dns": {
        "auto": true,
        "nameservers": [
            "78.29.2.21",
            "78.29.2.22"
        ]
    },
    "ntp": [
        "0.pool.ntp.org",
        "1.pool.ntp.org",
        "10.100.12.14"
    ],
    "assist": {
        "enable": true,
        "online": true
    }
}'

/system/fw_env

Метод получения MAC-адреса устройства.

Описание параметров
Название
Тип

Описание

ethaddr String

MAC адрес устройства

GET - Получение параметров
Ответы
200 OK

Успешное получение параметров 

Тело:

{
    "ethaddr": "08:53:00:00:00:00"
}
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/system/fw_env'

/system/backup

Метод создания резервной копии устройства.

Для восстановление резервной копии используется метод:
   /system/restore или /system/restore/ftp

GET - Создание резервной копии
Ответы
200 OK

Успешное создание резервной копии 

Заголовки:

Название Значение Описание

Content-Type

application/octet-stream Тип возвращаемых данных

Content-Disposition

attachment; filename="backup-08:13:00:00:00:00.bin" Формат возвращаемых данных

 Тело:

*** Бинарное представление файла ***
Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/system/backup'

/system/backup/ftp

Метод создания резервной копии устройства с отправкой файла на FTP сервер.

Метод не доступен для устройств на прошивке ниже 2.5.0.9.4 (включительно).

Для восстановление резервной копии используется метод:
   /system/restore или /system/restore/ftp

Описание параметров
Название
Тип

Описание

server
String

Сервер и порт для скачивания файла резервной копии

auth
Object

Данные для авторизации на сервере

   username
   String

   Логин

   password
   String

   Пароль

path
String

Путь к папке на сервере

name
String

Название файла в папке

PUT - Создание резервной копии
Запрос

Тело:

{
    "server": "192.168.0.100:21",
    "auth": {
        "username": "username",
        "password": "password"
    },
    "path": "",
    "name": "backup.bin"
}
Ответы
200 OK

Успешное создание резервной копии 

Заголовки:

Название Значение Описание

Content-Type

text/html; charset=ISO-8859-1 Тип возвращаемых данных
Примеры

CURL:

curl \
--header 'Content-Type: application/octet-stream' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/system/backup/ftp' \
--data-raw '{
    "server": "192.168.0.100:21",
    "auth": {
        "username": "username",
        "password": "password"
    },
    "path": "",
    "name": "backup.bin"
}'

/system/restore

Метод восстановления резервной копии устройства.

Для создания резервной копии используется метод:
   /system/backup или /system/backup/ftp

PUT - Восстановление резервной копии
Запрос

 Заголовки:

Название

Значение Описание

Content-Type

application/octet-stream Тип передаваемых данных

Тело:

*** Бинарный файл ***
Ответы
200 OK

 Успешное восстановление резервной копии

Заголовки:

Название

Значение Описание

Content-Type

text/html; charset=ISO-8859-1 Тип возвращаемых данных
Примеры

CURL:

curl \
--header 'Content-Type: application/octet-stream' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/system/restore' \
--data-binary './backup-08_13_00_00_00_00.bin'

/system/restore/ftp

Метод восстановления резервной копии устройства со скачиванием файла с FTP сервера.

Метод не доступен для устройств на прошивке ниже 2.5.0.9.4 (включительно).

Для создания резервной копии используется метод:
   /system/backup или /system/backup/ftp

Описание параметров
Название
Тип

Описание

server
String

Сервер и порт для скачивания файла резервной копии

auth
Object

Данные для авторизации на сервере

   username
   String

   Логин

   password
   String

   Пароль

path
String

Путь к папке на сервере

name
String

Название файла в папке

PUT - Восстановление резервной копии
Запрос

Тело:

{
    "server": "192.168.0.100:21",
    "auth": {
        "username": "username",
        "password": "password"
    },
    "path": "",
    "name": "backup.bin"
}
Ответы
200 OK

 Успешное восстановление резервной копии

Заголовки:

Название

Значение Описание

Content-Type

text/html; charset=ISO-8859-1 Тип возвращаемых данных
Примеры

CURL:

curl \
--header 'Content-Type: application/octet-stream' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/system/restore/ftp' \
--data-raw '{
    "server": "192.168.0.100:21",
    "auth": {
        "username": "username",
        "password": "password"
    },
    "path": "",
    "name": "backup.bin"
}'

/system/reboot

Метод перезагрузки устройства.

PUT - Перезагрузка устройства
Ответы
200 OK

Успешная перезагрузка устройства

Примеры

CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/system/reboot'

/system/restart/{сервис}

Метод перезапуска указанного сервиса.

Список поддерживаемых параметров "{сервис}":
   - api;
   - uart;
   - upgrade;
   - camofon;
   - streamer.

PUT - Перезапуск сервиса
Ответы
204 OK

Успешный перезапуск сервиса

Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/system/restart/api'

/system/factory-reset

Метод сброса устройства к заводским настройкам.

Описание параметров
Название
Тип

Описание

netReset boolean

Флаг сброса сетевых настроек.

PUT - Сброс к заводским настройкам
Запрос

Тело:

{
    "netReset": false
}
Ответы
204 OK

Успешный сброс устройства к заводским настройкам

Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/system/factory-reset' \
--data-raw '{
    "netReset": false
}'

/v2/system/versions

Метод получения текущих версий прошивки устройства. 

Описание параметров
Название
Тип

Описание

opt Object

Версии устройства для раздела с приложениями.

   date    Date

   Дата создания прошивки для раздела.

   name    String

   Версия прошивки для раздела.

   versions    Object

   Версии по конкретным приложения.

      api
      proguard
      camofon
      ddns
      streamer
      uart
      upgrade
      overlay 
      Object

      Описание версии приложения. 

         name          String

        Версия приложения.

         hash          String

        Хэш сумма коммита приложения.

      hw       Object

      Описание версии платы.

         name          String

         Версия платы.

      mcu       Object

      Описание версии микроконтроллера.

         name          String

         Версия прошивки микроконтроллера.

media Object

Версии устройства для раздела с аудио записями (оффлайн ассистента, оповещения).

   date    Date

   Дата создания прошивки для раздела.

   name    String

   Версия прошивки для раздела.

   versions    Object

   Версии по конкретным приложения.

      overlay        Object

      Описание версии приложения. 

         name          String

        Версия приложения.

         hash          String

        Хэш сумма коммита приложения.

rootfs Object

Версии устройства для раздела Linux.

   date    Date

   Дата создания прошивки для раздела.

   name    String

   Версия прошивки для раздела.

   versions    Object

   Версии по конкретным приложения.

      libre
      libiscom
      baresip
      ircut
      rootfs
      overlay 
      Object

      Описание версии приложения. 

         name          String

        Версия приложения.

         hash          String

        Хэш сумма коммита приложения.

GET - Получение версий
Ответы
200 OK

 Успешное получение версий прошивки

Тело:

{
    "opt": {
        "date": "2024-05-27",
        "name": "2.5.0.7.2",
        "versions": {
            "api": {
                "name": "0.7.2",
                "hash": "6e0b6f9159ac22d9a1efcdae56fa337777056cd2"
            },
            "proguard": {
                "name": "0.0.5",
                "hash": "a308a3732ea8584bee9fc1fa08ea0299ba0eeea3"
            },
            "camofon": {
                "name": "0.4.8",
                "hash": "217aaad3c8b003975ff9173ea8279e86074e89a9"
            },
            "ddns": {
                "name": "0.0.6",
                "hash": "634934435463f78df7236d49d5669a3639cf4a24"
            },
            "streamer": {
                "name": "2.10.22",
                "hash": "e7a5ca779b74ae85eef5f36bbb265c1b486accea"
            },
            "uart": {
                "name": "0.0.21",
                "hash": "6a58107a0fee1a606e3d62d5dcd34275551b8dad"
            },
            "upgrade": {
                "name": "0.1.8",
                "hash": "06e5727e2a5308999e23f1b3fe1a0915a0267943"
            },
            "overlay": {
                "name": "0.3.5",
                "hash": "48d7606fad16a16f9d276708379d5ece25d5a062"
            },
            "hw": {
                "name": "5.1"
            },
            "mcu": {
                "name": "7.37"
            }
        }
    },
    "media": {
        "date": "2024-05-27",
        "name": "2.5.0.7.2",
        "versions": {
            "overlay": {
                "name": "0.3.5",
                "hash": "48d7606fad16a16f9d276708379d5ece25d5a062"
            }
        }
    },
    "rootfs": {
        "date": "2024-05-27",
        "name": "2.5.0.7.2",
        "versions": {
            "libre": {
                "name": "0.1.2",
                "hash": "6a2cda92898fa7eb413dd6f0469242d6a964c28f"
            },
            "libiscom": {
                "name": "0.0.32",
                "hash": "0c824a3dd9d1a3821bf0671640fa98329daa2bca"
            },
            "baresip": {
                "name": "0.1.3",
                "hash": "f2b04ea4e43ebe139606037756ccb002ea28ff4d"
            },
            "ircut": {
                "name": "0.1.2",
                "hash": "ceaa84a5cdbd1e3ee62a2a8cd9426ee5ff181f6c"
            },
            "rootfs": {
                "name": "0.0.9",
                "hash": "78e43316f723c413c24e1ee897b60fca507332a6"
            },
            "overlay": {
                "name": "0.3.5",
                "hash": "48d7606fad16a16f9d276708379d5ece25d5a062"
            }
        }
    }
}
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v2/system/versions'

/v2/system/upgrade

Методы для работы с обновлением устройства. 

Метод действителен для устройств на прошивках до 2.5.0.9.4 (включительно).
На поздних прошивках использовать новый метод:
   /v3/system/upgrade 

Для данного способа обновления необходим HTTP-сервер

Описание параметров
GET
Название
Тип

Описание

state String

Описание состояния обновления.
 - По умолчанию: Обновление не запущено

stateId Integer

Идентификатор состояния обновления.

 - По умолчанию: 0

message String

Описание под состояния обновления.
 - По умолчанию: Приложение Upgrade запущено

messageId Integer

Идентификатор под состояния обновления
 - По умолчанию: 0

PUT
Название
Тип

Описание

code Integer

Код ответа на запрос.

data Object

Параметры используемые при обновлении.

   url    String

   Ссылка на папку с файлами обновления на HTTP сервере.

   mcu    Boolean

   Флаг включения обновления микроконтроллера устройства.

    - По умолчанию: false

   opt    Boolean

   Флаг включения обновления раздела с приложениями на камере.

    - По умолчанию: false

   media    Boolean

   Флаг включения обновления раздела с аудио записями (оффлайн ассистент, оповещение) на камере.

    - По умолчанию: false

   rootfs     Boolean

   Флаг включения обновления раздела Linux на камере.

    - По умолчанию: false

GET - Получение состояния обновления

Метод получения состояния обновления устройства  доступен с прошивки 2.5.0.5.6

Ответы
200 OK

 Успешное получение состояния обновления

Тело:

{
    "state": "Обновление не запущено",
    "stateId": 0,
    "message": "Приложение Upgrade запущено",
    "messageId": 0
}
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v2/system/upgrade'
PUT - Запуск обновления
Запрос

Тело:

{
    "url": "http://192.168.0.10:8000/2.5.6.1",
    "mcu": true,
    "opt": true,
    "media": true,
    "rootfs": true
}
Ответы
200 OK

 Успешное получение задания  на обновление

Тело:

{
    "code": 200,
    "data": {
        "url": "http://192.168.0.10:8000/2.5.6.1",
        "mcu": true,
        "opt": true,
        "media": true,
        "rootfs": true
    }
}
400 Bad Request

Ошибка при проверки переданных параметров

Тело:

Название
Тип

Описание

errors Array

Массив возвращаемых ошибок.

   message    String

   Сообщение об ошибке.

{
    "errors": [
        {
            "message": "Ошибка: url - Параметр пуст или не найден"
        }
    ]
}

или 

{
    "errors": [
        {
            "message": "Ошибка: stm - Должен быть логической переменной"
        }
    ]
}

или

{
    "errors": [
        {
            "message": "Ошибка: opt - Должен быть логической переменной"
        }
    ]
}

или

{
    "errors": [
        {
            "message": "Ошибка: media - Должен быть логической переменной"
        }
    ]
}

или

{
    "errors": [
        {
            "message": "Ошибка: rootfs - Должен быть логической переменной"
        }
    ]
}
Примеры

CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/v2/system/upgrade' \
--data-raw '{
    "url": "http://192.168.0.10:8000/2.5.0.6.1",
    "mcu": true,
    "opt": true,
    "media": true,
    "rootfs": true
}'

/v3/system/upgrade

Методы для работы с обновлением устройства с помощью HTTP сервера.

На прошивках позднее 2.5.0.9.4 перед обновлением устройство будет перезагружено.

Данный способ обновления проверяет файл обновления на электронную подпись.

Описание параметров
GET
Название
Тип

Описание

state String

Описание состояния обновления.
 - По умолчанию: Обновление не запущено

stateId Integer

Идентификатор состояния обновления.

 - По умолчанию: 0

message String

Описание под состояния обновления.
 - По умолчанию: Приложение Upgrade запущено

messageId Integer

Идентификатор под состояния обновления
 - По умолчанию: 0

PUT
Название
Тип

Описание

code Integer

Код ответа на запрос.

data Object

Параметры используемые при обновлении.

   url    String

   Ссылка на папку с файлами обновления на HTTP сервере.

   mcu    Boolean

   Флаг включения обновления микроконтроллера устройства.

    - По умолчанию: false

   opt    Boolean

   Флаг включения обновления раздела с приложениями на камере.

    - По умолчанию: false

   media    Boolean

   Флаг включения обновления раздела с аудио записями (оффлайн ассистент, оповещение) на камере.

    - По умолчанию: false

   rootfs     Boolean

   Флаг включения обновления раздела Linux на камере.

    - По умолчанию: false

GET - Получение состояния обновления
Ответы
200 OK

 Успешное получение состояния обновления

Тело:

{
    "state": "Обновление не запущено",
    "stateId": 0,
    "message": "Приложение Upgrade запущено",
    "messageId": 0
}
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v3/system/upgrade'
PUT - Запуск обновления
Запрос

Тело:

{
    "url": "http://192.168.0.10:8000/2.5.0.9.4",
    "mcu": true,
    "opt": true,
    "media": true,
    "rootfs": true
}
Ответы
200 OK

 Успешное получение задания  на обновление

Тело:

{
    "code": 200,
    "data": {
        "url": "http://192.168.0.10:8000/2.5.0.9.4",
        "mcu": true,
        "opt": true,
        "media": true,
        "rootfs": true
    }
}
400 Bad Request

Ошибка при проверки переданных параметров

Тело:

Название
Тип

Описание

errors Array

Массив возвращаемых ошибок.

   message    String

   Сообщение об ошибке.

{
    "errors": [
        {
            "message": "Ошибка: url - Параметр пуст или не найден"
        }
    ]
}

или 

{
    "errors": [
        {
            "message": "Ошибка: stm - Должен быть логической переменной"
        }
    ]
}

или

{
    "errors": [
        {
            "message": "Ошибка: opt - Должен быть логической переменной"
        }
    ]
}

или

{
    "errors": [
        {
            "message": "Ошибка: media - Должен быть логической переменной"
        }
    ]
}

или

{
    "errors": [
        {
            "message": "Ошибка: rootfs - Должен быть логической переменной"
        }
    ]
}
Примеры

CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/v3/system/upgrade' \
--data-raw '{
    "url": "http://192.168.0.10:8000/2.5.0.9.4",
    "mcu": true,
    "opt": true,
    "media": true,
    "rootfs": true
}'

/v4/system/upgrade

Методы для работы с обновлением устройства с помощью FTP сервера.

Метод действителен для устройств на прошивках более 2.5.0.11.0 (включительно).

Данный способ обновления проверяет файл обновления на электронную подпись.

Описание параметров
GET
Название
Тип

Описание

state String

Описание состояния обновления.
 - По умолчанию: Обновление не запущено

stateId Integer

Идентификатор состояния обновления.

 - По умолчанию: 0

message String

Описание под состояния обновления.
 - По умолчанию: Приложение Upgrade запущено

messageId Integer

Идентификатор под состояния обновления
 - По умолчанию: 0

PUT
Название
Тип

Описание

code Integer

Код ответа на запрос.

data Object

Параметры используемые при обновлении.

    server
String

Сервер и порт для скачивания файла резервной копии

    auth
Object

Данные для авторизации на сервере

       username
   String

   Логин

       password
   String

   Пароль

    path
String

Путь к папке на сервере

    name
String

Название файла в папке

    mcu    Boolean

   Флаг включения обновления микроконтроллера устройства.

    - По умолчанию: false

    opt    Boolean

   Флаг включения обновления раздела с приложениями на камере.

    - По умолчанию: false

    media    Boolean

   Флаг включения обновления раздела с аудио записями (оффлайн ассистент, оповещение) на камере.

    - По умолчанию: false

    rootfs     Boolean

   Флаг включения обновления раздела Linux на камере.

    - По умолчанию: false

GET - Получение состояния обновления
Ответы
200 OK

 Успешное получение состояния обновления

Тело:

{
    "state": "Обновление не запущено",
    "stateId": 0,
    "message": "Приложение Upgrade запущено",
    "messageId": 0
}
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v4/system/upgrade'
PUT - Запуск обновления
Запрос

Тело:

{
    "server": "192.168.0.100:21",
    "auth": {
        "username": "username",
        "password": "password"
    },
    "path": "",
    "name": "goke_7205_v300_imx335.iscom",
    "mcu": true,
    "opt": true,
    "media": true,
    "rootfs": true
}
Ответы
200 OK

 Успешное получение задания  на обновление

Тело:

{
    "code":200,
    "data":{
        "server":"192.168.0.100:21",
        "auth":{
            "username":"username",
            "password":"password"
        },
        "path":"",
        "name":"goke_7205_v300_imx335.iscom",
        "mcu":true,
        "opt":true,
        "media":true,
        "rootfs":true
    }
}
400 Bad Request

Ошибка при проверки переданных параметров

Тело:

Название
Тип

Описание

errors Array

Массив возвращаемых ошибок.

   message    String

   Сообщение об ошибке.

{
    "errors": [
        {
            "message": "Ошибка: url - Параметр пуст или не найден"
        }
    ]
}

или 

{
    "errors": [
        {
            "message": "Ошибка: stm - Должен быть логической переменной"
        }
    ]
}

или

{
    "errors": [
        {
            "message": "Ошибка: opt - Должен быть логической переменной"
        }
    ]
}

или

{
    "errors": [
        {
            "message": "Ошибка: media - Должен быть логической переменной"
        }
    ]
}

или

{
    "errors": [
        {
            "message": "Ошибка: rootfs - Должен быть логической переменной"
        }
    ]
}
Примеры

CURL:

curl \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request PUT 'http://192.168.0.100:80/v4/system/upgrade' \
--data-raw '{
    "server":"192.168.0.100:21",
    "auth":{
        "username":"username",
        "password":"password"
    },
    "path":"",
    "name":"goke_7205_v300_imx335.iscom",
    "mcu":true,
    "opt":true,
    "media":true,
    "rootfs":true
}'


Производитель

/v1/manufacturer

Метод получения информации об устройстве указанной на производстве.

Описание параметров
Название
Тип

Описание

mac String

MAC адрес устройства.

serialNumber String

Серийный номе устройства.

revision String

Ревизия устройства.

timestamp String

Дата и время создания QR кода.

testTimestamp String

Дата и время завершения тестирования.

manufacturer String

Наименование производитель.

batchNumber Integer

Номер партии.

GET - Получение информации
Ответы
200 OK

 Успешное получение информации

Тело:

{
    "mac": "08:13:00:00:00:00",
    "serialNumber": "0000000000",
    "revision": "5.3",
    "timestamp": "2024-05-28 09:39:23",
    "testTimestamp": "2024-05-28 09:39:24",
    "manufacturer": "VD",
    "batchNumber": 10
}
Примеры

 CURL:

curl \
--header 'Authorization: Basic cm9vdDoxMjM0NTY=' \
--request GET 'http://192.168.0.100:80/v1/manufacturer'

Инструкция по настройке домофона через web-интерфейс

Инструкция по настройке домофона через web-интерфейс

1. Авторизация в web-интерфейсе, главная и логи

1.1 Авторизация в web-интерфейсе

Присвойте компьютеру IP-адрес из диапазона от 192.168.0.2. до 192.168.0.254 (кроме 100). Запустите браузер и введите в его адресную строку: http://192.168.0.100.

image.png

Рисунок 1 — Ip-адрес web-интерфейса панели

Либо укажите адрес, который панель получила от DHCP сервера.

(по-умолчанию панель имеет 2 сетевых настройки 1. DHCP 2. Статический адрес 192.168.0.100.)

Далее произойдет переход на страницу с авторизацией, где необходимо указать следующие данные (Рисунок 2):

image.png

Рисунок 2 — Окно с авторизацией

1.2 Раздел «Главная»

Раздел «Главная» содержит общие данные о камере и изображении с домофонной панели .

В данном разделе отображается следующая информация (Рисунок 3):

image.png

Рисунок 3 — Данные о панели

1.3 Логи

Раздел «Логи» содержит хронологическую информацию о различных действиях домофонной панели (Рисунок 4).

image.png

Рисунок 4 — Логи

Для отображения логов конкретного приложения необходимо в правом верхнем углу нажать на выпадающий список и выбрать нужный вариант (Рисунок 5).

image.png

Рисунок 5 — Выбор логи конкретного приложения

Инструкция по настройке домофона через web-интерфейс

2. Домофон

2.1. Коды

Раздел «Коды» предназначен для создания и назначения кодов для конкретной квартиры.

На странице отображается полный список всех кодов, хранящихся в устройстве. 

Для создания нового код необходимо нажать кнопку «Добавить код» (Рисунок 1).

image.png

Рисунок 1 — Кнопка добавления нового кода

Далее появляется модальное окно, в котором нужно указать следующие данные (Рисунок 2):

image.png

Рисунок 2 — Создание нового кода

Для быстрого поиска конкретной квартиры или кода предусмотрен «Поиск», позволяющий найти интересующий код/квартиру (Рисунок 3).

image.png

Рисунок 3 — Поисковое поле

Перед поиском необходимо выставить переключатель на нужный параметр в зависимости от цели поиска. Переключатель содержит следующие значения (Рисунок 4):

image.png

Рисунок 4 — Переключатель параметра поиска

При нажатии на значка "Три точки" (расположенного справа от от переключателя параметра поиска)  откроется дополнительное меню, содержащее следующие действия (Рисунок 5, 6):

image.pngimage.png

Рисунок 5, 6 — Дополнительное меню с действиями

При необходимости можно удалить ненужный код, нажав на кнопку «Корзина», расположенную рядом с кодом (Рисунок 7).

image.png

Рисунок 7 — Удаление конкретного кода

2.2. Ключи

Раздел «Ключи» предназначен для хранения и настройки ключей. Данный разделен состоит из 2-х вкладок:

2.2.1. Список ключей

Вкладка «Список ключей» содержит список ключей, которые были добавлены и привязаны к квартирам.

Один ключ может быть привязан только к одной квартире. 

Для добавления нового ключа необходимо нажать на кнопку «Добавить ключ» (Рисунок 8).

image.png

Рисунок 8 — Кнопка добавления ключа

Затем появится окно, в котором необходимо указать следующие данные (Рисунок 8):

image.png

Рисунок 8 — Добавление нового ключа

Каждый ключ, находящийся в системе, можно отредактировать или удалить. При редактировании есть возможность изменить квартиру, к которой будет привязан данный ключ (Рисунок 9).

image.png

Рисунок 9 — Удаление, редактирование ключа

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

image.png

Рисунок 10 — Поиск ключа

Перед поиском необходимо выставить переключатель на нужный параметр в зависимости от цели поиска. Переключатель содержит следующие значения (Рисунок 11):

image.png

Рисунок 11 — Переключатель параметра поиска

При нажатии на значок  "Три точки" (расположенный справа от переключателя параметра поиска) появится дополнительное меню, в котором содержатся следующие функции: (Рисунок 12):

image.png

Рисунок 12 — Дополнительное меню с функциями

2.2.2. Прошивка ключей

Для того, чтобы прошить ключи с помощью панели, ключи не должны быть прошиты ранее

Сначала необходимо записать ключи на панель любым удобным вам способом. После того, как все ключи будут добавлены, необходимо перейти на вкладку «Прошивка ключей», активировать переключатель «Прошивка ключа» и прописать следующие настройки в одном из секторов (не нулевом!): 

После чего нажать Сохранить.

Так как был выбран тип ключа А, то шифр вводится в левом значении. В среднем значении должен использоваться access bit FF078069 (универсальный ключ, который позволяет свободно шифровать ключи). В правом значении вводится пустой шифр FFFFFFFFFFFF. 

Например: 112233445566 FF078069 FFFFFFFFFFFF

image.png

Рисунок 13 — Включение функции прошивки ключей

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

При удачной прошивке ключа в логах будет отображаться: 

UART[1108]: RFID 0000004E37BFB0, apartment 0, mifare markup write success (sector: 1, block: 3) 

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

image.png

Рисунок 14 — Отключение функции прошивки ключей

После прошивки ключей необходимо активировать Защищенный режим.

2.2.3. Защищенный режим

Вкладка «Защищенный режим» содержит настройки для проверки шифрования.

Для начала работы с шифрованием необходимо активировать саму функцию "Защищенный режим" (Рисунок 15).

image.png

Рисунок 15 — Включение функции "Защищенный режим"

Далее необходимо установить следующие параметры:

При включении Инкремента необходимо указать номер блок сектора (в нашем примере —1)

После всех настроек обязательно нужно нажать кнопку "Сохранить" (Рисунок 16).

image.png

Рисунок 16 — Настройка защищенного режима

Если все было сделано правильно, то при прикладывании ключа в логах будет отображаться следующее:

RFID 0000004E37BFB0, apartment 0, increment success:"0" => "1" (sector: 1, block: 1)

Подробную информацию по настройке и проверке шифрования смотрите блок "Настройка и проверка зашифрованных ключей".

Настройка и проверка зашифрованных ключей
Шифрование ключей через умный домофон Сокол в целях защиты от копирования

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

Ключи должны быть "залиты" на панель перед шифрованием вручную или через автосбор.

Работу по шифрованию ключей рекомендуется проводить через POSTMAN. API работает на порту 8080.

Последнюю версию API можно запросить в группе поддержки в Telegram, либо скачать с этой страницы.

Шаг 1

Для шифрования ключей через домофонную панель потребуется использовать API /v1/key/markup/mifare (Рисунок 1).

При GET-запросе с домофонной панели будет виден ответ, в котором отобразятся 16 секторов (0-15) с данными по каждому сектору. По умолчанию они все пустые. 

image.png

Рисунок 1 — Шифрование ключей через API

Необходимо выбрать один любой сектор из 16 (не рекомендуется использовать сектор 0, так как в нём чаще всего хранятся системные данные ключа).

Для защиты ключа от копирования нужно шифровать все сектора от 0 до 15.

Шаг 2

Создание массива данных (Рисунок 2):

{
    "enable": true,
    "numSectors": 1,
    "markup": {
        "1": {
            "skip": {
                "err": true,
                "always": false
            },
            "key": {
                "type": "A",
                "value": "FFFFFFFFFFFF"
            },
            "3": "FFFFFFFFFFFFFF078069FFFFFFFFFFFF",
            "2": null,
            "1": null,
            "0": null
        }
    }
}
Рисунок 2— Массив данных

Где:

"enable": true,  — включает режим прошивки ключей
    "numSectors": 1, количество секторов (всегда 1, так как проверка осуществляется по одному сектору)
    "markup": {
        "1": { — номер сектора
"key": {
                "type": "A", тип ключа
                "value": "FFFFFFFFFFFF" — для авторизации в пустой сектор всегда будут такие значения
},
            "3": "FFFFFFFFFFFFFF078069FFFFFFFFFFFF",  — имеет вид "TypeA_AccessBits_TypeB"
и имеет структуру: TypeA = FFFFFFFFFFFF, Access bits = FF078069, TypeB = FFFFFFFFFFFF
            "2": null,
            "1": null,
            "0": null

}

В зависимости от того, в какой сектор будет зашиваться нужный ключ, необходимо выбрать раздел из 12 символов (typeA/typeB) и записать туда нужное значение.  В будущем при проверке ключей домофонной панелью нужно будет указать именно тот раздел, в котором был вписан ключ. Например, готовый ключ в данном примере может выглядеть следующим образом: 112233445566FF078069FFFFFFFFFFFF, соответственно, редактируется только typeA, использоваться в следующем методе будет "key_type": "A".

AccessBits наугад вписывать не нужно, так как можно заблокировать запись/чтение секторов ключа.
Калькулятор для вычисления accessbits под различные требования: http://calc.gmss.ru/Mifare1k/

Ключ для шифрования обязательно надо запомнить: в будущем он указывается как проверочный.

Шаг 3

Вставляется массив в POSTMAN.

Необходимо обратить внимание на значения в синих прямоугольниках (Рисунок 3).

image.png

image.png

Рисунок 3  — Массив в POSTMAN

Нажать кнопку SEND.

Защищенный режим включен.

Шаг 4

Далее нужно начать прикладывать ключи, при этом на панели последовательно будут появляться надписи HOLD и OPEN. Это значит, что ключ шифруется. Если отображается только надпись OPEN, то ключ готов к использованию.

После шифрования всех нужных ключей, необходимо в массиве в POSTMAN исправить строку "enable": true на "enable": false и снова нажать SEND. Тем самым выключается режим шифрования ключей.

"enable": false,  — выключает режим шифрования ключей

Шаг 5

Далее используется метод /key/settings. Через GET можно получить массив данных.

Правится по примеру (Рисунок 4):

{
    "mode": 1,
    "autocollect": {
        "enabled": false
    },
    "encryption": {
        "enabled": true,
        "key_type": "A",
        "key_auth": "112233445566",
        "sector": 1,
        "increment": {
            "enabled": false,
            "block": 0,
            "openByError": false
        }
    },
    "kb_codes": true,
    "offset": 255
}
Рисунок 4 — Массив через GET

Где:

"enabled": true, — вписывается, чтобы включить шифрование
key_auth": "112233445566"— вписывается шифр, который был придуман ранее
"sector":первым указывается сектор, который был указан ранее перед шифрованием

Отправляется команду PUT (Рисунок 5).

image.png

Рисунок 5 — Отправка команды PUT

Шаг 6

Необходимо зайти в саму домофонную панель в раздел "Ключи" во вкладку "Защищенный режим" и убедиться, что в настройках включено шифрование (Рисунок 6).

image.png

Рисунок 6 — Включение шифрования

После этого нужно включить "Защищенный режим" на каждом ключе, нажав на шестеренку рядом с ключом (Рисунок 7).

image.png

Рисунок 7 — Включение защищенного режима на каждом ключе.

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

Видеоинструкция по шифрованию ключей

Проверка зашифрованных ключей

Проверка позволит ограничить доступ в подъезд по незашифрованным ключам.

Используется метод /key/settings

Рассмотрим разметку ключей подробнее, чтобы понять, как работает шифрование (Рисунок 8):

image.png

Рисунок 8 — Разметка ключа

Каждый ключ имеет сектора с 0 по 15. В секторе располагается блок, который содержит 4 строки (0, 1, 2, 3). Каждая строка поддерживает 16 байт, но 3-я строка зарезервирована как ключ доступа.

Строка с ключом доступа содержит:

Key_type — включает в себя «Key A» и «Key B». Поле Key_type представляет из себя выпадающий список для выбора.

Key_auth — это текстовое поле, в котором указано значение «Key A» или «Key B». Может содержать только 12 символов в 16-ой системе (6 байт).

Sector — содержит сектора от 0 по 15. Именно здесь выбирается сектор, который будет проходить проверку.

Increment

Increment — это улучшенная защита от копирования (Рисунок 9). Такая защита достигается следующим способом: когда происходит авторизация в сектор ключа (от 0 до 15), в указанный блок от 0 до 3 записывается число. При следующем прикладывании ключа это число каждый раз увеличивается на 1. Данное действие записывается также и в логи. Например, было изначально число 1, после того как приложили ключ и число увеличилось на 1 - стало 2. Теперь число 2 будет хранится в ключе и в логах. Внешний сервис должен следить за тем, чтобы в прикладываемом ключе, в логах данные числа равномерно увеличивались. Если новое значение в ключе меньше значения в сервисе, то внешний сервис должен заблокировать ключ.

{
  "autocollect": {
    "enabled": false
  },
  "encryption": {
    "enabled": false,
    "key_type": "B",
    "key_auth": "FFFFFFFFFFFF",
    "sector": 0,
    "increment": {
      "enabled": false,
      "block": null,
      "openByError": false
    }
  }
  "kb_codes": true,
  "offset": 255
}

Рисунок 9 — Increment

2.3. Квартиры

В разделе «Квартиры» отображается полный список квартир, добавленных на домофонную панель. Здесь присутствуют как общие настройки так и настройки для конкретной квартиры. 

Чтобы открыть настройки для конкретной квартиры, необходимо нажать на «Шестеренку» рядом с нужной квартирой (Рисунок 17).

image.png

Рисунок 17 — Открытие персональной настройки квартиры

Далее появится окно с настройками, поделенное на 5 вкладок:

  1. Основные;
  2. Аудио;
  3. Ключи;
  4. Коды;
  5. Диагностика.

Сохранять настройки для каждой вкладки необходимо ОТДЕЛЬНО. Внизу в каждой вкладке располагается кнопка "Сохранить", которая сохраняет внесенные изменения только в рамках данной вкладки.

Во вкладке «Основные» расположены следующие параметры (Рисунок 16):

image.png

Рисунок 18 — Основные настройки конкретной квартиры

Вкладка «Аудио» содержит параметры, позволяющие настроить звук для конкретной квартиры.

Каждый параметр можно настроить как индивидуально, так выбрать общие настройки (поставить галочку "Общедомовые"), которые настраиваются в разделе "Звук" (Рисунок 19):

Вызовы в аналоговые трубки

Мобильное приложение

image.png

Рисунок 19 — Настройка звука для домофонной панели, трубки и мобильного приложения для конкретной квартиры

Вкладка «Ключи» позволяет добавить ключ, который будет привязан к данной квартире.

Для добавления нового ключа в поле «Добавить ключ» необходимо ввести номер ключа и нажать на кнопку «Добавить новый ключ».  Параметр "Защищенный режим" позволяет зашифровать добавляемый ключ. Но для его работы необходимо включить "Защищенный режим" в разделе "Ключи" во вкладке "Защищенный режим" (Рисунок 20).

image.png

Рисунок 20 — Привязка нового ключа к квартире

При необходимости можно удалить ключ, нажав на кнопку «Корзина», расположенная напротив ненужного ключа (Рисунок 21).

image.png

Рисунок 21 — Удаление ключа

Вкладка «Коды» содержит список кодов, привязанных к данной квартире.

Для добавления нового кода в поле «Добавить код» следует ввести номер кода и нажать на кнопку «Добавить» (Рисунок 22).

image.png

Рисунок 22 — Привязка нового кода к квартире

Существует возможность удалить код при нажатии на кнопку «Корзина», расположенную напротив ненужного кода. А если необходимо удалить все коды за раз, то необходимо нажать на "Удалить все коды" (Рисунок 23).

image.png

Рисунок 23 — Удаление кода

Вкладка «Диагностика» содержит настройки, позволяющие решить проблему со звонком для конкретной квартиры. Используются следующие параметры (Рисунок 22):

Уровни сопротивления

Диагностика

image.png

Рисунок 24 — Настройка сопротивления конкретной квартиры

Для добавления новой квартиры необходимо нажать на кнопку «Добавить квартиру» (Рисунок 23).

image.png

Рисунок 25 — Кнопка добавления квартиры

Далее откроется окно, в котором необходимо указать следующие данные (Рисунок 26):

image.png

Рисунок 26 — Добавление новой квартиры

Для удаления квартиры следует нажать на кнопку «Корзина», расположенную напротив ненужной квартиры (Рисунок 27).

image.png

Рисунок 27 — Удаление квартиры

Техническое уточнение. Если квартира забита в матрицу, то данную квартиру нельзя удалить, пока она находится в матрице.

2.4 Раздел «Матрица»

Раздел «Матрица» отвечает за сравнение вводимых данных на домофонной панели с установленными на коммутаторе.

Если во время совершения звонка данные совпадают и проходят проверку, то звонок успешно состоится.

На панели допускается устанавливать до 3-ех коммутаторов от фирмы "Визит" и до 4-ех "Цифрал", "Элтис", "Бевард", "Метаком", "Факториал". Коммутаторы можно использовать следующего типа:

Для настройки и переключения между коммутаторами необходимо в верхней части страницы нажимать на соответствующий коммутатор. Каждый коммутатор нужно настраивать отдельно (Рисунок 26).

image.png

Рисунок  28 — Переключение между коммутаторами

В каждую ячейку матрицы забивается одна квартира. Размер матрицы зависит от количества выставленных квартир в коммутаторе (Рисунок 29). 

При попытке позвонить в квартиру панель отправляет команду (что мы хотим позвонить в определенную квартиру) на sip-сервер. Дальше sip-сервер и «Платформа управления домофонии» проверяют наличие такой квартиры и указаны ли аккаунты для звонка в мобильное приложение.

image.png

Рисунок 29 — Размер матрицы

Мастер диагностики — функция позволяет произвести массовую диагностику квартир, которые указаны в матрице.

Для этого нужно указать диапазон квартир и нажать на кнопку «Запустить диагностику» (Рисунок 30).

image.png

Рисунок 30 — Запуск диагностики

Далее в матрице отобразится отчет о состоянии каждой трубки квартиры (Рисунок 31).

Трубка в квартире может быть следующего состояния:

image.png

image.png

Рисунок 31 — Отчет диагностики с отображением номера квартиры и его состояния

Для автоматического заполнения матрицы можно воспользоваться "Мастером автозаполнения" (Рисунок 32).

image.png

Рисунок 32 — Мастер автозаполнения

Мастер автозаполнения — позволяет упростить заполнение матрицы путем указания следующих данных (Рисунок 33):

image.png

Рисунок 33 — Настройка мастера автозаполнения

После заполнения матрицы или любых изменений обязательно нужно нажать на кнопку "Сохранить матрицу" (Рисунок 34).

image.png

Рисунок 34 — Сохранение всех настроек

2.5. Вход

Раздел «Вход» отвечает за работоспособность и настройку дверей. Здесь содержатся следующие параметры (Рисунок 35):

Общие настройки

Первый вход

Второй вход

image.png

Рисунок 35 — Настройки раздела "Вход"

2.6. Калитка

Режим "Калитки" позволяет совершить звонок с домофонной панели, установленной на калитке, в мобильное приложение или в аналоговую трубку на основной домофонной панели.

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

Префикс — это порядковый номер дома, который задается, чтобы разделять дома между собой при условии, что они привязаны к одной или нескольким калиткам. Делается это для того, чтобы можно было позвонить в конкретную квартиру конкретного дома. Допустим, имеется 2 дома и одна калитка. В обоих домах есть повторяющиеся квартиры, для этого и назначается на дом префикс. Префикс на первый дом  – 1, на второй – 2. Например: для вызова квартиры 45 в первом доме нужно совершить следующие действия:

  1. Ввести префикс дома (для примера 1); 
  2. Нажать на кнопку звонка;
  3. Ввести номер квартиры (для примера 45);
  4. Нажать на кнопку звонка.

Аналогично с квартирами во втором доме. Только в префиксе будет указано значение – 2.

2.6.1. Настройка "Режим калитки"

Необходимо включить сам "Режим калитки" (Рисунок 34).

image.png

Рисунок 36 —  Включение "Режим калитки"

После этого станут доступны 2 функции:

  1. Прямые звонки;
  2. Префикс.

Прямые звонки — обязательная для включения функция. позволяющая совершать звонки с калитки в конкретную квартиру. После ее активации ниже появляется блок с дополнительными параметрами, которые необходимо заполнить (Рисунок 37).

image.png

Рисунок 37 — Включение "Прямые звонки" 

Данный блок позволяет настроить панель в рамках одного дома. То есть, каждый такой блок — это конкретный дом, а в каждом доме есть один или несколько подъездов и множество квартир. Поэтому заполняются следующие данные:

Переключатель "Префикс" дает доступ к кнопке "Добавить префикс" и полю "Префикс". Кнопка "Добавить префикс" позволяет добавлять блоки с вышеупомянутыми параметрами. Это понадобиться, когда к одной калитки подсоединены несколько домов (Рисунок 38).

image.png

Рисунок 38 — Возможности префикса

Кнопка "Сохранить" — позволяет сохранить все внесенные параметры.

2.6.2. Принцип работы "Режим калитки"

Домофон «Сокол» поддерживает входящие вызовы в зависимости от того, на какую квартиру вы делаете вызов. Есть два разных сценария:

  1. Звонок на 0 квартиру сразу коммутируется на панель и работает как громкоговоритель;
  2. Звонок на другие номера квартир инициирует звонок в аналоговую трубку, подключенную к панели, на которую приходит входящий звонок. Это необходимо для приема звонка с калиток.

sip: 42@televoip.is74.ru:7777

Когда совершается звонок в трубку панель отправляет сообщение, которое выглядит следующим образом:

Если совершать звонок с панели, которая установлена на калитке, то будет отправляться идентичное сообщение. Но если на калитке включен префикс, то сообщение будет выглядеть по-другому:

sip: 000142@televoip.is74.ru:7777

2.7. SOS / Консьерж

На домофоне встроены функции звонка в «SOS» и «Консьерж», для которых выведены 2 отдельные кнопки.

2.7.1. Функция SOS

Функция SOS позволяет совершить звонок напрямую с помощью SIP-протокола в службу спасения при чрезвычайной ситуации. По умолчанию, чтобы кнопка «SOS» заработала, ее необходимо удерживать в течение трех секунд.

2.7.2. Функция Консьерж

Это обычный звонок в трубку и мобильное приложение, но с отдельно выделенной кнопки.

Раздел «SOS и Консьерж» служат для настройки данных функций. Здесь можно указать следующие данные (Рисунок 39):

image.png

Рисунок 39 — Настройка «SOS и Консьерж»

2.8. Оптический тампер

Оптический тампер — это миниатюрное устройство на плате панели, состоящее из излучателя и фотоприемника. В случае несанкционированного открытия ящика (шкафа) или демонтажа панели, изменится уровень воспринимаемого фотоприёмником излучения, что будет являться тревожным сигналом. Пределы работы оптического тампера регулируемые, что позволяет подстроиться под любые объемы установочного ящика.

Для настройки оптического тампера доступны следующие параметры (Рисунок 40):

image.png

Рисунок 40 — Настройка оптического тампера

2.9. Бегущая строка

Раздел предназначен для настройки бегущей строки на экране панели. Данный раздел содержится следующие параметры (Рисунок 41):

image.png

Рисунок 41 — Настройка бегущей строки

Инструкция по настройке домофона через web-интерфейс

3. Аудио

3.1. Звук

Раздел "Звук" содержит параметры, позволяющие настроить звук для всех квартир. Отрегулировать можно следующие параметры (Рисунок 1):

Системные звуки клавиш и мелодии вызова панели

Вызовы в аналоговые трубки

Вызовы в SIP

После всех настроек обязательно нужно нажать на кнопку "Сохранить".

Настройка звука для конкретной квартиры находится в разделе "Квартиры".

image.png

Рисунок 1 — Настройка звука для всех квартир

3.2. Эквалайзер

Раздел "Эквалайзер" позволяет отрегулировать частоты для оптимального звучания. динамика на панели Настройка происходит с помощью  ползунков. Регулировать можно: низкие, средние и высокие частоты (Рисунок 2).

image.png

Рисунок 2 — Настройка частот звука

После того, как отрегулировали частоты обязательно нажмите кнопку "Сохранить", чтобы внесенные изменения вступили в силу.

3.3. Голосовой ассистент

Голосовой ассистент позволяет оповещать пользователей о различных событиях, связанных с панелью. На данной странице расположены следующие параметры (Рисунок 3):

image.png

Рисунок 3 — Страница с голосовым ассистентом

Ассистент в режиме offline запускает звуковую дорожку в следующих событиях:

После всех настроек обязательно нужно нажать на кнопку "Сохранить".

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

Инструкция по настройке домофона через web-интерфейс

4. SIP

4.1. Основные настройки

Раздел «Основные настройки» позволяет настроить основные параметры панели. Настроить можно следующие параметры (Рисунок 1):

image.png

Рисунок 1 — Основные настройки SIP

4.2. Дополнительные настройки

Раздел «Дополнительные настройки» позволяет настроить дополнительные параметры панели. Настроить можно следующие параметры (Рисунок 2):

DTMF коды открытия реле

image.png

Рисунок 2 — Дополнительные настройки SIP

Инструкция по настройке домофона через web-интерфейс

5. Видео

5.1. OSD

Раздел «OSD» позволяет отображать текстовую информацию при использовании видеопотока.

Во время стримингого изображения можно выводить до 3-ех строк текстовой информации. Каждая строка независима от других и настраивается отдельно. Для переключения между строк необходимо нажимать на соответствующие вкладки (Рисунок 1):

image.png

Рисунок 1 — Переключение строк

Галочка рядом с каждой строкой сообщает о том, что в данный момент строка активна (Рисунок 2).

image.png

Рисунок 2 — Состояние строки

В данном разделе отображаются следующие параметры (Рисунок 3):

Отображать экранный текст — включение / выключение строки (параметры,  приведенные ниже становятся доступны только при включенном режиме).

Настройка текста

Настройки даты и времени

Настройка фона текста

После всех настроек обязательно нужно нажать на кнопку "Сохранить все строки".

image.png

Рисунок 3 — Настройка OSD

5.2. Черно-белый режим

В домофоне «Сокол» мы добавили автоматический режим переключения изображения день/ночь. Алгоритм ориентируется не на датчик освещенности, а на экспозицию камеры.

Плюсы такого решения:

Раздел "Черно-белый режим" содержит параметры для настройки черно-белого режима (Рисунок 4):

После всех настроек обязательно нужно нажать на кнопку "Сохранить".

image.png

Рисунок 4 — Настройка черно-белого режима

Если на улице темно, то значение экспозиции будет становиться больше (условно, стремиться к 4294967295). Если на улице постепенно становится светлее, то значение будет уменьшаться (условно, стремиться к 0). 

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

5.3. Видеопоток

Для получения видеопотока с панели необходимо перейти по следующим ссылкам:

  1. Основной поток — rtsp://root:123456@ip_панели/ch0;
  2. Альтернативный поток — rtsp://root:123456@ip_панели/ch1.

Раздел "Видеопоток" позволяет настроить качество изображения видео с панели. Данный раздел содержит 3 вкладки:

Общие настройки

Вкладка "Общие настройки" содержит параметры для настройки коррекции изображения, баланса белого и динамического диапазона. Каждый параметр можно настроить индивидуально, но есть возможность выставить значения по умолчанию, поставив галочку "Стандартные", расположенная рядом с каждый параметром. Настроить можно следующие параметры (Рисунок 5):

Настройка отображения

Коррекция изображения

Баланс белого

Динамический диапазон

Параметры регулирования динамического диапазона. Соотношение яркости между самым ярким и самым темным объектом

После внесения всех изменений обязательно нажмите кнопку "Сохранить".

image.png

Рисунок 5 — Общие настройки видеопотока

Дополнительные настройки видео

Кодирование видео

Вкладка "Кодирование видео" позволяет выбрать значения, с которыми видеопоток будет преобразовываться в нужный формат. Данный раздел содержит следующие параметры (Рисунок 6):

Кодек (показывает текущие значения)

Разрешение (показывает текущие значения)

Битрейт

После внесения всех изменений обязательно нажмите кнопку "Сохранить".

image.png

Рисунок 6 — Настройка битрейта видеопотока

Кодирование аудио

Вкладка "Кодирование аудио" позволяет выбрать аудиокодек панели из выпадающего списка (Рисунок 7).

После внесения всех изменений обязательно нажмите кнопку "Сохранить".

image.png

Рисунок 7 — Выбор аудиокодека

5.4. Детектор движения

Детектор движения позволяет определять движения, выполненные напротив камеры панели, по нескольким параметрам.

Все полученные данные отправляются в логи, либо на сервер. 

В разделе «Детектор движения» можно настроить следующие параметры (Рисунок 8):

После всех настроек обязательно нужно нажать на кнопку "Сохранить".

image.png

Рисунок 8 — Настройка детектора движения

Инструкция по настройке домофона через web-интерфейс

6. Сеть

6.1. DDNS

Раздел "DDNS" позволяет получить IP адрес устройства используя NO-IP протокол. Для такой возможности необходимо указать следующие данные (Рисунок 1):

После всех настроек обязательно нужно нажать на кнопку "Сохранить".

image.png

Рисунок 1 — Страница DDNS

6.2. Настройка сети

Раздел "Настройка сети" позволяет настроить сетевые интерфейсы панели.

Каждая панель может иметь от 1 до 3 сетевых интерфейсов. Для добавления сетевых интерфейсов необходимо нажать на кнопку "Добавить интерфейс" (Рисунок 2).

image.png

Рисунок 2 — Кнопка добавления нового интерфейса

Сетевой интерфейс имеет 2 режима (Рисунок 3): 

image.png

Рисунок 3 — Режимы сетевого интерфейса

Если выбрать режим "Static", то станут доступны дополнительные параметры (Рисунок 4):

image.png

Рисунок 4 — Расширенные настройки порта

Для удаления не нужного  сетевого интерфейса необходимо нажать на кнопку "Корзина", расположенную напротив каждого интерфейса (Рисунок 5).

image.png

Рисунок 5 — Кнопка удаления сетевого интерфейса

После всех настроек обязательно нужно нажать на кнопку "Сохранить".

6.3. Диагностика

В разделе "Диагностика" происходит проверка доступности узлов сети и трассировки

6.4. Syslog-сервер

 

Инструкция по настройке домофона через web-интерфейс

7. Система

7.1. Мастер настройки

"Мастер настройки" позволяет ускорить первоначальную настройку панели, пройдя несколько этапов:

7.1.1. Резервная копия

При нажатии на "Мастер настройки" Вас встретит первый этап "Резервная копия", в котором предлагается загрузить конфигурацию другой копии в формате "bin" (если она у вас имеется). Если резервной копии нет, то просто пропустите данный этап нажав на "Пропустить шаг" (Рисунок 1).

image.png

Рисунок 1 — "Мастер настройки" этап - "Резервная копия"

7.1.2. Код

Второй этап "Код". С его помощью можно установить временный код, позволяющий дать доступ в подъезд. Для настройки необходимо указать следующие данные:

image.png

Рисунок — "Мастер настройки" этап - "Код"

7.1.3. Ключи

Следующий этап "Ключи" позволяет загрузить ключи в память панели, для этого необходимо нажать на кнопку "Загрузить файл". Файл с ключами должен быть в формате "csv" (Рисунок ).

image.png

Рисунок — "Мастер настройки" этап - "Ключи"

Также здесь можно включить "Защищенный режим" и "Автосбор ключей".

Защищенный режим — это шифрование ключей, позволяющая защитить ключ от клонирования идентификатора ключа. При попытке войти в подъезд, приложив клонированный ключ, дверь не откроется, т.к. не пройдет проверку, указанного сектора. При активировании защищенного режима появятся дополнительные параметры (Рисунок ):

image.png

Рисунок — Настройка защищенного режима

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

image.png

Рисунок — Настройка автосбора ключей

После настройки данного этапа нажмите кнопку "Продолжить". Нажав на кнопку "Пропустить шаг" сможете перейти к следующему этапу без настройки данного этапа (Рисунок).

image.png

Рисунок — Кнопки "Продолжить" и "Пропустить шаг"

7.1.4. Матрица

Этап "Матрица" состоит из 3-ех вкладок, которые позволяют настроить и проверить работоспособность матрицу коммутатора:

7.1.4.1. Настройка матрицы

Во вкладке "Матрица" можно выбрать используемый коммутатор и настроить количество квартир, отображаемых в в матрице коммутатора. Для правильной настройки необходимо нажать на "Изменить матрицу" ().

image.png

Рисунок — Кнопка для настройки матрицы

Далее появится окно в котором нужно указать следующие параметры (Рисунок):

image.png

Рисунок — Настройка матрицы

После этого, у вас отобразиться матрица, по указанным выше параметрам ().

image.png

Рисунок  — Матрица коммутатора

Если все указано верно, то можно перейти ко следующей вкладке нажав "Сохранить и перейти к проверке". Также можно пропустить данный этап нажав на кнопку "Пропустить шаг".

7.1.4.2. Проверка состояний

Данная вкладка позволяет определить, в каких квартирах установлены аналоговые трубки и какое на них напряжение. Если ячейка выделена зеленым цветом, значит трубка находится в положенном состоянии. Если ячейка выделена желтым, значит трубка поднята. Если ячейка выделена красным, значит трубка находится в состоянии «Обрыв» или «Короткое замыкание».

Для проверке необходимо указать диапазон квартир, которые необходимо проверить и нажать кнопку "Запустить" (Рисунок). 

image.png

Рисунок  — Ввод диапазон квартир для проверки состояния

После запуска проверки появится матрица коммутатора с текущими показателями по каждой квартиры (Рисунок).

image.png

Рисунок  — Результаты проверки состояния

После проверки можно перейти к последней вкладке "Автонастройка" нажав на кнопку "Перейти к автонастройки".

7.1.4.3. Автонастройка

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

Для автонастройки необходимо указать диапазон квартир, которые необходимо настроить и нажать кнопку "Запустить" (Рисунок). 

image.png

Рисунок  — Ввод диапазон квартир для автонастройки

После запуска проверки появится матрица коммутатора с текущими показателями по каждой квартиры (Рисунок).

image.png

Рисунок  — Результаты автонастройки по каждой квартире

После настройки можно перейти к следующему этапу нажав кнопку "Продолжить"

7.1.5. SIP

Этап «SIP» позволяет настроить основные параметры панели. Настроить можно следующие параметры (Рисунок ):

image.png

Рисунок  — "Мастер настройки" этап - "SIP"

7.1.6. Syslog-сервер

7.1.7. Время

Данный этап нужен для смены часового пояса из выпадающего списка. Часовой пояс необходим для правильного отображения времени в разделе «Логи» и в видеопотоке.

Раздел "Дата и время" содержит следующие параметры (Рисунок ):

image.png

Рисунок  — "Мастер настройки" этап - "Время"

7.1.8. Бегущая строка

Раздел предназначен для настройки бегущей строки на экране панели. Данный раздел содержится следующие параметры (Рисунок ):

  • Включение бегущей строки;
  • Текст бегущей строки;
  • Кнопка "Сохранить" — сохраняет все внесенные изменения;
  • Кнопка "Пропустить шаг" — происходит переход к следующему этапу без настройки данного этапа.

image.png

Рисунок — "Мастер настройки" этап - "Бегущая строка"

7.1.1.9. Пароль

Этап «Пароль» предназначен для смены пароля данного аккаунта. Чтобы сменить пароль необходимо заполнить следующие данные (Рисунок 3):

Если "Глаз" закрыт, то вводимые пароли будут отображаться. Если "Глаз" открыт, то вводимые пароли будут отображаться в виде «*»

image.png

Рисунок — "Мастер настройки" этап - "Пароль"

7.2. Обновление

Указав следующие данные, раздел позволяет обновить устройства (Рисунок 1):

image.png

Рисунок 1 — Обновление устройства

Подробная инструкция по обновлению прошивки размещена на странице Обновление прошивки

7.3. Дата и время

Данный раздел нужен для смены часового пояса из выпадающего списка. Часовой пояс необходим для правильного отображения времени в разделе «Логи» и в видеопотоке.

Раздел "Дата и время" содержит следующие параметры (Рисунок 2):

image.png

Рисунок 2 — Смена часового пояса

7.4. Перезагрузка 

Кнопка «Перезагрузка» необходима для перезагрузки домофонной панели. При нажатии появляется модальное окно, в котором нужно подтвердить или отменить перезагрузку домофонной панели (Рисунок 3).

image.png

Рисунок 3 — Подтверждение перезагрузки

7.5. Резервная копия

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

Чтобы скачать резервную копию панели себе на устройство необходимо нажать на кнопку "Скачать" (Рисунок 4).

image.png

Рисунок 4 — Создание резервной копии

Далее появится окно с предупреждением, в котором нужно подтвердить или отменить скачивание резервной копии (Рисунок 5).

image.png

Рисунок 5 —  Подтверждение для создания резервной копии

Чтобы загрузить резервную копию на домофонную панель с устройства необходимо нажать на кнопку "Загрузить" (Рисунок 6).

image.png

Рисунок 6 — Загрузка резервной копии на домофонную панель

7.6. Сброс устройства

Данная кнопка позволяет сбросить все параметры на домофонной панели к заводским настройкам. При нажатии появляется окно, в котором нужно подтвердить или отменить сброс к заводским настройкам (Рисунок 7).

image.png

Рисунок 7 — Сброс к заводским настройкам

Если флажок "Удалить сетевые настройки" выключен, то происходит удаление всего, кроме сетевых настроек панели. Например, если установлен статический IP-адрес панели, то он не будет сброшен.

Если флажок "Удалить сетевые настройки" включен, то происходит удаление всего включая сетевых настроек панели. Например, если установлен статический IP-адрес панели, то он будет сброшен к стандартным настройкам

Стандартные настройки:

Инструкция по настройке домофона через web-интерфейс

Профиль

В правом верхнем углу страницы располагается иконка "Профиль", которая имеет ряд дополнительных функций (Рисунок 1).

image.png

Рисунок 1 — Иконка "Профиль"

При нажатии появляется окно, в котором доступные следующий функционал (Рисунок 2):

image.png\

Рисунок 2 — Доступный функционал в профиле

Смена пароля

Раздел «Смена пароля» предназначен для смены пароля данного аккаунта. Чтобы сменить пароль необходимо заполнить следующие данные (Рисунок 3):

Если "Глаз" закрыт, то вводимые пароли будут отображаться. Если "Глаз" открыт, то вводимые пароли будут отображаться в виде «*»

image.png

Рисунок 3 — Смена пароля

Выход

Кнопка "ВЫход" позволяет выйти из аккаунта, в котором в данный момент ВЫ находитесь. После нажатия появляется окно с предупреждением, в котором нужно подтвердить свой выбор (Рисунок 4).

image.png

Рисунок 4 — Подтверждение выхода из аккаунта

Темная тема

Переключатель "Темная тема" позволяет менять тему web-интерфейса со светлой на темную и наоборот (Рисунок 5, 6).

image.png

image.png

Рисунок 5, 6 — Смена темы web-интерфейса

Инструкция по настройке домофона через web-интерфейс

Мастер настройки

Подробнее о Мастере настройки мы расскажем в видеоинструкции.

Руководство пользователя облачной панели Сокол Плюс

Данное руководство предназначено для панелей с облачной прошивкой (при покупке уточните о ее наличии на устройстве у менеджера при необходимости) или для панелей, приобретенных на маркетплейсах.

Общая информация

Есть вопросы? Напишите нам на почту info@domofon-sokol.ru или задайте их на сайте

Многоабонентский домофон ISCOM X1 (торговое название — «Сокол») предназначен для организации санкционированного доступа в жилые многоквартирные здания и офисные помещения.

Домофон позволяет осуществлять видеонаблюдение за пространством перед входной дверью, поддерживать голосовую и видеосвязь с посетителем, имеет встроенную инфракрасную подсветку и детектор движения.

Домофон подключается к сети интернет и с помощью установленного приложения на смартфоне абонента позволяет осуществлять видеосвязь с посетителем. Аудио и видео передаются с использованием протоколов SIP, RTSP. 

Домофон имеет RFID-считыватель Mifare. Двери открываются по беспроводным RFID-меткам либо по индивидуальному коду (предоставляется на усмотрение поставщика услуг домофонии). К домофону можно подключить замок на одной двери. Для управления вторым входом существует возможность подключить устройство расширения по протоколу Wiegand-26 и Wiegand-34. 

Домофон имеет металлический антивандальный корпус с классом защиты IP66, IK08. Домофон может быть установлен как на улице, так и внутри помещения.  Диапазон рабочих температур от - 50 до + 45 °С, допустимая относительная влажность 75 % при температуре + 15 °С.

Общий вид устройства представлен на Рисунке 1.

image.png

Рисунок 1. Общий вид устройства.

Паспорт домофона доступен по ссылке.

Рекомендуемое оборудование и материалы для подключения Умного домофона «Сокол»

Для подключения Умного домофона «Сокол» рекомендуется использовать следующие дополнительные модули:

Коммутатор

Рекомендуемые:

– Цифрал КМГ-100;

– Beward ККМ-100S2.


Протестированы и поддерживаются:

– Визит БК-4;

– Визит БК-10;

– Визит БК-100М;

– Метаком COM 80 U;

– Метаком COM 80 UD;

– Eltis КМ100-7.2.

Блок питания

12В/3А с возможностью корректировки выходного напряжения.

Контроллер (плата управления замком) Цифрал/Т
Домофонные трубки

Рекомендуемые: 

– Цифрал КМ-2НО.


Протестированы и поддерживаются:

– Vizit УКП-7;

– Vizit УКП-12;

– Факториал.

Кабель для подключения домофона к информационной сети

витая пара (UTP 4PR 24AWG, CU, CAT5e) или патчкорд

Кабель для подключения блока питания, коммутатора и трубок

при длине линии подключения до 25 м – кабель ШВВП 2х0,75 (плоский кабель для подключения техники);

 

при длине линии подключения более 25 м – кабель ПВС 2х1,5 (силовой гибкий провод).

Кабель для протяжки абонентского стояка кабель КСПВ 10х0,5 или 20х0,5 (при этажности свыше 5 этажей)

Этапы подключения Умного домофона «Сокол»

  1. Подготовительный этап 
  2. Авторизация домофона в облачном сервисе и его привязка к адресу установки. 
  3. Преднастройка домофона и привязка ключей.
  4. Выдача ключей жителям подъезда и установка мобильного приложения.
  5. Монтаж и подключение домофона.
  6. Окончательная настройка домофона с использованием web-интерфейса.

Перед подключением к сети запишите серийный номер устройства. Он находится на тыльной стороне под разъемом RJ-45 (рисунок 2) или сбоку на коробке. Он понадобится для регистрации домофона.

image.png

Рисунок 2. Расположение серийного номера на домофоне

Внимание! Авторизация и преднастройка домофона производится до его установки на подъезд. 

1.1. Подключите к блоку питания сетевой кабель в клеммы 220AC. Затем подключите кабель питания домофона в клеммы 12 DC (рисунок 3).

image.png

Рисунок 3. Подключение блока питания.

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

1.2. Подключите к домофону блок питания в разъемы +12 VDC и Общий на клемме XT1, соблюдая полярность, как указано на Рисунке 4. 

image.png

Рисунок 4. Подключение блока питания к домофону

1.3. Подключите блок питания в сеть. Убедитесь, что выходное напряжение равно 12 В. Подстройте при необходимости с помощью регулятора. Должна включиться подсветка кнопок и области считывателя ключей. После этого подсоедините к домофону витую пару в разъем RJ-45 (Рисунок 5).

image.png

Рисунок 5. Подключение домофона к информационной сети кабелем «витая пара».

2. Авторизация домофона в облачном сервисе и его привязка к адресу установки

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

Зарегистрировать умный домофон в облаке можно по ссылке

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

2.3. После этого вам будет предложено установить мобильное приложение для управления умным домофоном. Откройте приложение и выберите тип авторизации «Войти по номеру телефона», введите те же номер телефона и адрес, указанные при регистрации домофона. 

2.4. После подтверждения номера телефона необходимо дать согласие на авторизацию приложения в облачном сервисе Интерсвязь, затем — на отправку уведомлений (без данного разрешения вы не сможете получать видеозвонки на смартфон).

2.5. Выполните проверку работы всех функций мобильного приложения:

3. Преднастройка домофона и привязка ключей.

Настройку домофона удобнее производить с ноутбука или настольного компьютера. Устройство, с которого вы настраиваете домофон, и сам домофон должны быть подключены к одному сегменту сети.

В одной сети может быть только одна настраиваемая панель.

3.1. Присвойте компьютеру IP-адрес из диапазона от 192.168.0.2. до 192.168.0.254 (кроме 100). Затем запустите браузер и введите в его адресную строку: http://192.168.0.100.

Далее откроется страница авторизации, где нужно указать следующие данные (Рисунок 6):

Логин: root
Пароль: 123456

image.png

Рисунок 6. Авторизация в веб-интерфейсе.

image.png

image.png

После чего начинайте подносить по очереди ключи к считывателю домофона. При считывании ключа на экране появится надпись OPEN и прозвучит звуковой сигнал открытия. Когда все ключи будут считаны, не забудьте выключить переключатель «Автосбор ключей».

3.4. По умолчанию ключи прописываются в квартиру под номером 0. Есть возможность привязать ключи к конкретной квартире. Для этого после считывания ключа (или нескольких) перейдите в разделе Квартиры->Ключи и нажмите на шестеренку возле нового ключа (рисунок 9).

image.png

Рисунок 9. Настройки ключа

Откроется окно, где можно указать номер квартиры (рисунок 10). Укажите квартиру и пометьте ключи, чтобы не перепутать их с другими.

image.png

Рисунок 10. Редактирование ключа

4. Выдача ключей жителям подъезда и установка мобильного приложения

Теперь можно приступать к раздаче ключей жителям подъезда. При выдаче ключей советуйте устанавливать мобильное приложение, чтобы жильцы могли управлять домофоном со смартфона и получать видеозвонки.

После того, как вы убедитесь, что все жители получили новые ключи и скачали мобильное приложение, можно приступать к монтажу домофона на подъезд

5. Монтаж и подключение домофона

Если в вашем населенном пункте есть интернет-провайдер Интерсвязь, звоните по телефону 8 (351) 225-00-00 – инженеры помогут с подключением.

Зона присутствия Интерсвязи
Челябинская область

Агаповский район
Аргаяшский район
Верхнеуфалейский район
Верхний Уфалей
Еманжелинск
Златоуст
Карабаш
Карталы
Касли
Копейск
Коркино
Куса
Кыштым
Магнитогорск
Миасс
Озёрск
Пласт
Сосновский р-н
Троицк
Увельский р-н
Уйский р-н
Чебаркуль
Южноуральск

Курганская область

Курган
Куртамыш

Свердловская область

Богданович
Каменск-Уральский

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

По возможности привлеките к монтажу домофона квалифицированного специалиста из домофонной или обслуживающей компании.

Подробную инструкцию по монтажу вы можете найти по ссылке

6. Настройка домофона в web-интерфейсе

В web-интерфейсе домофона вы можете управлять доступами, квартирами, ключами, а также регулировать уровни громкости.

Подробную инструкцию по всем функциям web-интерфейса можно найти по ссылке 

Остались вопросы?

Напишите нам на почту info@domofon-sokol.ru или задайте их на сайте

Документация Syslog

Описание

В данном документе описаны syslog-сообщения? отправляемые домофонной панелью "Сокол Плюс" во время работы.


Приложения

SIP-клиент (сamofon)

INFO
Сообщение Описание
Сервисная информация
[Camofon]: Запуск приложения Сообщение об успешном запуске приложения.
[Camofon]: Остановка приложения Сообщение об успешной остановке приложения.
Baresip AOR: %s

Сообщение о используемой информации на SIP сервере.

Пример:

  • Baresip AOR: sip:081300000000@televoip.is74.ru:7777;auth_pass=081300000000
[Baresip]: Успешная авторизация с %d попытки

Сообщение об успешной авторизации на SIP сервере.

Пример:

  • [Baresip]: Успешная авторизация с 1 попытки
  • [Baresip]: Успешная авторизация с 3 попытки
terminated by signal %d

Сообщение о получении сервисного сигнала.

Пример:

  • terminated by signal 2
  • terminated by signal 15

Вызовы
DTMF event: %s

Сообщение о полученном DTMF событии

Пример:

  • DTMF event: 
Calling to %u flat...

Сообщение о начале вызова в указанную квартиру.

Пример:

  • Calling to 1 flat...
  • Calling to 10 flat...
Calling %s through account

Сообщение о начале вызова в указанный SIP номер.

Пример:

  • Calling SOS through account
Calling to %u house %u flat...

Сообщение о начале вызова в указанный дом и квартиру.

Пример:

  • Calling to 1 house 10 flat...
  • Calling to 10 house 1 flat...
Incoming call to %u

Сообщение о входящем вызове в указанную квартиру.

Пример:

  • Incoming call to 1
  • Incoming call to 10
All calls are done Сообщение об успешном завершении всех вызовов.
All calls are done for %s

Сообщение об успешном завершении вызова в SIP номер.

Пример:

  • All calls are done for SOS
All calls are done for apartment %u

Сообщение об успешном завершении вызова в указанную квартиру.

Пример:

  • All calls are done for 1
  • All calls are done for 10
SIP call done, handset is down Сообщение об успешном завершении вызова с положенной абонентской трубкой.
SIP call done for apartment %u, handset is down

Сообщение об успешном завершении вызова в указанную квартиру с положенной абонентской трубкой.

Пример:

  • SIP call done for apartment 1, handset is down
  • SIP call done for apartment 10, handset is down
Can't dial with flat %u. Hangup появляется, когда поступается входящий вызов в конкретную квартиру невозможен 
Load accounts from SIP header: %s

Сообщение о полученных SIP номерах из SIP заголовка

Пример:

  • Load accounts from SIP header: sip_account

Ассистент
Hangup assistant Сообщение о завершении вызова в ассистента.
Incoming assist call Сообщение о входящем вызове в ассистента.

SOS и Консьерж
SOS_CALL_ESTABLISHED Сообщение об принятом вызове в SOS.
CONCIERGE_CALL_ESTABLISHED Сообщение об принятом вызове в Консьерж.

Открытие двери
Open from handset! Сообщение об открытии первого входа с абонентской трубки.
Open main door by DTMF Сообщение об открытие первого входа с помощью DTMF команды. 
Open second door by DTMF Сообщение об открытие второго входа с помощью DTMF команды. 
WARNING
Сообщение Описание
Сервисная информация
[Camofon]: Получен сигнал "%d"

Сообщение о получении сервисного сигнала.

Пример:

  • [Camofon]: Получен сигнал "2"
  • [Camofon]: Получен сигнал "15"
Detect dbus loop hanging by %d secs

Сообщение о зависании в обработчике DBus.

Пример:

  • Detect dbus loop hanging by 1 secs
  • Detect dbus loop hanging by 10 secs
Detect dbus loop hanging by %d secs. Exit!

Сообщение о принудительном выходе из обработчика DBus.

Пример:

  • Detect dbus loop hanging by 10 secs. Exit!

Информация о конфигурации
Can't write gate settings to config Сообщение об ошибке записи настроек калитки.

Вызовы
Can't call to %s account of %u flat

Сообщение об ошибке вызова в указанный SIP аккаунт для указанной квартиры.

Пример:

  • Can't call to 1@televoip.is74.ru account of 1 flat
  • Can't call to 10@televoip.is74.ru account of 10 flat

Trying make call to null SIP address!

State = %d, flat = %u

Сообщение о попытке вызова в неуказанный SIP адрес

Пример:

  • Trying make call to null SIP address!

  • State = 1, flat = 10

Attempt to set %s call header with value %s

Сообщение о установке указанного SIP заголовка с указанным значением.

Пример:

  • Attempt to set X-Iscom-AccountsList call header with value ["sipAccount"]
ERROR
Сообщение Описание
Failed main door by DTMF Сообщение о проблеме открытия первого входа.
Failed second door by DTMF Сообщение о проблеме открытия второго входа.
[Baresip]: Ошибка инициализации Сообщение о проблеме инициализации SIP клиента.
[Baresip]: Ошибка применения параметров Сообщение о проблеме применения параметров SIP клиента.
[Baresip]: Неудачная попытка авторизации более %d раз

Сообщение о проблеме авторизации на SIP сервере более 5-ти раз.

Пример:

  • [Baresip]: Неудачная попытка авторизации более 5 раз
Ошибка создания ответа со статусом sip регистрации Сообщение о проблеме создания ответа со статусом SIP регистрации.
Ошибка отправки ответа со статусом sip регистрации Сообщение о проблеме отправке ответа со статусом SIP регистрации.
SIP registration failed, can't make call Сообщение о проблеме создания SIP вызова при отсутствии SIP регистрации.

UART-клиент (UART)

INFO
Сообщение Описание
Системная информация
[Uart]: Запуск приложения Сообщение об успешном запуске приложения.
[Uart]: Остановка приложения Сообщение об успешной остановке приложения.

SOS и Консьерж
SOS button press Сообщение о нажатии кнопки "SOS".
Concierge button press Сообщение о нажатии кнопки "Консьерж".
SOS button press, but the button is not assigned Сообщение о нажатии не настроенной кнопки "SOS".
Concierge button press, but the button is not assigned Сообщение о нажатии не настроенной кнопки "Консьерж".

Вызовы в абонентскую трубку
Сall to a non-existent apartment %u

Сообщение о попытке вызова в несуществующую квартиру.

Пример:

  • Сall to a non-existent apartment 9999
CMS handset call started for apartment %u

Сообщение о начале вызова в абонентскую трубку с указанной квартирой.

Пример:

  • CMS handset call started for apartment 1
CMS handset talk started for apartment %u

Сообщение о начале разговора в абонентскую трубку с указанной квартирой.

Пример:

  • CMS handset talk started for apartment 1
CMS handset is not connected for apartment %u, aborting CMS call

Сообщение о проблеме вызова в абонентскую трубку с указанной квартирой. Абонентская трубка не подключена.

Пример:

  • CMS handset is not connected for apartment 1, aborting CMS call
CMS handset call done for apartment %u, handset is down

Сообщение о завершении вызова в абонентскую трубку.

Пример:

  • CMS handset call done for apartment 1, handset is down


Напряжение панели

Intercom voltage is lower than 10 volts. Voltage = %f

Сообщение о напряжения панели ниже 10-ти вольт.

Пример:

  •   Intercom voltage is lower than 10 volts. Voltage = 9.99

Оптический тампер
Tamper alarm detected (%.2f)

Сообщение о срабатывании оптического тампера.

Пример:

  • Tamper alarm detected (%.2f)


Внешние модули
External relay %u is opened by button press

Сообщение об открытии внешнего модуля кнопкой.

Пример:

  • External relay 1 is opened by button press
  • External relay 2 is opened by button press
External relay %d is opened by %s, UUID %s, flat %d

Сообщение об открытии внешнего модуля ключом привязанного к указанной квартире с помощью указанного считывателя.

Пример:

  • External relay 1 is opened by ext. reader 1, UUID AABBCCDD, flat 1
  • External relay 1 is opened by ext. reader 2, UUID AABBCCDD, flat 1
  • External relay 1 is opened by main reader 1, UUID AABBCCDD, flat 1
  • External relay 1 is opened by second reader 1, UUID AABBCCDD, flat 1

Работа с кодами
Common code %u is disabled

Сообщение об отключенном общем коде открытия двери.

Пример:

  • Common code 11111 is disabled
Door is opened by common code %u

Сообщение об открытии двери общим кодом.

Пример:

  • Door is opened by common code 11111
Opening door by code %u, apartment %u

Сообщение об открытии двери кодом открытия привязанного к указанной квартире.

Пример:

  • Opening door by code 11111, apartment 1

Работа с ключами
Opening door by RFID %s, apartment %d

Сообщение об открытии двери ключом привязанного к указанной квартире.

Пример:

  • Opening door by RFID AABBCCDD, apartment 1
Opening door by RFID %s with "Any key open" feature

Сообщение об открытии двери ключом привязанного к указанной квартире.

Пример:

  • Opening door by RFID AABBCCDD, apartment 1
RFID %s, apartment %d, authorization with %d profile failed

Сообщение о проблеме авторизации указанным профилем защищенного режима в ключ привязанного к указанной квартире.

Пример:

  • RFID AABBCCDD, apartment 1, authorization with 1 profile failed
RFID %s, apartment %d, authorization with %d profile successed

Сообщение о успешной авторизации указанным профилем защищенного режима в ключ привязанного к указанной квартире.

Пример:

  • RFID AABBCCDD, apartment 1, authorization with 1 profile successed
RFID %s, apartment %d, open the door failed (flag openByError = 0)

Сообщение о проблеме открытия двери ключом привязанного к указанной квартире. Флаг открытия двери при ошибке - выключен.

Пример:

  •  RFID AABBCCDD, apartment 1, open the door failed (flag openByError = 0)
RFID %s, apartment %d, mifare markup was uploaded

Сообщение о загруженной разметки прошивки Mifare Classic в ключ привязанного к указанной квартире.

Пример:

  • RFID AABBCCDD, apartment 1, mifare markup was uploaded
RFID %s, apartment %d, increment success:"%d" => "%d" (sector: %d, block: %d)

Сообщение о выполнении инкремента в ключ привязанного к указанной квартире.

Пример:

  • RFID AABBCCDD, apartment 1, increment success:"2" => "3" (sector: 1, block: 2)
RFID %s is not present in database

Сообщение о проблеме открытия двери ключом. Ключ не найден в базе данных.

Пример:

  • RFID AABBCCDD is not present in database
WARNING
Сообщение Описание
Сервисная информация
[Uart]: Получен сигнал "%d"

Сообщение о получении сервисного сигнала.

Пример:

  • [Uart]: Получен сигнал "2"
  • [Uart]: Получен сигнал "15"
ERROR
Сообщение Описание
Ошибка отправки ответа в dbus Сообщение о проблеме отправке ответного сообщения в DBus шину.
Ошибка формирования ответа в dbus Сообщение о проблеме формирования ответного сообщения в DBus шину.
Ошибка создания ответа в dbus Сообщение о проблеме создания ответного сообщения в DBus шину.
UART.Timeout exceeded while awaiting dequeue. Сообщение о проблеме получения ответа в течении указанного периода.
Ошибка создания сообщения об ошибке Сообщение о проблеме создания ответного сообщения с ошибкой в DBus шину.
Ошибка создания ответа со статусом sip усиления Сообщение о проблеме создания ответного сообщения со статусом SIP регистрации в DBus шину.


DDNS-клиент (DDNS)

INFO
Сообщение Описание
Выполнение запроса
[%d]: %s

Статус выполнения запроса

Пример:

  • [200]: http://default:default@10.199.63.7:8081/nic/update?hostname=ddns.ISCom

Сервисная информация
[Ddns]: Запуск приложения Сообщение об успешном запуске приложения.
[Ddns]: Остановка приложения Сообщение об успешной остановке приложения.

Информация о конфигурации
Загружена конфигурация: Сообщение о загруженной информации из конфигурационного файла.
Enabled (%d)

Флаг отправки запросов на HTTP сервер.

Пример:

  • Enabled (0)
  • Enabled (1)
Interval (%d)

Используемый интервал отправки запросов на сервер.

Пример:

  • Interval (300)

[Server]: port (%d)

Используемый порт сервера.

Пример: 

  • [Server]: port (8081)

[Server]: address (%s)

Используемый адрес сервера.

Пример:

  • [Server]: address (10.199.63.7)
[Server]: username (%s)

Используемый логин авторизации на сервере.

Пример:

  • [Server]: username (default)
[Data]: hostname (%s)

Используемое имя устройства для определения на сервере.

Пример:

  • [Data]: hostname (ddns.ISCom)
WARNING
Сообщение Описание

Сервисная информация

[Ddns]: Получен сигнал "%d"

Сообщение о получении сервисного сигнала.

Пример:

  • [Ddns]: Получен сигнал "2"
  • [Ddns]: Получен сигнал "15"
ERROR
Сообщение Описание
Выполнение запроса
[%d]: %s

Статус выполнения запроса

Пример:

  • [0]: http://default:default@10.199.63.7:8081/nic/update?hostname=ddns.ISCom

HTTP-сервер (API)

INFO
Сообщение Описание
Сервисная информация
[Api]: Запуск приложения Сообщение об успешном запуске приложения.
[Api]: Остановка приложения Сообщение об успешной остановке приложения.

Выполнение запроса
Вызов метода: %d %s [%s]

Сообщение о вызове API метода.

Пример:

  • Вызов метода: 1 /system/info [192.168.0.101]
  • Вызов метода: 1 /v2/system/versions [192.168.0.101]
Тело запроса: %s

Сообщение о переданном теле в вызванный API метод.

Пример:

  • Тело запроса: [{"id":0,"block":1,"key_type":"A"}]

Открытие двери
Send opening external door with addr = %d by API command

Сообщение об открытии внешнего контроллера замка.

Пример:

  • Send opening external door with addr = 0 by API command
  • Send opening external door with addr = 1 by API command

Работа с базой данных
RFID %s written to MC

Сообщение об успешной записи ключа в базу данных.

Пример:

  • RFID AABBCCDD written to MC
RFID %s deleted from MC

Сообщение об успешном удалении ключа из базы данных.

Пример:

  • RFID AABBCCDD written to MC
All data markup and state sectors key for Mifare key deleted from MC Сообщение об успешном удалении разметки прошивки ключа MIfare Classic.
WARNING
Сообщение Описание
Сервисная информация
[Api]: Получен сигнал "%d"

Сообщение о получении сервисного сигнала.

Пример:

  • [Api]: Получен сигнал "2"
  • [Api]: Получен сигнал "15"

Выполнение запроса
Неавторизованный вызов метода: %d %s [%s]

Сообщение о вызове API метода с неверным логином или паролем.

Пример:

  • Неавторизованный вызов метода: 1 /system/info [192.168.0.101]
  • Неавторизованный вызов метода: 1 /v2/system/versions [192.168.0.101]
Обнаружены ошибки, RouteCallback не будет выполнен Сообщение о наличии ошибок при выполнении API метода.

Работа с базой данных
Read pages... Сообщение о создании резервной копии данных с микроконтроллера.
Backup camera... Сообщение о создании резервной копии данных с камеры.
Аппаратный сброс Сообщение о выполнении аппаратного сброса панели.
ERROR
Сообщение Описание
Работа с базой данных
Не удалось записать ключи Сообщение о проблеме сохранения списка ключей.
Не удалось записать данные о квартирах Сообщение о проблеме сохранения списка квартир.
Не удалось записать данные о разметке ключей Сообщение о проблеме сохранения разметки Mifare Classic.
Не удалось записать данные о матрицах коммутации Сообщение о проблеме сохранения списка матриц коммутации.
Не удалось записать общую конфигурацию Сообщение о проблеме сохранения общей конфигурации.
Не удалось выполнить перезагрузку панели Сообщение о проблеме выполнения перезагрузки устройства.

Проверка полученных параметров
Ошибка при восстановлении из бэкапа Сообщение о проблеме восстановления устройства из резервной копии.

RTSP-сервер (streamer)

INFO
Сообщение Описание
Main signal handler: %d

Сообщение о получении сервисного сигнала.

Пример:

  • Main signal handler: 2
  • Main signal handler: 15
EVENT: Detected motion in %u areas. Min area size = %u, max area size = %u

Сообщение о событии детекции движения в кадре (количество зон, минимальный и максимальный размер зоны).

Пример: EVENT: Detected motion in 5 areas. Min area size = 500, max area size = 1000

  

Open font file: %s

Сообщение об открытии файла с символами OSD текста.

Пример:

  • Open font file: /iscom/default/apps/streamer/dahua_font_16.bin
RTSP (%s): Accept connection: %d

Сообщение о полученном запросе на получение RTSP потока с указанного IP адреса и номером сервисного дескриптора.

Пример:

  • RTSP (192.168.0.101): Accept connection: 31
RTSP (%s): Close connection: %d

Сообщение о полученном запросе на завершение RTSP потока с указанного IP адреса и номером сервисного дескриптора.

Пример:

  • RTSP (192.168.0.101): Close connection: 31
RTSP (%s): DESCRIBE finished

Сообщение о полученном запросе на Describe с указанного IP адреса.

Пример:

  • RTSP (192.168.0.101): DESCRIBE finished
RTSP (%s): Generate new session ID: %d

Сообщение о полученном запросе на получение RTSP потока с указанного IP адреса и номером запроса.

Пример:

  • RTSP (192.168.0.101): Generate new session ID: 95242
RTSP (%s): SETUP finished. PT=%d, CH=%d

Сообщение о завершении Setup запроса для указанного IP адреса с указанным каналом и протоколом.

Пример:

  • RTSP (192.168.0.101): SETUP finished. PT=96, CH=1
RTSP (%s): PLAY finished

Сообщение об остановке передачи видео потока для указанного IP адреса.

Пример:

  • RTSP (192.168.0.101): PLAY finished
RTSP (%s): TEARDOWN finished

Сообщение о завершении передачи видео потока для указанного IP адреса.

Пример:

  • RTSP (192.168.0.101): TEARDOWN finished
Switch night mode: %d

Сообщение о смене Черно-Белого режима.

Пример:

  • Switch night mode: 0
  • Switch night mode: 1
Night mode OFF (Exposure=%u, ExposureLight=%u)

Сообщение о выключении Черно-Белого режима с указанными параметрами текущей экспозиции и уровнем отключения в светлое время суток.

Пример:

  • Night mode OFF (Exposure=2000, ExposureLight=22000)
Night mode ON (Exposure=%u, ExposureNight=%u)

Сообщение о включении Черно-Белого режима с указанными параметрами текущей экспозиции и уровнем включения в ночное время суток.

Пример:

  • Night mode OFF (Exposure=2000, ExposureNight=220000)
WARNING
Сообщение Описание
Cannot open font file: %s

Сообщение об ошибке открытия файла с символами OSD текста.

Пример:

  • Cannot open font file: 
    /iscom/default/apps/streamer/dahua_font_16.bin
Exceed the MAX client count, ignore connection %d

Сообщение об ошибке переполнения подключений.

Пример:

  • Exceed the MAX client count, ignore connection: 10
RTSP (%s): Authorization failed

Сообщение об ошибке авторизации для получения видео потока с указанного IP адреса.

Пример:

  • RTSP (192.168.0.101): Authorization failed
RTSP (%s): Authorization successful!

Сообщение об успешной авторизации для получения видео потока с указанного IP адреса.

Пример:

  • RTSP (192.168.0.101): Authorization successful!
ERROR
Сообщение Описание
Ошибка регистрации в dbus, имя сервиса уже используется

Сообщение о проблеме авторизации указанного имени, которое указано.

Detect snapshot error. Reboot... Сообщение об ошибке получения снапшота. Выполняется перезагрузка устройства.
Ошибка отправки ответа в DBus Сообщение об ошибке отправки ответа на сообщение в DBus
SendSnapshotHTTP: get snapshot failed Сообщение об ошибке получения снапшота для отправки на HTTP сервер по детекции движения.
SendSnapshotHTTP: server return %d code!

Сообщение об ошибке отправки снапшота по событию детектора движения.

Пример:

  • SendSnapshotHTTP: server return 500 code!

Обновлятор (upgrade)

WARNING
Сообщение Описание
Отправка команды на перезагрузку Сообщение о выполнении перезагрузки панели.
ERROR
Сообщение Описание
Обновление остановлено Сообщение об остановке обновления устройства.
Проверка подлинности не пройдена Сообщение о проблеме проверки подписи файла с прошивкой.
Не удалось получить текущую разметку камеры Сообщение о проблеме получения разметки памяти камеры.
Не удалось установить актуальную разметку для камеры Сообщение о проблеме установки верной разметки памяти  камеры.
Ошибка обновления MCU Сообщение о проблеме обновления микроконтроллера.
Ошибка при загрузке прошивки в память MCU Сообщение о проблеме загрузки прошивки в память микроконтроллера.
Прошивка не была загружена в память MCU.
Продолжение обновления невозможно
Сообщение о проблеме загрузки прошивки в память микроконтроллера из-за чего остановлено обновление.


ИК-шторка (ircut)

INFO
Сообщение Описание
Сервисная информация
[Dbus]: dbus loop started Сообщение о запуске обработчика DBus команд. 
[Request]: IRCut On (on) Сообщение о включении. Состояние выходов включено.
[Request]: IRCut On (off) Сообщение о включении. Состояние выходов выключено.
[Request]: IRCut Off (on) Сообщение о выключении. Состояние выходов включено.
[Request]: IRCut Off (off) Сообщение о выключении. Состояние выходов выключено.
[Daemon]: daemon loop started Сообщение о запуске приложения в режиме демона.
WARNING
Сообщение Описание
Сервисная информация
Device model is Goke v200 Сообщение о выполнении команды на устройстве "Goke v200".
Device model is Goke v300 Сообщение о выполнении команды на устройстве "Goke v300".
Device model is Hisilicon Ev200 Сообщение о выполнении команды на устройстве "Hisilicon Ev200".
ERROR
Сообщение Описание
Сервисная информация
[DBus]: not initiated Сообщение о невозможности инициализации DBus шины.
[DBus]: failed connect to D-bus Сообщение об ошибке подключении к DBus шине.
[DBus]: failed authorization Сообщение об ошибке авторизации на DBus шине.
[DBus]: limits exceeded Сообщение об ошибке превышения лимита. 
[DBus]: failed create signal: %s Сообщение об ошибке создания DBus сигнала.
[DBus]: failed to send signal: %s Сообщение об ошибке отправки DBus сигнала.
[DBus]: name %s already exists Сообщение об ошибки использовании указанного имени на DBus шине.
[DBus]: failed create message Сообщение об ошибке создания сообщения на DBus шине.
[DBus]: failed add data to message Сообщение об ошибке добавления данных в сообщение.
[DBus]: failed get data from message Сообщение об ошибке получения данных из сообщения.
[DBus]: failed get data from message: iter init failed Сообщение об ошибке получения данных из сообщения.
[DBus]: failed get data from message: message type is NOT string Сообщение об ошибке получения данных из сообщения. Тип сообщения не является строкой.
[DBus]: failed to create Dbus string message Сообщение об ошибке создания строкового сообщения.
[DBus]: failed create method reply message Сообщение об ошибке создания ответного сообщения.
[DBus]: failed get reply message Сообщение об ошибке получения ответа на отправленное сообщение.
[DBus]: failed add data to method reply message Сообщение об ошибке добавления данных в ответное сообщение
Unknown device model: %u

Сообщение о неизвестной версии модели устройства.

Пример:

  • Unknown device model: 1
  • Unknown device model: 2

Библиотека (libiscom)

Данная библиотека используется во всех приложения. Это означает, что почти любое сообщение из списка может отобразиться от имени использующего её приложения.

WARNING
Сообщение Условие появление
Unknown dbus method: %s Сообщение о полученном неизвестном DBus сообщении. 
DBUS_LIMITS_EXCEEDED: stopping %s Сообщение о переполнении DBus очереди приложения из-за чего происходит остановка приложения.
RTSP instance is already created появляется, когда попытка создать новый экземпляр RTSP была отклонена, поскольку экземпляр RTSP уже существует
Can't get Session attribute from response появляется, когда попытка получить атрибут сессии из ответа сервера не удалась
ERROR
Сообщение Условие появление
[DBus]: failed connect to bus Сообщение о проблеме подключения к DBus шине.
[DBus]: failed authorization Сообщение о проблеме авторизации в DBus шине.
[DBus]: name %s already exists

Сообщение о проблеме существования приложения на шине DBus.

Пример:

  • [DBus]: name api already exists
  • [DBus]: name streamer already exists
[DBus]: failed get data from message Сообщение о проблеме получения данных из сообщения DBus.
[DBus]: failed create signal: %s

Сообщение о проблеме создания DBus сигнала.

Пример:

  • [DBus]: failed create signal:
[DBus]: failed add data to message Сообщение о проблеме добавления данных в DBus сообщение.
[DBus]: failed to send signal: %s

Сообщение о проблеме отправки DBus сигнала.

Пример:

  • [DBus]: failed to send signal:
[DBus]: failed create method reply message Сообщение о проблеме создания DBus сообщения.
[DBus]: failed add data to method reply message Сообщение о проблеме добавления данных из DBus сообщения.
[DBus]: failed send method reply message Сообщение о проблеме отправки DBus сообщения.
[DBus]: failed create method reply message Сообщение о проблеме создания ответного DBus сообщения.


Ошибка добавления параметров к dbus сообщению Сообщение о проблеме добавления параметров в DBus сообщение.
Ошибка создания D-Bus сообщения Сообщение о проблеме создания DBus сообщения.
Ошибка добавления JSON данных в D-Bus сообщение Сообщение о проблеме добавления JSON строки в DBus сообщение.
Ошибка добавления массива данных в D-Bus сообщение Сообщение о проблеме добавления массива данных в DBus сообщение.
Ошибка создания сигнала %s

Сообщение о проблеме создания DBus сигнала.

Пример:

  • Ошибка создания сигнала UART_EV_UPDATE_KEY
Не удалось получить из json данные о состоянии обновления Сообщение о проблеме получения JSON строки о получении состояния обновления из DBus строки.

Управление приложениями (proguard)

INFO
Сообщение Описание
Сервисная информация
DBus loop started Сообщение о запуске обработчика DBus.
Daemon started Сообщение о запуске приложения в режиме демона.
Proguard started Сообщение об успешном запуске приложения.
Proguard stopped Сообщение об успешной остановке приложения.

Сообщения запросов
[Request]: applications list Сообщение о запросе на вывод списка приложений. 
[Request]: status (%s)

Сообщение о запросе на вывод статуса указанного приложения.

Пример:

  • [Request]: status (api)
  • [Request]: status (streamer)
[Request]: stop (%s)

Сообщение о запросе на остановку указанного приложения.

Пример:

  • [Request]: stop (api)
  • [Request]: stop (streamer)
[Request]: start (%s)

Сообщение о запросе на запуск указанного приложения.

Пример:

  • [Request]: start (api)
  • [Request]: start (streamer)
[Request]: restart (%s)

Сообщение о запросе на перезапуск указанного приложения.

Пример:

  • [Request]: restart (api)
  • [Request]: restart (streamer)
[Request]: enable (%s)

Сообщение о запросе на включение указанного приложения.

Пример:

  • [Request]: enable (api)
  • [Request]: enable (streamer)
[Request]: disable (%s)

Сообщение о запросе на выключение указанного приложения.

Пример:

  • [Request]: disable (api)
  • [Request]: disable (streamer)

Сообщения процессов
[Process]: start (%s)

Сообщение о запуске указанного приложения.

Пример:

 

  • [Process]: start (api) 
  • [Process]: start (streamer)
[Process]: started (%s)

Сообщение об успешном запуске указанного приложения.

Пример:

  • [Process]: started (api)
  • [Process]: started (streamer)
[Process]: stop (%s)

Сообщение о остановке указанного приложения.

Пример:

  • [Process]: stop (api)
  • [Process]: stop (streamer)
[Process]: stopped (%s)

Сообщение об успешной остановке указанного приложения.

Пример:

  • [Process]: stopped (api)
  • [Process]: stopped (streamer)
[Process]: enabled (%s)

Сообщение о включении указанного приложения.

Пример:

  • [Process]: enabled (api)
  • [Process]: enabled (streamer)
[Process]: disabled (%s)

Сообщение о выключении указанного приложения.

Пример:

  • [Process]: disabled (api)
  • [Process]: disabled (streamer)

Информация об используемой конфигурации
[Config]: json parsed (%s)

Сообщение о полученной конфигурации json из конфигурационного файла.

Пример:

  • [Config]: json parsed (/oem/camofon.conf)
WARNING
Сообщение Описание
Системная информация
Daemon stopped Сообщение о незапланированной остановке приложения в режиме демона. 
DBus loop stopped Сообщение о незапланированной остановке обработчика DBus.
Received signal (%d)

Сообщение о получении сервисного сигнала.

Пример:

  • Received signal (2)
  • Received signal (15)
ERROR
Сообщение Описание
Выполнение запроса
[Method]: "%s" not found

Сообщение об ошибке не существующего запрашиваемого метода.

Пример:

  • [Method]: "stop1" not found
  • [Method]: "start1" not found
[Process]: service not found (%s)

Сообщение об ошибке не существующего запрашиваемого приложения.

Пример:

  • [Process]: service not found (api1)
  • [Process]: service not found (streamer1)
[Process]: failed exec command (%s)

Сообщение об ошибке выполнения запрашиваемой команды.

Пример:

  • [Process]: failed exec command (%s)

Информация о конфигурации
[Config]: failed parse json (%s)

Сообщение об ошибке получения данных из конфигурационного файла.

Пример:

  • [Config]: failed parse json (/tmp/iscom/proguard.d/configs/S82api.proguard)
[Config]: failed update config (%s)

Сообщение об ошибке обновления данных в конфигурационном файле.

Пример:

  • [Config]: failed parse json (/tmp/iscom/proguard.d/configs/S82api.proguard)