abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 10:46 | Nová verze

    Byla vydána (𝕏, Bluesky) nová verze 22.0.0 open source webového aplikačního frameworku Angular (Wikipedie). Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    dnes 04:33 | Nová verze

    Vim Classic byl vydán ve verzi 8.3. Drew DeVault oznámil tento fork editoru Vim (verze 8.2.0148, tj. těsně před zavedením Vim9 skriptování) v březnu letošního roku. Důvodem forku bylo, že vývojáři editorů Vim a Neovim začali při vývoji využívat LLM.

    Ladislav Hagara | Komentářů: 2
    dnes 03:44 | Komunita

    Open source konference DevConf.CZ 2026 proběhne 18. a 19. června v Brně na FIT VUT. Publikován byl program a spuštěna byla registrace.

    Ladislav Hagara | Komentářů: 0
    včera 19:44 | Nová verze

    Společnost JetBrains uvolnila verzi 2 svého open-source velkého jazykového modelu (LLM) pro vývojáře Mellum.

    Ladislav Hagara | Komentářů: 0
    včera 14:44 | IT novinky

    Probíhá konference Microsoft Build 2026. Microsoft představuje své novinky: kvantový čip Majorana 2, Surface Laptop Ultra a Surface RTX Spark Dev Box s NVIDIA RTX Spark, Intelligent Terminal, Coreutils for Windows (fork Rust Coreutils), AI modely MAI, AI agenta Scout, platformu pro agent-first zařízení Project Solara, …

    Ladislav Hagara | Komentářů: 0
    včera 12:44 | Nová verze

    Google Chrome 149 byl prohlášen za stabilní. Nejnovější stabilní verze 149.0.7827.53 přináší řadu novinek. Podrobný přehled v poznámkách k vydání. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    včera 10:55 | Nová verze

    Pluto.jl, reaktivní notebook pro programovací jazyk Julia, dospěl do verze 1.0.

    Ladislav Hagara | Komentářů: 4
    2.6. 13:44 | Nová verze

    Byla vydána nová verze 12.0.0 vizuálního programovacího jazyka Snap! (Wikipedie) inspirovaného jazykem Scratch (Wikipedie). Přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 0
    2.6. 11:44 | IT novinky

    Počítačovou hru Gravity Circuit (ProtonDB) lze do 14. června do 19:00 získat na Steamu zdarma. Napořád.

    Ladislav Hagara | Komentářů: 0
    2.6. 11:00 | Bezpečnostní upozornění

    Nejnovější X.Org X server 21.1.23 a Xwayland 24.1.12 řeší 9 bezpečnostních chyb.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (12%)
     (8%)
     (2%)
     (15%)
     (31%)
     (4%)
     (6%)
     (3%)
     (15%)
     (26%)
    Celkem 1816 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: ESP32 a web s dynamickými stránkami?

    12.5.2021 01:06 Ježek
    ESP32 a web s dynamickými stránkami?
    Přečteno: 752×
    Rád bych na ESP32 rozjel http server, který by uměl html stránky s Javascriptem na kterých by se třeba zobrazoval graf do kterého by automaticky třeba co 10s přibila nová data. Našel jsem nějaký příklad pro ESP32 a tam to bylo udělané tak, že když přišel na http servet v EPS32 požadavek na zobrazené index.html tak se zavolala funkce, která na SPIFFS , tedy vlastně v externi SPIFlash jejiž část byla použita jako partition se souborovým systémem otevřela soubor index.html a do měj uložila to co se mělo přenést ke klienti včetně odkazu na komprimovaný javascript, který byl tako uložen v NORSPI tedy v partition, kam byl nahraný při programování toho celého. Až sem celekm jasné. Otázkou je co se stane za 10s m EPS32 změří nějaká data a co ted? První co každého napadne je vygenerovat nový index ,html nebo aspoň v tom starém změnit data a celé to pak poslat clientú. Nicméně to je špatně a hned ze dvou důvodů. 1. Pokud bychom dělali zápisy do NOR Flash každých 10s tak jí velice rychle zničíme 2, Bylo by to značně neefektivní, co 10s by se přenášela celá index.html Otázkou je jak by to mělo být udělané správně? Nemám s tím zkušenosti. Popradě i ty Javascripty jsem si dostudoval až ted v souvislosti s tímto projektem. Vim že existuje něco jako AJAX což je asi to co chci, ale nevím jak to fungýuje na strně http serveru a tak nevim jak se to naprogramuje na staně serveru aby tento poznal, že má jen poslat data z RAM a ne znovu generovat index.html nebo jak jinak se to řeší? Pordíte na o mám kouknout a co dostudovat?

    Odpovědi

    12.5.2021 11:15 X
    Rozbalit Rozbalit vše Re: ESP32 a web s dynamickými stránkami?
    Jestli myslis tento navod tak tam se data ctou kazdych 30 do JS pole(v prohlizeci..).
    12.5.2021 11:52 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: ESP32 a web s dynamickými stránkami?
    index.html by měl být statický, v něm pouze link na JS knihovnu (nejlépe na cloudu) s ajaxem, který bude umět dynamicky dotáhnout data - to řeší browser. Data je možné udržovat v RAM a na ajaxový dotaz je prezentovat jako JSON, se kterým si browser poradí. Ovšem pokud data nejsou přepisována, ale jen dopisována na konec souboru, životnost flešky to nesnižuje. Vadí jim jen příliš časté přepisování jedné buňky.

    Zbývá jen vybrat vhodný webserver pro ESP32, který bude umět z těch dat dynamicky generovat JSON. Grafy by se opět generovaly až v browseru.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    12.5.2021 12:24 z_sk | skóre: 34 | blog: analyzy
    Rozbalit Rozbalit vše Re: ESP32 a web s dynamickými stránkami?
    Najlepsie: WebSocket

    Ak Ťa zlosti opotrebovanie RAM, tak ukladaj do RAM (sem tam archivuj data na disk/siet), tj. /dev/shm, resp. alebo pripoj nejaký priečinok z tamtial niekam (cez "-o bind") kam potrebujes (napr. /var/www/html/bla).

    Dačo take sa už riešilo: https://www.abclinuxu.cz/poradna/programovani/show/459660

    debian.plus@protonmail.com
    12.5.2021 13:02 Monopil
    Rozbalit Rozbalit vše Re: ESP32 a web s dynamickými stránkami?
    Rada s RAM dobrá, té má dost, nejmíň celých 520KB, ale /dev/shm na ESP32 bude hledat těžko (no dobrá jde to, ale tazatel tam linux určitě nemá :-)
    13.5.2021 10:41 Ježek
    Rozbalit Rozbalit vše Re: ESP32 a web s dynamickými stránkami?

    Především někuji všem.

    Jestli myslis tento navod tak tam se data ctou kazdych 30 do JS pole(v prohlizeci..).

    Nemyslim, toto je celekm jednoduchý a pořehledný příkalsd v kterém i já vidím na stránce/scriptu XMLHttpRequest() tedy AJAX a na straně serveru vidím použití request->send a request->send_P. Sice nevím proč musí být pro poslíní dat z SRAM (PROGMEM) Send_P, ale to bych si dohledal.

    Ja se koukal na trochu komplexnější a také méně přehledný kod , přesněji na toto

    13.5.2021 11:43 X
    Rozbalit Rozbalit vše Re: ESP32 a web s dynamickými strnkami?
    Zalezi jestli chces uchovavat historicka data. Pokud staci aktualni zivy vystup, muze se cela dynamika odehravat v prohlizci ktery dotazuje data a generuje graf a cely obsah v ESP32 bude staticky bez intenzivniho zapisovani. Ale, nebudes mit historicka cisla. Ta si ovsem muzes potichu ukladat nekam mimo ESP32 volat bokem. Cil je predpokladam nezatezovat ESP32 nejakym slozitym generovanim stranek a intenzivnim zapisovanim.
    14.5.2021 09:45 Bugsa
    Rozbalit Rozbalit vše Re: ESP32 a web s dynamickými stránkami?
    Na ESP rozjedeš webserver https://github.com/me-no-dev/ESPAsyncWebServer. Z flash paměti vrátíš "index.html" při requestu na "/".

    V tom index.html vše naprogramuješ pomocí JS. V rychlosti mne napadají 2 možné varianty řešení:

    1) WebSocket - ESP po změření zašle notifikaci pro všechny připojené WS klienty s novýma hodnotama proměnných. Třeba ve formátu JSON. JS na index.html zprávu zpracuje a změní patřičné HTML elementy.

    2) To samé co 1, ale použije se AJAX z klienta. Ten v pravidelných intervalech bude dotazovat ESP, třeba requestem na "/status", které bude vracet aktuální hodnoty proměnných.
    16.5.2021 08:22 Ptáček
    Rozbalit Rozbalit vše Re: ESP32 a web s dynamickými stránkami?

    Koukal jsme na zde odkazovný příklad i na ESPAsyncWebServer mám několik dotazu.

    1. Exituje něco jako dokumentace v které by byl přehled funkci/metod a vyznam jejeich parametru, proměnnych atd?

    2. Trochu totiž nechápu, tedy chápu funkci,ale nechápu jak . Napříkald v příkaldu  je uvedemo

    server.on("/", HTTP_GET, [](AsyncWebServerRequest *request){

    request->send(SPIFFS, "/index.html", String(), false, processor);

    });

    Chápu co to dělá, tedy, že to clientu na GET požadvek vrátí index.html v kterém funce processor nahradi zastupný %STATE% 
    za On nebo Off,ale nehcpu jak se STATE ocitl v parametru funkce processor, netuším co znamenaji další parmtry tyedy flase a String(),
    hledl bych to v dokumentaci,ale tu s emi nepodařilo najit

    Poradíte?

    16.5.2021 23:11 z_sk | skóre: 34 | blog: analyzy
    Rozbalit Rozbalit vše Re: ESP32 a web s dynamickými stránkami?
    17.5.2021 07:48 Bugsa
    Rozbalit Rozbalit vše Re: ESP32 a web s dynamickými stránkami?
    2) Za mne je to asi nejméně vhodný způsob jak to vyřešit. Aby se stránka zaktualizovala, tak bude třeba refresh a ESP bude muset zbytečně generovat a vracet celé HTML. To se spíš hodí pro info stránku, která slouží pro jednorázový výpis hodnot proměnných. Ano, sice by šel vracet třeba jen nějaký malý div s hodnotama a načítat ho AJAXem, ale fakt bych to takhle nedělal.

    Je to takový jednoduchý "template" engine. Funkce Processor proměnnou získá tak, že funkci Processor interně zavolá funkce request->send pro každou %PROMĚNNOU%, kterou nalezne ve zdrojovém HTML a název té proměnné předá jako argument funkce Processor (var). Pak nahradí v HTML %PROMĚNNOU% výsledkem funkce Processor. Jenže je to neohrabané, musíš ve funkci Processor pro každou proměnnou vytvořit podmínku a doplnit její hodnotu.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.