This way over my league, but its had been nice to get I wok.
I haven’t had many week with HA and I’m cant coding. Most of what I have achieve, is basically google and forum, copy code and manage to get I work.
Im not expect someone is going to write the hole code, but its been nice to get started…
I have today an Exvent ventialtion ( https://www.exvent.no/product/pelican-z/ ) with eAir. I can do basic control and graph reading from web interface ( https://my.enervent.com/ ).
The goal is simple, is to controlling the ventilation unit true HA with using virtual thermostats and cards. The problem is, how to collect data and set data ?
After logged in, I have an huge copy of the small control panel at the wall.
I can change temperature, boost and overpressure with just a click. Change effect in milliseconds. Im also able to read a lot of statistic and graph from Measurements, data I want to log in HA and create lovelace graph.
The way from here is defuse, but I need a way to let HA login to the page and grab information and transfer that to virtual thermostat. Also function, as +/- temp, boost, overpressure, and some file.
index
type or paste code <!DOCTYPE html>
<!-- <html manifest="cache.manifest"> -->
<html>
<head>
<title>Enervent eAir web</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="viewport" content="initial-scale=1, maximum-scale=3">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" >
<link rel="icon" href="lib/ensto/eapi-hyco-ui/img/favicon.ico" sizes="16x16 24x24 32x32 48x48 64x64" type="image/vnd.microsoft.icon">
<link rel="stylesheet" href="lib/ensto/eapi-hyco-ui/css/eair-web.css" />
<script type="text/javascript" src="lib/ensto/eapi-hyco-ui/js/eair-web.js"></script>
<script type="text/javascript" src="/socket.io/socket.io.js"></script>
</head>
<body ondragover="return false">
<script>
function dropHandler(ev) {
ev.preventDefault();
var key = Object.keys(eAPI.fn.ucpCore.devices)[0];
var file;
for (var i = 0; i < ev.dataTransfer.files.length; i++) {
file = ev.dataTransfer.files[i];
}
var formData = new FormData();
formData.append("file", file);
formData.append("key", key);
eAPI.update(formData);
}
try {
if (!window.console) {var console = {};}
if (!console.log) {console.log = function() {};}
if (!document.addEventListener) {
document.write('<div id="notsupp">Browser not supported.</div>');
} else {
eAPI.core.loader.onloadCb[0]();
eAPI.core.loader.onloadCb[1]();
}
} catch (e) {
console.log('error:', e);
}
</script>
<noscript><br>JavaScript is off. Please enable to view full site.</noscript>
</body>
</html>
here
eair.web.js ( link)
socket.io.js