Не отображается график погоды
Модератор: immortal
-
- Сообщения: 1138
- Зарегистрирован: Вт янв 29, 2013 9:16 am
- Откуда: Белозерск
- Благодарил (а): 16 раз
- Поблагодарили: 402 раза
- Контактная информация:
Re: Не отображается график погоды
собственно в связи с этим вопрос:
вэб переменная, необходимо перед отправкой в Связанный объект.свойство обработать а потом отправить, как это сделать?
то есть как заменить "−" на "-", а потом отправить в свойство связанного объекта
вэб переменная, необходимо перед отправкой в Связанный объект.свойство обработать а потом отправить, как это сделать?
то есть как заменить "−" на "-", а потом отправить в свойство связанного объекта
Lubuntu на cubieboard2 + ds9490R
DietPi на Orange Pi PC + 1wire на esp8266 с прошивкой Homes-smart.ru
DietPi на Orange Pi PC + 1wire на esp8266 с прошивкой Homes-smart.ru
-
- Сообщения: 560
- Зарегистрирован: Ср сен 04, 2013 10:31 am
- Откуда: Самара
- Благодарил (а): 99 раз
- Поблагодарили: 140 раз
- Контактная информация:
Re: Не отображается график погоды
можно использовать переменную $value в скрипте веб-переменной, либо вызвать скрипт, а уже в нем читать входящий параметр value.вэб переменная, необходимо перед отправкой в Связанный объект.свойство обработать а потом отправить, как это сделать?
Соответственно после обработки minus можно записать значение уже в ручную. Возможно можно переприсвоить $value но это надо проверять.
-
- Сообщения: 1138
- Зарегистрирован: Вт янв 29, 2013 9:16 am
- Откуда: Белозерск
- Благодарил (а): 16 раз
- Поблагодарили: 402 раза
- Контактная информация:
Re: Не отображается график погоды
а как отправить результат в связанный объект.свойство из скрипта, или можно просто написать:
$value = replace ($value,"−","-");
$value = replace ($value,"−","-");
Lubuntu на cubieboard2 + ds9490R
DietPi на Orange Pi PC + 1wire на esp8266 с прошивкой Homes-smart.ru
DietPi на Orange Pi PC + 1wire на esp8266 с прошивкой Homes-smart.ru
-
- Сообщения: 560
- Зарегистрирован: Ср сен 04, 2013 10:31 am
- Откуда: Самара
- Благодарил (а): 99 раз
- Поблагодарили: 140 раз
- Контактная информация:
Re: Не отображается график погоды
отправить как обычно sg("связанный объект.ДРУГОЕ_свойство", $value); http://smartliving.ru/Main/ProgrammingFunctionsimmortal писал(а):а как отправить результат в связанный объект.свойство из скрипта,
Не знаю, надо пробоватьили можно просто написать:
$value = replace ($value,"−","-");

