Ваши комментарии

Здравствуйте, KO_Avans!

>> Как мне в проекте записать массив в переменную проекта?

Алгоритм записи и чтения массива в переменную проекта, есть на WIKI:
http://wiki2.iridiummobile.ru/Tokens_API#.D0.97.D0.B0.D0.BF.D0.B8.D1.81.D1.8C_.D0.BC.D0.B0.D1.81.D1.81.D0.B8.D0.B2.D0.BE.D0.B2_.D0.B2_Projects_Token_.D0.B8_.D0.B8.D1.85_.D0.B8.D0.B7.D0.B2.D0.BB.D


>> Так и не понял как мне из 500 каналов найти 5 каналов по имени и вбить в массив?

Все верно, именно по имени, вы сможете найти каналы.

Событие которое возвращает имя изменившегося канала и новое значение:
http://wiki2.iridiummobile.ru/Drivers_API#EVENT_TAG_CHANGE

>>  Еще можно назначить слушатель TAG_Change на определенный канал?

На определенный канал в общем смысле нет, можно назначить слушатель на одно устройство, событие же будет срабатывать при любом измененном канале от устройства. А вот функция которая будет выполняться при активации события в действительности может реагировать именно на конкретный канала.
Если к каждому из ваших каналов обратной связи существует определенная ошибка, например Канала 1 - это датчик открытия двери, и при полученнии единицы, это означает, что дверь открыта, то в момент создания массива, вместо значения в массив вы пишите, то сообщение об ошибке которое должно быть отображено.

Проверять имя канала надо в событие TAG_CHANGE, массив же просто контейнер данных.

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

1. Запуск приложения событие IR.EVENT_START
2. Читаю данные из переменной проекта IR.GetVariable
3. Если переменная проекта пустая null, то ни чего не делаю
4. Если в переменной есть массив, загружаю его по известному алгоритму на WIKI
5. Создаю список из массива используя LIST_API

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

Все верно, элемент типа list, список, для вас будет служить инструментом для отображения сообщений. Количество элементов в списке будет ограничено 5 элементами.

Для работы со списком у нас есть документация LIST API:
http://wiki2.iridiummobile.ru/List_API

Как, сообщил Илья, вам потребуется слушатель на событие EVENT_TAG_CHANGE, что бы в момент получения нового значения для одного из 5 каналов обратной связи можно было создать новый элемент в списке.

http://wiki2.iridiummobile.ru/Drivers_API#EVENT_TAG_CHANGE

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

Как раз для сортировки записей вам потребуется структура - массив.

Устройство - Драйвер.канал 1 - Новое значение - Функция сортировки массива - готовой отсортированный массив из пяти записей, где первая последняя

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

Алгоритм сортировки, примерно такой:

1. При получении нового значения (событие EVENT_TAG_CHANGE), берем первые 4-е элемента массива и сдвигаем на одну позицию вниз. 5-ый элемент будет потерян и станет равным 4-ому.

2. В место первого пишем новое значение.

3. Очищаем список, заполняем по новой.

4. Сохраняем массив в переменную проекта.

Как перемещать значения в массиве читайте на javascript.ru

Алгоритм записи и чтения массива в переменную проекта, есть на WIKI:
http://wiki2.iridiummobile.ru/Tokens_API#.D0.9F.D0.BE.D0.BB.D1.83.D1.87.D0.B8.D1.82.D1.8C_.D0.B2.D1.80.D0.B5.D0.BC.D1.8F

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


Как получить дату и время
http://wiki2.iridiummobile.ru/Tokens_API#.D0.9F.D0.BE.D0.BB.D1.83.D1.87.D0.B8.D1.82.D1.8C_.D0.B4.D0.B0.D1.82.D1.83

http://wiki2.iridiummobile.ru/Tokens_API#.D0.9F.D0.BE.D0.BB.D1.83.D1.87.D0.B8.D1.82.D1.8C_.D0.B2.D1.80.D0.B5.D0.BC.D1.8F




Hello, Giljan!

Yes this great idea for password font!
Hello, Giljan!

Please try project.

It may will create with easy script and two items.
Password.irpz
Здравствуйте, Юрий!

В 16-ой системе счисления, отрицательные числа записываются особым способом.

Скорее всего под положительные числа выделен определенный диапазон значений, от минимально до максимального. И для отрицательных точно также.

Получите от датчика значение температуры -1 в 16-ом виде, преобразуйте в 10-ую, и оно скорее всего будет больше всех положительных значений, запишите его в условие и сравнивайте.

llsTemphex = Data.charAt(9) + Data.charAt(10)
llsTemp = parseInt(llsTemphex, 16)

if(llsTemp > Температура_Минус_Один_в_Десятичной)
    llsTemp = - (parseInt(llsTemphex, 16) - Лишние_значения);
  // - (230 - 224) = -26
Hello, Cabrini Erich!
Thanks You for the information. We already know about this issue, in next beta build this will fix.
Hello  ErwinMaas, Theo!

Please try this project.
CircleNew.irpz


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