Здравствуйте, У меня проблемы с массивом. У меня есть массив строк ( String inOut [10]; ). В функции настройки у меня есть для l oop, где я заполняю массив "0.0.0.0.0.0.0.0.0.0".
Я использую его как значения для своего веб-сервера. Каждое значение между точками имеет адрес. Я использую функции "inOutSet" и "inOutGet" для работы со строкой (чтобы получить значение c или изменить значение c).
Все работает, если я пытаюсь изменить значение например, из функции l oop, но если я вызываю функцию inOutSet () на сервере, я получаю сообщение об ошибке.
Как работает мой код: Когда я включаю какой-либо флажок на веб-странице, javascript отправляет запрос XMLHttpRequest несколько раз. Следующий запрос отправляется, только если предыдущий запрос отправляет ответ обратно. Таким образом, я создаю сообщение, состоящее из 6 слов, которые обрабатывает функция процессора. Пример сообщения: «0 X0 ID 0 X0 H» означает, что в индексе 0 (inOut [0]) измените значение в позиции 0 (то есть первое число) на значение 0 + X0 = 0. Эти значения затем используются в функции процессора в выражении "else if (var ==" H ")". Функция inOutSet (msgId, msgPos, tempString) с параметрами из сообщения выполняется, и я получаю сообщение об ошибке. Значения, которые отправляются с веб-сайта, верны. Они отображаются перед выполнением функции inOutSet.
Вот мой вывод терминала (я использую visual studio с platform.io):
Connecting to WiFi..
192.168.43.183
Original string: 0.0.0.0.0.0.0.0.0.0
Index Value of . is 11
Value inOut: 0.0.0.0.0.99.0.0.0.0
Original string: 0.0.0.0.0.99.0.0.0.0
Index Value of . is 18
Value inOut: 0.0.0.0.0.99.0.0.99.0
Original string: 0.0.0.0.0.99.0.0.99.0
Index Value of . is 9
Value inOut: 0.0.0.0.99.99.0.0.99.0
Original string: 0.0.0.0.99.99.0.0.99.0
Index Value of . is 5
Value inOut: 0.0.99.0.99.99.0.0.99.0
Original string: 0.0.99.0.99.99.0.0.99.0
Index Value of . is 14
Value inOut: 0.0.99.0.99.5.0.0.99.0
Original string: 0.0.99.0.99.5.0.0.99.0
Index Value of . is 20
Value inOut: 0.0.99.0.99.5.0.0.8.0
Original string: 0.0.99.0.99.5.0.0.8.0
Index Value of . is 11
Value inOut: 0.0.99.0.4.5.0.0.8.0
Original string: 0.0.99.0.4.5.0.0.8.0
Index Value of . is 1
Value inOut: 2.0.99.0.4.5.0.0.8.0
// КОНЕЦ РУКОВОДСТВА ПО ИСПОЛЬЗОВАНИЮ ФУНКЦИИ inOutSet (). До сих пор функция работает. Затем Процессор записывает, какие сообщения он получил. Он хочет изменить индекс 0, положение 0 на значение 61. Он находит, что индекс первой точки находится на позиции 1, и он должен изменить первый ноль ("0.0.0.0 .0.0.0.0.0.0 ")" 61 "в этом случае. Но он пишет CT_HTTP. И другое дерьмо после изменения значения в сообщении. ПОЧЕМУ?
Processor in: 0
Processor in: X0
Processor in: ID
Processor in: 6
Processor in: X1
Processor in: H
Arrived values:
Original string: 2.0.99.0.4.5.0.0.8.0
Index Value of . is 1
Value inOut: CT_HTTP.0.99.0.4.5.0.0.8.0
msg id 0: CT_HTTP.0.99.0.4.5.0.0.8.0
Processor in: 0
Processor in: X0
Processor in: ID
Processor in: 0
Processor in: X0
Processor in: H
Arrived values:
Original string: CT_HTTP.0.99.0.4.5.0.0.8.0
Index Value of . is 7
Value inOut: .0.99.0.4.5.0.0.8.0
msg id 0: .0.99.0.4.5.0.0.8.0
Processor in: 0
Processor in: X0
Processor in: ID
Processor in: 3
Processor in: X9
Processor in: H
Arrived values:
Original string: .0.99.0.4.5.0.0.8.0
Index Value of . is 0
Value inOut: NOT_USED.0.99.0.4.5.0.0.8.0
msg id 0: NOT_USED.0.99.0.4.5.0.0.8.0
Каждый раз, когда я изменяю значение, которое должно быть записано в строку, текст, который выводит мне терминал, является другим. Я показал вам больше примеров с другими значениями.
Вот моя программа:
#include <Arduino.h>
#include <ESP8266WiFi.h>
#include <ESPAsyncTCP.h>
#include <ESPAsyncWebServer.h>
#include <FS.h>
#include <Wire.h>
const char* ssid = "Test";
const char* password = "12345678";
// Stores LED state
String ledState;
// Create AsyncWebServer object on port 80
AsyncWebServer server(80);
#define ledPin 2 //BuiltInLed is inverted
#define countMax 2500
#define multiplyMax 100
int count = 0, multiply = 0;
int nr1=0, nr2=0,msgPos, msgId, msgVar;
String inOut[10];
String tempStr1, tempStr2;
/*
PINS i can use as In/Out-puts:
0, 2, 12, 13, 14, 15, 16, / 1x Analog in 0
Only pin 15 is not PWM
Pin0 = D3; Pin14 = D5
Pin2 = D4; Pin15 = D8
pin12= D6; Pin16 = D0
Pin13= D7;
*/
//***************************************
/*Set value of String[] on the nrPos to val*/
void inOutSet(int nrX, int nrPos, String val)
{
tempStr1 = inOut[nrX];
Serial.print("Original string: "); Serial.println(tempStr1);
int tempPos = 0;
if (nrPos != 0)
{
tempPos = -1;
for (int i = 0; i < nrPos; i++)
{
tempPos = tempStr1.indexOf(".", tempPos+1);
}
tempStr1 = inOut[nrX].substring(0, tempPos)+".";
tempPos = inOut[nrX].indexOf(".", tempPos+1);
tempStr2 = inOut[nrX].substring(tempPos);
}
else
{
tempPos = tempStr1.indexOf(".", tempPos);
tempStr1 = "";
tempStr2 = inOut[nrX].substring(tempPos);
}
Serial.print("Index Value of . is ");Serial.println(tempPos);
inOut[nrX] = tempStr1+val+tempStr2;
Serial.print("Value inOut: ");Serial.println(inOut[nrX]);
}
String inOutGet(int nrX, int nrPos)
{
tempStr1 = inOut[nrX];
int tempPos =0;
if (nrPos != 0)
{
tempPos = -1;
for (int i = 0; i < nrPos; i++)
{
tempPos = tempStr1.indexOf(".", tempPos+1);
}
tempStr1 = inOut[nrX].substring(tempPos+1);
//Serial.print("tempString 1 - ");Serial.println(tempStr1);
tempPos = tempStr1.indexOf(".");
tempStr1 = tempStr1.substring(0, tempStr1.indexOf(".", tempPos));
//Serial.print("tempString 1.1- ");Serial.println(tempStr1);
}
return tempStr1;
}
void stat()
{
Serial.println(msgId);
Serial.println(msgVar);
}
String dataRequest()
{
String tempOut = "g";
msgId = nr1;
tempOut = tempOut+nr1+".";
nr1 = 0; nr2 = 0;
Serial.print("Data Request: ");
Serial.println(msgId);
Serial.print("Returning value: ");
tempOut += inOut[msgId];
Serial.println(tempOut);
Serial.println("Data Request end----");
return tempOut;
}
// Handles headers
String processor(const String& var){
Serial.print("Processor in: "); Serial.println(var);
String tempString;
if (var == "0") { nr1=0; return var;}
if (var == "1") { nr1=10; return var;}
if (var == "2") { nr1=20; return var;}
if (var == "3") { nr1=30; return var;}
if (var == "4") { nr1=40; return var;}
if (var == "5") { nr1=50; return var;}
if (var == "6") { nr1=60; return var;}
if (var == "7") { nr1=70; return var;}
if (var == "8") { nr1=80; return var;}
if (var == "9") { nr1=90; return var;}
if (var == "X0") { nr2=0; return var;}
if (var == "X1") { nr2=1; return var;}
if (var == "X2") { nr2=2; return var;}
if (var == "X3") { nr2=3; return var;}
if (var == "X4") { nr2=4; return var;}
if (var == "X5") { nr2=5; return var;}
if (var == "X6") { nr2=6; return var;}
if (var == "X7") { nr2=7; return var;}
if (var == "X8") { nr2=8; return var;}
if (var == "X9") { nr2=9; return var;}
if (var == "ID")
{
msgId = nr1;
msgPos = nr2;
nr1 = 0; nr2 = 0;
return var;
}
else if (var == "H")
{
msgVar = nr1+nr2;
nr1 = 0; nr2 = 0;
if (msgVar >= 99) {msgVar = 100;}
Serial.println("Arrived values: ");
tempString = ""+msgVar;
inOutSet(msgId, msgPos, tempString);
Serial.print("msg id ");Serial.print(msgId); Serial.print(": ");
Serial.println(inOut[msgId]);
return var;
}
else if (var == "G")
{
nr1 = nr1/10;
return dataRequest();
}
return "error";
}
void setup() {
pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, LOW);
Serial.begin(9600);
// filling the array with zeroes
for (int i = 0; i < 9; i++)
{
inOut[i] = "0.0.0.0.0.0.0.0.0.0";
}
if(!SPIFFS.begin()){Serial.println("\nSPIFFS chyba!"); return;}
// Connect to Wi-Fi
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
Serial.println("Connecting to WiFi..");
}
// Print ESP32 Local IP Address
Serial.println(WiFi.localIP());
// Route for root / web page
server.on("/", HTTP_GET, [](AsyncWebServerRequest *request){
request->send(SPIFFS, "/index.html", String(), false, processor);
});
//route to favicon
server.on("favicon.ico", HTTP_GET, [](AsyncWebServerRequest *request){
request->send(SPIFFS, "/favicon.png", "image/png");
});
// Route to load style.css file
server.on("/style.css", HTTP_GET, [](AsyncWebServerRequest *request){
request->send(SPIFFS, "/style.css", "text/css");
});
// Route to javascript
server.on("/main.js", HTTP_GET, [](AsyncWebServerRequest *request){
request->send(SPIFFS, "/main.js", "text/javascript");
});
// Nr1 of the msg
server.on("/0", HTTP_GET, [](AsyncWebServerRequest *request){
request->send_P(200, "text/plain", processor("0").c_str());
});
server.on("/1", HTTP_GET, [](AsyncWebServerRequest *request){
request->send_P(200, "text/plain", processor("1").c_str());
});
server.on("/2", HTTP_GET, [](AsyncWebServerRequest *request){
request->send_P(200, "text/plain", processor("2").c_str());
});
server.on("/3", HTTP_GET, [](AsyncWebServerRequest *request){
request->send_P(200, "text/plain", processor("3").c_str());
});
server.on("/4", HTTP_GET, [](AsyncWebServerRequest *request){
request->send_P(200, "text/plain", processor("4").c_str());
});
server.on("/5", HTTP_GET, [](AsyncWebServerRequest *request){
request->send_P(200, "text/plain", processor("5").c_str());
});
server.on("/6", HTTP_GET, [](AsyncWebServerRequest *request){
request->send_P(200, "text/plain", processor("6").c_str());
});
server.on("/7", HTTP_GET, [](AsyncWebServerRequest *request){
request->send_P(200, "text/plain", processor("7").c_str());
});
server.on("/8", HTTP_GET, [](AsyncWebServerRequest *request){
request->send_P(200, "text/plain", processor("8").c_str());
});
server.on("/9", HTTP_GET, [](AsyncWebServerRequest *request){
request->send_P(200, "text/plain", processor("9").c_str());
});
// Nr2 of the msg
server.on("/X0", HTTP_GET, [](AsyncWebServerRequest *request){
request->send_P(200, "text/plain", processor("X0").c_str());
});
server.on("/X1", HTTP_GET, [](AsyncWebServerRequest *request){
request->send_P(200, "text/plain", processor("X1").c_str());
});
server.on("/X2", HTTP_GET, [](AsyncWebServerRequest *request){
request->send_P(200, "text/plain", processor("X2").c_str());
});
server.on("/X3", HTTP_GET, [](AsyncWebServerRequest *request){
request->send_P(200, "text/plain", processor("X3").c_str());
});
server.on("/X4", HTTP_GET, [](AsyncWebServerRequest *request){
request->send_P(200, "text/plain", processor("X4").c_str());
});
server.on("/X5", HTTP_GET, [](AsyncWebServerRequest *request){
request->send_P(200, "text/plain", processor("X5").c_str());
});
server.on("/X6", HTTP_GET, [](AsyncWebServerRequest *request){
request->send_P(200, "text/plain", processor("X6").c_str());
});
server.on("/X7", HTTP_GET, [](AsyncWebServerRequest *request){
request->send_P(200, "text/plain", processor("X7").c_str());
});
server.on("/X8", HTTP_GET, [](AsyncWebServerRequest *request){
request->send_P(200, "text/plain", processor("X8").c_str());
});
server.on("/X9", HTTP_GET, [](AsyncWebServerRequest *request){
request->send_P(200, "text/plain", processor("X9").c_str());
});
//end commands for processor
server.on("/ID", HTTP_GET, [](AsyncWebServerRequest *request){
request->send_P(200, "text/plain", processor("ID").c_str());
});
server.on("/H", HTTP_GET, [](AsyncWebServerRequest *request){
request->send_P(200, "text/plain", processor("H").c_str());
});
server.on("/G", HTTP_GET, [](AsyncWebServerRequest *request){
request->send_P(200, "text/plain", processor("G").c_str());
});
// Start server
server.begin();
}
//zmení vstupné percento od 0 do 100 na hodnotu od 0 po 255 pre arduino
int perTo255(String in)
{
int out = (int)((float)in.toInt()*2.55f);
return out;
}
int perTo1024(String in)
{
return (int)((float)in.toInt()*10.23f);
}
/*-------------LOOP---------------*/
void loop() {
count++;
if (count > countMax) { multiply++; count = 0; }
if (multiply > multiplyMax)
{
inOutSet(0, 5, "99");
inOutSet(0, 8, "99");
inOutSet(0, 4, "99");
inOutSet(0, 2, "99");
inOutSet(0, 5, "5");
inOutSet(0, 8, "8");
inOutSet(0, 4, "4");
inOutSet(0, 2, "2");
delay(60000);
multiply = 0;
}
}
Если я отправляю значение 1, он хочет написать «application / x- www-form-urlencoded.0....»
Вот мой индекс. html и main. js но я не не думаю, что вам это нужно. Это должно быть хорошо, потому что сообщение приходит в порядке.
let sliderIdPool = [];
let chBoxIdPool = [];
let poolRequest = [];
let poolFormValue = [];
let ioValues = [];
let poolRequestAddAllow = false;
let autorequest = true; //pre zastavenie requestov
searchSliderId(); //pridanie všetkych použitych sliderov do poolu a priradenie listenerov
searchChBoxId(); //pridanie všetkych použitych chBoxov do poolu
searchFormID(); //prida vsetky zobrazovacie oknicka do poolu
//***********************************************************/
//funkcia na pridávanie záznamov správy do zoznamu sprav pre ESP
function poolRequestAdd(hodnota)
{
poolRequest.push(hodnota);
//console.log(poolRequest);
}
//***********************************************************/
//funkcia na vymazavanie zápisov v zozname správ
function poolRequestDel()
{
let temp = poolRequest[0];
poolRequest.shift();
if (poolRequest.length >0)
{
poolRequestStart();
}
}
//***********************************************************/
//funkcia na odoslanie dalsieho requestu po ukoncení predosleho
function poolRequestStart()
{
if(!poolRequestAddAllow)
{
poolRequestAddAllow = true;
espReq(poolRequest[0]);
}
}
//***********************************************************/
//Funkcia pre odosielanie požiadavok URL
function espReq(url) //odosielanie do esp
{
//console.log("poziadavka "+url+" odoslana...")
let xhttp = new XMLHttpRequest();
let val;
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
//console.log("response: "+this.responseText);
//console.log("response slice: "+this.responseText.slice(0, 1));
poolRequestAddAllow = false;
if (this.responseText == poolRequest[0] )
{
poolRequestDel();
}
if (this.responseText.slice(0, 1) == "g")
{
updateValues(this.responseText);
poolRequestDel();
}
}
};
console.log("URL navolena: "+ url);
xhttp.open("GET", url, true);
xhttp.send();
}
//***********************************************************/
//chBox ak príde ID napríklad 00tLedpas tak sa oddelí
//prvé dvojčislie ktoré symbolizuje adresu v ESP programe
//pismeno "t" na tretom mieste symbolizuje funkciu togle
//ak tam nie je "t" tak sa prevezme hodnota slidera s rovnakym
//menom id ktorý avšak musí obsahovat "s" - 00sLedpas
function chBox(id) {
let hodnota;
let nrTemp;
let setDefaultSliderVal = false;
try{
let checkBox = document.getElementById(id);
//console.log("zahakol si id: "+id);
nrTemp = id.slice(0, 2);
//console.log("slice bol: "+nrTemp);
if (id.slice(2,3) == "t")
{
//console.log("t");
if (checkBox.checked != true)
{//ak je true tak ho chcem vypnuť
hodnota = "00"
}
else
{//ak je false tak ho chcem zapnuť
hodnota = "99";
}
}
else
{//skompletujem a vyhladam slider id hodnotu
//console.log("je to aj zo sliderom");
let strTemp = id.slice(2, id.length);
let sliderVal = document.getElementById(nrTemp+"s"+strTemp).value;
//console.log("Hodnota slidera bola: "+ typeof sliderVal+ sliderVal);
if (sliderVal >99) { sliderVal = 99; }
hodnota = ""+sliderVal;
//V pripade ze je cislo mensie ako 9 alebo sa vypne chBox tak sa pridá
//do stringu 0 kôli korektnosti správy espReq
if (sliderVal <= 9) { hodnota = "0"+hodnota; }
if (!checkBox.checked) { hodnota = "00"; setDefaultSliderVal=false; }
//console.log("TU "+sliderVal+"...2 "+ hodnota);
}
//console.log("hodnota chkBoxu bola: "+checkBox.checked);
}
catch(err) {
console.log("chBox func error!");
}
//console.log("Hodnota je: "+hodnota);
poolRequestAdd(nrTemp.slice(0,1));
poolRequestAdd("X"+nrTemp.slice(1,2));
poolRequestAdd("ID");
poolRequestAdd(hodnota.slice(0,1));
poolRequestAdd("X"+hodnota.slice(1,2));
poolRequestAdd("H");
if (setDefaultSliderVal)
{
poolRequestAdd(nrTemp.slice(0,1));
poolRequestAdd("X"+nrTemp.slice(1,2));
poolRequestAdd("ID");
poolRequestAdd(hodnota.slice(0,1));
poolRequestAdd("X"+hodnota.slice(1,2));
poolRequestAdd("H");
}
//console.log("Hodnota nr Temp: "+nrTemp);
//console.log(poolRequest);
//console.log("Po pridani _________")
poolRequestStart();
}
//***********************************************************/
//hladanie všetkych slider IDcok a aktualizovanie ich hodnôt pri pohybe slidera
function searchSliderId() {
let temp = document.getElementsByClassName("Slider");
for (let index = 0; index < temp.length; index++) {
sliderIdPool.push(temp[index].id);
document.getElementById(temp[index].id+"Stat").innerHTML = temp[index].value;
temp[index].oninput = function() //pri pohybe zobrazuj aktualnu hodnotu
{
document.getElementById(temp[index].id+"Stat").innerHTML = this.value;
}
temp[index].onchange = function()//po zastaveni odosli hodnotu ako espReq
{
let tempIdName = document.getElementById(temp[index].id).id;
tempIdName = tempIdName.slice(0,2) + tempIdName.slice(3, tempIdName.length);
//console.log(tempIdName+": "+document.getElementById(tempIdName).checked);
if (document.getElementById(tempIdName).checked) {//Iba ak je chBox true
chBox(tempIdName);
}
}
}
}
function searchChBoxId()
{
let temp = document.getElementsByClassName("checkbox");
for (let index = 0; index < temp.length; index++)
{
chBoxIdPool.push(temp[index].id);
}
//console.log(chBoxIdPool);
}
function searchFormID()
{
let temp = document.getElementsByClassName("Form");
for (let index = 0; index < temp.length; index++)
{
poolFormValue.push(temp[index].id);
}
}
//***********************************************************/
//Vytvorenie update funkcii pre aktualne viditelne miestnosti
function getDocQuery(text){return document.querySelectorAll(text);}
getUpdateIzba(0,0);
let miestnostiList = getDocQuery("article div h2");
let tempElement1, tempElement2, TTemp;
let observer = new IntersectionObserver(function(entries){
if(entries[0].isIntersecting == true)
try {
tempElement1 = entries[0].target.parentElement.id;
tempElement2 = entries[1].target.parentElement.id;
} catch (error) {
console.log(error);
}
//console.log("Room in View p1 "+ tempElement1);
//console.log("Room in View p2 "+ tempElement2);
getUpdateIzba(tempElement1, tempElement2);
}, { threshold: [0.3] });
miestnostiList.forEach(element => {
observer.observe(element);
});
//odoslanie požiadavky na hodnoty od ESP
function getUpdateIzba(param1, param2) {
//console.log("stahujem data pre izbu "+param1+ ", "+param2);
if (param1 == param2) {
poolRequestAdd(param1);
poolRequestAdd("G");
}
else
{
poolRequestAdd(param1);
poolRequestAdd("G");
poolRequestAdd(param2);
poolRequestAdd("G");
}
//console.log(poolRequest);
//console.log("Po pridani _________")
poolRequestStart();
}
//Po prijati hodnot od ESP sa spusti tato funkcia a aktualizuje všetky hodnoty
//zobrazenej a naposledy navstivenej izby
function updateValues(responseTxt)
{
let adress, tempStr1;
let tempNr;
//console.log("Odpoved ESP: "+responseTxt);
adress = (parseInt(responseTxt.slice(1,2)))*10;
tempStr1 = responseTxt;
for (let i = 0; i<10; i++)
{//vlozim prijate udaje do ioValues izby
tempNr = tempStr1.indexOf(".");
tempStr1 = tempStr1.slice(tempNr+1);
if (tempStr1.indexOf(".") > 0)
{
ioValues[adress+i] = tempStr1.slice(0, tempStr1.indexOf("."));
}
else
{
ioValues[adress+i] = tempStr1.slice(0);
}
}
//console.log(ioValues);
//zobrazim hodnoty do slideru a prepnem chBoxy
for (let i = 0; i<chBoxIdPool.length; i++)
{
let tempNr = parseInt(chBoxIdPool[i].slice(0,2));
let tempElement = document.getElementById(chBoxIdPool[i]);
let tempIdName = tempElement.id;
let tempStrig = tempIdName.slice(2);
//console.log("el1 , el2, nr "+ tempElement1, tempElement2, tempNr);
if (tempElement1 == parseInt(chBoxIdPool[i].slice(0,1))
|| tempElement2 == parseInt(chBoxIdPool[i].slice(0,1)))
{
// ak tam t je tak je to toogle switch a jedine co treba aktualizovat je checkbox
//console.log("prave sa robi "+tempElement.id);
if (ioValues[tempNr] == "0") {
tempElement.checked = false;
//ioValues[tempNr] = "100";
}
else { tempElement.checked = true; }
//ak tam t nie je tak treba aktualizovat aj slider a sliderStat
if (chBoxIdPool[i].slice(2,3) != "t" && ioValues[tempNr] > 0)
{
//aktualizujem ciselne zobrazenie
if (tempNr < 10) {tempIdName = "0"+tempNr;}
else {tempIdName = tempNr;}
//console.log("Element "+tempIdName+"s"+tempStrig+"Stat"+" = "+ioValues[tempNr]);
document.getElementById(tempIdName+"s"+tempStrig+"Stat").innerHTML = ioValues[tempNr];
//Zadáme pozíciu pre slider
document.getElementById(tempIdName+"s"+tempStrig).value = ioValues[tempNr];
}
}
}
//console.log(":________:");
for (let i = 0; i<poolFormValue.length; i++)
{
let tempIdName = poolFormValue[i];
//console.log("TID "+tempIdName);
let tempNr = parseInt(tempIdName.slice(0,2));
document.getElementById(tempIdName).innerHTML = ioValues[tempNr];
}
}
//pre testovanie
function manualSend(S, xS, H, xH)
{
console.log("odosielam: "+ S, xS, H, xH);
poolRequestAdd(""+S);
poolRequestAdd(""+xS);
poolRequestAdd("ID");
poolRequestAdd(""+H);
poolRequestAdd(""+xH);
poolRequestAdd("H");
poolRequestStart();
}
//TODO: vytvor manualne odosielanie a otestuj zadavanie hodnôt
//pravidelne vyslany request na aktualizovanie hodnôt
setInterval(function() {
if (autorequest)
{
getUpdateIzba(tempElement1, tempElement2);
console.log("Status request hodnôt: ");
}
}, 6000);
* {
padding: 0;
margin: 0;
text-decoration: none;
color: rgb(194, 191, 191);
}
/*adresacia id #id a adresacia triedy .Trieda*/
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Test</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="style.css">
</head>
<body>
<div class="TopNavigationBar">
<nav class="Nav">
<div class="Scroll"> <!--Sem zadávame záznami do hornej lišty-->
<a href="#0">ALL</a>
<a href="#6">ROOMX</a>
</div>
</nav>
</div>
<!--stranka-->
<article>
<!--Prvá neparna miestnosť-->
<div id="0" class="Odd Miestnost">
<h2>Dom</h2>
<aside class="Riadok">
<p>Led Strip</p>
<input class="checkbox" type="checkbox" id="00Ledpas" onclick="chBox('00Ledpas')">
</aside>
<aside class="Riadok">
<p>Intenzita (<span id="00sLedpasStat"></span>) </p>
<input type="range" min="0" max="100" value="100" class="Slider" id="00sLedpas">
</aside>
<aside class="Riadok">
<p>Teplota</p>
<p>(<span class="Form" id="01xTeplota"></span>)</p>
</aside>
</div>
<!--Siesta neparna miestnosť-->
<div id="6" class="Miestnost">
<h2>Pivnica</h2>
<aside class="Riadok">
<p>Osvetlenie</p>
<input class="checkbox" type="checkbox" id="60Osvetlenie" onclick="chBox('60Osvetlenie')">
</aside>
<aside class="Riadok">
<p>Intenzita (<span id="60sOsvetlenieStat"></span>)</p>
<input type="range" min="1" max="100" value="100" class="Slider" id="60sOsvetlenie">
</aside>
<aside class="Riadok">
<p>Brana</p>
<input class="checkbox" type="checkbox" id="61tBrana" onclick="chBox('61tBrana')">
</aside>
</div>
</body>
<script src="main.js"></script>
</html>