Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Идеи/проблемы на обновление v3.7 #73

Open
GyverLibs opened this issue Mar 12, 2023 · 122 comments
Open

Идеи/проблемы на обновление v3.7 #73

GyverLibs opened this issue Mar 12, 2023 · 122 comments

Comments

@GyverLibs
Copy link
Owner

GyverLibs commented Mar 12, 2023

v3.7

  • Добавлено
    • system info в графе uptime выводит также дни
    • GPlog настройка autoClear(bool), умолч. включена, можно выключить чтобы лог сохранялся
    • Тип и парсеры GPweek
    • Тип и парсеры GPflags
  • Пофикшено
    • Автоматическое открытие портала при подключении к ESP в режиме AP не работало на некоторых устройствах
  • Улучшено
    • Все copyStr() - если указана длина, теперь строка записывается, даже если входящая строка длиннее
    • GPlog снова работает как кольцевой буфер
  • Изменено
    • ...

ROADMAP

  • Не задаётся размер мини кнопок
  • Вернуть FIFO в LOG
  • Привязать стили к классам
  • драг н дроп файлы и ота
  • Возможно убрать online check
  • ОТА через cmd/shell curl -vF [email protected] http://x.x.x.х/GP_OTAupload
  • двойной слайдер https://w3collective.com/double-range-slider-html-css-js/
  • джойстик (папка на раб столе)
  • графики https://github.com/leeoniya/uPlot
  • таймлайн как разновидность графика
  • вебсокет
  • аналог grid ui
  • асинхронный сервер
@zoland
Copy link

zoland commented Mar 12, 2023 via email

@GyverLibs
Copy link
Owner Author

много кода) спрячь под спойлер плз

@zoland
Copy link

zoland commented Mar 12, 2023 via email

@GyverLibs
Copy link
Owner Author

GyverLibs commented Mar 12, 2023

в телеге я бы не увидел, а тут прямо лично в руки) спасибо

@zoland
Copy link

zoland commented Mar 12, 2023 via email

@DenysChuhlib
Copy link

DenysChuhlib commented Mar 12, 2023

Здраствуйте, а почему вы CustomOTA не обновили на новый? Я скидывал в прошлом issue.
Могу еще раз скинуть...

@GyverLibs
Copy link
Owner Author

кидай, я всё пропустил видимо

@DenysChuhlib
Copy link

Ось
CustomOTA.zip

@DenysChuhlib
Copy link

DenysChuhlib commented Mar 12, 2023

Ось тоже самое, но я добавил важные коментарии для любителей.
CustomOTA.zip

@GyverLibs
Copy link
Owner Author

не компилит твоя ота, сейчас люди обновятся и п*дец
class UpdaterClass' has no member named 'getErrorString

@Otto17
Copy link

Otto17 commented Mar 13, 2023

А поддержка WebSockets - это уже интересно....

@TheAxial
Copy link

Приветствую. Предлагаю добавить таймлайн как разновидность графика. На подобии как в Home Assistant
image

@DenysChuhlib
Copy link

DenysChuhlib commented Mar 13, 2023

UpdaterClass

Я и на esp8266 и esp32 использую. У меня все ок...
В каком рядке ошибка?

@GyverLibs
Copy link
Owner Author

Какая версия ядра у тебя?

@DenysChuhlib
Copy link

esp32 или esp8266 ?

@DenysChuhlib
Copy link

Ладно проверю снова на новых версиях...

@GyverLibs
Copy link
Owner Author

У меня 2.7.4 и 3.0.2 на 32

@GyverLibs
Copy link
Owner Author

Так погоди! getErrorString это я добавлял в ота. Возможно ты не ту реализацию исправлял, вот мы и не совпали

@DenysChuhlib
Copy link

Работает?

@DenysChuhlib
Copy link

Я для версии 3.5 делал.

@GyverLibs
Copy link
Owner Author

Нет, у меня куча ошибок вылетает

@DenysChuhlib
Copy link

Киньте ошибки

@DenysChuhlib
Copy link

А на 8266 есть ошибки, сейчас исправлю

@DenysChuhlib
Copy link

А не это ошибки в Gyver Portal, в СustomOTA не вижу

@DenysChuhlib
Copy link

