vk-ai-system/flask_inference_api3
0
1<!DOCTYPE html>2<html>3 <head>4 <meta charset="utf-8" />5 <meta name="viewport" content="width=device-width" />6 <link rel="icon" type="image/ico" href="https://huggingface.co/spaces/vk-ai-system/flask_inference_api3/resolve/main/list.ico">7 <title>My static Space</title>8<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">9 10 11<style>12input[type="number"]::-webkit-inner-spin-button, 13input[type="number"]::-webkit-outer-spin-button {14 -webkit-appearance: inner-spin-button;15 opacity: 1;16}17 18input[type="number"] {19 -moz-appearance: textfield;20}21 22</style>23 24 25 </head>26<body>27 28 29<nav class="navbar navbar-light bg-light">30 <a class="navbar-brand" href="https://vk-ai-system-flask-inference-api3.hf.space/settings">31 <img src="https://huggingface.co/spaces/vk-ai-system/flask_inference_api3/resolve/main/list.png" width="30" height="30" class="d-inline-block align-top" alt="">32 MackorLab33 </a>34 <form class="form-inline">35 <button id="st_onl" class="btn btn-outline-success" type="button" >Онлайн</button>36 <button id="st_set" class="btn btn-success" type="button" >Настройки</button>37 <button id="st_graf" class="btn btn-outline-success" type="button" >Графики</button>38 </form>39</nav>40 41 42 43 44 45 46<div class="container mt-3">47 <div class="container text-center"> 48 <h1>Настройки системы</h1>49 </div> <br>50 51 52 53<div class="card-deck">54 <div class="card">55 56 <div class="card-body">57 <!-- Уровень - PH --> <div class="container text-center"> 58 <h4>Уровень pH</h4> </div>59 <p>EEPROM : <span id="pH_eep"></span></p> 60 <form>61 <label for="pH_set">Новое : </label>62 <input type="number" id="pH_set" value="5.7" min="1" max="14" step="0.01">63 </form>64 </div>65 <div class="card-footer">66 <button id="pH_set_but" type="button" class="btn btn-success btn-lg">Записать</button>67 </div>68 </div>69 <div class="card">70 71 <div class="card-body">72 <!-- PH ON - sec -->73 <h4>pH доз. ON sec.</h4> 74 <p>EEPROM : <span id="ph_on_eep"></span></p>75 <form>76 <label for="ph_on_set">Новое : </label>77 <input type="number" id="ph_on_set" value="2.5" min="0.1" max="20" step="0.01">78 </form>79 </div>80 <div class="card-footer">81 <button id="ph_on_set_but" type="button" class="btn btn-success btn-lg">Записать</button>82 </div>83 </div>84 <div class="card">85 86 <div class="card-body">87 <h4>Уровень EC</h4> 88 <p>EEPROM : <span id="ec_eep"></span></p>89 90<form>91 <label for="ec_set">Новое : </label>92 <input type="number" id="ec_set" value="0.85" min="0.1" max="4" step="0.01">93</form>94 </div>95 <div class="card-footer">96 <button id="ec_set_but" type="button" class="btn btn-success btn-lg">Записать</button>97 </div>98 </div>99</div>100 101 102<br>103 104<div class="card-deck">105 <div class="card">106 107 <div class="card-body">108 <h4>EC доз. A_ON sec.</h4> 109 <p>EEPROM : <span id="ec_A_eep"></span></p>110 111<form>112 <label for="ec_A_set">Новое : </label>113 <input type="number" id="ec_A_set" value="1.5" min="0.1" max="20" step="0.01">114</form>115 </div>116 <div class="card-footer">117 <button id="ec_A_set_but" type="button" class="btn btn-success btn-lg">Записать</button>118 </div>119 </div>120 <div class="card">121 122 <div class="card-body">123 <h4>EC доз. B_ON sec.</h4> 124 <p>EEPROM : <span id="ec_B_eep"></span></p>125 126<form>127 <label for="ec_B_set">Новое : </label>128 <input type="number" id="ec_B_set" value="1.5" min="0.1" max="20" step="0.01">129</form> 130 </div>131 <div class="card-footer">132 <button id="ec_B_set_but" type="button" class="btn btn-success btn-lg">Записать</button>133 </div>134 </div>135 <div class="card">136 137 <div class="card-body">138 <h4>EC доз. C_ON sec.</h4> 139 <p>EEPROM : <span id="ec_C_eep"></span></p>140 141<form>142 <label for="ec_C_set">Новое : </label>143 <input type="number" id="ec_C_set" value="1.5" min="0.1" max="20" step="0.01">144</form> 145 </div>146 <div class="card-footer">147 <button id="ec_C_set_but" type="button" class="btn btn-success btn-lg">Записать</button>148 </div>149 </div>150</div>151 152 153 154<br>155 156 157 158<div class="card-deck">159 <div class="card">160 161 <div class="card-body">162 <h4>Свет ON </h4> 163 <p>EEPROM: <span id="l_ON_h_eep"></span> : <span id="l_ON_m_eep"></span></p>164<form>165 <label for="l_ON_h_set">Новое h : </label>166 <input type="number" id="l_ON_h_set" value="12" min="0" max="23" step="1">167</form> 168<form>169 <label for="l_ON_m_set">Новое m : </label>170 <input type="number" id="l_ON_m_set" value="30" min="0" max="59" step="1">171</form> 172 </div>173 <div class="card-footer">174 <button id="l_ON_set" type="button" class="btn btn-success btn-lg">Записать</button>175 </div>176 </div>177 <div class="card">178 179 <div class="card-body">180 <h4>Свет OFF </h4> 181 <p>EEPROM: <span id="l_OFF_h_eep"></span> : <span id="l_OFF_m_eep"></span></p>182<form>183 <label for="l_OFF_h_set">Новое h : </label>184 <input type="number" id="l_OFF_h_set" value="12" min="0" max="23" step="1">185</form> 186<form>187 <label for="l_OFF_m_set">Новое m : </label>188 <input type="number" id="l_OFF_m_set" value="30" min="0" max="59" step="1">189</form> 190 </div>191 <div class="card-footer">192 <button id="l_OFF_set" type="button" class="btn btn-success btn-lg">Записать</button>193 </div>194 </div>195 <div class="card">196 197 <div class="card-body">198 <h4>Тем. воздуха</h4> 199 <p>EEPROM : <span id="t_Voz_eep"></span></p>200 201<form>202 <label for="t_Voz_eep_set">Новое : </label>203 <input type="number" id="t_Voz_eep_set" value="25" min="10" max="40" step="1">204</form> 205 </div>206 <div class="card-footer">207 <button id="t_Voz_set" type="button" class="btn btn-success btn-lg">Записать</button>208 </div>209 </div>210</div>211 212 213 214<br><br><br><br>215 216 217 218 219</div>220 221 222<script>223 document.getElementById("st_onl").addEventListener("click", function() {224 window.location.href = "https://vk-ai-system-flask-inference-api3.hf.space/online";225 });226</script>227 228 229<script>230 document.getElementById("st_set").addEventListener("click", function() {231 window.location.href = "https://vk-ai-system-flask-inference-api3.hf.space/settings";232 });233</script>234 235 236<script>237 document.getElementById("st_graf").addEventListener("click", function() {238 window.location.href = "https://vk-ai-system-flask-inference-api3.hf.space/settings";239 });240</script>241 242 243 244 245 246 247 248<script>249 // Функция, которая будет выполняться при загрузке страницы250 window.onload = function() {251 // Создаем запрос252 var xhr = new XMLHttpRequest();253 xhr.open("GET", "/set_res", true);254 // Отправляем запрос255 xhr.send();256 };257</script>258 259 260 261 262 263 264 265 266 267 268 269 <script>270 271 272 function updateValues(data) {273 document.getElementById("pH_eep").textContent = data.ph_eep;274 document.getElementById("ph_on_eep").textContent = data.ph_on_eep;275 document.getElementById("ec_eep").textContent = data.ec_eep;276 document.getElementById("ec_A_eep").textContent = data.ec_A_eep; 277 document.getElementById("ec_B_eep").textContent = data.ec_B_eep; 278 document.getElementById("ec_C_eep").textContent = data.ec_C_eep; 279 document.getElementById("l_ON_h_eep").textContent = data.l_ON_h_eep;280 document.getElementById("l_ON_m_eep").textContent = data.l_ON_m_eep; 281 document.getElementById("l_OFF_h_eep").textContent = data.l_OFF_h_eep;282 document.getElementById("l_OFF_m_eep").textContent = data.l_OFF_m_eep; 283 document.getElementById("t_Voz_eep").textContent = data.t_Voz_eep; 284 285 }286 287 function fetchValues() {288 var xhr = new XMLHttpRequest();289 xhr.open("GET", "/settings_api", true);290 xhr.setRequestHeader("Content-Type", "application/json");291 xhr.onreadystatechange = function () {292 if (xhr.readyState === 4 && xhr.status === 200) {293 var response = JSON.parse(xhr.responseText);294 updateValues(response);295 }296 };297 xhr.send();298 }299 300 fetchValues();301 setInterval(fetchValues, 10000);302 </script>303 304 305 306 307 308 309 310 311 312 313 <script>314 document.getElementById("pH_set_but").addEventListener("click", function() {315 var pHValue = document.getElementById("pH_set").value;316 var xhr = new XMLHttpRequest();317 xhr.open("GET", "/pH_set?value=" + pHValue, true);318 xhr.send();319});320 </script>321 322 323 <script>324 document.getElementById("ph_on_set_but").addEventListener("click", function() {325 var pH_onValue = document.getElementById("ph_on_set").value;326 var xhr = new XMLHttpRequest();327 xhr.open("GET", "/ph_on_set?value=" + pH_onValue, true);328 xhr.send();329});330 </script>331 332 333 <script>334 document.getElementById("ec_set_but").addEventListener("click", function() {335 var ecValue = document.getElementById("ec_set").value;336 var xhr = new XMLHttpRequest();337 xhr.open("GET", "/EC_set?value=" + ecValue, true);338 xhr.send();339});340 </script>341 342 <script>343 document.getElementById("ec_A_set_but").addEventListener("click", function() {344 var ec_A_setValue = document.getElementById("ec_A_set").value;345 var xhr = new XMLHttpRequest();346 xhr.open("GET", "/ec_A_set?value=" + ec_A_setValue, true);347 xhr.send();348});349 </script>350 351 352 <script>353 document.getElementById("ec_B_set_but").addEventListener("click", function() {354 var ec_B_setValue = document.getElementById("ec_B_set").value;355 var xhr = new XMLHttpRequest();356 xhr.open("GET", "/ec_B_set?value=" + ec_B_setValue, true);357 xhr.send();358});359 </script>360 361 362 <script>363 document.getElementById("ec_C_set_but").addEventListener("click", function() {364 var ec_C_setValue = document.getElementById("ec_C_set").value;365 var xhr = new XMLHttpRequest();366 xhr.open("GET", "/ec_C_set?value=" + ec_C_setValue, true);367 xhr.send();368});369 </script>370 371 <script>372 document.getElementById("ec_C_set_but").addEventListener("click", function() {373 var ec_C_setValue = document.getElementById("ec_C_set").value;374 var xhr = new XMLHttpRequest();375 xhr.open("GET", "/ec_C_set?value=" + ec_C_setValue, true);376 xhr.send();377});378 </script>379 380 381 382 <script>383 document.getElementById("l_ON_set").addEventListener("click", function() {384 var l_ON_h_set = document.getElementById("l_ON_h_set").value;385 var l_ON_m_set = document.getElementById("l_ON_m_set").value;386 var xhr = new XMLHttpRequest();387 xhr.open("GET", "/l_ON_set?l_ON_h_set=" + l_ON_h_set + "&l_ON_m_set=" + l_ON_m_set, true);388 xhr.send();389 });390 </script> 391 392 <script>393 document.getElementById("l_OFF_set").addEventListener("click", function() {394 var l_OFF_h_set = document.getElementById("l_OFF_h_set").value;395 var l_OFF_m_set = document.getElementById("l_OFF_m_set").value;396 var xhr = new XMLHttpRequest();397 xhr.open("GET", "/l_OFF_set?l_OFF_h_set=" + l_OFF_h_set + "&l_OFF_m_set=" + l_OFF_m_set, true);398 xhr.send();399 });400 </script> 401 402 <script>403 document.getElementById("t_Voz_set").addEventListener("click", function() {404 var t_Voz_eep_set = document.getElementById("t_Voz_eep_set").value;405 var xhr = new XMLHttpRequest();406 xhr.open("GET", "/t_Voz_eep_set?value=" + t_Voz_eep_set, true);407 xhr.send();408});409 </script> 410</body>411</html>