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

JavaScript typed array

Эмиль Боев 6 лет назад в iRidium Script обновлен Oksana (expert) 5 лет назад 1
Hi, everybody!
Please, implement typed arrays (TA): https://developer.mozilla.org/en-US/docs/Web/JavaScript/Typed_arrays
We really need it, cause TA dramatically increase the efficiency of binary data processing in the JavaScript engine.
Идет голосование

throwing custom errors with line numbers

r riksma 6 лет назад в iRidium Script / AV and Driver scripts обновлен Oksana (expert) 5 лет назад 5
It would be nice if I could show a line number when I throw an error in my own code.

for example, if I run this piece of code:

  try {
    if (typeof currentStyle[options.name] == 'undefined') {throw new Error("Unknown style name: " + options.name);}
    catch (err) {
        throw new Error(err.lineNumber + " " + err.message);

the following line is logged:

02-12-2015    13:28:03    Kernel.Info    [12-02-2015 13:28:04.000]  WARNING  Script exception: Error: undefined Unknown style name: menuLogo

When an Error is logged from iridium itself it looks like this:

02-12-2015    13:31:42    Kernel.Info    [12-02-2015 13:31:43.000]  WARNING  Script exception: ReferenceError: /var/mobile/Containers/Data/Application/0CE95966-BFE3-4352-B1E9-F38E3EB8963C/Library/Caches/iRidiumMobile/EveryDevice/ViewLibrary.js:185: erraaa

How can I get the file and line number as well?
It would be great if you could always show this information in the log if the Error is not caught.
Идет голосование

get an array of the item names that are on a popup or page

rocfusion 6 лет назад в iRidium Script обновлен Oksana (expert) 5 лет назад 2

It would be useful when we could retrieve a list of item names for a page or popup. Knowing the names of the items contained in a popup would open up numerous possibilities of generating more generic control of the UI. This could be implemented as property of IR.GetPopup, for example;
var mypopupitems = IR.GetPopup("Popup 1").GetItemNames;

mypopupitems would be assigned an array of strings ( the names of the items ).

Please vote if you would like to see this implemented into the script....

Now as a workaround until we have a native solution, I have created the following.... which solves this for now. I hope this helps.

Array.prototype.GetItemNames= function(pageorpopup){
for(var y=0;y<pageorpopup.ItemsCount;y++){

IR.AddListener(IR.EVENT_START, 0, function() {

var myPopupItems= []; // create an empty array
myPopupItems.GetItemNames(IR.GetPopup("Popup 1"));
// retrieve an array of item names that are in Popup 1
IR.Log("first popup item names "+myPopupItems);
myPopupItems.GetItemNames(IR.GetPopup("Popup 2"));
// retrieve an array of item names that are in Popup 2
IR.Log("second popup item names "+myPopupItems);
// no need to empty the array the method will do this automatically

Идет голосование

Spotify for Sonos

Paolo Scarpetta 7 лет назад в iRidium Script / AV and Driver scripts обновлен Oksana (expert) 5 лет назад 2
Can I integrate an App like Spotify with the Iridium, What I really want to make is that my client can select the music he want to hear and send it to his TV through an apple tv. This can be done?
Requests for Drivers
На рассмотрении

Драйвер для Bang&Olufsen BeoVision Avant TV

Dmitry Shulgin 5 лет назад в iRidium Script / AV and Driver scripts обновлен Vyacheslav Belov 5 лет назад 4

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

Вы можете принять участие в тесте драйвера только есть у вас есть работающий телевизор Bang&Olufsen BeoVision Avant.

Если у вас нет телевизора, вы можете проголосовать, нужен ли этот драйвер.

Драйвер и интерфейс полностью повторяют оригинальный интерфейс B&O. Это сделано для легкого включения драйвера в iRidium lite, который скоро выходит. На данный момент интерфейс только на русском языке.

Чтобы принять участие в тесте, пришлите, пожалуйста, следующие данные на почту evg@elspace.spb.ru:

- HWID вашего iPad

- серийный номер вашего BeoVision Avant

- ваш E-mail

В ответе на ваше письмо вы получите файл с триал-проектом (iRidium и драйвер), который будет полноценно работать 1 месяц.

Пожалуйста, пишите здесь, все ваши идеи, вопросы.


Practical experience of making HTTP driver

Евгений Лешкив 5 лет назад в iRidium Script / AV and Driver scripts обновлен Henry 4 года назад 3

This theme is based on iRidium DDK. Below is the example of making driver for almost any device that has a web interface.

To make a driver you will need the Device that is connected to your LAN and has static IP address and LAN sniffer on your PC (in my case it is WireShark).

1. Getting request for feedbacks of the Device

- start your browser

- start your sniffer

- go to the web page of your device (in my case or update it

- in sniffer window you should now find request from your PC to the Device

This URI is needed for us request for getting feedback of device (feedback is all the data that is on selected page.

method: GET

URI: /MainZone/index.html

2. Getting feedback

in JS if you make a request:

var DEVICE = IR.GetDevice("Busch iNet Radio");


as the answer you will get full HTTP code of the page you were requesting.

JS getting feedback:

IR.AddListener(IR.EVENT_RECEIVE_TEXT, DEVICE, function(inText)






<link href="/style/style.css" type="text/css"/>


<body >




<input type="text" name="vo" size=5 maxlength=5 value="2" />  


<legend>Currently playing</legend>


Station 5:


<input type="text" name="--" readonly size=70 maxlength=64 value="DI.fm | Vocal chillout" />


3. Parsing feedback text

To get needed data you have to slice this text.

For volume it will be:

var volume3 = inText.slice(inText.indexOf("Volume", 0)+60,inText.indexOf("Volume", 0)+120);

//getting part of the text for volume
var volume2 = volume3.slice(volume3.indexOf("value=", 0)+7,volume3.indexOf("nbsp", 0)-6);

//getting value
var volume = parseFloat(volume2);

//making float from text


//writing to variable

The same for current station:

var station0_2 = inText.slice(inText.indexOf("Currently playing", 0)+30,inText.indexOf("Currently playing", 0)+250);
var station0 = station0_2.slice(station0_2.indexOf("value=", 0)+7,station0_2.indexOf("Add to TuneIn Presets", 0)-71);
IR.SetVariable("Drivers."+DeviceName+".iNet_Current station name",station0);

This should be done for every data you need.

4. How to get HTTP command from the page

The same way that described in #1 but instead of updating page you have to press needed button.

In my case it is:

method: GET

URI: /en/index.cgi?p1=+Play+



The only thing to do is to ling this with buttons.

5. Cicling request for feedback

Data should periodically be updated. To do this:

function Autorequest()

IR.AddListener(IR.EVENT_ITEM_SHOW,IR.GetItem(Page),function() //getting feedback when page is shown

var ID = IR.SetInterval(5000, Autorequest); //every 5s

IR.ClearInterval(ID); //Need to be cleared. If not it will bee starting new interval request which will make your connection down

In attach example project and page HTTP code

This could be done for every device with web interface: UPS, Radio, etc.

Hope this will be helpfull for you


Идет голосование

Search and replace in script editor

rocfusion 6 лет назад в iRidium Script обновлен Oksana (expert) 5 лет назад 1

It would be useful to have a search and replace feature in the script editor.  Exactly like there is in Notepad from windows.  it would save time.


GUI Editor/Script Editor & Helper
Ожидает ответа пользователя


rocfusion 6 лет назад в iRidium Script / Interface scripts обновлен Oksana (expert) 6 лет назад 2

Please take a look at the attached project.  Press on the delete first item button and then the press add first item.

I would expect that the List.CreateItem(1, 1, {Text: "TV Bedroom 1"})  would add an new item at the defined point in the list.  This is not the case it simply added to the end of the list.


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

cannot select Dynamic Images from the project gallery

r riksma 6 лет назад в iRidium Script / Interface scripts обновлен 6 лет назад 9
Please see attached project. (note: camera URI is replaced with a dummy and should of course be changed before testing)
creating a Dynamic Image in the Project Gallery and assigning it to an item by script does not work.
Dragging and dropping the Dynamic Image on an existing item does work.
Referencing the URI directly also works.

While this is not a very big problem, this was kind of unexpected and caused me to think there was something wrong with the URI i was using.
Please fix if possible or maybe update documentation with this info?
Oksana (expert) 6 лет назад
Dear Riksma,

At the moment you can assign only MJPG stream using the script (but not H.264).
We know about this problem, it will be fixed in the next versions.

Sincerely yours,

Olga Ermakova
iRidium mobile Team

Vera 3 Control Driver

Shaun Moloney 6 лет назад в iRidium Script / AV and Driver scripts обновлен niky94547 4 года назад 18
Would be extremely grateful if any fellow iRidium user could assist with information on a Vera driver to allow control via iRidium. Doesn't seem to be any discussion at all regarding this.

some help please...!! 😉😉

Requests for Drivers

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