Эта страница является
переводом страницы
Tokens API. Перевод выполнен на 100%.
API iRidium. Управление тегами
методы для чтения и записи любых тегов различных объектов в проекте iRidium: System Tokens, Project Tokens, Driver Tokens, Driver Feedbacks, GUI Properties
С помощью методов IR.SetVariable и IR.GetVariable вы можете обратиться к свойствам любой сущности проекта iRidium: системная переменная (System Tokens), пользовательская переменная (Project Tokens) , тег драйвера (Driver Tokens, Driver Feedbacks), элемент графического интерфейса.
Для обращения к тегу, необходимо указать в запросе его полное имя:
System Tokens
IR.GetVariable("System.name") - системные переменные. Хранят значения параметров панели управления: время, дата, координаты GPS, и др.
Токен можно привязать к графическому элементу и элемент будет выводить полученную от системы информацию. Значение токена можно передать в скрипт.
Большая часть системных токенов доступна только для чтения: см. список, но часть можно и записывать: см. список
Project Tokens
IR.GetVariable("Tokens.name") - пользовательские переменные. Переменная хранит данные, которые будут доступны для записи и чтения. Записать данные в токен или прочитать их может графический элемент или скрипт.
- Переменные хранятся в Project Device Panel
- В переменную можно записать число или строку (DEC или ASCII).
- Их можно создавать, удалять, делать копии, сортировать между собой и группировать по папкам.
- Данные в переменных можно сохранять (или не сохранять) после закрытия приложения iRidium.
- Записать данные в переменную можно командой с элемента или из iRidium Script
Driver Tokens
IR.GetVariable("Drivers.Driver name.Online") - состояние драйвера, доступно только для чтения, см. список
Driver Feedbacks
IR.GetVariable("Drivers.Driver name.Channel name") - состояние канала обратной связи драйвера, имя канала отображается в списке Feedbacks. Можно читать и записывать
Свойство страницы или элемента
IR.GetVariable("UI.Page 1.Item 1.Text") - свойство страницы, попапа или графического элемента. Можно читать и записывать
Теги сервера в iRidum Server
IR.GetVariable("Server.Tags.Virtual Tag 1") / IR.GetVariable("Server.Tags.Driver.Tag 1") - в проекте iRidium Server позволяет обратиться к пользовательским переменным и каналам обратной связи драйверов, созданным на сервере.
IR.SetVariable
записать значение в переменную System Token
Синтаксис
IR.SetVariable("path.name", value)
| на входе
|
значение
|
описание
|
| path
|
Tokens
|
type: String указывает путь к переменной и ее тип:
- System - System Tokens
- Tokens - Project Tokens
- Drivers.<driver name> - Driver Tokens, Driver Feedbacks
- UI.<page name> - Page (Popup) tags
- UI.<page name>.<item name> - Item tags
- Server.Tags - переменная сервера (Virtual Tags, Driver Tags)
|
| name
|
Update
|
type: String имя переменной
|
| value
|
100
|
type: string, number значение для записи
|
| успешность
|
true
|
type: boolean успешность записи
|
Пример
IR.AddListener(IR.EVENT_START, 0, function()
{
// System Tokens
IR.SetVariable("System.Update", false);
// Project Tokens
IR.SetVariable("Tokens.My Var", 100);
IR.SetVariable("Tokens.Str 1", "data string");
//Driver Tokens
IR.SetVariable("Drivers.AV & Custom Systems (TCP).Feedback 1", "My string");
// GUI Tags
IR.SetVariable("UI.Page 1.Text", "Hello World!");
IR.SetVariable("UI.Page 1.Item 1.Value", 100);
// Server Tags (in iRidium Server only)
IR.SetVariable("Server.Tags.Virtual 1", 0);
IR.SetVariable("Server.Tags.AV & Custom Systems (TCP).Feedback 1", 100);
});
алиас для Project Token: IR.SetVariable("Global.name", value)
вызов метода IR.SetVariable для Project Token создаст пользовательскую переменную с указанным именем, если она не была создана заранее
метод нельзя использовать для передачи данных с панели на сервер через Feedback
IR.GetVariable
запросить состояние переменной
Синтаксис
IR.GetVariable("path.name")
| на входе
|
значение
|
описание
|
| path
|
Tokens
|
type: String указывает путь к переменной и ее тип:
- System - System Tokens
- Tokens - Project Tokens
- Drivers.<driver name> - Driver Tokens
- UI.<page name> - Page (Popup) tags
- UI.<page name>.<item name> - Item tags
|
| name
|
Update
|
type: String имя переменной
|
| значение
|
true
|
type: string, number значение переменной
|
Пример
IR.AddListener(IR.EVENT_START, 0, function()
{
// System Tokens
var tag1 = IR.GetVariable("System.Update");
// Project Tokens
var tag2 = IR.GetVariable("Tokens.My Var 1");
// Driver Tokens
var tag3 = IR.GetVariable("Drivers.AV & Custom Systems (TCP).Online");
var tag4 = IR.GetVariable("Drivers.AV & Custom Systems (TCP).Channel 1");
// GUI Tags
var tag5 = IR.GetVariable("UI.Page 1.Text");
var tag6 = IR.GetVariable("UI.Page 1.Item 1.Value");
// Server Tags (in iRidium Server only)
var tag7 = IR.GetVariable("Server.Tags.Virtual 1");
var tag8 = IR.GetVariable("Server.Tags.AV & Custom Systems (TCP).Feedback 1");
});
алиас для Project Token: IR.GetVariable("Global.name")
IR.SaveConfig
It enables saving the token using the script method when closing the project.
Синтаксис
IR.SaveConfig()
| на входе
|
значение
|
описание
|
| success
|
true
|
type: boolean true
|
Пример
IR.AddListener(IR.EVENT_START,0,function()
{
IR.SetInterval(10000, save); //The "save" function runs every 10 seconds.
})
function add() { //Function to activate writing to a token.
var val = IR.GetVariable("Global.test");
val++;
IR.SetVariable("Global.test", val);
IR.SetVariable("Global.test1", val);
IR.SetVariable("Global.test2", val);
IR.SetVariable("Global.test3", val);
IR.SetVariable("Global.test4", val);
}
function save(){ //It enables saving tokens.
IR.SaveConfig();
}
IR.ClearProjectTokens
It resets project token values to default values.
Синтаксис
IR.ClearProjectTokens()
| на входе
|
значение
|
описание
|
| success
|
true
|
type: boolean true
|
Пример
IR.AddListener(IR.EVENT_START, 0, function () {
IR.ClearProjectTokens();
});
If the token does not have a default value, it will not be cleared.
System Tokens: чтение и запись
Системные переменные доступны для чтения (некоторые и для записи) только на панелях управления. iRidium Server не дает возможности получить состояние системы с помощью токенов.
Список системных переменных, доступных на чтение и запись:
Режим обновления проектов
IR.SetVariable("System.Update", true);
IR.GetVariable("System.Update");
- false - обновление проектов выключено
- true - обновление проектов включено
Дисплей устройства
яркость дисплея (управление тегом доступно только на iOS и Android):
IR.SetVariable("System.Display.Bright", 80);
IR.GetVariable("System.Display.Bright")
- 0...100 - яркость дисплея в процентах
полноэкранный режим работы
IR.GetVariable("System.Display.FullScreen")
высота дисплея
IR.GetVariable("System.Display.Height")
ширина дисплея
IR.GetVariable("System.Display.Width")
ориентация дисплея
IR.GetVariable("System.ViewOrientation")
- 1 - вертикально, кнопка Home сверху
- 2 - вертикально, кнопка Home снизу
- 3 - горизонтально, кнопка Home слева (по-умолчанию)
- 4 - горизонтально, кнопка Home справа
Вибрация
короткая вибрация (активирует вибро-мотор на короткое время), только для iOS и Android
IR.SetVariable("System.Vibro", 1.5);
- 1.5 - длительность короткой вибрации в секундах (для Android); в iOS длительность вибрации не регулируется, следует всегда устанавливать значение 1.
Скринсейвер
управление демонстрацией скринсейвера на всех ОС
// set
IR.SetVariable("System.Screensaver.Show", 1) // 1 - show, 0 - hide
// get
IR.GetVariable("System.Screensaver.Show") // 1 - showed, 0 - hided
Скринсейвер можно показать, только если тег "Screensaver.Enable" не равен нулю
- 0 - закрыть скринсейвер
- 1 - показать скринсейвер, доступно, только если задержка включения не равна нулю
// set
IR.SetVariable("System.Screensaver.Enable", 0) // disable screensaver
IR.SetVariable("System.Screensaver.Enable", 10000) // enable screensaver with interval of 10000 ms
// get
IR.GetVariable("System.Screensaver.Enable") // interval of scrrensaver in ms, 0 when disabled
Скринсейвер можно включить, если задержка > 0. Установка нулевой задержки выключает скринсейвер
- 0 - убрать задержку включения. При этом скринсейвер выключается
- 10000 - включить скринсейвер с указанной задержкой (мс)
System Tokens: только чтение
Системные переменные доступны для чтения (некоторые и для записи) только на панелях управления. iRidium Server не дает возможности получить состояние системы с помощью токенов.
Список системных переменных, доступных только на чтение:
Время
секунды
IR.GetVariable("System.Time.Seconds")
минуты
IR.GetVariable("System.Time.Minutes")
часы
IR.GetVariable("System.Time.Hour")
время в 24-часовом формате
IR.GetVariable("System.Time.24")
время в 12-часовом формате
IR.GetVariable("System.Time.12_AM_PM")
время в формате, установленном для ОС
IR.GetVariable("System.Time.Standart")
Теги сервера в iRidum Server
время восхода в в 24-часовом формате
IR.GetVariable("System.Time.SunRise")
время заката в в 24-часовом формате
IR.GetVariable("System.Time.SunSet")
Дата
день года
IR.GetVariable("System.Date.DayOfYear")
год
IR.GetVariable("System.Date.Year")
день недели (0 - воскресенье ... 6 - суббота)
IR.GetVariable("System.Date.DayOfWeek")
месяц
IR.GetVariable("System.Date.Month")
день месяца
IR.GetVariable("System.Date.Day")
дата в формате ГГГГ_ММ_ДД
IR.GetVariable("System.Date.YYYY_MM_DD")
дата в формате ДД_МЕСЯЦ_ГГГГ
IR.GetVariable("System.Date.DD_MONTH_YYYY"")
дата в формате МЕСЯЦ_ДД_ГГГГ
IR.GetVariable("System.Date.MONTH_DD_YYYY")
дата в формате ДД_ММ_ГГГГ
IR.GetVariable("System.Date.DD_MM_YYYY")
дата в формате ММ_ДД_ГГГГ
IR.GetVariable("System.Date.MM_DD_YYYY")
дата в формате ДД_ММ
IR.GetVariable("System.Date.DD_MM")
дата в формате ММ_ДД
IR.GetVariable("System.Date.MM_DD")
день недели
IR.GetVariable("System.Date.Weekday")
GPS координаты
курс
IR.GetVariable("System.Location.Course")
скорость
IR.GetVariable("System.Location.Speed")
высота
IR.GetVariable("System.Location.Altitude")
долгота
IR.GetVariable("System.Location.Longitude")
широта
IR.GetVariable("System.Location.Latitude")
Supported on iOS and Android only.
Компас
точность показаний (степень намагниченности)
IR.GetVariable("System.Magnetic.Accuarcy")
истинный север
IR.GetVariable("System.Magnetic.True")
магнитный север
IR.GetVariable("System.Magnetic.Heading")
координата по Z
IR.GetVariable("System.Magnetic.Z")
координата по Y
IR.GetVariable("System.Magnetic.Y")
координата по X
IR.GetVariable("System.Magnetic.X")
Supported on iOS and Android only.
Акселерометр
встряхивание
IR.GetVariable("System.Accelerometer.Shake")
координата по Z
IR.GetVariable("System.Accelerometer.Z")
координата по Y
IR.GetVariable("System.Accelerometer.Y")
координата по X
IR.GetVariable("System.Accelerometer.X")
Supported on iOS and Android only.
Гироскоп
координата по Z
IR.GetVariable("System.Gyroscope.Z")
координата по Y
IR.GetVariable("System.Gyroscope.Y")
координата по X
IR.GetVariable("System.Gyroscope.X")
Supported on iOS and Android only.
Сетевые подключения
статус подключения к 3G/4G сетям
IR.GetVariable("System.Net.Cell")
- true - есть подключение
- false - нет подключения
статус подключения к Wi-Fi сети
IR.GetVariable("System.Net.WiFi")
- true - есть подключение
- false - нет подключения
идентификатор Wi-Fi сети
IR.GetVariable("System.Net.SSID")
Батарея
Уровень заряда
IR.GetVariable("System.Battery.Level")
Статус батареи
IR.GetVariable("System.Battery.Status")
- 1 - не заряжается
- 2 - заряжается
- 3 - максимальная зарядка (для iOS)
Громкость
значение громкости
IR.GetVariable("System.Sound.Volume")
беззвучный режим
IR.GetVariable("System.Sound.Mute")
Датчик приближения
IR.GetVariable("System.Proximity")
- false - датчик не задействован
- true - датчик сработал
Название операционной системы
возвращает имя ОС, где запущен iRidium
IR.GetVariable("System.OS.Name");
- Microsoft windows
- Microsoft windows CE
- Apple OSX
- Apple iOS
- Android
Тип панели управления
идентификатор версии ОС где запущен iRidium
IR.GetVariable("System.OS.Device");
- при запуске на ОС Windows
- 1 - ОС Windows x86 32 / 64 bit
- при запуске на Mac OS X
- 1 - Mac OS X PPC
- 2 - Mac OS X X86 32 bit
- 3 - Mac OS X X86 64 bit
Версия операционной системы
* в разработке *
IR.GetVariable("System.OS.Version");
Имя панели управления
сетевое имя панели управления, где запущен iRidium
IR.GetVariable("System.Device.Name"); Starting with iOS 18, Apple has tightened the requirements for accessing the device name. Our application doesn't meet the new criteria, which may cause the token to return incorrect data or empty values on devices running iOS 18 and later.
Ориентация панели управления
IR.GetVariable("System.Orientation");
- 1 - вертикально, кнопка Home/Menu внизу экрана
- 2 - вертикально, кнопка Home/Menu вверху экрана
- 3 - горизонтально, кнопка Home/Menu справа экрана
- 4 - горизонтально, кнопка Home/Menu слева экрана
- 5 - горизонтально, экраном вверх
- 6 - горизонтально, экраном вниз
- 0 - в процессе смены положения
Driver Tokens
Переменные драйвера доступны только для чтения. Набор переменных одинаков для любого драйвера.
IR.AddListener(IR.EVENT_START, 0, function()
{
// Driver Tokens
var tag1 = IR.GetVariable("Drivers.AV & Custom Systems.Online"); // Online..Offline = 1..0
var tag2 = IR.GetVariable("Drivers.AV & Custom Systems.Status"); // Offline..Connecting..Online..Waiting = 0..1..2..3
var tag3 = IR.GetVariable("Drivers.AV & Custom Systems.Host"); // domain name of remote equipment
var tag4 = IR.GetVariable("Drivers.AV & Custom Systems.HostPort"); // port of remote device
var tag5 = IR.GetVariable("Drivers.AV & Custom Systems.IP"); // IP address of Control Panel
var tag6 = IR.GetVariable("Drivers.AV & Custom Systems.HostIP"); // IP address of remote equipment
var tag7 = IR.GetVariable("Drivers.AV & Custom Systems.Port"); // local port on Control Panel
});