Agent

Драйвер устройства SberMobile Agent является драйвером устройства, позволяющим SberMobile Server взаимодействовать с Agent. Технически Agent представляет собой BASIC приложение, которое создает и поддерживает дерево контекстов при помощи узла для каждого подключенного к нему физического Device (элемента оборудования). В действительности Device также может быть реализовано с помощью пользовательского кода, являющегося частью Agent. Переменные контекста каждого Device относятся к настройкам Device. Каждый такой контекст обладает функциями, позволяющими выполнять некоторые операции с Device, и событиями, использующимися для управления состоянием Device и изменениями в режиме работы. SberMobile Server использует протокол передачи данных SberMobile для взаимодействия с Agent.

Этот драйвер отличается от драйвера устройства Локальный Агент. Последний устанавливает  исходящее соединение в "режиме агента" вместо обслуживания входящих соединений агента.

Информация о драйвере

ID плагина драйвера:

com.tibbo.linkserver.plugin.device.agent

Общие настройки

  • Количество портов для Agent. Входящие подключения от агентов будут приниматься на данный порт.
  • Количество портов для безопысных соединений Agent. Входящие безопасные соединения от Агентов будут приниматься на этот порт.  
  • Таймаут команды. Время ожидания команд, посланных при помощи протокола передачи данных Агентов.
  • Таймаут команды вещания. Время ожидания команд, отправленных через широковещательную передачу во время обнаружения Агентов.
  • Автоматическая регистрация аккаунтов устройств для новых Агентов. Позволяет Агентам передавать SberMobile Server пароли, что приводит к автоматической регистрации сервером учетных записей в случае попыток подключения новых Агентов.
  • Максимальная длина очереди событий. Максимальное количество единичных событий Агента, которые должны быть сохранены, если обрабатываемое событие отложено ввиду некоторых причин. Если очередь событий переполняется, удаленный агент не сможет посылать события.

Настройки уровня пользователя

Не определены.

Свойства device

  • Пароль. Пароль Агента.

Активы device

Наличие активов определяется конкретной реализацией Agent.

Настройки device

Драйвер устройства < Agent> предоставляет удаленные переменные Agent, такие как локальные настройки Device.

Операции device

Драйвер устройства Agent предоставляет удаленные функции Agent, такие как локальные операции Device.

События device

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

Подключение

Данный драйвер приводит устройство в режим Онлайн, если:

  • Агент подключен к серверу и произвел вход в систему
  • Основные операции агента выполнены успешно.

Статистика соединений агента

Диалог статуса устройства для драйвера устройства Agent показывает дополнительную таблицу Статистики соединения, которая показывает:

  • Период соединения
  • Количество команд, то есть количество команд, отправленных Агенту
  • Среднее время ответа на все команды
  • Входящий трафик (несжатый)
  • Исходящий трафик (несжатый)
  • Количество неотвеченных команд

Метрика производительности

Свойство

Описание

Длина очереди события

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

Отклоненные события

Показывает, сколько событий было отклонено из-за переполненной Очереди событий.

Отключения

Показывает количество отключений.

Событий получено

Показывает общее количество полученных событий.

Обновлений получено

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

Детали синхронизации

