ESPUI + captive portal

Может кто пробовал captive portal...

Ответить
nosoropoped
Рядовой
Сообщения: 7
Зарегистрирован: 10.04.2019{, 15:57}
Репутация: 1
Имя: Фёдор

ESPUI + captive portal

#1

Сообщение nosoropoped » 28.04.2020{, 09:33}

Здравствуйте, помогите пожалуйста разобраться. хотел реализовать captive portal, как в библиотеки wifimanager, только чтобы вместо страницы настройки кидало на страницу созданной библиотекой ESPUI. Я думаю это будет удобно, проще чем вводить ip адрес. captive portal перенаправляет все запросы на главную страницу сервера. Нашёл скетч разработчика ESPUI : https://github.com/s00500/ESPUI/blob/87 ... ui/gui.ino
но компилироваться не хочет, библиотеки переставлял, IDE менял , все равно. Если разобраться можно и блок написать. Подскажите куда копать. Спасибо

З.Ы. вот еще статью нашёл, но здесь веб- страница рисуется в HTML в скетче: https://www.instructables.com/id/Class- ... g-NodeMCU/

вот простейший скетч

Код: Выделить всё

#include <ESP8266WiFi.h>
#include <DNSServer.h>
#include <ESP8266WebServer.h>

const byte DNS_PORT = 53;
IPAddress apIP(192, 168, 1, 1);
DNSServer dnsServer;
ESP8266WebServer webServer(80);

String responseHTML = ""
                      "<!DOCTYPE html><html><head><title>CaptivePortal</title></head><body>"
                      "<h1>Hello World!</h1><p>This is a captive portal example. All requests will "
                      "be redirected here.</p></body></html>";

void setup() {
  WiFi.mode(WIFI_AP);
  WiFi.softAPConfig(apIP, apIP, IPAddress(255, 255, 255, 0));
  WiFi.softAP("DNSServer CaptivePortal example");

  // if DNSServer is started with "*" for domain name, it will reply with
  // provided IP to all DNS request
  dnsServer.start(DNS_PORT, "*", apIP);

  // replay to all requests with same HTML
  webServer.onNotFound([]() {
    webServer.send(200, "text/html", responseHTML);
  });
  webServer.begin();
}

void loop() {
  dnsServer.processNextRequest();

aidar_i
Полковник
Сообщения: 3121
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 674
Откуда: Уфа
Имя: Айдар
Контактная информация:

ESPUI + captive portal

#2

Сообщение aidar_i » 07.05.2020{, 05:50}

Я немного помучался с CaptivePortal. Хотел привязать к штатным настройкам esp. Сделал блок. Но работает туго, то срабатывает, то нет. И то страница полностью не открывается, нужно пару раз нажать на Обновить страницу.
Заметил , код примера выше, где есть библиотека ESP8266WebServer и другие проекты с этой библиотекой отрабатывают четко без проблем.
Примеры с ESPUI с CaptivePortal автоматически у меня не открываются, только вручную, вбиванием ИП адреса.
В библиотеке WiFiManager применяется тоже библиотека ESP8266WebServer.

nosoropoped
Рядовой
Сообщения: 7
Зарегистрирован: 10.04.2019{, 15:57}
Репутация: 1
Имя: Фёдор

ESPUI + captive portal

#3

Сообщение nosoropoped » 29.05.2020{, 15:10}

Самое интересное что на гитхабе создатель выложил пример по просьбе с captive portal, который также не работает... https://github.com/s00500/ESPUI/blob/87 ... ui/gui.ino

Ответить

Вернуться в «Не могу найти тему ...»