Разместите свой проект бесплатно и начните получать предложения от фрилансеров-исполнителей уже спустя минуты после публикации!
10 000 ₽

Web-морда с функционалом и изменением настроек для arduino/esp

проект завершен


Отзыв заказчика о сотрудничестве с Anton Kravtsov

Качество
Профессионализм
Стоимость
Контактность
Сроки

Всем доволен, рекомендую!

Отзыв фрилансера о сотрудничестве с Константином Булыниным

Оплата
Постановка задачи
Четкость требований
Контактность

Сотрудничество прошло успешно. Несмотря на формальное отсутствие первичного ТЗ, требования по проекту у заказчика были вполне однозначными, так что их несложно было формализовать. Коммуникация в процессе была достаточно продуктивной и по сути. Проверка результатов работы проведена оперативно. Рекомендую Константина как адекватного заказчика.

Anton Kravtsov | Сейф Сейф


  1.  Победившая ставка 14 дней 10 000 ₽
    736    12  0

    Могу реализовать для вас необходимую программу для ESP8266 (NodeMCU V3).
    По функциональности:
    - Авторизация при подключении к устройству
    - Настройки WiFi-подключения и точки доступа + возможно, что-то ещё (через Web-интерфейс)
    - До 10 запросов (с поддержкой GET и POST по HTTPS, с шифрованием параметров с помощью SHA512)
    - Состояние устройства (отображение в Web-интерфейсе)
    Поддержка внешних кнопок:
    - отправка запроса
    - сброс
    Цена указана за поставку в исходных кодах на C++ (для Arduino IDE) + инструкция по настройке.
    Время указано с запасом на тестирование.

  • Николай Зыгмонт
    25 сентября в 23:50 |

    Только сам интерфейс сделать или ещё и соответствующий функционал ?

  • Константин Булынин — заказчик проекта
    26 сентября в 00:12 |

    И функционал

  • Oleksandr Mymrikov
    26 сентября в 09:57 |

    какого типа авторизация нужна, basic authentication подходит? логины и пароли придется писать в программе уже в шифрованом виде

    sha512 аппаратно не поддерживается. придется костылями выкручиваться 

  • Константин Булынин — заказчик проекта
    26 сентября в 10:39 |

    Basic подойдёт, нет никаких библиотек под это дело? И если костыли то насколько это сложно будет?

  • Oleksandr Mymrikov
    26 сентября в 17:37 |

    на счет библиотек не подскажу, не интересовался. просто когда в своих проектах делал авторизацию, то готового решения под avr не нашел, поэтому выкручивался тупо в лоб - шифровал каким то онлайн сервисом и уже в зашифрованном виде вписывал в программе.

    по поводу сложности реализации sha512 тоже не подскажу - сам лично не писал.

  • Константин Булынин — заказчик проекта
    26 сентября в 17:54 |

    Шифрование надо только при создании и отправки post запроса на сторонний сервер с ардуино или esp, грубо говоря есть поля логин пароль от лк стороннего сервиса, с устройство при нажатии кнопки отправляется хеш логина пароля в sha512 запрос типа login=xxxx&pwd=xxxx

  • Anton Kravtsov
    27 сентября в 16:15 |

    ... с устройство при нажатии кнопки отправляется хеш логина пароля в sha512 запрос типа login=xxxx&pwd=xxxx 

    Здесь имеется в виду кнопка в Web-интерфейсе устройства или какая-то иная (напр., дополнительная аппаратная) кнопка?

    Т.е. заполняем данные в Web-форме , нажимаем кнопку "Отправить" и данные передаются на устройство, которое и осуществляет запрос к серверу?

  • Anton Kravtsov
    27 сентября в 00:19 |

    Web-интерфейс устройства будет использоваться только в локальной сети? Т.е. достаточно ли, чтоб на устройстве Web-сервер поддерживал только HTTP?

    Поле для отправки запроса POST/GET с SSL. 

    Полагаю, имеется в виду отправка запроса на какой-то сервер (в Интернет) по защищённому каналу (HTTPS), так ведь?

  • Константин Булынин — заказчик проекта
    27 сентября в 02:56 |

    Да использование только в локальной сети, http будет достаточно.

    Все верно, отправка запроса на сервер в интернет.

  • Anton Kravtsov
    27 сентября в 16:17 |

    Возможность добавление дополнительных полей с POST/GET запросами.  

    Должна быть поддержка нескольких разных запросов?

    Они все будут выполняться одновременно?

  • Anton Kravtsov
    27 сентября в 16:18 |

    Сброс на заводские настройки. 

    Какие заводские настройки имеются в виду?

  • Константин Булынин — заказчик проекта
    27 сентября в 16:55 |

    Кнопка будут физическая при нажатии которой отправляется post или get запрос или запросы в зависимости сколько настроено с данными прописанные в вебморде.


    Да поддержка нескольких разных запросов, выполняться будут одновременно, пользователь сам выбирает и настраивает какие типы запросов будут отправляться и какие отправлять.


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

  • Anton Kravtsov
    28 сентября в 16:11 |

    1. Для упрощения Веб-интерфейса запросы можно было бы указываться перечнем в многострочном поле ввода, например, так:

    https://server1.com/request?login=username1&pass=PASSWD1
    https://server2.com/req?user=username2&pwd=PASSWD2
    ...

    Такой вариант подходит?

    Если не все поля запроса шифруются, то можно дополнительно указать перечень тех полей, которые надо зашифровать перед отправкой на Интернет-сервер.

    2. Одновременно отправлять запросы , думаю, не получится - мощностей микроконтроллера не хватит (ориентируюсь на esp8266). Если отправлять их последовательно (без задержки), то такая реализация подойдёт?

    Т.е. при нажатии кнопки отправляем первый запрос и ждём его завершения, потом отправляем второй и ждём, и т.д.

  • Константин Булынин — заказчик проекта
    28 сентября в 16:53 |

    1. GET запросы можно сделать такими полями, а как быть с POST ? 

    2. Запросов я думаю будет мало, есть понимаем сколько максимум может отправить? даже если до 5 будет вполне достаточно, 10 это будет максимум, последовательно тоже подойдет, главное чтобы задержка между запросами была минимальная.

  • Anton Kravtsov
    28 сентября в 18:56 |

    Всё, что идёт в ссылке после ? (знак вопроса), программа будет считать параметрами: для POST-запроса параметры будут отрезаться и вставляться в тело запроса.

    Будет два списка запросов - GET и POST, которые будут вводиться в разных полях: сначала отсылаем GET-запросы, потом POST-запросы (или наоборот).

    Если же надо их чередовать, то придётся добавить пометки, например:

    server1.com/request?login=username1&pass=PASSWD1 
    POST server2.com/post?user=username2&pwd=PASSWD2
    GET server3.org/get?id=username2&password=PASSWD3 

    Всё это указывается в одном поле ввода.

    Если тип запроса не указан явно, то будет отправляться GET-запрос (ну, или POST).

    Количество запросов ограничено лишь памятью устройства. Если предполагается, что их будет очень много (больше 100), то, возможно, понадобится оптимизация по их хранению.

    По быстродействию стоит ориентироваться на 5+ сек. на один запрос.


Заказчик
Проект опубликован
1 месяц 3 дня назад
104 просмотра