public static function callOpenzwave($_url, $_serverId = 0, $_timeout = null, $_noError = false) { if (self::$_curl == null) { self::$_curl = curl_init(); } if (self::$_listZwaveServer == null) { self::listServerZwave(); } $url = 'http://' . self::$_listZwaveServer[$_serverId]['addr'] . ':' . self::$_listZwaveServer[$_serverId]['port'] . $_url; $ch = self::$_curl; curl_setopt_array($ch, array(CURLOPT_URL => $url, CURLOPT_HEADER => false, CURLOPT_RETURNTRANSFER => true)); if ($_timeout !== null) { curl_setopt($ch, CURLOPT_TIMEOUT_MS, $_timeout); } $result = curl_exec($ch); if ($_noError) { return $result; } if (curl_errno($ch)) { $curl_error = curl_error($ch); throw new Exception(__('Echec de la requete http : ', __FILE__) . $url . ' Curl error : ' . $curl_error, 404); } if (is_json($result)) { return json_decode($result, true); } else { return $result; } }