Драйвер Агента выполняет синхронизацию SberMobile Server и Device, проводимую Агентом по следующей схеме:

  • Считывает с Agent список доступных контекстов и их отношения "родитель-потомок".
  • Создает серверный контекст для каждого контекста Agent. Данный контекст позволяет пользователям SberMobile взаимодействовать с Агентом напрямую или через кэш переменных.
  • Проводит синхронизацию внутренних часов реального времени Agent со временем на сервере. Время устанавливается согласно временной зоне, назначенной для Device.
  • Считывают определения переменных, функций и событий с каждого контекста, доступного в Agent. Однако он не считывает значения, сохраненные в Таблицах Данных, а только их формат. Более подробную информацию об определении переменных смотрите здесь.
  • Находит общие таблицы, которые могут быть использованы в качестве "заданных значений" переменных Agent (таких как настройки Device).
  • Создает кэш свойств (если Device подключается впервые) или обновляет его согласно определениям переменных, считанных ранее. Переменные, относящиеся к группе по умолчанию, синхронизируются с сервером и могут быть изменены пользователями. Кэш свойств создается только в серверных контекстах, относящихся к контекстам Device в Agent. Переменные внутренних настроек Agent модифицируются сервером напрямую, без создания кэша.
  • Устанавливает опцию Конфигурировать Device  в каждом контексте, относящемся к контексту Device в Agent.
  • Создает необходимое действие для каждой функции контекста Device внутри группы по умолчанию. Данное действие позволяет пользователям вызывать функцию Agent, уточнять, указывать и просматривать ее параметры.
  • Устанавливает действие События Мониторинга в каждом контексте, относящемся к контексту Device в Agent, чтобы показать все события, поступающие от Agent и принадлежащие к группе по умолчанию.
  • Синхронизирует значения переменных между кэшем сервера и Agent для каждого контекста, соответствующего контексту Device в Agent.
  • Точная структура коммуникаций между Agent и SberMobile Server во время синхронизации описана в Коммуникация между Agent и SberMobile Server.

    Дополнительные действия контекста device агента

    Контекст устройств, предоставляемый Агентом, может выполнять различные дполнительные действия. Большинство из них определяется пользовательским BASIC приложением Агента. Например, если Агент работает с некоторыми датчиками терминалов, подключенных к последовательным портам, возможно выполнение действия Обнаружения устройств, которое заставляет заново сканировать последовательные порты, находить подключенные устройства и обновлять список контекстов Device.

    Существуют два дополнительных действия контекста Device, предоставляемых Агентом:

    Конфигурация агента

    Данное действие конфигурации используется для конфигурации самого Агента, т.е. для установки параметров, определяющих, как Агент взаимодействует с подключенными к нему аппаратными устройствами, как он преобразовывает протокол данных устройств в Протокол передачи данных SberMobile, и какие переменные, функции и события предоставляются агентом в контексты <%dt%, относящиеся к данным устройствам.

    Перезагрузка агента

    Данное действие перезагружает программируемый модуль, запускающий BASIC приложение агента. Технически это действие вызова функции, которое вызывает функцию перезагрузки из корневого контекста Агента.

    Обнаружение агента

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

    Сегмент локальной сети означает, что между ПК и всеми остальными устройствами данного сегмента установлены только сетевые концентраторы (нет роутеров, мостов, брандмауэров и т.п.)

    Аппаратные Агенты, расположенные "позади" роутера (т.е. в случае, когда для обнаружения Агента пакеты, отправленные из SberMobile Server, должны пройти через роутер) не могут быть обнаружены автоматически SberMobile Server, потому что широковещательные дэйтаграммы протокола UDР, используемые для их обнаружения в сети, не трансилруются роутером. Однако иногда все-таки возможно подключить такие Агенты к SberMobile Server, если они будут доступны через их IP адреса (иными словами, если имеется сетевой маршрут).

    Каждый обнаруженный Агент идентифицируется МАС-адресом. Обнаружение определит все местные Агенты, даже если некоторые из них имеют одинаковый IP адрес или же неправильный или недоступный IP адрес. Для доступа SberMobile Server к Агентам в режиме обнаружения не требуется наличие корректного IP адреса.

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

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

    Обнаружение может быть начато при выполнении одного их двух действий Обнаружения:

    • Обнаружение Агентов
    • Обнаружение Агентов и Автоподключение

    Подключение внешних агентов к SberMobile Server

    Подключение внешних Агентов к SberMobile Server представляет собой процесс реконфигурации аппаратного Агента для немедленного его подключения к SberMobile Server после запуска. Существует несколько способов:

  • Подключение ранее обнаруженного Агента, используя его учетную запись.
  • Автоматическое подключение всех обнаруженных Агентов к SberMobile Server без взаимодействия с пользователем.
  • Конфигурация вручную обнаруженных Агентов, подключенных неверно в результате выполнения выше перечисленных функций.
  • Подключение вручную Агента, который не был определен в процессе обнаружения, но может быть доступен через SberMobile Server.
  • Подключение ранее обнаруженного агента к

    SberMobile Server

    Данная процедура запускается действием Подключить Агент к SberMobile Server контекста Агента.

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

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

    Автоматическое подключение обнаруженного агента к SberMobile Server

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

    Автоподключение не выполняется, если:

    • Агент запрашивает пароль для доступа к настройкам, либо
    • Агент уже настроен на подключение к SberMobile Server при запуске, либо
    • Программное обеспечение Агента не поддерживает автоподключение.