Welcome!

On this forum you can discuss iRidium with other users. iRidium consist of 2 main components - i3 pro app and iRidium Server. Please post here your questions, ideas or errors you find.

Please send your questions to support team as a private messages.


Please subscribe to the Change Log to know our news

0
Lance 3 months ago in iRidium Script • updated 3 months ago 0

Script helper incorrectly adds the word 'Drivers' instead of the word 'Server' when inserting the script helper commands if you are using the 'drivers' tab. It doesn't seem to work both ways and it must be 'Server'.


Seems like it wouldn't be a tough fix and would help newcomers to remove the 'drivers tab. I simply haven't found a reason for the drivers category but to cause me confusion.


0
Answered
SmartMike 3 months ago in iRidium Script • updated by Ekaterina (head of support) 3 months ago 1

День добрый, подскажите пожалуйста среди системных токенов нашел почти все датчики Ipad http://dev.iridiummobile.net/Tokens_API/ru кроме самого нужного мне - датчика освещенности, подскажите пожалуйста как можно реализовать механизм отключения подсветки панели в зависимости от наличия\остутствия освещения в помещении(используя встроенные механизмы Ipad) например анализируя изображение с камеры? И если это невозможно просьба пояснить по какой причине. Спасибо.

0
Waiting for user's reply
Martin Sundström 3 months ago in iRidium Script • updated 1 month ago 12

I am trying to read the event from a 4bit dimming feedback channel and cannot get anything to show in the log. I am using the following code to catch all events and write them to the log:


IR.AddListener(IR.EVENT_TAG_CHANGE, IR.GetDevice("KNX Router (KNXnet/IP)"), function(name, value)
{
IR.Log(name+":"+value) // output the tag name and its new value in the log

}


It works well for events from other types, KNX touch buttons, temperature from sensors etc. But when I send a 4bit dimming event from either a touch button or through ETS4 I get nothing. Should I use another type of event to catch that specific value or should IR.EVENT_TAG_CHANGE work?


Thanks!



0
Not a bug
AlexDr 4 months ago in iRidium Script • updated by Aleksandr Romanov (CTO) 4 months ago 6

Сделал тестовый проект. Почему то после поочередного запуска через скрипт больше одного звука функцией IR.PlaySound() при закрытии эмулятора возникает исключение.


В рабочем проекте такое исключение возникает если запустить из скрипта проигрывание звука сразу после запуска клиента (эмулятора).


Объясните почему в тестовом проекте не проигрывается звук по кнопке Sound 3, если перед ней нажать Sound 2?


Завтра отпишусь как ведет себя проект со звуками на iPad.


тестовый проект

0
Answered
Marco Tanis 4 months ago in iRidium Script • updated 4 months ago 9

Hello,


I want to execute an command when one of my server tags changes, so i tried using IR.GetServer but that doesn't work i get a syntaxerror


here an example:


IR.AddListener(IR.EVENT_TAG_CHANGE, IR.GetServer(), function(name, value){
if(name == "test" && value == 0)
{
testoff();
}
else if(name == "test" && value == 1)

{
teston();
}

});

function testoff()

{
IR.GetDevice("KNX").Set("address1", 0);

IR.GetDevice("KNX").Set("address1", 0);
}


function teston()

{
IR.GetDevice("KNX").Set("address1", 1);
IR.GetDevice("KNX").Set("address1", 1);
}


does anyone know whats wrong here, or maybe another solution?


Thanks,

Marco

0
Богдан Меленчук 4 months ago in iRidium Script • updated by Andrey S 4 months ago 1

Управляю камином planika,

function pl_start()

{
IR.GetDevice("planika").Send(['POST,,__SL_P_UBT=ButtonStart']);

}

При работе с эмулятора все супер работает, и при загрузке на панель перестает работать

0
Answered
Oleg Bubnov 4 months ago in iRidium Script • updated by Aleksandr Romanov (CTO) 4 months ago 4

Создаю список методом IR.ITEM_LISTBOX, заполняю его кнопками - выключателями релюх на AMX. Мне нужно при создании списка проверить какие реле включены и включить кнопки в списке. Как это правильно сделать? Я пытался изменять свойство Value у создаваемых кнопок (по аналогии с Text и Image), но генерируется ошибка. А как создать и поставить ссылку на кнопку в глобальный слушатель, не могу понять. Помогите, пожалуйста. Вот мой код:

var testPopup = "Баня";
var Switches = ["Вход","Душ","Пещера Потолок","Купель Патио","Купель Щит и Люстра","Батареи и Потолок","Пещера Люстра"];

IR.SetGlobalListener(IR.EVENT_GLOBAL_TAG_CHANGE, function(name, value)
{
IR.Log("Global Listener Activated: " + name + "\tValue: " + value);
//Как получить сюда ссылку на кнопку из списка и присвоить ее полю Value значение Value слушателя?
});

// оформляем подписку на изменения каналов драйвера
for (var i = 0; i < Switches.length; i++) {
IR.SubscribeTagChange("Drivers.amx."+Switches[i]);
};
IR.AddListener(IR.EVENT_START,0,function()
{
MakePanelID();
InitController();
NewPopup (testPopup);
IR.ShowPopup(testPopup)

// Создаем список и заполняем его
IR.GetItem(testPopup).CreateItem(IR.ITEM_LISTBOX,"Выключатели",0,0,750,1344);
test_list = IR.GetItem(testPopup).GetItem("Выключатели");
test_list.Template = "Шаблон Списка Выключателей";
for (var i = 0; i < Switches.length; i++) {
// или как здесь получить и указать значение GetFeedback из канала, соответствующего кнопке
test_list.CreateItem(i, 1,{Text: Switches[i]});

};

//При изменении выключателя, включаем или выключаем кнопку в AMX
IR.AddListener(IR.EVENT_LIST_ITEM_CHANGE, test_list, function(Item, Subitem, TypeEvent, object){
var tempnum = TypeEvent;
if(tempnum==12) {
amx.Set(Switches[Item],1);
amx.Set(Switches[Item],0);
Log(amx.GetFeedback(Switches[Item]));
object.Value = !amx.GetFeedback(Switches[Item]);

};
});
});

0
Answered
Oleg Bubnov 4 months ago in iRidium Script • updated 3 months ago 2

Можно ли обратиться в скрипте к загруженной в глобальную галерею картинке? Глобальная галерея позволяет удобно загружать и хранить картинки, но, как я понимаю, они не загружаются в проект а попадают в папку Studio/gallery.

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

И такой дикий слегка вопрос - можно ли редактировать картинки, которые уже в архиве проекта? То есть прям дергать из архива в ФШ и потом обратно паковать по месту.

Порекомендуйте, пожалуйста, как мне изящно действовать в случае, если я хочу назначать картинки на кнопки в скрипте.

0
Answered
Oleg Bubnov 4 months ago in iRidium Script • updated by Andrey S 4 months ago 2

Возможно ли создавать каналы AMX в скрипте? У меня есть название кнопки и я от него исхожу, когда скриптом создаю кнопку и загружаю на нее картинку. Потом в редакторе создаю канал и фидбек ручками и потом уже прописываю их кнопке скриптом. Хотелось бы автоматически создавать всё, исходя лишь из массива названий кнопок. Хотя бы, чтобы избежать ошибок в названиях при создании 400+ каналов и фидбеков. Есть ли какие-то best practices для подобных случаев? В руководстве есть отсылка к функциям .AddChanel и .AddTag… можно ли получить к ним какой-нибудь доступ для бета-тестера, если для АМХ есть какая-то реализация?

0
Answered
AlexDr 5 months ago in iRidium Script • updated by S1210 4 months ago 12

Как можно передать в скрипт имя элемента по которому был произведен клик?

Хотелось бы чтоб это был один из параметров передаваемых в вызываемой функции. Сейчас похоже там вообще никакие параметры не передаются и не используются.


Я пробовал делать так:


Обрабатывая в скрипте тег проекта UnderItemNameShowPopUp - он имел значение undefended.


и еще, подскажите где почитать что именно можно передать в переменную используя выделенные (да и некоторые не выделенные тоже) свойства элемента UI: