Денис
Оно на втором ядре и естб
Куда тебе такое серьезное энергосбережение? У тебя же метеостанция. Поставь солнечную панель за 150 рублей с али
Viter
Viter
Грин пис типа
Viter
А там ребята серьезные, одна батарейка в год, иначе могут и лицо набить
garik
А сколько потребляет кнопка беспроводного звонка, кто-нибудь знает? И что там за частоты
Viter
433 мгц
garik
Viter
Или 315
Viter
Почитайте таблица распределения частот рф, госдокумент
Денис
кто-то проводил эксперименты на частотах 900-1800 мгц?
Viter
Там все запрещено лепиво
Денис
Ну где-то в деревнях вне зоны действия базовых станций. Просто тема по созданию своей станции с возможностью звонков внутри нее довольно интересная
Viter
Зиг би на 800 потом только на 2.4 ггц
Денис
Идея то именно в коммутации телефонов без симок где-то в деревне
garik
Денис
стандартные телефоны на ней будут работать?
Денис
или только со спец модулем
garik
Не, только специальные трубки. Для стандартных наверное фемтосоту надо, не знаю
Владимир
Viter
Декты шестые запрещены
Anonymous
Всем добрый вечер! На ESP8266 загрузил тестовый пример Step4-FSWebServer, использующий библиотеку ESP8266WebServer. В браузере обращаюсь по IP сервера http://192.168.9.237:8266/ Получаю /
/bootstrap.min.css
/style.css
/function.js
/configs.json
Anonymous
Почему так?
Денис
индекса нет
Денис
вероятно?
Денис
server.on("/", HTTP_GET, [](AsyncWebServerRequest * request) {
request->send(SPIFFS, "/index.html", String(), false);
});
Anonymous
индекса нет
Я не понимаю, почему от клиента идет не один а 5 запросов. Печать у меня стоит в функции bool handleFileRead(String path)
Денис
А
Денис
ну тк сайт состоит из нескольких файлов
Денис
Anonymous
А
Я ввожу в браузере http://192.168.9.237:8266/ и нажимаю ввод. Почему на сервере прием от клиента 5 раз?
Anonymous
HTTP.onNotFound([]() {
if (!handleFileRead(HTTP.uri()))
HTTP.send(404, "text/plain", "FileNotFound");
}); - вот здесь идет обработка при поступлении от клиента
Владимир
ну без внутренностей хтмля тут ни чего не скажешь...
но судя по всему внутри него идет обращение к этим фацлам.
а их нету.
Anonymous
HTTP.onNotFound([]() {
if (!handleFileRead(HTTP.uri()))
HTTP.send(404, "text/plain", "FileNotFound");
});
}
bool handleFileRead(String path) {
Serial.println(path);
if (path.endsWith("/")) path += "index.htm";
String contentType = getContentType(path);
String pathWithGz = path + ".gz";
if (SPIFFS.exists(pathWithGz) || SPIFFS.exists(path)) {
if (SPIFFS.exists(pathWithGz))
path += ".gz";
File file = SPIFFS.open(path, "r");
size_t sent = HTTP.streamFile(file, contentType);
file.close();
return true;
}
return false;
Anonymous
Вот все, что обрабатывает. Как так получается, что Serial.println(path); 5 раз печатает
Anonymous
HTTP.onNotFound([]() - я так понимаю, что от клиента поступает запрос и обрабатывается здесь
Ivansuper
Денис
если я правильно понимаю суть происходящего - он может сначала проверяет все записанные индексы, а потом уже выкидывает? Вероятно ошибаюсь
Anonymous
<!DOCTYPE html>
<html lang="ru">
<head>
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
<link rel="stylesheet" href="/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="/style.css">
<script type="text/javascript" src="/function.js"></script>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Доп. настройки</title>
<script type="text/javascript">
var set_real_time;
function handleServerResponse(){
clearTimeout(set_real_time);
var res = jsonResponse.time.split(":");
real_time(hours=res[0],min=res[1],sec=res[2]);
document.body.style.backgroundColor="rgb("+jsonResponse.rgb+")";
}
function real_time(hours,min,sec) {
sec=Number(sec)+1;
if (sec>=60){min=Number(min)+1;sec=0;}
if (min>=60){hours=Number(hours)+1;min=0;}
if (hours>=24){hours=0};
document.getElementById("time").innerHTML = hours+":"+min+":"+sec;
set_real_time = setTimeout("real_time("+hours+","+min+","+sec+");", 1000);
}
function load_time(submit){
server = "/Time";
send_request(submit,server);
load();
}
function time_zone(submit){
server = "/TimeZone?timezone="+val('timezone');
send_request(submit,server);
}
function set_time_zone(submit){
var set_date = new Date();
var gmtHours = -set_date.getTimezoneOffset()/60;
document.getElementById('timezone').value = gmtHours;
server = "/TimeZone?timezone="+gmtHours;
send_request(submit,server);
Anonymous
Денис
Не должна. эти строки запрашивают локальные файлы <link rel="stylesheet" href="/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="/style.css">
<script type="text/javascript" src="/function.js"></script>
Денис
Если хотите сократить количество запросов - разместите их в облаке и пропишите путь до сервера
Anonymous
Владимир
Денис
Денис
А тот уже делает другие запросы
Денис
Просто выложи их на чужие сервера и подключи их глобально
Денис
/bootstrap.min.css точно можно сэкономить. ибо он есть в глобале
Anonymous
Anonymous
Anonymous
Ребята, всем спасибо. Понял!
Денис
И проверь количество запросов еще раз, если что - вернешь
Денис
Обращается сам клиент 1 раз, index.htm тянет сам еще несколько запросов. Т.е. не сам человек, а файл делает остальные запросы
Денис
Ну если очень простыми словами
Anonymous
Денис
Денис
Html. Гипертекст.
Денис
Тебе нужно менять строки содержимое кавычек src и href
Владимир
AKE
🤦♂
Ілля
День добрый!
В рамках своей магистерской разрабатываю серверную и браузерную часть для умного дома (В университете будет использоваться проект для обучения студентов ESP8266/Arduino и электротехники в целом). Какие протоколы передачи данных между сервером и ESP8266 нужно серверу поддерживать? Каких функций Вам не хватает в нынешних платформах?
В первом прототипе общение происходит по HTTP.
Заранее спасибо!
Anonymous
Html. Гипертекст.
Понял, спасибо. Не хочется изучать этот чертов язык, но, видимо, с небольшой глубиной придется.
Владимир
Anonymous
Денис
пример <script src="https://www.cssscript.com/demo/onscreen-joystick/joy.js"></script>
Slava
Денис
Ты просто магл (Вселенная Гарри Поттера)
Ілля