Использование глобального слушателя

Глобальный слушатель используется для обработки приходящих данных (Tokens). То есть например, теперь для получения состояния Driver Token, Feedback, System Token, Project Token, а также теперь можно отслеживать состояния Элементов в проекте. Нужно подписаться всего лишь один раз, в дальнейшем он будет срабатывать при любых изменениях значения этого Feedback/Driver Token/System Token/Project Token.
Раньше, вам приходилось обрабатывать токены каждый раз, в разных функциях.Сейчас же требуется описать всего лишь единожды, чтобы данные постоянно приходили в тот или иной токен. Для примера, сейчас подписавшись, например, по старту к необходимым тегам, они будут отрабатывать всегда, при изменении их значения. Раньше, необходимо было вручную прописывать их в необходимых местах через GetVariable, каждый раз, когда нужно было вызвать. Еще большим отличием является то, что теперь можно отслеживать изменения элементов.

Опишем функцию, которая будет выводить в IR.Log данные от изменивших своё значения токенов.
IR.SetGlobalListener(IR.EVENT_GLOBAL_TAG_CHANGE, function(name, value)
{
IR.Log("Активирован глобальный слушатель: " + name + "\tЗначение: " + value);
});

Далее мы должно подписаться на тот или иной токен, чтобы система регистрировала его изменения.
Примеры:
IR.SubscribeTagChange("Drivers.AV & Custom Systems (TCP).Feedback"); Подписаться на Feedback драйвера.
IR.SubscribeTagChange("System.Time.Second"); Подписаться на системный токен отображения Секунд.
IR.SubscribeTagChange("Drivers.AV & Custom Systems (TCP).Online"); Подписаться на драйверный токен Online.
IR.SubscribeTagChange("Global.Log"); Подписаться на проектный токен.
IR.SubscribeTagChange("UI.Page 1.Item 1.Text"); Подписаться на изменения элемента

Так-же возможно отписаться от токенов, делается это следующим образом:
IR.UnsubscribeTagChange("Global.Log");

При использовании глобального слушателя в Серверных проектах необходимо поменять обращение к тегам следующим образом:

IR.SubscribeTagChange("Server.Tags.AV & Custom Systems (TCP).GlobalListener"); Подписаться на Feedback драйвера.
IR.SubscribeTagChange("System.Time.Second"); Подписаться на системный токен отображения Секунд.(пока не работает)
IR.SubscribeTagChange("Server.Tags.AV & Custom Systems (TCP).Online"); Подписаться на драйверный токен Online.
IR.SubscribeTagChange("Server.Tags.Loging"); Подписаться на проектный токен.

Так-же возможно отписаться от токенов, делается это следующим образом:
IR.UnsubscribeTagChange("Server.Tags.Loging");

!ГЛОБАЛЬНЫЙ СЛУШАТЕЛЬ СРАБАТЫВАЕТ ТОЛЬКО ПРИ ИЗМЕНЕНИИ ЗНАЧЕНИЯ!

Для более подробного ознакомления можно скачать следующие проекты.
Клиентская часть
Subscribe.rar

Dit artikel is nuttig voor 6 personen. Is dit artikel nuttig voor u?