Ad Widget

Collapse

Вопрос и даже не один.....

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Krot
    Junior Member
    • Dec 2008
    • 25

    #1

    Вопрос и даже не один.....

    Во-первых. Имею ряд температурных датчиков на которые проблемные триггеры работают без проблем. Т.е. если задано условие (>30) и оно имеет место быть, все работает. Гудим, пищим, мигаем огнями. Но если, я делаю не проблемное действие (OK), которое в час N должно выдать мне просто значения системы, я не получаю ничего. Игнор конкретный. Как с этим бороться?
    Во-вторых, если триггер заточен на один элемент данных, то скажем {ITEM.LASTVALUE} работает беэ проблем. Если в в одном триггере собрано несколько элементов данных (and/or), эта штуковина не работает, как и другие штуковины(ITEM.VALUE_N). Как определить сработавший элемент и получить его значение?
    Спасибо за помощь!
  • noname
    Senior Member
    • Jan 2008
    • 120

    #2
    1. Что означает в час N? Ты хочешь, чтобы у тебя в триггерах постоянно висело сообщение о текущем состоянии температуры?

    2. По поводу триггеров с несколькими условиями. Вот, к примеру, один из моих триггеров:
    {SMTP4:usr.smtp.mstat.str(qwerty)}=0&({SMTP4:usr.s mtp.active.last(0)}>300|{SMTP4:usr.smtp.incoming.l ast(0)}>300)

    Меня интересует значение mstat в момент срабатывания триггера. Именно поэтому я внес его в условие триггера (с абсолютно левым выражением). В 1.6.5 это будет {ITEM.LASTVALUE}. (В 1.4.4, если память мне не изменяет условие {SMTP4:usr.smtp.mstat.str(qwerty)}=0 надо поставить в конец). Значение ITEM.VALUE_N здесь работают так, как это логично предположить =)
    Last edited by noname; 30-06-2009, 08:42.

    Comment

    • Krot
      Junior Member
      • Dec 2008
      • 25

      #3
      Я хочу получить данные , скажем (1-7,08:00-08-10)or(1-7,21:00-21:10)

      Comment

      • noname
        Senior Member
        • Jan 2008
        • 120

        #4
        А Flexible intervals для значений итемов это случаем не то, что тебе нужно?

        Comment

        • Krot
          Junior Member
          • Dec 2008
          • 25

          #5
          Сори рука дрогнула. Вот мой триггер
          ({B_V-S:А[t4].last(0)}>40)|({B_V-S:B[t2].last(0)}>40)|({B_V-S:C[t3].last(0)}>40),
          если ловим повышение на B_V-S:C[t3] то {ITEM.LASTVALUE} отдает значение другого ключа, а именно первого в строке(t4). Если делаем, как в мануале T = {{HOSTNAME}:{TRIGGER.KEY}.last(0)} результат тот же.

          Comment

          • Krot
            Junior Member
            • Dec 2008
            • 25

            #6
            По поводу "Flexible intervals" посмотрю. Но определяя условие действия я могу выбрать триггер, значение триггера, временной интервал и т.д. Что видимо должно работать. Да пользую ZBZ1.6.5.

            Comment

            • noname
              Senior Member
              • Jan 2008
              • 120

              #7
              По поводу условия: у тебя срабатывает ВСЁ условие, а не один из элементов, а lastvalue определяет значение первого элемента в цепочке условий (как я уже и описал).

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

              Comment

              • Krot
                Junior Member
                • Dec 2008
                • 25

                #8
                Совершенно точно, любое сработавшее. Остальное понятно, но не хочется "огород городить"...... А так удобно одним триггером закрыть все.
                Посмотрю, как отработает вывод всех датчиков. Спасибо, успехов.

                Comment

                • noname
                  Senior Member
                  • Jan 2008
                  • 120

                  #9
                  Еще Ларри Уолл говорил о том, что одной из главных добродетелей программиста является лень =) Удобство лишь на первый взгляд в твоей формулировке (возьми более сложное логическое выражение и окажется, что нельзя просто выразить то, что ты хочешь, при таком подходе). Удачи.

                  Comment

                  • Krot
                    Junior Member
                    • Dec 2008
                    • 25

                    #10
                    Я не программист, мне легче. А Л.У. мог стать пастором, а его на перл потянуло.

                    Comment

                    • noname
                      Senior Member
                      • Jan 2008
                      • 120

                      #11
                      Он много кем мог стать =), учитывая, что обладает 4 образованиями, в том числе и духовным, как ты правильно заметил.

                      Comment

                      Working...