NEWS
Wetterdaten an wetterarchiv.de schicken
-
Hallo
habe per php bereits ein script am laufen, welches die Daten meiner Wetterstation an wetter.com (wetterarchiv.de) schickt.
würde dies nun durch iobroker erledigen lassen.
php Script:
! ````
$pwd_wetter='xxxxxxxx';
$id_wetter='yyyyyy';
! $error[100]='ID not found';
$error[101]='Password not found';
$error[102]='ID or Password not found';
$error[103]='Date not found or date syntax error';
$error[110]='Software-ID not found';
$error[111]='ID locked';
$error[200]='Method Not Allowed';
$error[201]='Syntax error';
$error[202]='No parameter received';
$error[203]='Less than 5 weather parameter';
$error[500]='Database error';
$error[501]='Request cannot be completed';
$error[502]='Request cannot be processed';
! $utc = gmdate("YmdHi", time());
$date = date("YmdHi", time());
! echo 'utc: '.$utc.'
';
echo 'local: '.$date.'
';$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => "http://interface.wetterarchiv.de/weather?test=true&id=$id_wetter&pwd=$pwd_wetter&dtutc=$utc&dt=$date&te=$aussentemp&ws=$windsensor",
CURLOPT_USERAGENT => 'Codular Sample cURL Request'
));! $resp = curl_exec($curl);
! curl_close($curl);
! $abfrage=json_decode($resp);
echo '
Status:'.$abfrage->status;
echo '
Version:'.$abfrage->version;
if ($abfrage->info!='')
{
echo '
Info';
echo '
'.$abfrage->info.'';
echo '
'.$abfrage->log.'';
}
if ($abfrage->status=='error')
{
echo '
Error';
echo '
'.$abfrage->errormessage.'';
echo '
'.$abfrage->errorcode.'';
}habe es in iobroker so umgesetzt: >! ```` function uebermitteln() { var error = new Array(); error[100]='ID not found'; error[101]='Password not found'; error[102]='ID or Password not found'; error[103]='Date not found or date syntax error'; error[110]='Software-ID not found'; error[111]='ID locked'; error[200]='Method Not Allowed'; error[201]='Syntax error'; error[202]='No parameter received'; error[203]='Less than 5 weather parameter'; error[500]='Database error'; error[501]='Request cannot be completed'; error[502]='Request cannot be processed'; >! var pwd_wetter ='xxxxxxxx'; var id_wetter ='yyyyyy'; var date = new Date(); var std_2 =date.getHours()-2; var monat =date.getMonth()+1; var zeit_lokal = date.getFullYear()+'.'+monat+'.'+date.getDate()+' '+date.getHours()+':'+date.getMinutes()+':'+date.getSeconds(); var zeit_utc = date.getFullYear()+'.'+monat+'.'+date.getDate()+' '+std_2+':'+date.getMinutes()+':'+date.getSeconds(); var aussentemp =getState("javascript.0.Daten.Status.Aussentemp").val; var wind =getState("javascript.0.Daten.Status.Wind").val; >! var request = require('request'); log ('http://interface.wetterarchiv.de/weather?test=true&id='+id_wetter+'&pwd='+pwd_wetter+'&dtutc='+zeit_utc+'&dt='+zeit_lokal+'&te='+aussentemp+'&ws='+wind+''); var options = { url: 'http://interface.wetterarchiv.de/weather?test=true&id='+id_wetter+'&pwd='+pwd_wetter+'&dtutc='+zeit_utc+'&dt='+zeit_lokal+'&te='+aussentemp+'&ws='+wind+'', headers: { 'Authorization': 'Basic YWRtaW46OHAABBCCYQG8=', 'Returntransfer': '1', 'Accept-Language': 'en-US,en;q=0.8,de;q=0.6', 'User-Agent': 'Codular Sample cURL Request', 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8' }, body: ' <xs:nml xmlns:xs="http://www.netgear.com/protocol/transaction/NMLSchema-0.9" xmlns="urn:netgear:nas:readynasd" src="dpv_1490124698000" dst="nas"><xs:transaction id="njl_id_12134"> <xs:custom id="njl_id_12133" name="Halt" resource-id="Shutdown" resource-type="System"> <shutdown halt="true" fsck="false"></shutdown> </xs:custom> </xs:transaction></xs:nml> ' }; >! request.post(options, function(error, response, body) { if (error) { // auf Fehler reagieren log ('error: '+error); log ('response: '+response); log ('body: '+body); } else { // mit der Antwort was machen log ('kein fehler'); log ('error: '+error); log ('response: '+response); log ('body: '+body); } >! }); } >! uebermitteln(); //wird später per schedul angestossen
bekomme aber leider es nicht hin, das ich den response ausgeben kann, im log steht immer nur [object object].
Passt der Code so einigermassen???????