-
- Сообщения: 1138
- Зарегистрирован: Вт янв 29, 2013 9:16 am
- Откуда: Белозерск
- Благодарил (а): 16 раз
- Поблагодарили: 402 раза
- Контактная информация:
Re: Не отображается график погоды
скрипт
не записывает значения в свойство tempUlica1.temp, что не так?
Код: Выделить всё
$value2 = str_replace ("−","-",$value);
sg("tempUlica1.temp", $value2);
Lubuntu на cubieboard2 + ds9490R
DietPi на Orange Pi PC + 1wire на esp8266 с прошивкой Homes-smart.ru
DietPi на Orange Pi PC + 1wire на esp8266 с прошивкой Homes-smart.ru
-
- Сообщения: 560
- Зарегистрирован: Ср сен 04, 2013 10:31 am
- Откуда: Самара
- Благодарил (а): 99 раз
- Поблагодарили: 140 раз
- Контактная информация:
Re: Не отображается график погоды
думаю скрипт запустится только когда значение температуры изменится
-
- Сообщения: 59
- Зарегистрирован: Вт авг 26, 2014 1:59 pm
- Откуда: Новосибирск
- Благодарил (а): 8 раз
- Поблагодарили: 6 раз
Re: Не отображается график погоды
Хочу вернуться к вопросу по замене − в полученной через веб переменную температуре.
По изменению температуры вызывается сценарий, который через str_replace подменяет символ и запятую на точку.
запарсили "−2,4" в результате получили "-2.4" и графики работают... но сценарий берет данные с ThisComputer.TempOutside и потом туда же складывает. В итоге SQL хранит вот что:
2014-10-22 14:11:53: +0.5
2014-10-22 14:11:53: +0,5
2014-10-22 13:42:55: +0.3
2014-10-22 13:42:55: +0,3
2014-10-22 12:16:08: -0.6
2014-10-22 12:16:08: −0,6
2014-10-22 11:47:09: −0,8
2014-10-22 11:47:09: -0.8
2014-10-22 11:18:11: −1,1
2014-10-22 11:18:11: -1.1
2014-10-22 10:49:13: -1.3
2014-10-22 10:49:13: −1,3
2014-10-22 10:20:15: −1,4
2014-10-22 09:51:17: −1,4
вопрос - как получить данные и обработать до записи значения веб переменной в связанный объект?
туплю... не понимаю
По изменению температуры вызывается сценарий, который через str_replace подменяет символ и запятую на точку.
запарсили "−2,4" в результате получили "-2.4" и графики работают... но сценарий берет данные с ThisComputer.TempOutside и потом туда же складывает. В итоге SQL хранит вот что:
2014-10-22 14:11:53: +0.5
2014-10-22 14:11:53: +0,5
2014-10-22 13:42:55: +0.3
2014-10-22 13:42:55: +0,3
2014-10-22 12:16:08: -0.6
2014-10-22 12:16:08: −0,6
2014-10-22 11:47:09: −0,8
2014-10-22 11:47:09: -0.8
2014-10-22 11:18:11: −1,1
2014-10-22 11:18:11: -1.1
2014-10-22 10:49:13: -1.3
2014-10-22 10:49:13: −1,3
2014-10-22 10:20:15: −1,4
2014-10-22 09:51:17: −1,4
вопрос - как получить данные и обработать до записи значения веб переменной в связанный объект?
туплю... не понимаю
-
- Сообщения: 469
- Зарегистрирован: Вт мар 12, 2013 1:22 am
- Благодарил (а): 41 раз
- Поблагодарили: 81 раз
Re: Не отображается график погоды
через методы, вот так: http://smartliving.ru/Main/ScMonitorHeatingPalko писал(а):вопрос - как получить данные и обработать до записи значения веб переменной в связанный объект?
туплю... не понимаю
В сценарии сохранять не через SetGlobal() а вызывая метод:
callMethod("ThisComputer.tempChanged",array("temp"=>$temp));
-
- Сообщения: 59
- Зарегистрирован: Вт авг 26, 2014 1:59 pm
- Откуда: Новосибирск
- Благодарил (а): 8 раз
- Поблагодарили: 6 раз
Re: Не отображается график погоды
сделал немного по другому,
редактируем последнюю запись уличной температуры в SQL.
может корявенько и не оптимально) но как смог, долго разбирался.. работает.
редактируем последнюю запись уличной температуры в SQL.
может корявенько и не оптимально) но как смог, долго разбирался.. работает.
СпойлерПоказать
$prop_id="121";
// такой ID у меня в SQL для history внешней температуры
$pvalue=SQLSelectOne("SELECT * FROM phistory WHERE VALUE_ID='".$prop_id."' ORDER BY ADDED DESC LIMIT 0 , 1");
$values = $pvalue[VALUE];
$values = str_replace(",",'.',$values);
$values = str_replace(" ","",$values);
$values = str_replace("−","-",$values);
$values = str_replace("+","",$values);
$pvalue[VALUE] = $values;
SQLUpdate('phistory', $pvalue);
SetTimeOut('TempToDigital','runScript("minus_out");',900);
// если температура не меняется, то скрипт не будет выполняться и в историю будут писаться не правленые значения. поэтому вызываем его сами с периодом меньше частоты опроса web переменных.
// такой ID у меня в SQL для history внешней температуры
$pvalue=SQLSelectOne("SELECT * FROM phistory WHERE VALUE_ID='".$prop_id."' ORDER BY ADDED DESC LIMIT 0 , 1");
$values = $pvalue[VALUE];
$values = str_replace(",",'.',$values);
$values = str_replace(" ","",$values);
$values = str_replace("−","-",$values);
$values = str_replace("+","",$values);
$pvalue[VALUE] = $values;
SQLUpdate('phistory', $pvalue);
SetTimeOut('TempToDigital','runScript("minus_out");',900);
// если температура не меняется, то скрипт не будет выполняться и в историю будут писаться не правленые значения. поэтому вызываем его сами с периодом меньше частоты опроса web переменных.