<?php
require_once dirname(__FILE__) . '/../../../core/php/core.inc.php';
// Liste des ids de capteurs et des variables Jeedom associées
$aEqui = array("3F000802939A4510" => "#[Chauffage][ChauffageSol][T°BallonRetour]#",
"470008027D4AF910" => "#[Chauffage][ChauffageSol][T°DepartPAC]#",
"1D0008027D26DD10" => "#[Chauffage][ChauffageSol][T°BallonDepart]#",
"F00008027D41BF10" => "#[Chauffage][ChauffageSol][T°RetourPAC]#",
"370008027D2F7A10" => "#[Chauffage][ChauffageSol][T°Cuisine1Retour]#",
"13000802937F4A10" => "#[Chauffage][ChauffageSol][T°CellierRetour]#",
"0B0008027D197510" => "#[Chauffage][ChauffageSol][T°SAM1Retour]#",
"E900080297538C10" => "#[Chauffage][ChauffageSol][T°SalonRetour]#",
"6E000802939C5C10" => "#[Chauffage][ChauffageSol][T°Cuisine2Retour]#",
"A50008027449B410" => "#[Chauffage][ChauffageSol][T°SAM2Retour]#",
"C5000802746CB910" => "#[Chauffage][ChauffageSol][T°VerandaRetour]#",
"B80008027D628110" => "#[Chauffage][ChauffageSol][T°ChbVergerRetour]#",
"2F0008027D1D1E10" => "#[Chauffage][ChauffageSol][T°PallierRetour]#",
"3F00080293A03D10" => "#[Chauffage][ChauffageSol][T°SdBEtageRetour]#",
"4A0008027D18BB10" => "#[Chauffage][ChauffageSol][T°RadiateurEtageSdBRetour]#",
"8F00000510179028" => "#[Chauffage][ChauffageSol][T°SdBRDCRetour]#",
"FB0000050FEFBB28" => "#[Chauffage][ChauffageSol][T°DressingRetour]#",
"6F000005100F0E28" => "#[Chauffage][ChauffageSol][T°SalleTVRetour]#",
"1A00000510091828" => "#[Chauffage][ChauffageSol][T°ChbRDCRetour]#",
"590000050FFD9E28" => "#[Chauffage][ChauffageSol][T°CollecteurSalleTVDepart]#",
"7E000006A3444E28" => "#[Chauffage][ChauffageSol][T°RadiateurSdBRDCRetour]#",
"720008027D647E10" => "#[Chauffage][ChauffageSol][T°ChbCourRetour]#",
"9A00080293985910" => "#[Chauffage][ChauffagePieces][T°ChbCour]#",
"8D0008027472B010" => "#[Chauffage][ChauffagePieces][T°ChbVerger]#",
"48000802937F5A10" => "#[Chauffage][ChauffagePieces][T°Exterieur]#",
"650008029742D210" => "#[Chauffage][ChauffagePieces][T°SaM]#",
"E50000051017B428" => "#[Chauffage][ChauffagePieces][T°Dressing]#",
"0A0000050FF41328" => "#[Chauffage][ChauffagePieces][T°SalleTV]#",
"03011464E5DFFF28" => "#[Chauffage][ChauffagePieces][T°ChbRDC]#",
"83000006A3294E28" =>"#[Chauffage][ChauffagePieces][T°Bureau]#",
"6E00010000339C7E" =>"#[Chauffage][ChauffagePieces][T°SdBBureau]#",
"CB0010000025087E" =>"#[Chauffage][ChauffagePieces][T°SdBRDC]#",
"140010000031777E" =>"#[Chauffage][ChauffagePieces][T°Cuisine]#",
"35000002124E8726" => "#[Chauffage][ChauffagePieces][T°Cave]#");
$url = "http://192.168.5.12/details.xml";
$xml = simplexml_load_file($url);
// erreur
if($xml === false)
{
exit();
}
$string = $xml->DevicesConnected;
var_dump($string);
cmd::byString("#[Chauffage][ChauffagePieces][nb sondes Cave]#")->event(($string));
log::add('script','debug',$string );
foreach($xml->owd_DS18B20 as $uneSonde)
{
$id = trim($uneSonde->ROMId);
if(isset($aEqui[$id]))
{
cmd::byString($aEqui[$id])->event($uneSonde->Temperature);
str_replace(".", ",", $unesonde);
}
}
foreach($xml->owd_DS18S20 as $uneSonde)
{
$id = trim($uneSonde->ROMId);
if(isset($aEqui[$id]))
{
cmd::byString($aEqui[$id])->event($uneSonde->Temperature);
str_replace(".", ",", $unesonde);
}
}
foreach($xml->owd_EDS0065 as $uneSonde)
{
$id = trim($uneSonde->ROMId);
if(isset($aEqui[$id]))
{
cmd::byString($aEqui[$id])->event($uneSonde->Temperature);
str_replace(".", ",", $unesonde);
}
}
foreach($xml->owd_DS2438 as $uneSonde)
{
$id = trim($uneSonde->ROMId);
if(isset($aEqui[$id]))
{
cmd::byString($aEqui[$id])->event($uneSonde->Temperature);
str_replace(".", ",", $unesonde);
}
}
$url = "http://192.168.5.11/details.xml";
$xml = simplexml_load_file($url);
// erreur
if($xml === false)
{
exit();
}
$string = $xml->DevicesConnected;
var_dump($string);
cmd::byString("#[Chauffage][ChauffageSol][nb sondes ChauffageSol]#")->event(($string));
log::add('script','debug',$string);
foreach($xml->owd_DS18S20 as $uneSonde)
{
$id = trim($uneSonde->ROMId);
if(isset($aEqui[$id]))
{
cmd::byString($aEqui[$id])->event($uneSonde->Temperature);
str_replace(".", ",", $unesonde);
}
}
foreach($xml->owd_DS18B20 as $uneSonde)
{
$id = trim($uneSonde->ROMId);
if(isset($aEqui[$id]))
{
cmd::byString($aEqui[$id])->event($uneSonde->Temperature);
}
}
foreach($xml->owd_EDS0065 as $uneSonde)
{
$id = trim($uneSonde->ROMId);
if(isset($aEqui[$id]))
{
cmd::byString($aEqui[$id])->event($uneSonde->Temperature);
str_replace(".", ",", $unesonde);
}
}
foreach($xml->owd_DS2438 as $uneSonde)
{
$id = trim($uneSonde->ROMId);
if(isset($aEqui[$id]))
{
cmd::byString($aEqui[$id])->event($uneSonde->Temperature);
str_replace(".", ",", $unesonde);
}
}
$url = "http://192.168.5.13/details.xml";
$xml = simplexml_load_file($url);
// erreur
if($xml === false)
{
exit();
}
$string = $xml->DevicesConnected;
var_dump($string);
cmd::byString("#[Chauffage][ChauffagePieces][nb sondes Chauffage]#")->event(($string));
log::add('script','debug',$string);
foreach($xml->owd_DS18B20 as $uneSonde)
{
$id = trim($uneSonde->ROMId);
if(isset($aEqui[$id]))
{
cmd::byString($aEqui[$id])->event($uneSonde->Temperature);
str_replace(".", ",", $unesonde);
}
}
foreach($xml->owd_DS18S20 as $uneSonde)
{
$id = trim($uneSonde->ROMId);
if(isset($aEqui[$id]))
{
cmd::byString($aEqui[$id])->event($uneSonde->Temperature);
str_replace(".", ",", $unesonde);
}
}
foreach($xml->owd_EDS0065 as $uneSonde)
{
$id = trim($uneSonde->ROMId);
if(isset($aEqui[$id]))
{
cmd::byString($aEqui[$id])->event($uneSonde->Temperature);
str_replace(".", ",", $unesonde);
}
}
foreach($xml->owd_DS2438 as $uneSonde)
{
$id = trim($uneSonde->ROMId);
if(isset($aEqui[$id]))
{
cmd::byString($aEqui[$id])->event($uneSonde->Temperature);
str_replace(".", ",", $unesonde);
}
}
//echo $xml->asXML();
?>
Voici mon script original en V3.
et attaché, xml.txt (5,9 Ko) mon xml.