Difference between revisions of "JavaScript API ru"
(→Общий способ работы с функциями) |
(→Внутренние функции: Универсальный XML запрос) |
||
Line 71: | Line 71: | ||
=== Внутренние функции === | === Внутренние функции === | ||
эти функции не предлагается использовать, они используются внутри библиотеки | эти функции не предлагается использовать, они используются внутри библиотеки | ||
+ | ==== '''cam_xml_req''' - Универсальный XML запрос ==== | ||
+ | '''cam_xml_req(''' | ||
+ | * url запроса, | ||
+ | * function(xml) - вызываестся при получении данных, | ||
+ | * function(err, errtxt) - вызывается при получении ошибки, | ||
+ | * function() - вызывается при истечении времени ожидания ответа, | ||
+ | * function() - вызывается во время ожидания, | ||
+ | * максимальное время ожидания в тысячных секунды | ||
+ | ''')''' | ||
== Элементы UI == | == Элементы UI == |
Revision as of 02:32, 7 November 2005
(Проект)
in English | autotranslate | по-русски | [[{{{cn}}}|中文版]]
Библиотека предназначена для работы с камерами из javascript
Функции для работы с камерами
Общий способ работы с функциями
Каждая операция разбивается на два этапа - запрос и подтверждение. При запросе передаются callback-функции которые вызываются по приходу информации от камеры.
Для работы с функциями следует подключить файл-библиотеку libelphel_cam.js
Каждая функция имеет унифицированный набор параметров
cam_groupcmd(addr, params,.., functions,..)
- cam_ - общий префикс всех библиотечных функций
- group - имя группы функций, например info
- cmd - имя функции в группе (может отсутствовать)
- addr - строка - IP адрес или DNS имя камеры.
- params,.. - дополнительные параметры (фиксированное для каждой функции количество)
- functions,.. - call-back функции вызываемые по приходу информации от камеры или при обнаружении ошибки.
Callback-функции рекомендуется определять анонимно в месте вызова библитечной функции. Например:
cam_info(cam_adr, //запрос информации о камере function(manufacturer, serial, hardware_version, software_version, img_type, rtp_type, mp_type) { //информация пришла ... }, function(err) { //ошибка ... }, function(time) { //таймаут ... }, function() { //ожидание ... } )
Инициализация
Нужна ли функция инициализации библиотеки? Думаю что общую инициализацию можно спрятать в сам JS файл библиотеки и такая функция не нужна.
А функция инициализации работы с конкретной камерой в многокамерном варианте? Как получится, желательно чтобы её тоже не было. Следует учитывать, что в промежутках между запросами камера может перезагрузиться или обновиться, сейчас это не учитывается.
Информация о камере
Получение информации о камере: производитель, номер модели, номер версии прошивки, поддерживаемые функции
Параметры съёмки общие для видео и фото
функции установки/опроса параметров работают с массивами со строковыми индексами или полями объектов.
Имя | тип | значение |
---|---|---|
e | число[ ? ] | выдержка |
iq | число [ 1-100 ] | параметр качества |
Одиночные кадры
- получение кадра с установленными параметрами
- получение кадра с одновременной установкой параметров
Стримеры
запуск/остановка, параметры стримера
Работа с настройками
Сохранять/восстанавливать с куками и файлами. Файлы у клиента или в камере.
Внутренние функции
эти функции не предлагается использовать, они используются внутри библиотеки
cam_xml_req - Универсальный XML запрос
cam_xml_req(
- url запроса,
- function(xml) - вызываестся при получении данных,
- function(err, errtxt) - вызывается при получении ошибки,
- function() - вызывается при истечении времени ожидания ответа,
- function() - вызывается во время ожидания,
- максимальное время ожидания в тысячных секунды
)
Элементы UI
Слайдер
Двойной слайдер
для задания интервалов