Поделитесь своими идеями, пожеланиями и примерами в этом разделе. Идеи, за которые голосуют чаще всего, будут реализованы быстрее!

Мы перевели нашу службу поддержки на новую систему технической поддержки. С 17.01.2022 мы отключили возможность создавать обращения через личный кабинет userecho. Теперь все запросы обрабатываются по почте на support@iridi.com .

Спасибо вам за ваше понимание и хорошего дня.

0
Отвечен

Циклическое повторение функции

Alexey Grishanin 10 лет назад в iRidium Script / Interface scripts обновлен Oksana (expert) 10 лет назад 2
Добрый день.
Поясните пожалуйста почему в следующем скрипте:

function byte1(val)
{
return val >>> 24
};

function ReadEvent(val)
{
IR.Log("Значение байта 1: "+ byte1(val));
};

function WriteLog ()
{
IR.Log("просто сообщение")
};

IR.AddListener(IR.EVENT_START,0,function()
{
IR.SetInterval(5000,WriteLog);
IR.SetInterval(5000,ReadEvent(1830317336));
});

функция ReadEvent  не работает циклично через каждые 5 сек.? В то время как WriteLog работает, т.е. код исполняется каждые 5 сек.
0
Отвечен

GC script command example

r riksma 10 лет назад в iRidium Script / AV and Driver scripts обновлен Oksana (expert) 10 лет назад 4
Good afternoon,
Could you please post an example showing how to send a native Global Cache command with a script?

For modbus i use this to send the value 1.

IR.GetDevice("Modbus TCP").Set("Command1",1);<br>



Let's say i want to send commands to an Apple TV, could i use Set, or Send like this?

IR.GetDevice("Modbus TCP").Set("CURSOR UP",X);<br>IR.GetDevice("Modbus TCP").Send([X]);<br>


What value should go where the X is now?
0
Отвечен

Event item exit?

Jackie Roos 9 лет назад в iRidium Script / AV and Driver scripts обновлен 9 лет назад 2

Hi

Is there an EVENT_ITEM_EXIT or equivalent?


I am currently using EVENT_ITEM_CHANGE for error checking, but I want to send the command once, based on the input, ie when focus leaves the item, not every time the edit box is changed


Or is there an event fired when the keyboard hits 'ENTER' or 'TAB'?


Or what do you suggest please?


thanks

0
Отвечен

Custom HTTP Driver - Receiving a response

r riksma 10 лет назад в iRidium Script / AV and Driver scripts обновлен 10 лет назад 16
Good afternoon,

I've been working on creating a custom HTTP driver. I can send commands without any problems but I would like to parse the returned response code and data as well.

I have been unable to find documentation on how to do this. Could you provide me with an example or tell me what's wrong with the following code? It does send the commands but the response from the server is lost.

function HTTPDriver(host,port){

this.init = function() {
this.HTTPDriver = IR.CreateDevice(IR.DEVICE_CUSTOM_HTTP_TCP, "HTTPDriver", host, port, "root", "atata", IR.SSL_OFF, IR.BACKGROUND_OFF);
};

this.get = function(param) {
IR.Log("Param " + param);
return this.HTTPDriver.Send(['GET,' + param + ',']);
};
}

IR.AddListener(IR.EVENT_START, 0, function () {
var httpDriver = new HTTPDriver("testserver","80");
httpDriver.init();

IR.AddListener(IR.EVENT_RECEIVE_TEXT, httpDriver, function(text)
{
IR.Log("RECEIVING TEXT");
IR.Log(text);

})

IR.AddListener(IR.EVENT_RECEIVE_DATA, httpDriver, function(text)
{
IR.Log("RECEIVING DATA");
IR.Log(text);

})

IR.Log(httpDriver.get("/abc/lol?123"));
httpDriver.get("/diag")
IR.Log("DONE!");
});
Ответ
Sergey (expert) 10 лет назад
status can not be obtained from the server via HTTP driver
0
Отвечен

где прочитать об аргументе PickColor​ и почему его нет в iRidium Script Helper??

Андрей Попович 9 лет назад в iRidium Script обновлен Dmitry - support (expert) 9 лет назад 7 1 дубликат

День добрый всем! Помогите новичку!!!

В Примере: Демонстрационные интерфейсы iRidium -> Продвинутые графические возможности, есть пример Scrip-та для странички Color Picker, в нём есть выражение

M1.GetState(0).FillColor = P1.PickColor; если его развернуть то получим выражение

IR.GetItem("Color Picker").GetItem("Ligjt_map_1").GetState(0).FillColor = IR.GetItem("Color Picker").GetItem("Item 1").PickColor;

Вопрос где прочитать об аргументе PickColor и почему его нет в iRidium Script Helper??




0
На рассмотрении

Данные от оборудования в виде кода страницы

evg 9 лет назад в iRidium Script обновлен Ekaterina (head of support) 9 лет назад 7
Добрый день!
Подскажите, как правильно обработать данные от оборудования полученные в виде HTML кода страницы?
Есть какие-нибудь стандартные механизмы?
0
На рассмотрении

Telnet autorization

Ekaterina (head of support) 11 лет назад в iRidium Script / AV and Driver scripts обновлен Aleksandr Romanov (CTO) 4 года назад 16

The user authorization at connection to Telnet looks as follows:

Connecting to 192.168.10.10 ...
Connected to 192.168.10.10
Login Please
Username: user
Password: password
Welcome to TELNET.

In the dialog window for connection login and password are sent in the open format. The login should be sent after receiving the "Username:" string, the password – after receiving the "Password:" string.

To perform the Telnet authorization in iRidium you should use the AV & Custom Systems (TCP) driver for which we create the following script:


IR.AddListener(IR.EVENT_RECEIVE_TEXT, IR.GetDevice('AV_Driver'), function(text)
{
  IR.Log("text = "+text);
 
  if (text.indexOf('Username') != -1)
  {
    IR.Log("login")
    IR.GetDevice('AV_Driver').Send(['Login',13,10]);
  } else if (text.indexOf('Password') != -1)
  {
    IR.Log("password")
    IR.GetDevice('AV_Driver').Send(['Password',13,10]);
  }
})

where

  • 'AV_Driver' – the name of the AV & Custom Systems (TCP) driver in the project device tree.
  • Send(['Login',13,10]) - Login – the user name
  • Send(['Password',13,10]) - Password – the password for  the indicated user.   


The script performs authorization after which (Welcome to TELNET.) you can send commands to equipment and receive feedback from it via Telnet.


PS: Your equipment might have a slightly different authorization dialog window. In this case modify the script so it could identify the strings after which you need to enter the login and password correctly. It will be enough for the correct work of the script.


Telnet_authorization.irpz
0
Запланирован

Javascript Methods

Damian Flynn 9 лет назад в iRidium Script / AV and Driver scripts обновлен Sergey (expert) 9 лет назад 10
I am currently converting a node.js program to be a driver in Iridium, and have some basic issues with Javascript functions not defined.

For example text.subscript and text.replace fail, but text.slice appears to work.

Where can i find the list of methods and functions which are supported in the Iridium implementation; as i am currently suck; or can i import/reference outside modules to add functions, and reuse work done?

thanks
Damian
0
Не ошибка

HDL iRidium Sctipt SPI (DDK) control

Эмиль Боев 9 лет назад в iRidium Script / AV and Driver scripts обновлен Ekaterina (head of support) 9 лет назад 1

Same HDL bus and devices.

One of devices is 'DMX'.


In first try, i gave name 'Channel 1' and executed:


IR.GetDevice("HDL-BUS Pro Network (UDP)").Set("DMX:Channel 1", 1);


It doesn't work.

Then: renamed command to 'Chanel_1' and it works!


IR.GetDevice("HDL-BUS Pro Network (UDP)").Set("DMX:Channel_1", 1);


May be one cannot control command (and feedback appropriately) with speces in name?

But here, in the official wiki info (http://wiki2.iridiummobile.ru/Drivers_API#Set) one can find:


IR.GetDevice("HDL-BUS Pro Network (UDP)").Set("Relay_1:Channel 3",0);

0
Ожидает ответа пользователя

Исключения при работе клиента

evg 9 лет назад в iRidium Script / AV and Driver scripts обновлен Dmitry - support (expert) 9 лет назад 1

Доброе утро!
Необходим механизм обработки исключений в работающем клиенте. Например, при невозможности выполнения команды:

var JSONObject = JSON.Parse(text);

эмулятор выдает сообщение:

WARNING Script exception: SyntaxError: C:\Users\evgeniy\Documents\iRidium mobile 2\Settings\iRidium\Main\script.js:331: <string>:1: expected ')' but got a string

текст получается от оборудования и разрезается на части, чтобы получить текст пригодный для конвертации в JSON. Но бывает всякое - и текст не всегда удается правильно обрезать единым алгоритмом.

Хочется иметь возможность:

1. сначала проверить текст на возможность конвертации, и только потом выполнить конвертацию. При невозможности, либо повторить запрос, либо ничего не делать

2. в непредвиденной ситуации, при получении сообщения "WARNING..." не останавливать выполнение общего кода

Может уже есть такие механизмы?



Сервис поддержки клиентов работает на платформе UserEcho