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

+1
Answered

Удаленное управление с 3g

dmitrymalov 4 months ago in Tips and Tricks • updated by Aleksandr Romanov (CTO) 2 months ago 3

Доброго дня !!

Подскажите пожалуйста, могу ли я подключиться к iridium server  через (интернет) удаленно,

в случае если нет возможности узнать или получить внешний ip адрес?

Если да то будьте любезны напишите как)

+1
Answered

Управление яркостью экрана в режиме скринсейвера

Ekaterina (head of support) 2 years ago in Tips and Tricks • updated by Aleksandr Romanov (CTO) 2 months ago 8

При показе и скрытии встроенного скринсейвера iRidium на iPad, можно менять яркость экрана, чтобы при включенном скринсейвере его светимость была минимальна. возможность управления яркостью есть только на iOS.


Включите опцию Скринсейвер в настройках проекта, выберите страницу-скринсейвер (например, можно поставить черную страницу, которая выполняет при нажатии команду PrevPage(). Команда нужна, чтобы при нажатии на скринсейвер он закрывался и показывал ранее открытые страницы и окна.


Создайте скрипт, добавьте в него команды управления скринсейвером:

// имя страницы скринсейвера
var scr_page = IR.GetItem("main");
// если страница появилась, уменьшим яркость экрана
IR.AddListener(IR.EVENT_ITEM_SHOW, scr_page,function()
{
IR.SetVariable("System.Display.Bright", 10)
});
// если страницу скрыли, увеличим яркость
IR.AddListener(IR.EVENT_ITEM_HIDE, scr_page,function()
{
IR.SetVariable("System.Display.Bright", 80)
});
// если приложение свернули, увеличим яркость
IR.AddListener(IR.EVENT_APP_ENTER_BACKGROUND, 0, function()
{
IR.SetVariable("System.Display.Bright", 80)
});
// если приложение развернули, увеличим яркость
IR.AddListener(IR.EVENT_APP_ENTER_FOREGROUND, 0, function()
{
IR.SetVariable("System.Display.Bright", 80)
});

+1
Completed

Русификация даты и дня недели

Ekaterina (head of support) 2 years ago in Tips and Tricks • updated by Aleksandr Romanov (CTO) 2 months ago 1

Добавьте скрипт в свой проект:

function ru_date_time ()
{
var item = IR.GetItem("_Main room").GetItem("Item 1"); // item with date
var itemD = IR.GetItem("_Main room").GetItem("Item 2"); // item with day of week

var month = IR.GetVariable("System.Date.Month");
var dayofweek = IR.GetVariable("System.Date.DayOfWeek");

function set_month(cur_month) {
item.Text = IR.GetVariable("System.Date.Day")+" "+cur_month+" "+IR.GetVariable("System.Date.Year");
}

function set_dayofweek(day) {
itemD.Text = day;
}

switch(month)
{
case 1: set_month("января"); break;
case 2: set_month("февраля"); break;
case 3: set_month("марта"); break;
case 4: set_month("апреля"); break;
case 5: set_month("мая"); break;
case 6: set_month("июня"); break;
case 7: set_month("июля"); break;
case 8: set_month("августа"); break;
case 9: set_month("сентября"); break;
case 10: set_month("октября"); break;
case 11: set_month("ноября"); break;
case 12: set_month("декабря"); break;
}

switch(dayofweek)
{
case 0: set_dayofweek("воскресенье"); break;
case 1: set_dayofweek("понедельник"); break;
case 2: set_dayofweek("вторник"); break;
case 3: set_dayofweek("среда"); break;
case 4: set_dayofweek("четверг"); break;
case 5: set_dayofweek("пятница"); break;
case 6: set_dayofweek("суббота"); break;
}
} ru_date_time(); IR.SetInterval(600000, ru_date_time)

в 3 и 4 строках скрипта укажите графические элементы, которые должны отображать время и дату. К этим элементам не нужно привязывать системные токены напрямую.

0
Answered

Удаленное управление HDL на i3 lite без использования iRidium Server

Андрей Покровский 4 weeks ago in Tips and Tricks • updated by Aleksandr Romanov (CTO) 4 weeks ago 1

Все работает при локальном подключении.

Попытался проверить удаленное управление на релейном модуле. Для этого:

1. На роутере с внешним статическим IP-адресом прокинул порт UDP 6000 до модуля HDL-MBUS01IP.431.

2. Для релейного модуля изменил в настройках HDL-BUS PRO NETWORK (UDP) значение Host с 255.255.255.255 на внешний IP-адрес роутера.

В результате оборудование отказалось управляться.

Насторожило отсутствие в настройках (в отличие от i3 pro) режима соединения, логина, пароля и имени проекта.

0
Answered

Запуск внешних shell скриптов Iridium Server

Michael G. Baev 1 month ago in Tips and Tricks • updated by Aleksandr Romanov (CTO) 1 month ago 1

Добрый день, очень хочется иметь возможность запускать shell скрипт и по возможности обрабатывать его результат на iridium server под linux. Для GPIO вы уже придумали IR.DEVICE_CUSTOM_STREAM нет ли чего-то похожего для моей ситуации? Если бы появилось цены бы вам небыло. У меня вагон и маленькая тележка специфических задач, которые можно решить только таким способом...

0
Answered

Pushup

Павел Номинат 1 month ago in Tips and Tricks • updated by Ilya Markov (expert) 1 month ago 1

Добрый день!

Подскажите, пожалуйста, возможен ли следующий функционал: чтоб по событию в системе автоматики (например в KNX сработала протечка) IRidium отправлял Pushup уведомления об этом в iOS (т.е. чтоб выводил в любом меню IPad'а, не обязательно в самом IRidium)?


С уважением,
Номинат Павел.

0
Answered

Запрет отключения экрана

AlexDr 2 months ago in Tips and Tricks • updated by Aleksandr Romanov (CTO) 1 month ago 5

Есть ли какая-то возможность через скрипт запретить устройству гасить экран? 

0
Answered

Получить данные по UDP

Виктор 4 months ago in Tips and Tricks • updated by Aleksandr Romanov (CTO) 2 months ago 13

Коллеги, здравствуйте! 

Не могу разобраться, как получить данные по UDP? До этого работал через SendEx по HTTP, там все нормально приходило в ответ на команду.

Теперь создал команду в панельном приложении, натянул её на айтем (решил использовать-таки нативный функционал, отойти немного от скриптов), по UDP ушел запрос, лампочка включилась, все ок.

Теперь надо отправить команду о состоянии лампочки - создал команду, натянул, отправил, в скрипте прописал слушатели:


   var driver = IR.GetDevice("DirectJUK");
   IR.Log("driver is:" + driver)

   IR.AddListener(IR.EVENT_RECEIVE_TEXT, driver, function(text)
   {
      IR.Log("EVENT_RECEIVE_TEXT is:" + text)
   });

   IR.AddListener(IR.EVENT_RECEIVE_DATA, driver, function(data)
   {
      IR.Log("EVENT_RECEIVE_DATA is:" + data)
   });

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



0
Under review

Разложить по полочкам Channels, Tags, Commands, Feedback

Виктор 4 months ago in Tips and Tricks • updated by Aleksandr Romanov (CTO) 2 months ago 3

Здравствуйте, коллеги!

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

Есть методы: GetVariable, SetVariable, Set,SetFeedback - какой где использовать?

Например. Есть серверный проект. Я хочу внутри него подписаться на какое-то событие - изменилась переменная. Пришло значение откуда-то, с TCP, например, надо отреагировать.

Мне её что, надо в Tag записывать и подписываться через глобаллистенер на изменения? Или в
Channels? Панель, будет видеть когда, когда я в канал кидаю значения? Если панель не может считать с Tag сервера, то зачем тогда она синхронизируется и показывает эти теги у себя?

Думаю понятно, что каша в голове, еще и ошибки эти, которые пофиксили.. Мой проект то работает то нет, ерунда какая-то. Вроде понял, как показалось, а теперь опять не могу разобраться. 

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

0
Answered

Не устанавливается серверная переменная.

nicks 4 months ago in Tips and Tricks • updated by Aleksandr Romanov (CTO) 2 months ago 2

Из клиента выполняю  

IR.SetVariable("Drivers.iRidium Server.FromTimePopUp_Time",g_TimePopUp_Hours * 60  +  g_TimePopUp_Minuts);


потом читаю в клиенте 

IR.Log(IR.GetVariable("Drivers.iRidium Server.FromTimePopUp_Time"));


верные значения.


на сервере  выполняю 

IR.Log("Server.Tags.FromTimePopUp_Time" + IR.GetVariable("Server.Tags.FromTimePopUp_Time"));


Значения  на сервере не меняются.