Перейти к основному содержимому

iRidium для SNMP

Набор инструментов для создания интерфейса визуализации

Драйвер предназначен для управления оборудованием, работающим по протоколу SNMP v1.

Подсказка

**Пример: *iRidium SNMP Driver

Описание

iRidium для SNMP - это набор инструментов, позволяющий создать интерфейс для управления домом или офисом на базе оборудования, работающего по протоколу SNMP v.1 . Реализует команды протокола SNMP для изменения настроек устройства

Протокол SNMP позволяет получать сработки от различных устройств, таких как:

  • датчики;
  • видеокамеры;
  • роутеры.
примечание

Данный драйвер не поддерживает команду "Get Next". Если в фидбек приходит несколько OID'ов, то укажите нужный в поле "OID".

Чтобы определить нужный OID с параметрами устройства воспользуйтесь iReasoning MIB Browser.

Найдите заготовленную производителем устройства MIB таблицу для браузера, или используйте Trap Receiver для отслеживания приходящих OID .

Вариант применения

  1. Настройка события при регистрации в сети устройства. Любой человек вошедший в зону действия сети wi-fi, регистрируется в сети и заранее настроенный роутер высылает оповещение по SNMP в iRidium, где уже отрабатывается сценарий. Данный сценарий поможет с определением появления в сети устройства, которое вы не можете пропинговать(например устройства работающие на iOS).

  2. Видеокамера(любой другой датчик) срабатывая на движение высылает сообщение в iRidium, далее в проекте можно настроить push-уведомление "Посторонний в помещении" отсылаемое на телефон.

  3. Анализ изменений температуры погоды, датчика тепла на устройстве. Создайте собственную базу со значениями датчика, который шлет температуру по snmp протоколу, нарисуйте тренд изменения (подробная информация по созданию находится здесь). Отслеживайте изменения, или создайте событие об оповещении.

Подключение

Настройка оборудования

  1. Зайдите в настройки своего оборудования и выберете протокол SNMP v1. 2. Укажите порт SNMP Port(по умолчанию 161), он необходим для получения запросов.
  2. Укажите trap-port (по умолчанию 162), по нему устройство будет отсылать SNMP trap.
  3. Укажите группу для чтения (по умолчанию public).
  4. Укажите группу для записи (по умолчанию private).
  5. Укажите Trap адрес. IP устройства с драйвером, на которое будут отсылаться trap при запросе, или сработке устройства(датчика, роутера, камеры).
Важно

Внимание! В целях безопасности, в проекте и на устройствах, измените параметр "Community" с public на более сложный.

Пример настройки камеры Activecam

  1. Настраиваем SNMNP на камере Activecam.

SNMP_Camera_setting.png

  1. Настраиваем генерацию trap-пакета, событие при котором будет происходить отсылка на наш драйвер.

SNMP_Camera_2.png

Добавить драйвер SNMP можно с помощью импорта из CSV файла или ручным заполнением данных.

Импорт из CSV файла (*.csv)

Universal import from CSV File - это возможность импорта драйверов из таблицы, представленной в формате CSV.

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

Добавление драйвера вручную

Добавьте драйвер SNMP в проект из базы данных iRidium:

  1. Запустите приложение iRidium Studio, создайте новый проект iRidium
  2. Откройте боковую панель Devices и выберите драйвер SNMP.

SNMP1.png

Обязательно укажите адрес контроллера в проекте iRidium, иначе он не будет работать.

Настройка параметров подключения

Когда драйвер добавлен в проект, нужно указать настройки подключения.

Set_driver_22.png

  • Host - IP-адрес устройства.
  • Port - порт подключения к устройству для передачи данных (по умолчанию 161, драйвер посылает запросы агенту).
  • LocalPort - порт подключения к устройству для получения данных(по умолчанию 162, агент посылает ответ драйверу).
примечание

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

  • Request tags at start - опрашивать при старте(true/false).
  • Interval between tag polls - интервал между опросами тегов. после безуспешного опроса драйвер переключается на опрос другого тега.
  • Maximum number of tag polls - количество попыток опроса каждого тега.

Commands & Feedbacks

Команды и каналы обратной связи нужно привязать к графическим элементам для управления оборудованием:

  • Команда привязывается к графическому элементу.
  • Канал обратной связи привязывается к графическому элементу, чтобы отобразить состояние переменной

Чтобы связать команду или канал с графическим элементом, используйте метод drag&drop - перетягивание.

Чтобы отправить команду, нужно перетянуть ее на графический элемент. Чтобы отобразить обратную связь, нужно перетянуть канал на графический элемент, и указать, куда вывести значение (Value):

SendValue.png

Настройка Commands и Feedbacks

Для настройки команды необходимо установить значение следующих полей:

  • OID - числовой идентификатор объекта;
  • Type - тип команды/фидбека;
  • Value Type - тип значения;
  • Community - последовательность символов, описывающая принадлежность к группе, своего рода пароль.

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

  • OID - числовой идентификатор объекта.
  • Get - команда для запроса данных с устройства:
  • Value - фидбек для возврата запрошенного значения;
  • Trap - событийный фидбек, срабатывает когда что-либо произошло.
  • Community - последовательность символов, описывающая принадлежность к группе, своего рода пароль.

Пример запроса значений:


var device = IR.GetDevice("SNMP");
function get_feedback() // отправка единицы в команду с типом Get (запросить значение).
{
device.Set("getsysUpTime", 1);
IR.Log("request value after 32");
}

IR.SetTimeout(32000, get_feedback); // выполнить функцию через 32 секунды.

примечание

Команда и фидбек должны быть подписаны на один OID, тип команды: Get, тип фидбека: Value.

Пример подписки на изменения значений в тегах:


IR.AddListener(IR.EVENT_TAG_CHANGE, device, function (n,v) {
IR.Log("EVENT_TAG_CHANGE " + n + " " + v);
});

примечание

Тип фидбека: Trap.

Value Types

типописание
IntegerЦелое число
StringСтрока
NullПеременная без значения (ноль)
OIDИдентификатор объекта
IP4IP-адрес
CounterСчетчик - неотрицательное целое число, значение которого увеличивается монотонно от 0 до значения 2^32-1 и затем вновь возвращается в 0
TimeСчетчик, который считает время в сотых долях секунды с какой-либо исходной точки