GPortal & DS3231_автоматическое обновление времени на странице

kukrpavt

✩✩✩✩✩✩✩
25 Дек 2023
27
8
Добрый день всем!
Прошу помощи советом/ссылкой на решение (если такое уже есть; искал сам - не нашёл) следующей проблемы...
Имеем ESP-01 и DS3231. Делаю (вернее уже сделал) "умную розетку" без доступа в инет.
Создал страницу при помощи GP, на которой отображаются текущие время и дата, которые берутся с DS3231 (а так же другие параметры для установки времени включения розетки и её выключения; но не о них речь).
Вопрос в следующем: как сделать так, чтоб на странице "время шло", а не просто отображалось и изменялось только в момент её принудительного обновления?
Неужели нет такой готовой функции?
 

CoBa31Rus

✩✩✩✩✩✩✩
25 Дек 2023
4
0
@kukrpavt, вам нужно изучить js и конкретно ajax запрос, завернув его в таймер браузер будет получатьданные без перезагрузки.
 

kukrpavt

✩✩✩✩✩✩✩
25 Дек 2023
27
8
Я примерно изначально так и подумал (не в смысле что конкретно мне надо изучить), что проблема не в GPortal и в "недоработке" его, а в браузере на "устройстве -получателе", т. к., имхо, браузер должен был бы отправлять сигнал запроса времени на ESP-шку и получать с ESP-шки ответ....

Либо, подумалось позже, сразу же, при первом подключении, в коде страницы должен быть вшит механизм, который уже после передачи его в браузер будет слать запросы в ESP на получение времени и получать от ESP ответы.... (я надеялся, что такой механизм/функция "стандартна", уже кем-то создана и имеется в широком доступе, что-нибудь похожее на ....
GP.NUMBER_F(имя, подсказка, число, знаков, ширина, откл);

И так как я такой не нашёл, то и написал сюда, в форум).
 
Изменено:

rkit

★★★✩✩✩✩
5 Фев 2021
510
127
Не надо постоянных запросов, в браузере свои часы есть. Достаточно посчитать.
 

kukrpavt

✩✩✩✩✩✩✩
25 Дек 2023
27
8
@rkit, Вы хотите сказать, что нужно в страницу встроить код, который тупо будет приплюсовывать секунды с момента последнего обновления страницы? Эта мысль кажется гениальным решением по своей простоте.... Пойду думать, как реализовать....

Кто ещё что может подсказать?
 
Изменено:

Bruzzer

★★★✩✩✩✩
23 Май 2020
514
152
@kukrpavt,
Мой ответ не по совету rkit
НЕ понял, где у вас проблема.
В портале есть объявления GP.UPDATE элементов страницы которые будут автоматически обновляться с заданным. периодом (по умолчанию 1 сек). Отформатировать время можно в самом скетче если передавать строку. Есть другие типы переменных.
Посмотрите примеры содержащие GP.UPDATE. Например pageTitle.ino popupAlert.ino
Посмотрите описание на wiki
 

kukrpavt

✩✩✩✩✩✩✩
25 Дек 2023
27
8
@Bruzzer, Итак, решение нашёл. Как я и предполагал, мой вопрос уже решён. Среди примеров, что прилагаются к библиотеке портала при подключении её к IDE, в разделе ""GyverPortal" ->""demos" есть пример под названием "actionUpdate" . Ну или тут можно взять (что одно и то же): https://github.com/GyverLibs/GyverPortal/blob/main/examples/demos/actionUpdate/actionUpdate.ino Как написано в коде, в примечании, работает оно на AJAX ..... и время на сраничке "затикало". Спасибо Bruzzer за направление поиска, а оказался прав CoBa31Rus. Всем спасибо, проблема решена .
 
Изменено: