Раздел «События» (events)

Раздел «События» (events)

Разработчикам / Структура конфигурационного файла драйвера

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

MyDriver:
  feedback:
    - streamUrl: string
  events:
    - status: connected
      feedback: streamUrl
      value: "rtsp://{host}:554/mediainput/h264/stream_1"

В данном примере при подключении устанавливается URL для получения потока камеры. Значение host будет установлено на значение host устройства. Еще пример:

MyDriver: 
  feedbacks:
    - power: [off, on]
      value: off
  events:
    - status: connected
      feedback: power
      value: on
    - status: disconnected
      feedback: power
      value: off

В данном примере устройство не имеет команды получения значения питания (выключается командой, а включается по wake-on-lan). При помощи событий мы можем реализовать отображение состояния питания:

  • если обратная связь status получит значение connected, то обратная связь power будет установлена в значение on;
  • если status изменится на disconnected, то power будет установлен в off (status — это название специальной обратной связи, которая есть у TCP-устройств).