Метод у меня называется не "cbr", а "nbrb". И одно из свойств, не "EURO", а "EUR".
if (!$file){
DebMes("CBR error");
return;
}
// USD
$xml = $file->xpath("//Currency[@Id='145']");
$valute = strval($xml[0]->Rate);
$this->setProperty('USD', round(str_replace(",",".",$valute)*100)/100);
// EURO
$xml = $file->xpath("//Currency[@Id='19']");
$valute = strval($xml[0]->Rate);
$this->setProperty('EUR', round(str_replace(",",".",$valute)*100)/100);
// RUB
$xml = $file->xpath("//Currency[@Id='190']");
$valute = strval($xml[0]->Rate);
$this->setProperty('RUB', round(str_replace(",",".",$valute)*100)/100);
$this->setProperty("uptime",date("d.m.Y - H:i:s",time()));
$this->setProperty("updatedTimestamp",time());
say("Обновлены курсы валют",2);
Чтобы заставить всё работать у меня в методе "onNewHour" запускается скрипт "ifstart":
// раскидываем дату и время
$day[0]="воскресенье";
$day[1]="понедельник";
$day[2]="вторник";
$day[3]="среда";
$day[4]="четверг";
$day[5]="пятница";
$day[6]="суббота";
$month[1]="января";
$monthAlt[1]="Январь";
$month[2]="февраля";
$monthAlt[2]="Февраль";
$month[3]="марта";
$monthAlt[3]="Март";
$month[4]="апреля";
$monthAlt[4]="Апрель";
$month[5]="мая";
$monthAlt[5]="Май";
$month[6]="июня";
$monthAlt[6]="Июнь";
$month[7]="июля";
$monthAlt[7]="Июль";
$month[8]="августа";
$monthAlt[8]="Август";
$month[9]="сентября";
$monthAlt[9]="Сентябрь";
$month[10]="октября";
$monthAlt[10]="Октябрь";
$month[11]="ноября";
$monthAlt[11]="Ноябрь";
$month[12]="декабря";
$monthAlt[12]="Декабрь";
sg("ThisComputer.DateD",date( "d", time()));
sg("ThisComputer.DateM",date( "m", time()));
sg("ThisComputer.DateY",date( "Y", time()));
sg("ThisComputer.Date",date( "d.m.Y", time()));
sg("ThisComputer.Day",$day[date("w")]);
sg("ThisComputer.Month",$month[date("n")]);
sg("ThisComputer.MonthAlt",$monthAlt[date("n")]);
//дни рождения, проверять при условии разрешения в установках и в 11-00
if ((gg("Sets.checkBirthday"))&&($h=="11")) {
runScript("birthday");
}
if (isOnline("Internet")) {
// обновим прогноз погоды
setTimeOut('MinskSensor','callMethod("Minsk.sensors");',3);
// обновим курс валюты каждые 4 часа
if (!($h%4)) {callMethod("nbrb.update");}
} else {
say ("Проверить погоду и курсы валют пока не могу, так как нет доступа в интеренет. Попробую сделать это через один час. ",-1);
}
callMethod("nbrb.update");