In file included from c:\Users\chyhl\OneDrive\���������\Arduino\libraries\GyverPortal\src/portal.h:22,
from c:\Users\chyhl\OneDrive\���������\Arduino\libraries\GyverPortal\src/GyverPortal.h:57,
from C:\Users\chyhl\OneDrive\Документи\Arduino\ESP8266\Watch\Watch.ino:9:
c:\Users\chyhl\OneDrive\���������\Arduino\libraries\GyverPortal\src/parsers.h: In member function 'virtual int ArgParser::args()':
c:\Users\chyhl\OneDrive\���������\Arduino\libraries\GyverPortal\src/parsers.h:11:25: error: no return statement in function returning non-void [-Werror=return-type]
11 | virtual int args() {} // amount
| ^
c:\Users\chyhl\OneDrive\���������\Arduino\libraries\GyverPortal\src/parsers.h: In member function 'virtual const String& ArgParser::arg(const String&)':
c:\Users\chyhl\OneDrive\���������\Arduino\libraries\GyverPortal\src/parsers.h:12:49: error: no return statement in function returning non-void [-Werror=return-type]
12 | virtual const String& arg(const String& n) {} // value from name
| ^
c:\Users\chyhl\OneDrive\���������\Arduino\libraries\GyverPortal\src/parsers.h: In member function 'virtual const String& ArgParser::arg()':
c:\Users\chyhl\OneDrive\���������\Arduino\libraries\GyverPortal\src/parsers.h:13:34: error: no return statement in function returning non-void [-Werror=return-type]
13 | virtual const String& arg() {} // value from 0
| ^
c:\Users\chyhl\OneDrive\���������\Arduino\libraries\GyverPortal\src/parsers.h: In member function 'virtual const String& ArgParser::argName()':
c:\Users\chyhl\OneDrive\���������\Arduino\libraries\GyverPortal\src/parsers.h:14:38: error: no return statement in function returning non-void [-Werror=return-type]
14 | virtual const String& argName() {} // name from 0
| ^
c:\Users\chyhl\OneDrive\���������\Arduino\libraries\GyverPortal\src/parsers.h: In member function 'virtual bool ArgParser::hasArg(const String&)':
c:\Users\chyhl\OneDrive\���������\Arduino\libraries\GyverPortal\src/parsers.h:15:43: error: no return statement in function returning non-void [-Werror=return-type]
15 | virtual bool hasArg(const String& n) {} // check
| ^
c:\Users\chyhl\OneDrive\���������\Arduino\libraries\GyverPortal\src/parsers.h: In member function 'virtual bool ArgParser::clickF()':
c:\Users\chyhl\OneDrive\���������\Arduino\libraries\GyverPortal\src/parsers.h:16:28: error: no return statement in function returning non-void [-Werror=return-type]
16 | virtual bool clickF() {}
| ^
cc1plus.exe: some warnings being treated as errors

@GyverLibs
Copy link
Owner Author

это я уже поправил

@DenysChuhlib
Copy link

DenysChuhlib commented Mar 13, 2023

А в каком редакторе вы делаете библиотеки?, я в Notepad++ и вижу в нем проблемы с табуляцией(

@GyverLibs
Copy link
Owner Author

нет никаких проблем с табуляцией

@DenysChuhlib
Copy link

Тогда я ей не правильно пользуюсь(

@GyverLibs
Copy link
Owner Author

ошибка error: 'class UpdaterClass' has no member named 'getErrorString' out = Update.getErrorString();

@GyverLibs
Copy link
Owner Author

Сделал чёт такое)
image

@Serega88kos
Copy link

в wiki объекты надо поправить, например в number не принимает уже мин и макс

@GyverLibs
Copy link
Owner Author

в вики тоже не принимает
image

@Serega88kos
Copy link

@GyverLibs Как правильно написать такой код чтобы работал? Скрипт написан на JQuery. Алерты использую для отладки...

    if (ui.click("status")) {
      if (ui.getBool("status")) {
        GP.SEND("<script>alert('Включено');</script>");
      } else {
        GP.SEND("<script>alert('Выключено');</script>");
      }
    }

если делать кастомный код, то он не работает, т.к. уже висит onClick от портала.
а вот как правильно использовать возможности портала, что-то не сообразить)

@GyverLibs
Copy link
Owner Author

Никак

@Serega88kos
Copy link

т.е. кастомные скрипты не реализовать по клику?
хотел сделать по выключенному чекбоксу скрытие ненужных блоков, вот пример
https://playcode.io/1369159

@GyverLibs
Copy link
Owner Author

Реализуй что угодно, но без SEND. SEND работает ТОЛЬКО внутри функции билдера, когда страница ЗАГРУЖАЕТСЯ или когда со страницы запрошен RELOAD

@Serega88kos
Copy link

про SEND то понятно, мне непонятно как реализовать?
в примере используется обработчик от JQuery, в портале в коде есть
<input type='checkbox' name='status' id='status' checked onclick='GP_click(this)'>
вот они и конфликтуют походу

@GyverLibs
Copy link
Owner Author

