Your comments

Hallo!

Open project module, open de script editor en het script te wijzigen
Hallo!

mogelijk door de iridium script.

Web Server, stuurt een vaste set van woorden. Ze kunnen uitzoeken en vervang alle voor weergave.

Bijvoorbeeld:
- weather - weer
- cloudy - bewolkt
- etc.


[Web Server] send - "Cloudy" - iRidium Script receiving, searching word and show it via your language - "bewolkt"
Hello Theo!

Thanks you for information! Idea transferred to programmers.

The task is not planned now.
Hello Corentin d U!

This IR device will not supported.
Добрый день, KO_Avans!

Программа для контроллера пишется в NetLinx studio. Графический интерфейс разрабатываться может как в TP Designer, так и в iRidium GUI Editor.

Некоторые возможности, которые вы можете добавить в графический интерфейс, используя iRidium GUI Editor:

Переключение панелей между Wi-Fi и 3G
http://wiki2.iridiummobile.ru/AMX

Создание динамических списков в TPDesign4: команды IRLB
http://wiki2.iridiummobile.ru/%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B5_%D1%81_iRidium_%D0%B4%D0%BB%D1%8F_AMX

Вызов URL схем в iRidium командой AMX
http://wiki2.iridiummobile.ru/AMX

Как загрузить проекта на управляющую панель (iPad):
http://wiki2.iridiummobile.ru/%D0%98%D0%BD%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%86%D0%B8%D1%8F_%D0%BF%D0%BE_%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B5_%D1%81_iRidium_%D0%B4%D0%BB%D1%8F_AMX

Полная документация по AMX и iRidium:
http://wiki2.iridiummobile.ru/AMX
В случае попапов, сортировка намного проще. При показе попапа, команда IR.ShowPopup, делает последний показанный попап будет выше всех остальных. Сортировка упрощается до минимума - только комбинация функций показать / скрыть нужное число попапов.

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

ИмяПопапа = ИмяКаналаОбратнойСвязи + СколькоПопаповПоказано;

Например

ПротечкаКухня1
ПротечкаКухня2
.. и т.д


В событии IR.EVENT_TAG_CHANGE по получению нужного значения, получаете имя канала, смотрите на количество уже отображенных попапов, собираете имя попапа и передаете в функцию показа попапа IR.ShowPopup(ИмяКанала  + СколькоПопаповПоказано)

Дальше размещаете попап и печатаете дату как описано предыдущем посте.
Добрый день, KO_Avans!

>> Как показать попалы как на рисунке?
Стандартные эффекты будут препятствовать показу попапов в произвольной позиции.
Поэтому, в редакторе у попапов удаляете все эффекты показа / скрытия, если они есть. Окно Object Properties / General поле Effects.

Через скрипт используете команду показа попапа IR.ShowPopup(ИмяПопапа); Описание функции ищите в вики в разделе GUI API

Сразу же после этой функции пишите команду изменения позиции попапа.

IR.GetItem(ИмяПопапа).X = ЗначениеПозиции;
IR.GetItem(ИмяПопапа).Y = ЗначениеПозиции;

Вычисление позиции со смещением каждого нового линейно вниз по координатам X реализуется на ваш вкус.

Можно как пример хранить число показанных на экране ошибок и умножать шаг смещения на него.

>> И чтобы на каждом было время когда оно появилось

Как работать с датой и временем в JS, первая ссылка в гугле:
http://learn.javascript.ru/datetime

Что бы отобразить дату на попапе, создайте на каждом из них элемент и в свойство Text элемента пишите дату в момент показа попапа. Сразу же после команд изменения позиции попапа:

IR.GetItem(ИмяПопапа).GetItem(ИмяЭлемента).Text = new Date().toString();



Добрый день, KO_Avans!

Данный скрипт не написать за 10 минут, его надо хорошо продумать.

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

Еще раз напоминаю о возможности записаться на вебинары по скриптам:
http://www.iridiummobile.ru/academy/script/

они будут проходить в конце апреля.

По возникшим вопросам, можете обратиться в скайп к тренеру по скриптам:
markov.ilya1



[font=verdana]По вашему дополнению про попапы:[font=verdana]так как каналов для оповещений всего 5, и показываться одновременно может только 5 последний сообщений, в данном случае самое простое решение это создать 25 заранее подготовленных попапов в проекте, по 5 на каждое событие, и менять отображение времени его показа через скрипт.
Здравствуйте, KO_Avans!

Как написано, так и делается, вы сами сравниваете каждый такт работы приложения все значения, и если значения равны 1, то создаете элементы массива.

Пример:
Допустим все датчике выключены и раны нулю.
Сработал датчик на кухне, проверяю, n12 = 1, да, создаю элемент 1.
Сработал датчик в комнате отдыха, проверяю n12 = 1, да, создаю элемент 2, проверяю n08 = 1, да создаю элемент 3.

и так далее..

Без оборудования с эмулировать работу датчиков можно, но нужно ли.

В случае работы с оборудованием, необходимо использовать событие
http://wiki2.iridiummobile.ru/Drivers_API#EVENT_TAG_CHANGE

и вот так сравнивать не надо будет:

if (n12 == 1)
      {
      SortEvents("Протечка в кухне!");
      }

IR.AddListener(IR.EVENT_TAG_CHANGE, IR.GetDevice("KNX"), function(name, value) { 
var message;

switch(name){
  case "Имя_1":
      message = "Протечка в кухне!";
  case "Имя_2":
      message = "Протечка в баре!"
  case "Имя_N":
      message = "Протечка в N!"
      SortEvents(message);
  break;
}

});

По старту приложения, что бы воссоздать массив, используйте примеры работы с массивами, см. посты ниже.
Здравствуйте, KO_Avans!

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

В вашем коде замените функцию создания списка, на функцию из примера проекта SortEvents, который я прикрепил. Думаю с примером вы разберетесь. В примере выполняется сортировка списка и его отображение по вашим условиям. Все что осталось сделать прикрепить вызов функции сортировки к событиям получения данных, как вы сделали в своем примере.

В конце апреля будут вебинары по скриптам, рекомендую посетить.

Список вебинаров:
http://www.iridiummobile.ru/academy/#tab1






TEST_LIST.irpz