Помогите с кодом одна строчка

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

Murat
Сообщения: 17
Зарегистрирован: Ср мар 07, 2018 4:09 pm

Помогите с кодом одна строчка

Сообщение Murat »

Вот строчка setTimeOut ($rname, 'sayReply ("Напоминаю: '.$matches[4].'");' ,$matches[2]*60); Она прописывает но не говорит sayReply подсвечивается красным

Код: Выделить всё

$rnumber = 1;
while (1) {
  $rname = "Reminder_$rnumber";
  if (!timeOutExists($rname)) break;
  $rnumber++;
}

setTimeOut ($rname, 'sayReply ("Напоминаю: '.$matches[4].'");' ,$matches[2]*60); 
sayReply("Принято напоминание - напомнить через $matches[2] минут: $matches[4]",5);
sayReply("Постараюсь не забыть!",5); 
fandaymon
Сообщения: 1576
Зарегистрирован: Сб янв 13, 2018 5:00 pm

Re: Помогите с кодом одна строчка

Сообщение fandaymon »

А то что после установки таймера говорит? Тогда дело скорее всего в уровне - вне таймера поставлен уровень 5, а в самом таймере ничего не поставлено
newz20
Сообщения: 173
Зарегистрирован: Пт апр 06, 2018 9:40 am

Re: Помогите с кодом одна строчка

Сообщение newz20 »

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

Код: Выделить всё

if (getGlobal('XiDimmer01'.'.'.'level') == '0') {
  setGlobal('XiDimmer01'.'.'.'level', '5');
  say('Светильник включен', 2);
} else {
  setGlobal('XiDimmer01'.'.'.'level', '0');
  say('Светильник выключен', 2);
}
При выполнении кода в консоли все работает как положено. Где копать?
fandaymon
Сообщения: 1576
Зарегистрирован: Сб янв 13, 2018 5:00 pm

Re: Помогите с кодом одна строчка

Сообщение fandaymon »

newz20 писал(а): Ср май 09, 2018 9:10 am Народ помогите разобраться с кодом, завел димер через простые устройства, добавил там же кнопку. При нажатии на кнопку димер должен включится на 5 или выключится если уже горит. нажимаю на кнопку а он выполняет и то и другое моргает. Код прописан в кнопке блоками.

Код: Выделить всё

if (getGlobal('XiDimmer01'.'.'.'level') == '0') {
  setGlobal('XiDimmer01'.'.'.'level', '5');
  say('Светильник включен', 2);
} else {
  setGlobal('XiDimmer01'.'.'.'level', '0');
  say('Светильник выключен', 2);
}
При выполнении кода в консоли все работает как положено. Где копать?
Видимо кнопка несколько раз метод вызывает. Копка ксяомная или самодельная?

И ещё такой вопрос не по существу- а зачем так странно писать точку? Гораздо проще написать getGlobal('XiDimmer01.level')
newz20
Сообщения: 173
Зарегистрирован: Пт апр 06, 2018 9:40 am

Re: Помогите с кодом одна строчка

Сообщение newz20 »

fandaymon писал(а): Ср май 09, 2018 10:50 am
newz20 писал(а): Ср май 09, 2018 9:10 am Народ помогите разобраться с кодом, завел димер через простые устройства, добавил там же кнопку. При нажатии на кнопку димер должен включится на 5 или выключится если уже горит. нажимаю на кнопку а он выполняет и то и другое моргает. Код прописан в кнопке блоками.

Код: Выделить всё

if (getGlobal('XiDimmer01'.'.'.'level') == '0') {
  setGlobal('XiDimmer01'.'.'.'level', '5');
  say('Светильник включен', 2);
} else {
  setGlobal('XiDimmer01'.'.'.'level', '0');
  say('Светильник выключен', 2);
}
При выполнении кода в консоли все работает как положено. Где копать?
Видимо кнопка несколько раз метод вызывает. Копка ксяомная или самодельная?

И ещё такой вопрос не по существу- а зачем так странно писать точку? Гораздо проще написать getGlobal('XiDimmer01.level')
ксяомишный кубик, поворот на 90. если привязать через связанные устройства то работает нормально, переключение происходит без проблем. Таким образом считаю что кнопка отрабатывает нормально.

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

Есть код и на php обычный, моргание такое же.
newz20
Сообщения: 173
Зарегистрирован: Пт апр 06, 2018 9:40 am

Re: Помогите с кодом одна строчка

Сообщение newz20 »

не знаю что наковырял, но все заработало.
homester
Сообщения: 205
Зарегистрирован: Вт дек 24, 2019 2:09 pm

Re: Помогите с кодом одна строчка

Сообщение homester »

Как в html можно реализовать условие?
Если у свойства всего два значение "0" и "1", то этот код работает:
<p class="button5 %ESP01.SV|"on;off"%">0</p>
а если значений три, то как быть?
Raspberry Pi3 B+, v4.44, внешняя з/к
Аватара пользователя
tarasfrompir
Сообщения: 3217
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин

Re: Помогите с кодом одна строчка

Сообщение tarasfrompir »

homester писал(а): Пн сен 14, 2020 9:13 am Как в html можно реализовать условие?
Если у свойства всего два значение "0" и "1", то этот код работает:
<p class="button5 %ESP01.SV|"on;off"%">0</p>
а если значений три, то как быть?
если 0,1,2
то будет
<p class="button5 %ESP01.SV|"on;off;unknow"%">0</p>
Спасибо нам ПОМОЖЕТ..!
homester
Сообщения: 205
Зарегистрирован: Вт дек 24, 2019 2:09 pm

Re: Помогите с кодом одна строчка

Сообщение homester »

tarasfrompir писал(а): Пн сен 14, 2020 10:18 am если 0,1,2
то будет
<p class="button5 %ESP01.SV|"on;off;unknow"%">0</p>
Спасибо, буду знать. Но к сожалению мне надо 0,1,2,3. Как я понял опять напрашивается JavaScript. :(
Raspberry Pi3 B+, v4.44, внешняя з/к
Аватара пользователя
tarasfrompir
Сообщения: 3217
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин

Re: Помогите с кодом одна строчка

Сообщение tarasfrompir »

homester писал(а): Пн сен 14, 2020 11:15 am
tarasfrompir писал(а): Пн сен 14, 2020 10:18 am если 0,1,2
то будет
<p class="button5 %ESP01.SV|"on;off;unknow"%">0</p>
Спасибо, буду знать. Но к сожалению мне надо 0,1,2,3. Как я понял опять напрашивается JavaScript. :(
Да хоть 25 - все состояния перечисляеш через точку с запятой - вроде так должно быть
Спасибо нам ПОМОЖЕТ..!
Ответить