Tokens API
Содержание
- 1 System Tokens
- 1.1 Получить время
- 1.2 Получить дату
- 1.3 Получить GPS координаты и параметры
- 1.4 Получить данные с компаса
- 1.5 Получить данные с акселерометра
- 1.6 Получить данные с гироскопа
- 1.7 Получить данные о дисплее устройства
- 1.8 Информация о сетях
- 1.9 Получить информацию о батарее
- 1.10 Громкость на устройстве
- 1.11 Датчик приближения на устройстве
- 1.12 Вибрация на устройстве
- 1.13 Состояние режима обновления
- 1.14 Название операционной системы
- 1.15 Вид управляющего устройства
- 1.16 Версия операционной системы
- 1.17 Имя управляющего устройства
- 1.18 Ориентация управляющего устройства
- 2 Project Tokens
- 3 ЗАГРУЗИТЬ: Пример проекта
System Tokens
System Token - системный токен. Возвращает значение системных параметров управляющей панели (время, дата, координаты GPS, ...). Токен можно привязать к любому графическому элементу интерфейса, и он будет выводить в него полученную от системы информацию. В системный токен нельзя записать значение из интерфейса, данные в него вносит только система.
Для того, чтобы привязать системный токен к графическому элементу, используйте метод Drag&Drop. Альтернативный способ привязки токена к элементу - через скрипт.
Назначение системных токенов с примером вызова из скрипта:
Получить время
- "System.Time.Seconds" - системное время, секунды
IR.GetVariable("System.Time.Seconds")
- "System.Time.Minutes" - системное время, минуты
IR.GetVariable("System.Time.Minutes")
- "System.Time.Hour" - системное время, часы
IR.GetVariable("System.Time.Hour")
- "System.Time.24" - системное время в 24-часовом формате
IR.GetVariable("System.Time.24")
- "System.Time.12_AM_PM" - системное время в 12-часовом формате
IR.GetVariable("System.Time.12_AM_PM")
- "System.Time.Standart" - системное время в формате, установленном для ОС
IR.GetVariable("System.Time.Standart")
IR.AddListener(IR.EVENT_START, 0, function()
{
var time = IR.GetVariable("System.Time.Seconds");
IR.Log(time);
});
Получить дату
- "System.Date.DayOfYear" - системная дата, день года
IR.GetVariable("System.Date.DayOfYear")
- "System.Date.Year" - системная дата, текущий год
IR.GetVariable("System.Date.Year")
- "System.Date.DayOfWeek" - системная дата, день недели
IR.GetVariable("System.Date.DayOfWeek")
- "System.Date.Month" - системная дата, текущий месяц
IR.GetVariable("System.Date.Month")
- "System.Date.Day" - системная дата, текущий день месяца
IR.GetVariable("System.Date.Day")
- "System.Date.YYYY_MM_DD" - системная дата в формате ГГГГ_ММ_ДД (цифровой вид)
IR.GetVariable("System.Date.YYYY_MM_DD")
- "System.Date.DD_MONTH_YYYY" - системная дата в формате ДД_МЕСЯЦ_ГГГГ (цифро-буквенный вид)
IR.GetVariable("System.Date.DD_MONTH_YYYY"")
- "System.Date.MONTH_DD_YYYY" - системная дата в формате МЕСЯЦ_ДД_ГГГГ (цифро-буквенный вид)
IR.GetVariable("System.Date.MONTH_DD_YYYY")
- "System.Date.DD_MM_YYYY" - системная дата в формате ДД_ММ_ГГГГ (цифровой вид)
IR.GetVariable("System.Date.DD_MM_YYYY")
- "System.Date.MM_DD_YYYY" - системная дата в формате ММ_ДД_ГГГГ (цифровой вид)
IR.GetVariable("System.Date.MM_DD_YYYY")
- "System.Date.DD_MM" - системная дата в формате ДД_ММ (цифровой вид)
IR.GetVariable("System.Date.DD_MM")
- "System.Date.MM_DD" - системная дата в формате ММ_ДД (цифровой вид)
IR.GetVariable("System.Date.MM_DD")
- "System.Date.Weekday" - системная дата, день недели (цифровой вид)
IR.GetVariable("System.Date.Weekday")
IR.AddListener(IR.EVENT_START, 0, function()
{
var date = IR.GetVariable("System.Date.Year");
IR.Log(date);
});
Получить GPS координаты и параметры
- "System.Location.Course" - курс
IR.GetVariable("System.Location.Course")
- "System.Location.Speed" - скорость
IR.GetVariable("System.Location.Speed")
- "System.Location.Altitude" - высота
IR.GetVariable("System.Location.Altitude")
- "System.Location.Longitude" - долгота
IR.GetVariable("System.Location.Longitude")
- "System.Location.Latitude" - широта
IR.GetVariable("System.Location.Latitude")
IR.AddListener(IR.EVENT_START, 0, function()
{
var GPS = IR.GetVariable("System.Location.Course");
IR.Log(GPS);
});
Получить данные с компаса
- "System.Magnetic.Accuracy" - точность показаний (степень намагниченности)
IR.GetVariable("System.Magnetic.Accuarcy")
- "System.Magnetic.True" - истинный север
IR.GetVariable("System.Magnetic.True")
- "System.Magnetic.Heading" - магнитный север
IR.GetVariable("System.Magnetic.Heading")
- "System.Magnetic.Z" - координата по Z
IR.GetVariable("System.Magnetic.Z")
- "System.Magnetic.Y" - координата по Y
IR.GetVariable("System.Magnetic.Y")
- "System.Magnetic.X" - координата по X
IR.GetVariable("System.Magnetic.X")
IR.AddListener(IR.EVENT_START, 0, function()
{
var compass = IR.GetVariable("System.Magnetic.Accuarcy");
IR.Log(compass);
});
Получить данные с акселерометра
- "System.Accelerometer.Shake" - встряхивание
IR.GetVariable("System.Accelerometer.Shake")
- "System.Accelerometer.Z" - координата по Z
IR.GetVariable("System.Accelerometer.Z")
- "System.Accelerometer.Y" - координата по Y
IR.GetVariable("System.Accelerometer.Y")
- "System.Accelerometer.X" - координата по X
IR.GetVariable("System.Accelerometer.X")
IR.AddListener(IR.EVENT_START, 0, function()
{
var Accelerometer = IR.GetVariable("System.Accelerometer.Shake");
IR.Log(Accelerometer);
});
Получить данные с гироскопа
- "System.Gyroscope.Z" - координата по Z
IR.GetVariable("System.Gyroscope.Z")
- "System.Gyroscope.Y" - координата по Y
IR.GetVariable("System.Gyroscope.Y")
- "System.Gyroscope.X" - координата по X
IR.GetVariable("System.Gyroscope.X")
IR.AddListener(IR.EVENT_START, 0, function()
{
var Gyroscope = IR.GetVariable("System.Gyroscope.Z");
IR.Log(Gyroscope);
});
Получить данные о дисплее устройства
- "System.Display.FullScreen" - полноэкранный режим работы
IR.GetVariable("System.Display.FullScreen")
- "System.Display.Height" - высота дисплея
IR.GetVariable("System.Display.Height")
- "System.Display.Width" - ширина дисплея
IR.GetVariable("System.Display.Width")
- "System.Display.Bright" - яркость дисплея (только для iOS)
IR.GetVariable("System.Display.Bright")
IR.SetVariable("System.Display.Bright", 80) //изменить яркость (не работает в фоновом режиме)
- "System.ViewOrientation" - ориентация дисплея
IR.GetVariable("System.ViewOrientation")
Выходные значения ориентации дисплея:
- 1 - вертикально, кнопка Home сверху
- 2 - вертикально, кнопка Home снизу
- 3 - горизонтально, кнопка Home слева (по-умолчанию)
- 4 - горизонтально, кнопка Home справа
IR.AddListener(IR.EVENT_START, 0, function()
{
var Display = IR.GetVariable("System.Display.FullScreen");
IR.Log(Display);
});
Информация о сетях
Имя переменной:
- "System.Net.Cell" - статус подключения к 3G / 4G сетям
- "System.Net.WiFi" - статус подключения к Wi-Fi сети
Синтаксис чтения:
- IR.GetVariable("System.Net.Cell")
- IR.GetVariable("System.Net.WiFi")
Пример чтения:
var Cell = IR.GetVariable("System.Net.Cell");
var WiFi= IR.GetVariable("System.Net.WiFi");
IR.Log("Cell:" + Cell + " / Wi-Fi:" + WiFi);
Значения на выходе:
- true - есть подключение
- false - нет подключения
Подробнее о SetParametters
Получить информацию о батарее
- "System.Battery.Level" - уровень заряда батареи
IR.GetVariable("System.Battery.Level")
- "System.Battery.Status" - статус батареи ()
IR.GetVariable("System.Battery.Status")
IR.AddListener(IR.EVENT_START, 0, function()
{
var Battery = IR.GetVariable("System.Battery.Level");
IR.Log(Battery);
});
Выходные значения:
- 1 - не заряжается
- 2 - заряжается
- 3 - максимальная зарядка (для iOS)
Громкость на устройстве
- "System.Sound.Volume" - значение громкости
IR.GetVariable("System.Sound.Volume")
- "System.Sound.Mute" - беззвучный режим
IR.GetVariable("System.Sound.Mute")
IR.AddListener(IR.EVENT_START, 0, function()
{
var Sound = IR.GetVariable("System.Sound.Volume");
IR.Log(Sound);
});
Датчик приближения на устройстве
- "System.Proximity" - датчик приближения
Синтаксис:
IR.GetVariable("System.Proximity")
Пример использования:
IR.AddListener(IR.EVENT_START, 0, function()
{
// Получаем состояние наличие датчика приближения
var Proximity = IR.GetVariable("System.Proximity");
// Выводим в консоль отладки
IR.Log(Proximity);
});
Значения на выходе:
- false (0) - датчик не задействован
- true (1) - датчик сработал
Вибрация на устройстве
- "System.Vibro" - заставляет устройство вибрировать
Синтаксис:
IR.SetVariable("System.Vibro",1) // Принудить вибрировать (только для iOS и Android)
Состояние режима обновления
"System.Update" - системная переменная, хранящая состояние режима обновления проектов. При использовании функции получения значения IR.GetVariable, возвращает число false (0) или true (1).
- false (0) - режим обновления проектов выключен.
- true (1) - режим обновления проектов включен.
IR.AddListener(IR.EVENT_START, 0, function()
{
// Получаем состояние режима обновления
var UpdateState = IR.GetVariable("System.Update");
// Выводим в консоль отладки
IR.Log(UpdateState);
});
Системная переменная "System.Update" доступна для записи - вы можете использовать функцию IR.SetVariable для изменения режима обновления проектов. Благодаря этому вы можете включать или выключать режим обновления, в любой момент работы проекта.
- Что бы отключить обновление проекта, следует записать число 0 или логическое значение false в системную переменную System.Update, пример: IR.SetVariable("System.Update", false);
- Что бы включить обновление проекта, следует записать число 1 или логическое значение true в системную переменную System.Update, пример: IR.SetVariable("System.Update", true);
Также переменная "System.Update" доступная для чтения, прочитать об этом вы можете здесь.
IR.AddListener(IR.EVENT_START, 0, function()
{
// Включим режима обновления
IR.SetVariable("System.Update", true);
// Выключим режима обновления
IR.SetVariable("System.Update", false);
});
Название операционной системы
"System.OS.Name" - cистемная переменная, возвращает имя ОС на которой в текущий момент запущен клиент iRidium.
Синтаксис:
IR.GetVariable("System.OS.Name");
Выходные значения:
- Windows
- MacOSX
- iOS
- Android
Пример использования:
IR.AddListener(IR.EVENT_START, 0, function()
{
// Запись значения ОС в переменную OS
var OS = IR.GetVariable("System.OS.Name");
// Вывод переменной OS в консоль отладки
IR.Log(OS);
});
Вид управляющего устройства
"System.OS.Device" - системная переменная, возвращает специальный идентификатор версии ОС на которой в текущий момент запущен клиент iRidium.
Синтаксис:
IR.AddListener(IR.EVENT_START, 0, function()
{
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
- При использовании на iOS
- 1 - iPhone
- 2 - iPad
- При использовании на Android
- 1 - Phone
- 2 - Tablet
Пример использования:
IR.AddListener(IR.EVENT_START, 0, function()
{
// Запись идентификатор версии ОС в переменную Device
var Device = IR.GetVariable("System.OS.Device");
// Вывод переменной Device в консоль отладки
IR.Log(Device);
});
Версия операционной системы
"System.OS.Version" - системная переменная, возвращает версию ОС. На данный момент не реализована.
Синтаксис:
IR.GetVariable("System.OS.Version");
Имя управляющего устройства
"System.Device.Name" - системная переменная, возвращает сетевое имя управляющего устройства, на котором запущено приложение i2 Control.
Синтаксис:
IR.GetVariable("System.Device.Name");
Ориентация управляющего устройства
"System.Device.Orientation" - системная переменная, возвращает ориентацию устройства, на котором запущенно приложение i2 Control.
Синтаксис:
IR.GetVariable("System.Orientation");
Выходные значения:
- 1 - вертикально, кнопка Home/Menu внизу экрана
- 2 - вертикально, кнопка Home/Menu вверху экрана
- 3 - горизонтально, кнопка Home/Menu справа экрана
- 4 - горизонтально, кнопка Home/Menu слева экрана
- 5 - горизонтально, экраном вверх
- 6 - горизонтально, экраном вниз
- 0 - в процессе смены положения
Пример использования:
IR.AddListener(IR.EVENT_START, 0, function()
{
// Получаем состояние ориентации
var Orientation = IR.GetVariable("System.Orientation");
// Вывод переменной Orientation в консоль отладки
IR.Log(Orientation);
});
Project Tokens
Project Tokens - токены (переменные) проекта. Переменная может хранить данные, которые будут доступны для записи и чтения. Записать данные в токен или прочитать их может графический элемент, драйвер или скрипт.
- Переменные хранятся в Дереве устройств проекта (Project Device Panel)
- В переменную можно записать число или строку (DEC или ASCII).
- Их можно создавать, удалять, делать копии, сортировать между собой и группировать по папкам.
- Данные в переменных можно сохранять (или не сохранять) после закрытия приложения iRidium.
- Записать данные в переменную можно командой с элемента или из iRidium Script
Запись значений в Project Tokens
Функция IR.SetVariable используется для записи любого значения в любой Project Token.
IR.SetVariable("Tokens.TokenName",Value), где
- TokenName - имя любого токена находящегося в папке Project Tokens в панели Project Device Panel
- Value - любое значение (число, строка, массив чисел, массив строк).
Пример:
IR.AddListener(IR.EVENT_START, 0, function()
{
// Запись числа 23 в токен проекта c именем test
IR.SetVariable("Tokens.test",23);
// Вывод в консоль отладки значение токена проекта c именем test
IR.Log(IR.GetVariable("Tokens.test"));
});
Чтение значений из Project Tokens
Функция IR.SetVariable используется для записи любого значения в любой Project Token.
IR.GetVariable("Tokens.TokenName"), где
- TokenName - имя любого токена находящегося в папке Project Tokens в панели Project Device Panel
Пример:
IR.Log(IR.GetVariable("Tokens.test_token"));
Запись массивов в Projects Token и их извлечение
Одномерный массив
var Value_Buttons = [0,0];
function LoadData(){
Value_Buttons = IR.GetVariable("Global.Data").split(",");
IR.Log(Value_Buttons)
}
function SaveData(){
IR.SetVariable("Global.Data", Value_Buttons);
IR.Log(Value_Buttons);
}
SaveData();
LoadData();
Двумерный массив
var Value_Buttons = [[0,0],[1,1]];
function LoadData(){
var data = IR.GetVariable("Global.Data");
data = data.split(";");
for(var i = 0; i < data.length; i++)
Value_Buttons[i] = data[i].split(",");
IR.Log(Value_Buttons)
}
function SaveData(){
var data = "";
for(var i = 0; i < Value_Buttons.length; i++)
data += Value_Buttons[i] + ";";
IR.SetVariable("Global.Data", data);
IR.Log(data);
}
SaveData();
LoadData();
Трехмерный массив
var Value_Buttons = [[[0,0],[1,1]],[[2,2],[3,3]]];
function LoadData(){
var data_1 = IR.GetVariable("Global.Data");
var data_2 = [];
data_1 = data_1.split(":");
for(var i = 0; i < data_1.length; i++){
data_2[i] = data_1[i].split(";");
for(var j = 0; j < data_2[i].length; j++)
Value_Buttons[i][j] = data_2[i][j].split(",");
}
IR.Log(Value_Buttons);
}
function SaveData(){
var data = "";
for(var i = 0; i < Value_Buttons.length; i++){
for(var j = 0; j < Value_Buttons[i].length; j++){
data += Value_Buttons[i][j];
if(j < Value_Buttons[i].length -1)
data += ";"
}
if(i < Value_Buttons.length -1)
data += ":";
}
IR.SetVariable("Global.Data", data);
IR.Log(data);
}
SaveData();
LoadData();