ни малейшего понятия) я от jQuery знаю только название

@Serega88kos
Copy link

без разницы jQuery или JavaScript, мне логику непонятно, как засунуть, чтобы работало)

@GyverLibs
Copy link
Owner Author

я ничем не могу помочь, тк даже близко не представляю что такое jQuery. Но абсолютно все проблемы можно решить кастомными компонентами, я уже писал об этом

@Serega88kos
Copy link

пффф, урраа, я сделал это, банально не хватало проверки загрузки страницы типа window.onload=function()
прошлый код же работал, а в этом проверку не поставил, хотя в редакторе и без него работает.
не забывайте про $(document).ready(function()

@lgadina
Copy link

lgadina commented Apr 1, 2023

@GyverLibs
Словил вот такую ошибку в браузере. Вываливается когда SWITCH пытается обновиться. Причем запрос в МК уходит, ответ от МК приходит. И на этом валится. Обновления само собой не происходит

Uncaught TypeError: Cannot read properties of null (reading 'style') at onlShow (GP_SCRIPT.js?v3.6.2=0:75:38) at GP_send.xhttp.onreadystatechange (GP_SCRIPT.js?v3.6.2=0:7:37)

@GyverLibs
Copy link
Owner Author

GyverLibs commented Apr 1, 2023

Какое имя у свитча?

@lgadina
Copy link

lgadina commented Apr 1, 2023

Какое имя у свитча?

rel0 и rel1

@GyverLibs
Copy link
Owner Author

Какая версия библиотеки? Пример demo update работает?

@lgadina
Copy link

lgadina commented Apr 2, 2023

Какая версия библиотеки? Пример demo update работает?

3.6.3

Все, разобрался. Сам тормоз. Забыл в конце билда GP.BUILD_END();
Без него почти все работает, вот и не понял.

@GyverLibs
Copy link
Owner Author

Не могу не заспойлерить новую штуку, которая придёт на замену GyverPortal. Это почти то же самое, но сильно проще, легче, быстрее, с лучшей оптимизацией под мобилки и РАБОТАЕТ ЧЕРЕЗ ИНТЕРНЕТ =)

photo_2023-04-06_20-44-53
photo_2023-04-06_20-46-35
photo_2023-04-06_20-46-35 (2)

@MalfurionST
Copy link

Здравствуйте, а для файлового режима добавить режим сжатия gzip, реально или нет?

@Oleg-Perevyshin
Copy link

А локально не будет работать (без интернета)?
Есть приложения, где доступ в интернет крайне нежелателен, а управление должно быть по локальной сети...

@GyverLibs
Copy link
Owner Author

Будет и локально

@DenysChuhlib
Copy link

GyverHUB?

@B00mlex
Copy link

B00mlex commented Apr 11, 2023

Не могу не заспойлерить новую штуку, которая придёт на замену GyverPortal. Это почти то же самое, но сильно проще, легче, быстрее, с лучшей оптимизацией под мобилки и РАБОТАЕТ ЧЕРЕЗ ИНТЕРНЕТ =)

Может будет портал работающий через web socket и на ява фреймверке типа реакт или вью?

@GyverLibs
Copy link
Owner Author

@B00mlex Да, оно и есть. Но без фреймворков, всё на нативном html/css/js

@B00mlex
Copy link

B00mlex commented Apr 12, 2023

А когда можно будет пощупать, хотя бы бету?

@GyverLibs
Copy link
Owner Author

ой не знаю... Перевёл всё на ESPAsync библиотеки, в итоге оно рандомно крашится при прошивке через платформио. Возможно придётся делать двойную работу и оставлять возможность использования стабильных синхронных библиотек. Работы ещё много, но всё что на скриншотах - вылизано и работает как часы

@B00mlex
Copy link

B00mlex commented Apr 12, 2023

ой не знаю... Перевёл всё на ESPAsync библиотеки, в итоге оно рандомно крашится при прошивке через платформио. Возможно придётся делать двойную работу и оставлять возможность использования стабильных синхронных библиотек. Работы ещё много, но всё что на скриншотах - вылизано и работает как часы

Понятно, будем ждать ) Задумка просто отличная, а в твоём исполнении, будет как всегда, бомба

@GyverLibs
Copy link
Owner Author

задумка пипец... я уже несколько раз переосознал насколько это крутая штука) плюс делаю на опыте костылей из портала, качественно вообще другая штука получается 🤩

@B00mlex
Copy link

B00mlex commented Apr 12, 2023

Ну всё, теперь буду еще сильнее ждать 😂

@Serega88kos
Copy link

Serega88kos commented May 8, 2023

анонс)
https://github.com/GyverLibs/GyverHub

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests