Контексты агента

Эта секция описывает специфичные для Agent переменные, функции и события доступные в контексте, предоставляемом Agent.

Открытые переменные (свойства)

Дата

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

Имя переменной:

date

Записи:

1

Доступность:

корневой контекст

Формат записи:

Имя поля

Описание поля

Тип поля

Примечания

date

Значение часов реального времени платы программируемого контроллера или ПК с запущенным на нем Агентом.

Дата


Время модификации

Эта переменная содержит метки времени последней модификации для каждой из настроек устройства (переменной) в контексте устройства Agent. Эти метки обычно хранятся в EEPROM для сохранения состояния синхронизации между перезагрузками устройства.

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

В некоторых случаях Agent может не поддерживать отметки времени для некоторых или всех настроек устройства. В таких случаях переменная modtime не должна содержать метки времени для них или метки времени должны быть установлены в NULL.

Имя переменной:

date

Записи:

0...неограничено

Доступность:

Контекст устройства

Формат записи:

Имя поля

Описание поля

Тип поля

Примечания

variable

Имя настройки устройства

Строка


modtime

Дата/время последнего изменения значения этой переменной.

Дата

Может быть равно Null

Открытые функции

[?]

Синхронизировано

Сообщает Агенту, что синхронизация с SberMobile Server завершена, и он может начать отправку событий.

Имя функции:

synchronized

Входные записи:

0

Формат ввода:

нет

Выходные записи:

0

Формат вывода:

нет

Подтвердить событие

Если эта функция определяется Агентом, SberMobile Server вызывает её каждый раз при её получении и успешной обработке несистемного события.

Имя функции:

confirmEvent

Записи ввода:

1

Формат ввода:

Имя

Тип

Описание

id

Длинное

Идентификатор Агента - сгенерированное событие, которое было успешно получено, сохранено и обработано сервером

Записи вывода:

0

Формат вывода:

нет

Получить историю

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

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

Имя функции:

getHistory

Записи ввода:

0

Формат ввода:

нет

Записи вывода:

0... не ограничено

Формат вывода:

Имя

Тип

Описание

variable

Строка

Имя переменной, чьё историческое значение представлено записью.

timestamp

Дата

Временная метка исторического значения, т.е. дата/время, когда оно было получено или сгенерировано самим Агентом.

value

Таблица данных

Историческое значение переменной.