From 3d864969b44f07f990a00129f886eb006dcfafc8 Mon Sep 17 00:00:00 2001 From: lenvm Date: Wed, 22 Nov 2023 20:56:18 +0100 Subject: [PATCH 01/12] add AsyncTCP library --- .../scripts/install-arduino-core-esp32.sh | 36 + .../.github/scripts/install-arduino-ide.sh | 220 +++ .../.github/scripts/install-platformio.sh | 133 ++ .../.github/scripts/on-push.sh | 64 + .../lib/me-no-dev-AsyncTCP/.github/stale.yml | 31 + .../.github/workflows/push.yml | 32 + .../src/lib/me-no-dev-AsyncTCP/.gitignore | 2 + .../src/lib/me-no-dev-AsyncTCP/.travis.yml | 34 + .../src/lib/me-no-dev-AsyncTCP/CMakeLists.txt | 15 + .../lib/me-no-dev-AsyncTCP/Kconfig.projbuild | 30 + Software/src/lib/me-no-dev-AsyncTCP/LICENSE | 165 ++ Software/src/lib/me-no-dev-AsyncTCP/README.md | 15 + .../src/lib/me-no-dev-AsyncTCP/component.mk | 3 + .../src/lib/me-no-dev-AsyncTCP/library.json | 22 + .../lib/me-no-dev-AsyncTCP/library.properties | 9 + .../lib/me-no-dev-AsyncTCP/src/AsyncTCP.cpp | 1357 +++++++++++++++++ .../src/lib/me-no-dev-AsyncTCP/src/AsyncTCP.h | 217 +++ 17 files changed, 2385 insertions(+) create mode 100755 Software/src/lib/me-no-dev-AsyncTCP/.github/scripts/install-arduino-core-esp32.sh create mode 100755 Software/src/lib/me-no-dev-AsyncTCP/.github/scripts/install-arduino-ide.sh create mode 100644 Software/src/lib/me-no-dev-AsyncTCP/.github/scripts/install-platformio.sh create mode 100755 Software/src/lib/me-no-dev-AsyncTCP/.github/scripts/on-push.sh create mode 100644 Software/src/lib/me-no-dev-AsyncTCP/.github/stale.yml create mode 100644 Software/src/lib/me-no-dev-AsyncTCP/.github/workflows/push.yml create mode 100644 Software/src/lib/me-no-dev-AsyncTCP/.gitignore create mode 100644 Software/src/lib/me-no-dev-AsyncTCP/.travis.yml create mode 100644 Software/src/lib/me-no-dev-AsyncTCP/CMakeLists.txt create mode 100644 Software/src/lib/me-no-dev-AsyncTCP/Kconfig.projbuild create mode 100644 Software/src/lib/me-no-dev-AsyncTCP/LICENSE create mode 100644 Software/src/lib/me-no-dev-AsyncTCP/README.md create mode 100644 Software/src/lib/me-no-dev-AsyncTCP/component.mk create mode 100644 Software/src/lib/me-no-dev-AsyncTCP/library.json create mode 100644 Software/src/lib/me-no-dev-AsyncTCP/library.properties create mode 100644 Software/src/lib/me-no-dev-AsyncTCP/src/AsyncTCP.cpp create mode 100644 Software/src/lib/me-no-dev-AsyncTCP/src/AsyncTCP.h diff --git a/Software/src/lib/me-no-dev-AsyncTCP/.github/scripts/install-arduino-core-esp32.sh b/Software/src/lib/me-no-dev-AsyncTCP/.github/scripts/install-arduino-core-esp32.sh new file mode 100755 index 00000000..cf1026d6 --- /dev/null +++ b/Software/src/lib/me-no-dev-AsyncTCP/.github/scripts/install-arduino-core-esp32.sh @@ -0,0 +1,36 @@ +#!/bin/bash + +export ARDUINO_ESP32_PATH="$ARDUINO_USR_PATH/hardware/espressif/esp32" +if [ ! -d "$ARDUINO_ESP32_PATH" ]; then + echo "Installing ESP32 Arduino Core ..." + script_init_path="$PWD" + mkdir -p "$ARDUINO_USR_PATH/hardware/espressif" + cd "$ARDUINO_USR_PATH/hardware/espressif" + + echo "Installing Python Serial ..." + pip install pyserial > /dev/null + + if [ "$OS_IS_WINDOWS" == "1" ]; then + echo "Installing Python Requests ..." + pip install requests > /dev/null + fi + + if [ "$GITHUB_REPOSITORY" == "espressif/arduino-esp32" ]; then + echo "Linking Core..." + ln -s $GITHUB_WORKSPACE esp32 + else + echo "Cloning Core Repository..." + git clone https://github.com/espressif/arduino-esp32.git esp32 > /dev/null 2>&1 + fi + + echo "Updating Submodules ..." + cd esp32 + git submodule update --init --recursive > /dev/null 2>&1 + + echo "Installing Platform Tools ..." + cd tools && python get.py + cd $script_init_path + + echo "ESP32 Arduino has been installed in '$ARDUINO_ESP32_PATH'" + echo "" +fi diff --git a/Software/src/lib/me-no-dev-AsyncTCP/.github/scripts/install-arduino-ide.sh b/Software/src/lib/me-no-dev-AsyncTCP/.github/scripts/install-arduino-ide.sh new file mode 100755 index 00000000..7e268b1f --- /dev/null +++ b/Software/src/lib/me-no-dev-AsyncTCP/.github/scripts/install-arduino-ide.sh @@ -0,0 +1,220 @@ +#!/bin/bash + +#OSTYPE: 'linux-gnu', ARCH: 'x86_64' => linux64 +#OSTYPE: 'msys', ARCH: 'x86_64' => win32 +#OSTYPE: 'darwin18', ARCH: 'i386' => macos + +OSBITS=`arch` +if [[ "$OSTYPE" == "linux"* ]]; then + export OS_IS_LINUX="1" + ARCHIVE_FORMAT="tar.xz" + if [[ "$OSBITS" == "i686" ]]; then + OS_NAME="linux32" + elif [[ "$OSBITS" == "x86_64" ]]; then + OS_NAME="linux64" + elif [[ "$OSBITS" == "armv7l" || "$OSBITS" == "aarch64" ]]; then + OS_NAME="linuxarm" + else + OS_NAME="$OSTYPE-$OSBITS" + echo "Unknown OS '$OS_NAME'" + exit 1 + fi +elif [[ "$OSTYPE" == "darwin"* ]]; then + export OS_IS_MACOS="1" + ARCHIVE_FORMAT="zip" + OS_NAME="macosx" +elif [[ "$OSTYPE" == "cygwin" ]] || [[ "$OSTYPE" == "msys" ]] || [[ "$OSTYPE" == "win32" ]]; then + export OS_IS_WINDOWS="1" + ARCHIVE_FORMAT="zip" + OS_NAME="windows" +else + OS_NAME="$OSTYPE-$OSBITS" + echo "Unknown OS '$OS_NAME'" + exit 1 +fi +export OS_NAME + +ARDUINO_BUILD_DIR="$HOME/.arduino/build.tmp" +ARDUINO_CACHE_DIR="$HOME/.arduino/cache.tmp" + +if [ "$OS_IS_MACOS" == "1" ]; then + export ARDUINO_IDE_PATH="/Applications/Arduino.app/Contents/Java" + export ARDUINO_USR_PATH="$HOME/Documents/Arduino" +elif [ "$OS_IS_WINDOWS" == "1" ]; then + export ARDUINO_IDE_PATH="$HOME/arduino_ide" + export ARDUINO_USR_PATH="$HOME/Documents/Arduino" +else + export ARDUINO_IDE_PATH="$HOME/arduino_ide" + export ARDUINO_USR_PATH="$HOME/Arduino" +fi + +if [ ! -d "$ARDUINO_IDE_PATH" ]; then + echo "Installing Arduino IDE on $OS_NAME ..." + echo "Downloading 'arduino-nightly-$OS_NAME.$ARCHIVE_FORMAT' to 'arduino.$ARCHIVE_FORMAT' ..." + if [ "$OS_IS_LINUX" == "1" ]; then + wget -O "arduino.$ARCHIVE_FORMAT" "https://www.arduino.cc/download.php?f=/arduino-nightly-$OS_NAME.$ARCHIVE_FORMAT" > /dev/null 2>&1 + echo "Extracting 'arduino.$ARCHIVE_FORMAT' ..." + tar xf "arduino.$ARCHIVE_FORMAT" > /dev/null + mv arduino-nightly "$ARDUINO_IDE_PATH" + else + curl -o "arduino.$ARCHIVE_FORMAT" -L "https://www.arduino.cc/download.php?f=/arduino-nightly-$OS_NAME.$ARCHIVE_FORMAT" > /dev/null 2>&1 + echo "Extracting 'arduino.$ARCHIVE_FORMAT' ..." + unzip "arduino.$ARCHIVE_FORMAT" > /dev/null + if [ "$OS_IS_MACOS" == "1" ]; then + mv "Arduino.app" "/Applications/Arduino.app" + else + mv arduino-nightly "$ARDUINO_IDE_PATH" + fi + fi + rm -rf "arduino.$ARCHIVE_FORMAT" + + mkdir -p "$ARDUINO_USR_PATH/libraries" + mkdir -p "$ARDUINO_USR_PATH/hardware" + + echo "Arduino IDE Installed in '$ARDUINO_IDE_PATH'" + echo "" +fi + +function build_sketch(){ # build_sketch [extra-options] + if [ "$#" -lt 2 ]; then + echo "ERROR: Illegal number of parameters" + echo "USAGE: build_sketch [extra-options]" + return 1 + fi + + local fqbn="$1" + local sketch="$2" + local xtra_opts="$3" + local win_opts="" + if [ "$OS_IS_WINDOWS" == "1" ]; then + local ctags_version=`ls "$ARDUINO_IDE_PATH/tools-builder/ctags/"` + local preprocessor_version=`ls "$ARDUINO_IDE_PATH/tools-builder/arduino-preprocessor/"` + win_opts="-prefs=runtime.tools.ctags.path=$ARDUINO_IDE_PATH/tools-builder/ctags/$ctags_version -prefs=runtime.tools.arduino-preprocessor.path=$ARDUINO_IDE_PATH/tools-builder/arduino-preprocessor/$preprocessor_version" + fi + + echo "" + echo "Compiling '"$(basename "$sketch")"' ..." + mkdir -p "$ARDUINO_BUILD_DIR" + mkdir -p "$ARDUINO_CACHE_DIR" + $ARDUINO_IDE_PATH/arduino-builder -compile -logger=human -core-api-version=10810 \ + -fqbn=$fqbn \ + -warnings="all" \ + -tools "$ARDUINO_IDE_PATH/tools-builder" \ + -tools "$ARDUINO_IDE_PATH/tools" \ + -built-in-libraries "$ARDUINO_IDE_PATH/libraries" \ + -hardware "$ARDUINO_IDE_PATH/hardware" \ + -hardware "$ARDUINO_USR_PATH/hardware" \ + -libraries "$ARDUINO_USR_PATH/libraries" \ + -build-cache "$ARDUINO_CACHE_DIR" \ + -build-path "$ARDUINO_BUILD_DIR" \ + $win_opts $xtra_opts "$sketch" +} + +function count_sketches() # count_sketches +{ + local examples="$1" + rm -rf sketches.txt + if [ ! -d "$examples" ]; then + touch sketches.txt + return 0 + fi + local sketches=$(find $examples -name *.ino) + local sketchnum=0 + for sketch in $sketches; do + local sketchdir=$(dirname $sketch) + local sketchdirname=$(basename $sketchdir) + local sketchname=$(basename $sketch) + if [[ "${sketchdirname}.ino" != "$sketchname" ]]; then + continue + fi; + if [[ -f "$sketchdir/.test.skip" ]]; then + continue + fi + echo $sketch >> sketches.txt + sketchnum=$(($sketchnum + 1)) + done + return $sketchnum +} + +function build_sketches() # build_sketches [extra-options] +{ + local fqbn=$1 + local examples=$2 + local chunk_idex=$3 + local chunks_num=$4 + local xtra_opts=$5 + + if [ "$#" -lt 2 ]; then + echo "ERROR: Illegal number of parameters" + echo "USAGE: build_sketches [ ] [extra-options]" + return 1 + fi + + if [ "$#" -lt 4 ]; then + chunk_idex="0" + chunks_num="1" + xtra_opts=$3 + fi + + if [ "$chunks_num" -le 0 ]; then + echo "ERROR: Chunks count must be positive number" + return 1 + fi + if [ "$chunk_idex" -ge "$chunks_num" ]; then + echo "ERROR: Chunk index must be less than chunks count" + return 1 + fi + + set +e + count_sketches "$examples" + local sketchcount=$? + set -e + local sketches=$(cat sketches.txt) + rm -rf sketches.txt + + local chunk_size=$(( $sketchcount / $chunks_num )) + local all_chunks=$(( $chunks_num * $chunk_size )) + if [ "$all_chunks" -lt "$sketchcount" ]; then + chunk_size=$(( $chunk_size + 1 )) + fi + + local start_index=$(( $chunk_idex * $chunk_size )) + if [ "$sketchcount" -le "$start_index" ]; then + echo "Skipping job" + return 0 + fi + + local end_index=$(( $(( $chunk_idex + 1 )) * $chunk_size )) + if [ "$end_index" -gt "$sketchcount" ]; then + end_index=$sketchcount + fi + + local start_num=$(( $start_index + 1 )) + echo "Found $sketchcount Sketches"; + echo "Chunk Count : $chunks_num" + echo "Chunk Size : $chunk_size" + echo "Start Sketch: $start_num" + echo "End Sketch : $end_index" + + local sketchnum=0 + for sketch in $sketches; do + local sketchdir=$(dirname $sketch) + local sketchdirname=$(basename $sketchdir) + local sketchname=$(basename $sketch) + if [ "${sketchdirname}.ino" != "$sketchname" ] \ + || [ -f "$sketchdir/.test.skip" ]; then + continue + fi + sketchnum=$(($sketchnum + 1)) + if [ "$sketchnum" -le "$start_index" ] \ + || [ "$sketchnum" -gt "$end_index" ]; then + continue + fi + build_sketch "$fqbn" "$sketch" "$xtra_opts" + local result=$? + if [ $result -ne 0 ]; then + return $result + fi + done + return 0 +} diff --git a/Software/src/lib/me-no-dev-AsyncTCP/.github/scripts/install-platformio.sh b/Software/src/lib/me-no-dev-AsyncTCP/.github/scripts/install-platformio.sh new file mode 100644 index 00000000..61c94fec --- /dev/null +++ b/Software/src/lib/me-no-dev-AsyncTCP/.github/scripts/install-platformio.sh @@ -0,0 +1,133 @@ +#!/bin/bash + +echo "Installing Python Wheel ..." +pip install wheel > /dev/null 2>&1 + +echo "Installing PlatformIO ..." +pip install -U platformio > /dev/null 2>&1 + +echo "PlatformIO has been installed" +echo "" + + +function build_pio_sketch(){ # build_pio_sketch + if [ "$#" -lt 2 ]; then + echo "ERROR: Illegal number of parameters" + echo "USAGE: build_pio_sketch " + return 1 + fi + + local board="$1" + local sketch="$2" + local sketch_dir=$(dirname "$sketch") + echo "" + echo "Compiling '"$(basename "$sketch")"' ..." + python -m platformio ci -l '.' --board "$board" "$sketch_dir" --project-option="board_build.partitions = huge_app.csv" +} + +function count_sketches() # count_sketches +{ + local examples="$1" + rm -rf sketches.txt + if [ ! -d "$examples" ]; then + touch sketches.txt + return 0 + fi + local sketches=$(find $examples -name *.ino) + local sketchnum=0 + for sketch in $sketches; do + local sketchdir=$(dirname $sketch) + local sketchdirname=$(basename $sketchdir) + local sketchname=$(basename $sketch) + if [[ "${sketchdirname}.ino" != "$sketchname" ]]; then + continue + fi; + if [[ -f "$sketchdir/.test.skip" ]]; then + continue + fi + echo $sketch >> sketches.txt + sketchnum=$(($sketchnum + 1)) + done + return $sketchnum +} + +function build_pio_sketches() # build_pio_sketches +{ + if [ "$#" -lt 2 ]; then + echo "ERROR: Illegal number of parameters" + echo "USAGE: build_pio_sketches [ ]" + return 1 + fi + + local board=$1 + local examples=$2 + local chunk_idex=$3 + local chunks_num=$4 + + if [ "$#" -lt 4 ]; then + chunk_idex="0" + chunks_num="1" + fi + + if [ "$chunks_num" -le 0 ]; then + echo "ERROR: Chunks count must be positive number" + return 1 + fi + if [ "$chunk_idex" -ge "$chunks_num" ]; then + echo "ERROR: Chunk index must be less than chunks count" + return 1 + fi + + set +e + count_sketches "$examples" + local sketchcount=$? + set -e + local sketches=$(cat sketches.txt) + rm -rf sketches.txt + + local chunk_size=$(( $sketchcount / $chunks_num )) + local all_chunks=$(( $chunks_num * $chunk_size )) + if [ "$all_chunks" -lt "$sketchcount" ]; then + chunk_size=$(( $chunk_size + 1 )) + fi + + local start_index=$(( $chunk_idex * $chunk_size )) + if [ "$sketchcount" -le "$start_index" ]; then + echo "Skipping job" + return 0 + fi + + local end_index=$(( $(( $chunk_idex + 1 )) * $chunk_size )) + if [ "$end_index" -gt "$sketchcount" ]; then + end_index=$sketchcount + fi + + local start_num=$(( $start_index + 1 )) + echo "Found $sketchcount Sketches"; + echo "Chunk Count : $chunks_num" + echo "Chunk Size : $chunk_size" + echo "Start Sketch: $start_num" + echo "End Sketch : $end_index" + + local sketchnum=0 + for sketch in $sketches; do + local sketchdir=$(dirname $sketch) + local sketchdirname=$(basename $sketchdir) + local sketchname=$(basename $sketch) + if [ "${sketchdirname}.ino" != "$sketchname" ] \ + || [ -f "$sketchdir/.test.skip" ]; then + continue + fi + sketchnum=$(($sketchnum + 1)) + if [ "$sketchnum" -le "$start_index" ] \ + || [ "$sketchnum" -gt "$end_index" ]; then + continue + fi + build_pio_sketch "$board" "$sketch" + local result=$? + if [ $result -ne 0 ]; then + return $result + fi + done + return 0 +} diff --git a/Software/src/lib/me-no-dev-AsyncTCP/.github/scripts/on-push.sh b/Software/src/lib/me-no-dev-AsyncTCP/.github/scripts/on-push.sh new file mode 100755 index 00000000..ece5d7a4 --- /dev/null +++ b/Software/src/lib/me-no-dev-AsyncTCP/.github/scripts/on-push.sh @@ -0,0 +1,64 @@ +#!/bin/bash + +set -e + +if [ ! -z "$TRAVIS_BUILD_DIR" ]; then + export GITHUB_WORKSPACE="$TRAVIS_BUILD_DIR" + export GITHUB_REPOSITORY="$TRAVIS_REPO_SLUG" +elif [ -z "$GITHUB_WORKSPACE" ]; then + export GITHUB_WORKSPACE="$PWD" + export GITHUB_REPOSITORY="me-no-dev/AsyncTCP" +fi + +CHUNK_INDEX=$1 +CHUNKS_CNT=$2 +BUILD_PIO=0 +if [ "$#" -lt 2 ] || [ "$CHUNKS_CNT" -le 0 ]; then + CHUNK_INDEX=0 + CHUNKS_CNT=1 +elif [ "$CHUNK_INDEX" -gt "$CHUNKS_CNT" ]; then + CHUNK_INDEX=$CHUNKS_CNT +elif [ "$CHUNK_INDEX" -eq "$CHUNKS_CNT" ]; then + BUILD_PIO=1 +fi + +if [ "$BUILD_PIO" -eq 0 ]; then + # ArduinoIDE Test + source ./.github/scripts/install-arduino-ide.sh + source ./.github/scripts/install-arduino-core-esp32.sh + + echo "Installing AsyncTCP ..." + cp -rf "$GITHUB_WORKSPACE" "$ARDUINO_USR_PATH/libraries/AsyncTCP" + + FQBN="espressif:esp32:esp32:PSRAM=enabled,PartitionScheme=huge_app" + build_sketches "$FQBN" "$GITHUB_WORKSPACE/examples" + if [ ! "$OS_IS_WINDOWS" == "1" ]; then + echo "Installing ESPAsyncWebServer ..." + git clone https://github.com/me-no-dev/ESPAsyncWebServer "$ARDUINO_USR_PATH/libraries/ESPAsyncWebServer" > /dev/null 2>&1 + + echo "Installing ArduinoJson ..." + git clone https://github.com/bblanchon/ArduinoJson "$ARDUINO_USR_PATH/libraries/ArduinoJson" > /dev/null 2>&1 + + build_sketches "$FQBN" "$ARDUINO_USR_PATH/libraries/ESPAsyncWebServer/examples" + fi +else + # PlatformIO Test + source ./.github/scripts/install-platformio.sh + + echo "Installing AsyncTCP ..." + python -m platformio lib --storage-dir "$GITHUB_WORKSPACE" install + + BOARD="esp32dev" + build_pio_sketches "$BOARD" "$GITHUB_WORKSPACE/examples" + + if [[ "$OSTYPE" != "cygwin" ]] && [[ "$OSTYPE" != "msys" ]] && [[ "$OSTYPE" != "win32" ]]; then + echo "Installing ESPAsyncWebServer ..." + python -m platformio lib -g install https://github.com/me-no-dev/ESPAsyncWebServer.git > /dev/null 2>&1 + git clone https://github.com/me-no-dev/ESPAsyncWebServer "$HOME/ESPAsyncWebServer" > /dev/null 2>&1 + + echo "Installing ArduinoJson ..." + python -m platformio lib -g install https://github.com/bblanchon/ArduinoJson.git > /dev/null 2>&1 + + build_pio_sketches "$BOARD" "$HOME/ESPAsyncWebServer/examples" + fi +fi diff --git a/Software/src/lib/me-no-dev-AsyncTCP/.github/stale.yml b/Software/src/lib/me-no-dev-AsyncTCP/.github/stale.yml new file mode 100644 index 00000000..ce7a8e3f --- /dev/null +++ b/Software/src/lib/me-no-dev-AsyncTCP/.github/stale.yml @@ -0,0 +1,31 @@ +# Configuration for probot-stale - https://github.com/probot/stale + +daysUntilStale: 60 +daysUntilClose: 14 +limitPerRun: 30 +staleLabel: stale +exemptLabels: + - pinned + - security + - "to be implemented" + - "for reference" + - "move to PR" + - "enhancement" + +only: issues +onlyLabels: [] +exemptProjects: false +exemptMilestones: false +exemptAssignees: false + +markComment: > + [STALE_SET] This issue has been automatically marked as stale because it has not had + recent activity. It will be closed in 14 days if no further activity occurs. Thank you + for your contributions. + +unmarkComment: > + [STALE_CLR] This issue has been removed from the stale queue. Please ensure activity to keep it openin the future. + +closeComment: > + [STALE_DEL] This stale issue has been automatically closed. Thank you for your contributions. + diff --git a/Software/src/lib/me-no-dev-AsyncTCP/.github/workflows/push.yml b/Software/src/lib/me-no-dev-AsyncTCP/.github/workflows/push.yml new file mode 100644 index 00000000..15cd441b --- /dev/null +++ b/Software/src/lib/me-no-dev-AsyncTCP/.github/workflows/push.yml @@ -0,0 +1,32 @@ +name: Async TCP CI + +on: + push: + branches: + - master + - release/* + pull_request: + +jobs: + + build-arduino: + name: Arduino on ${{ matrix.os }} + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest, macOS-latest] + steps: + - uses: actions/checkout@v1 + - name: Build Tests + run: bash ./.github/scripts/on-push.sh 0 1 + + build-pio: + name: PlatformIO on ${{ matrix.os }} + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest, macOS-latest] + steps: + - uses: actions/checkout@v1 + - name: Build Tests + run: bash ./.github/scripts/on-push.sh 1 1 diff --git a/Software/src/lib/me-no-dev-AsyncTCP/.gitignore b/Software/src/lib/me-no-dev-AsyncTCP/.gitignore new file mode 100644 index 00000000..9bea4330 --- /dev/null +++ b/Software/src/lib/me-no-dev-AsyncTCP/.gitignore @@ -0,0 +1,2 @@ + +.DS_Store diff --git a/Software/src/lib/me-no-dev-AsyncTCP/.travis.yml b/Software/src/lib/me-no-dev-AsyncTCP/.travis.yml new file mode 100644 index 00000000..dbfc064a --- /dev/null +++ b/Software/src/lib/me-no-dev-AsyncTCP/.travis.yml @@ -0,0 +1,34 @@ +sudo: false +language: python +os: + - linux + +git: + depth: false + +stages: + - build + +jobs: + include: + + - name: "Arduino Build" + if: tag IS blank AND (type = pull_request OR (type = push AND branch = master)) + stage: build + script: bash $TRAVIS_BUILD_DIR/.github/scripts/on-push.sh + + - name: "PlatformIO Build" + if: tag IS blank AND (type = pull_request OR (type = push AND branch = master)) + stage: build + script: bash $TRAVIS_BUILD_DIR/.github/scripts/on-push.sh 1 1 + +notifications: + email: + on_success: change + on_failure: change + webhooks: + urls: + - https://webhooks.gitter.im/e/60e65d0c78ea0a920347 + on_success: change # options: [always|never|change] default: always + on_failure: always # options: [always|never|change] default: always + on_start: false # default: false diff --git a/Software/src/lib/me-no-dev-AsyncTCP/CMakeLists.txt b/Software/src/lib/me-no-dev-AsyncTCP/CMakeLists.txt new file mode 100644 index 00000000..f52e1c93 --- /dev/null +++ b/Software/src/lib/me-no-dev-AsyncTCP/CMakeLists.txt @@ -0,0 +1,15 @@ +set(COMPONENT_SRCDIRS + "src" +) + +set(COMPONENT_ADD_INCLUDEDIRS + "src" +) + +set(COMPONENT_REQUIRES + "arduino-esp32" +) + +register_component() + +target_compile_options(${COMPONENT_TARGET} PRIVATE -fno-rtti) diff --git a/Software/src/lib/me-no-dev-AsyncTCP/Kconfig.projbuild b/Software/src/lib/me-no-dev-AsyncTCP/Kconfig.projbuild new file mode 100644 index 00000000..17749264 --- /dev/null +++ b/Software/src/lib/me-no-dev-AsyncTCP/Kconfig.projbuild @@ -0,0 +1,30 @@ +menu "AsyncTCP Configuration" + +choice ASYNC_TCP_RUNNING_CORE + bool "Core on which AsyncTCP's thread is running" + default ASYNC_TCP_RUN_CORE1 + help + Select on which core AsyncTCP is running + + config ASYNC_TCP_RUN_CORE0 + bool "CORE 0" + config ASYNC_TCP_RUN_CORE1 + bool "CORE 1" + config ASYNC_TCP_RUN_NO_AFFINITY + bool "BOTH" + +endchoice + +config ASYNC_TCP_RUNNING_CORE + int + default 0 if ASYNC_TCP_RUN_CORE0 + default 1 if ASYNC_TCP_RUN_CORE1 + default -1 if ASYNC_TCP_RUN_NO_AFFINITY + +config ASYNC_TCP_USE_WDT + bool "Enable WDT for the AsyncTCP task" + default "y" + help + Enable WDT for the AsyncTCP task, so it will trigger if a handler is locking the thread. + +endmenu diff --git a/Software/src/lib/me-no-dev-AsyncTCP/LICENSE b/Software/src/lib/me-no-dev-AsyncTCP/LICENSE new file mode 100644 index 00000000..65c5ca88 --- /dev/null +++ b/Software/src/lib/me-no-dev-AsyncTCP/LICENSE @@ -0,0 +1,165 @@ + GNU LESSER GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + + This version of the GNU Lesser General Public License incorporates +the terms and conditions of version 3 of the GNU General Public +License, supplemented by the additional permissions listed below. + + 0. Additional Definitions. + + As used herein, "this License" refers to version 3 of the GNU Lesser +General Public License, and the "GNU GPL" refers to version 3 of the GNU +General Public License. + + "The Library" refers to a covered work governed by this License, +other than an Application or a Combined Work as defined below. + + An "Application" is any work that makes use of an interface provided +by the Library, but which is not otherwise based on the Library. +Defining a subclass of a class defined by the Library is deemed a mode +of using an interface provided by the Library. + + A "Combined Work" is a work produced by combining or linking an +Application with the Library. The particular version of the Library +with which the Combined Work was made is also called the "Linked +Version". + + The "Minimal Corresponding Source" for a Combined Work means the +Corresponding Source for the Combined Work, excluding any source code +for portions of the Combined Work that, considered in isolation, are +based on the Application, and not on the Linked Version. + + The "Corresponding Application Code" for a Combined Work means the +object code and/or source code for the Application, including any data +and utility programs needed for reproducing the Combined Work from the +Application, but excluding the System Libraries of the Combined Work. + + 1. Exception to Section 3 of the GNU GPL. + + You may convey a covered work under sections 3 and 4 of this License +without being bound by section 3 of the GNU GPL. + + 2. Conveying Modified Versions. + + If you modify a copy of the Library, and, in your modifications, a +facility refers to a function or data to be supplied by an Application +that uses the facility (other than as an argument passed when the +facility is invoked), then you may convey a copy of the modified +version: + + a) under this License, provided that you make a good faith effort to + ensure that, in the event an Application does not supply the + function or data, the facility still operates, and performs + whatever part of its purpose remains meaningful, or + + b) under the GNU GPL, with none of the additional permissions of + this License applicable to that copy. + + 3. Object Code Incorporating Material from Library Header Files. + + The object code form of an Application may incorporate material from +a header file that is part of the Library. You may convey such object +code under terms of your choice, provided that, if the incorporated +material is not limited to numerical parameters, data structure +layouts and accessors, or small macros, inline functions and templates +(ten or fewer lines in length), you do both of the following: + + a) Give prominent notice with each copy of the object code that the + Library is used in it and that the Library and its use are + covered by this License. + + b) Accompany the object code with a copy of the GNU GPL and this license + document. + + 4. Combined Works. + + You may convey a Combined Work under terms of your choice that, +taken together, effectively do not restrict modification of the +portions of the Library contained in the Combined Work and reverse +engineering for debugging such modifications, if you also do each of +the following: + + a) Give prominent notice with each copy of the Combined Work that + the Library is used in it and that the Library and its use are + covered by this License. + + b) Accompany the Combined Work with a copy of the GNU GPL and this license + document. + + c) For a Combined Work that displays copyright notices during + execution, include the copyright notice for the Library among + these notices, as well as a reference directing the user to the + copies of the GNU GPL and this license document. + + d) Do one of the following: + + 0) Convey the Minimal Corresponding Source under the terms of this + License, and the Corresponding Application Code in a form + suitable for, and under terms that permit, the user to + recombine or relink the Application with a modified version of + the Linked Version to produce a modified Combined Work, in the + manner specified by section 6 of the GNU GPL for conveying + Corresponding Source. + + 1) Use a suitable shared library mechanism for linking with the + Library. A suitable mechanism is one that (a) uses at run time + a copy of the Library already present on the user's computer + system, and (b) will operate properly with a modified version + of the Library that is interface-compatible with the Linked + Version. + + e) Provide Installation Information, but only if you would otherwise + be required to provide such information under section 6 of the + GNU GPL, and only to the extent that such information is + necessary to install and execute a modified version of the + Combined Work produced by recombining or relinking the + Application with a modified version of the Linked Version. (If + you use option 4d0, the Installation Information must accompany + the Minimal Corresponding Source and Corresponding Application + Code. If you use option 4d1, you must provide the Installation + Information in the manner specified by section 6 of the GNU GPL + for conveying Corresponding Source.) + + 5. Combined Libraries. + + You may place library facilities that are a work based on the +Library side by side in a single library together with other library +facilities that are not Applications and are not covered by this +License, and convey such a combined library under terms of your +choice, if you do both of the following: + + a) Accompany the combined library with a copy of the same work based + on the Library, uncombined with any other library facilities, + conveyed under the terms of this License. + + b) Give prominent notice with the combined library that part of it + is a work based on the Library, and explaining where to find the + accompanying uncombined form of the same work. + + 6. Revised Versions of the GNU Lesser General Public License. + + The Free Software Foundation may publish revised and/or new versions +of the GNU Lesser General Public License from time to time. Such new +versions will be similar in spirit to the present version, but may +differ in detail to address new problems or concerns. + + Each version is given a distinguishing version number. If the +Library as you received it specifies that a certain numbered version +of the GNU Lesser General Public License "or any later version" +applies to it, you have the option of following the terms and +conditions either of that published version or of any later version +published by the Free Software Foundation. If the Library as you +received it does not specify a version number of the GNU Lesser +General Public License, you may choose any version of the GNU Lesser +General Public License ever published by the Free Software Foundation. + + If the Library as you received it specifies that a proxy can decide +whether future versions of the GNU Lesser General Public License shall +apply, that proxy's public statement of acceptance of any version is +permanent authorization for you to choose that version for the +Library. diff --git a/Software/src/lib/me-no-dev-AsyncTCP/README.md b/Software/src/lib/me-no-dev-AsyncTCP/README.md new file mode 100644 index 00000000..79ffa9ef --- /dev/null +++ b/Software/src/lib/me-no-dev-AsyncTCP/README.md @@ -0,0 +1,15 @@ +This is commit ca8ac5f from https://github.com/me-no-dev/AsyncTCP + +# AsyncTCP +[![Build Status](https://travis-ci.org/me-no-dev/AsyncTCP.svg?branch=master)](https://travis-ci.org/me-no-dev/AsyncTCP) ![](https://github.com/me-no-dev/AsyncTCP/workflows/Async%20TCP%20CI/badge.svg) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/2f7e4d1df8b446d192cbfec6dc174d2d)](https://www.codacy.com/manual/me-no-dev/AsyncTCP?utm_source=github.com&utm_medium=referral&utm_content=me-no-dev/AsyncTCP&utm_campaign=Badge_Grade) + +### Async TCP Library for ESP32 Arduino + +[![Join the chat at https://gitter.im/me-no-dev/ESPAsyncWebServer](https://badges.gitter.im/me-no-dev/ESPAsyncWebServer.svg)](https://gitter.im/me-no-dev/ESPAsyncWebServer?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) + +This is a fully asynchronous TCP library, aimed at enabling trouble-free, multi-connection network environment for Espressif's ESP32 MCUs. + +This library is the base for [ESPAsyncWebServer](https://github.com/me-no-dev/ESPAsyncWebServer) + +## AsyncClient and AsyncServer +The base classes on which everything else is built. They expose all possible scenarios, but are really raw and require more skills to use. diff --git a/Software/src/lib/me-no-dev-AsyncTCP/component.mk b/Software/src/lib/me-no-dev-AsyncTCP/component.mk new file mode 100644 index 00000000..bb5bb161 --- /dev/null +++ b/Software/src/lib/me-no-dev-AsyncTCP/component.mk @@ -0,0 +1,3 @@ +COMPONENT_ADD_INCLUDEDIRS := src +COMPONENT_SRCDIRS := src +CXXFLAGS += -fno-rtti diff --git a/Software/src/lib/me-no-dev-AsyncTCP/library.json b/Software/src/lib/me-no-dev-AsyncTCP/library.json new file mode 100644 index 00000000..89f90e4e --- /dev/null +++ b/Software/src/lib/me-no-dev-AsyncTCP/library.json @@ -0,0 +1,22 @@ +{ + "name":"AsyncTCP", + "description":"Asynchronous TCP Library for ESP32", + "keywords":"async,tcp", + "authors": + { + "name": "Hristo Gochkov", + "maintainer": true + }, + "repository": + { + "type": "git", + "url": "https://github.com/me-no-dev/AsyncTCP.git" + }, + "version": "1.1.1", + "license": "LGPL-3.0", + "frameworks": "arduino", + "platforms": "espressif32", + "build": { + "libCompatMode": 2 + } +} diff --git a/Software/src/lib/me-no-dev-AsyncTCP/library.properties b/Software/src/lib/me-no-dev-AsyncTCP/library.properties new file mode 100644 index 00000000..eb4e26e9 --- /dev/null +++ b/Software/src/lib/me-no-dev-AsyncTCP/library.properties @@ -0,0 +1,9 @@ +name=AsyncTCP +version=1.1.1 +author=Me-No-Dev +maintainer=Me-No-Dev +sentence=Async TCP Library for ESP32 +paragraph=Async TCP Library for ESP32 +category=Other +url=https://github.com/me-no-dev/AsyncTCP +architectures=* diff --git a/Software/src/lib/me-no-dev-AsyncTCP/src/AsyncTCP.cpp b/Software/src/lib/me-no-dev-AsyncTCP/src/AsyncTCP.cpp new file mode 100644 index 00000000..89ff6ee3 --- /dev/null +++ b/Software/src/lib/me-no-dev-AsyncTCP/src/AsyncTCP.cpp @@ -0,0 +1,1357 @@ +/* + Asynchronous TCP library for Espressif MCUs + + Copyright (c) 2016 Hristo Gochkov. All rights reserved. + This file is part of the esp8266 core for Arduino environment. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#include "Arduino.h" + +#include "AsyncTCP.h" +extern "C"{ +#include "lwip/opt.h" +#include "lwip/tcp.h" +#include "lwip/inet.h" +#include "lwip/dns.h" +#include "lwip/err.h" +} +#include "esp_task_wdt.h" + +/* + * TCP/IP Event Task + * */ + +typedef enum { + LWIP_TCP_SENT, LWIP_TCP_RECV, LWIP_TCP_FIN, LWIP_TCP_ERROR, LWIP_TCP_POLL, LWIP_TCP_CLEAR, LWIP_TCP_ACCEPT, LWIP_TCP_CONNECTED, LWIP_TCP_DNS +} lwip_event_t; + +typedef struct { + lwip_event_t event; + void *arg; + union { + struct { + void * pcb; + int8_t err; + } connected; + struct { + int8_t err; + } error; + struct { + tcp_pcb * pcb; + uint16_t len; + } sent; + struct { + tcp_pcb * pcb; + pbuf * pb; + int8_t err; + } recv; + struct { + tcp_pcb * pcb; + int8_t err; + } fin; + struct { + tcp_pcb * pcb; + } poll; + struct { + AsyncClient * client; + } accept; + struct { + const char * name; + ip_addr_t addr; + } dns; + }; +} lwip_event_packet_t; + +static xQueueHandle _async_queue; +static TaskHandle_t _async_service_task_handle = NULL; + + +SemaphoreHandle_t _slots_lock; +const int _number_of_closed_slots = CONFIG_LWIP_MAX_ACTIVE_TCP; +static uint32_t _closed_slots[_number_of_closed_slots]; +static uint32_t _closed_index = []() { + _slots_lock = xSemaphoreCreateBinary(); + xSemaphoreGive(_slots_lock); + for (int i = 0; i < _number_of_closed_slots; ++ i) { + _closed_slots[i] = 1; + } + return 1; +}(); + + +static inline bool _init_async_event_queue(){ + if(!_async_queue){ + _async_queue = xQueueCreate(32, sizeof(lwip_event_packet_t *)); + if(!_async_queue){ + return false; + } + } + return true; +} + +static inline bool _send_async_event(lwip_event_packet_t ** e){ + return _async_queue && xQueueSend(_async_queue, e, portMAX_DELAY) == pdPASS; +} + +static inline bool _prepend_async_event(lwip_event_packet_t ** e){ + return _async_queue && xQueueSendToFront(_async_queue, e, portMAX_DELAY) == pdPASS; +} + +static inline bool _get_async_event(lwip_event_packet_t ** e){ + return _async_queue && xQueueReceive(_async_queue, e, portMAX_DELAY) == pdPASS; +} + +static bool _remove_events_with_arg(void * arg){ + lwip_event_packet_t * first_packet = NULL; + lwip_event_packet_t * packet = NULL; + + if(!_async_queue){ + return false; + } + //figure out which is the first packet so we can keep the order + while(!first_packet){ + if(xQueueReceive(_async_queue, &first_packet, 0) != pdPASS){ + return false; + } + //discard packet if matching + if((int)first_packet->arg == (int)arg){ + free(first_packet); + first_packet = NULL; + //return first packet to the back of the queue + } else if(xQueueSend(_async_queue, &first_packet, portMAX_DELAY) != pdPASS){ + return false; + } + } + + while(xQueuePeek(_async_queue, &packet, 0) == pdPASS && packet != first_packet){ + if(xQueueReceive(_async_queue, &packet, 0) != pdPASS){ + return false; + } + if((int)packet->arg == (int)arg){ + free(packet); + packet = NULL; + } else if(xQueueSend(_async_queue, &packet, portMAX_DELAY) != pdPASS){ + return false; + } + } + return true; +} + +static void _handle_async_event(lwip_event_packet_t * e){ + if(e->arg == NULL){ + // do nothing when arg is NULL + //ets_printf("event arg == NULL: 0x%08x\n", e->recv.pcb); + } else if(e->event == LWIP_TCP_CLEAR){ + _remove_events_with_arg(e->arg); + } else if(e->event == LWIP_TCP_RECV){ + //ets_printf("-R: 0x%08x\n", e->recv.pcb); + AsyncClient::_s_recv(e->arg, e->recv.pcb, e->recv.pb, e->recv.err); + } else if(e->event == LWIP_TCP_FIN){ + //ets_printf("-F: 0x%08x\n", e->fin.pcb); + AsyncClient::_s_fin(e->arg, e->fin.pcb, e->fin.err); + } else if(e->event == LWIP_TCP_SENT){ + //ets_printf("-S: 0x%08x\n", e->sent.pcb); + AsyncClient::_s_sent(e->arg, e->sent.pcb, e->sent.len); + } else if(e->event == LWIP_TCP_POLL){ + //ets_printf("-P: 0x%08x\n", e->poll.pcb); + AsyncClient::_s_poll(e->arg, e->poll.pcb); + } else if(e->event == LWIP_TCP_ERROR){ + //ets_printf("-E: 0x%08x %d\n", e->arg, e->error.err); + AsyncClient::_s_error(e->arg, e->error.err); + } else if(e->event == LWIP_TCP_CONNECTED){ + //ets_printf("C: 0x%08x 0x%08x %d\n", e->arg, e->connected.pcb, e->connected.err); + AsyncClient::_s_connected(e->arg, e->connected.pcb, e->connected.err); + } else if(e->event == LWIP_TCP_ACCEPT){ + //ets_printf("A: 0x%08x 0x%08x\n", e->arg, e->accept.client); + AsyncServer::_s_accepted(e->arg, e->accept.client); + } else if(e->event == LWIP_TCP_DNS){ + //ets_printf("D: 0x%08x %s = %s\n", e->arg, e->dns.name, ipaddr_ntoa(&e->dns.addr)); + AsyncClient::_s_dns_found(e->dns.name, &e->dns.addr, e->arg); + } + free((void*)(e)); +} + +static void _async_service_task(void *pvParameters){ + lwip_event_packet_t * packet = NULL; + for (;;) { + if(_get_async_event(&packet)){ +#if CONFIG_ASYNC_TCP_USE_WDT + if(esp_task_wdt_add(NULL) != ESP_OK){ + log_e("Failed to add async task to WDT"); + } +#endif + _handle_async_event(packet); +#if CONFIG_ASYNC_TCP_USE_WDT + if(esp_task_wdt_delete(NULL) != ESP_OK){ + log_e("Failed to remove loop task from WDT"); + } +#endif + } + } + vTaskDelete(NULL); + _async_service_task_handle = NULL; +} +/* +static void _stop_async_task(){ + if(_async_service_task_handle){ + vTaskDelete(_async_service_task_handle); + _async_service_task_handle = NULL; + } +} +*/ +static bool _start_async_task(){ + if(!_init_async_event_queue()){ + return false; + } + if(!_async_service_task_handle){ + xTaskCreateUniversal(_async_service_task, "async_tcp", 8192 * 2, NULL, 3, &_async_service_task_handle, CONFIG_ASYNC_TCP_RUNNING_CORE); + if(!_async_service_task_handle){ + return false; + } + } + return true; +} + +/* + * LwIP Callbacks + * */ + +static int8_t _tcp_clear_events(void * arg) { + lwip_event_packet_t * e = (lwip_event_packet_t *)malloc(sizeof(lwip_event_packet_t)); + e->event = LWIP_TCP_CLEAR; + e->arg = arg; + if (!_prepend_async_event(&e)) { + free((void*)(e)); + } + return ERR_OK; +} + +static int8_t _tcp_connected(void * arg, tcp_pcb * pcb, int8_t err) { + //ets_printf("+C: 0x%08x\n", pcb); + lwip_event_packet_t * e = (lwip_event_packet_t *)malloc(sizeof(lwip_event_packet_t)); + e->event = LWIP_TCP_CONNECTED; + e->arg = arg; + e->connected.pcb = pcb; + e->connected.err = err; + if (!_prepend_async_event(&e)) { + free((void*)(e)); + } + return ERR_OK; +} + +static int8_t _tcp_poll(void * arg, struct tcp_pcb * pcb) { + //ets_printf("+P: 0x%08x\n", pcb); + lwip_event_packet_t * e = (lwip_event_packet_t *)malloc(sizeof(lwip_event_packet_t)); + e->event = LWIP_TCP_POLL; + e->arg = arg; + e->poll.pcb = pcb; + if (!_send_async_event(&e)) { + free((void*)(e)); + } + return ERR_OK; +} + +static int8_t _tcp_recv(void * arg, struct tcp_pcb * pcb, struct pbuf *pb, int8_t err) { + lwip_event_packet_t * e = (lwip_event_packet_t *)malloc(sizeof(lwip_event_packet_t)); + e->arg = arg; + if(pb){ + //ets_printf("+R: 0x%08x\n", pcb); + e->event = LWIP_TCP_RECV; + e->recv.pcb = pcb; + e->recv.pb = pb; + e->recv.err = err; + } else { + //ets_printf("+F: 0x%08x\n", pcb); + e->event = LWIP_TCP_FIN; + e->fin.pcb = pcb; + e->fin.err = err; + //close the PCB in LwIP thread + AsyncClient::_s_lwip_fin(e->arg, e->fin.pcb, e->fin.err); + } + if (!_send_async_event(&e)) { + free((void*)(e)); + } + return ERR_OK; +} + +static int8_t _tcp_sent(void * arg, struct tcp_pcb * pcb, uint16_t len) { + //ets_printf("+S: 0x%08x\n", pcb); + lwip_event_packet_t * e = (lwip_event_packet_t *)malloc(sizeof(lwip_event_packet_t)); + e->event = LWIP_TCP_SENT; + e->arg = arg; + e->sent.pcb = pcb; + e->sent.len = len; + if (!_send_async_event(&e)) { + free((void*)(e)); + } + return ERR_OK; +} + +static void _tcp_error(void * arg, int8_t err) { + //ets_printf("+E: 0x%08x\n", arg); + lwip_event_packet_t * e = (lwip_event_packet_t *)malloc(sizeof(lwip_event_packet_t)); + e->event = LWIP_TCP_ERROR; + e->arg = arg; + e->error.err = err; + if (!_send_async_event(&e)) { + free((void*)(e)); + } +} + +static void _tcp_dns_found(const char * name, struct ip_addr * ipaddr, void * arg) { + lwip_event_packet_t * e = (lwip_event_packet_t *)malloc(sizeof(lwip_event_packet_t)); + //ets_printf("+DNS: name=%s ipaddr=0x%08x arg=%x\n", name, ipaddr, arg); + e->event = LWIP_TCP_DNS; + e->arg = arg; + e->dns.name = name; + if (ipaddr) { + memcpy(&e->dns.addr, ipaddr, sizeof(struct ip_addr)); + } else { + memset(&e->dns.addr, 0, sizeof(e->dns.addr)); + } + if (!_send_async_event(&e)) { + free((void*)(e)); + } +} + +//Used to switch out from LwIP thread +static int8_t _tcp_accept(void * arg, AsyncClient * client) { + lwip_event_packet_t * e = (lwip_event_packet_t *)malloc(sizeof(lwip_event_packet_t)); + e->event = LWIP_TCP_ACCEPT; + e->arg = arg; + e->accept.client = client; + if (!_prepend_async_event(&e)) { + free((void*)(e)); + } + return ERR_OK; +} + +/* + * TCP/IP API Calls + * */ + +#include "lwip/priv/tcpip_priv.h" + +typedef struct { + struct tcpip_api_call_data call; + tcp_pcb * pcb; + int8_t closed_slot; + int8_t err; + union { + struct { + const char* data; + size_t size; + uint8_t apiflags; + } write; + size_t received; + struct { + ip_addr_t * addr; + uint16_t port; + tcp_connected_fn cb; + } connect; + struct { + ip_addr_t * addr; + uint16_t port; + } bind; + uint8_t backlog; + }; +} tcp_api_call_t; + +static err_t _tcp_output_api(struct tcpip_api_call_data *api_call_msg){ + tcp_api_call_t * msg = (tcp_api_call_t *)api_call_msg; + msg->err = ERR_CONN; + if(msg->closed_slot == -1 || !_closed_slots[msg->closed_slot]) { + msg->err = tcp_output(msg->pcb); + } + return msg->err; +} + +static esp_err_t _tcp_output(tcp_pcb * pcb, int8_t closed_slot) { + if(!pcb){ + return ERR_CONN; + } + tcp_api_call_t msg; + msg.pcb = pcb; + msg.closed_slot = closed_slot; + tcpip_api_call(_tcp_output_api, (struct tcpip_api_call_data*)&msg); + return msg.err; +} + +static err_t _tcp_write_api(struct tcpip_api_call_data *api_call_msg){ + tcp_api_call_t * msg = (tcp_api_call_t *)api_call_msg; + msg->err = ERR_CONN; + if(msg->closed_slot == -1 || !_closed_slots[msg->closed_slot]) { + msg->err = tcp_write(msg->pcb, msg->write.data, msg->write.size, msg->write.apiflags); + } + return msg->err; +} + +static esp_err_t _tcp_write(tcp_pcb * pcb, int8_t closed_slot, const char* data, size_t size, uint8_t apiflags) { + if(!pcb){ + return ERR_CONN; + } + tcp_api_call_t msg; + msg.pcb = pcb; + msg.closed_slot = closed_slot; + msg.write.data = data; + msg.write.size = size; + msg.write.apiflags = apiflags; + tcpip_api_call(_tcp_write_api, (struct tcpip_api_call_data*)&msg); + return msg.err; +} + +static err_t _tcp_recved_api(struct tcpip_api_call_data *api_call_msg){ + tcp_api_call_t * msg = (tcp_api_call_t *)api_call_msg; + msg->err = ERR_CONN; + if(msg->closed_slot == -1 || !_closed_slots[msg->closed_slot]) { + msg->err = 0; + tcp_recved(msg->pcb, msg->received); + } + return msg->err; +} + +static esp_err_t _tcp_recved(tcp_pcb * pcb, int8_t closed_slot, size_t len) { + if(!pcb){ + return ERR_CONN; + } + tcp_api_call_t msg; + msg.pcb = pcb; + msg.closed_slot = closed_slot; + msg.received = len; + tcpip_api_call(_tcp_recved_api, (struct tcpip_api_call_data*)&msg); + return msg.err; +} + +static err_t _tcp_close_api(struct tcpip_api_call_data *api_call_msg){ + tcp_api_call_t * msg = (tcp_api_call_t *)api_call_msg; + msg->err = ERR_CONN; + if(msg->closed_slot == -1 || !_closed_slots[msg->closed_slot]) { + msg->err = tcp_close(msg->pcb); + } + return msg->err; +} + +static esp_err_t _tcp_close(tcp_pcb * pcb, int8_t closed_slot) { + if(!pcb){ + return ERR_CONN; + } + tcp_api_call_t msg; + msg.pcb = pcb; + msg.closed_slot = closed_slot; + tcpip_api_call(_tcp_close_api, (struct tcpip_api_call_data*)&msg); + return msg.err; +} + +static err_t _tcp_abort_api(struct tcpip_api_call_data *api_call_msg){ + tcp_api_call_t * msg = (tcp_api_call_t *)api_call_msg; + msg->err = ERR_CONN; + if(msg->closed_slot == -1 || !_closed_slots[msg->closed_slot]) { + tcp_abort(msg->pcb); + } + return msg->err; +} + +static esp_err_t _tcp_abort(tcp_pcb * pcb, int8_t closed_slot) { + if(!pcb){ + return ERR_CONN; + } + tcp_api_call_t msg; + msg.pcb = pcb; + msg.closed_slot = closed_slot; + tcpip_api_call(_tcp_abort_api, (struct tcpip_api_call_data*)&msg); + return msg.err; +} + +static err_t _tcp_connect_api(struct tcpip_api_call_data *api_call_msg){ + tcp_api_call_t * msg = (tcp_api_call_t *)api_call_msg; + msg->err = tcp_connect(msg->pcb, msg->connect.addr, msg->connect.port, msg->connect.cb); + return msg->err; +} + +static esp_err_t _tcp_connect(tcp_pcb * pcb, int8_t closed_slot, ip_addr_t * addr, uint16_t port, tcp_connected_fn cb) { + if(!pcb){ + return ESP_FAIL; + } + tcp_api_call_t msg; + msg.pcb = pcb; + msg.closed_slot = closed_slot; + msg.connect.addr = addr; + msg.connect.port = port; + msg.connect.cb = cb; + tcpip_api_call(_tcp_connect_api, (struct tcpip_api_call_data*)&msg); + return msg.err; +} + +static err_t _tcp_bind_api(struct tcpip_api_call_data *api_call_msg){ + tcp_api_call_t * msg = (tcp_api_call_t *)api_call_msg; + msg->err = tcp_bind(msg->pcb, msg->bind.addr, msg->bind.port); + return msg->err; +} + +static esp_err_t _tcp_bind(tcp_pcb * pcb, ip_addr_t * addr, uint16_t port) { + if(!pcb){ + return ESP_FAIL; + } + tcp_api_call_t msg; + msg.pcb = pcb; + msg.closed_slot = -1; + msg.bind.addr = addr; + msg.bind.port = port; + tcpip_api_call(_tcp_bind_api, (struct tcpip_api_call_data*)&msg); + return msg.err; +} + +static err_t _tcp_listen_api(struct tcpip_api_call_data *api_call_msg){ + tcp_api_call_t * msg = (tcp_api_call_t *)api_call_msg; + msg->err = 0; + msg->pcb = tcp_listen_with_backlog(msg->pcb, msg->backlog); + return msg->err; +} + +static tcp_pcb * _tcp_listen_with_backlog(tcp_pcb * pcb, uint8_t backlog) { + if(!pcb){ + return NULL; + } + tcp_api_call_t msg; + msg.pcb = pcb; + msg.closed_slot = -1; + msg.backlog = backlog?backlog:0xFF; + tcpip_api_call(_tcp_listen_api, (struct tcpip_api_call_data*)&msg); + return msg.pcb; +} + + + +/* + Async TCP Client + */ + +AsyncClient::AsyncClient(tcp_pcb* pcb) +: _connect_cb(0) +, _connect_cb_arg(0) +, _discard_cb(0) +, _discard_cb_arg(0) +, _sent_cb(0) +, _sent_cb_arg(0) +, _error_cb(0) +, _error_cb_arg(0) +, _recv_cb(0) +, _recv_cb_arg(0) +, _pb_cb(0) +, _pb_cb_arg(0) +, _timeout_cb(0) +, _timeout_cb_arg(0) +, _pcb_busy(false) +, _pcb_sent_at(0) +, _ack_pcb(true) +, _rx_last_packet(0) +, _rx_since_timeout(0) +, _ack_timeout(ASYNC_MAX_ACK_TIME) +, _connect_port(0) +, prev(NULL) +, next(NULL) +{ + _pcb = pcb; + _closed_slot = -1; + if(_pcb){ + _allocate_closed_slot(); + _rx_last_packet = millis(); + tcp_arg(_pcb, this); + tcp_recv(_pcb, &_tcp_recv); + tcp_sent(_pcb, &_tcp_sent); + tcp_err(_pcb, &_tcp_error); + tcp_poll(_pcb, &_tcp_poll, 1); + } +} + +AsyncClient::~AsyncClient(){ + if(_pcb) { + _close(); + } + _free_closed_slot(); +} + +/* + * Operators + * */ + +AsyncClient& AsyncClient::operator=(const AsyncClient& other){ + if (_pcb) { + _close(); + } + + _pcb = other._pcb; + _closed_slot = other._closed_slot; + if (_pcb) { + _rx_last_packet = millis(); + tcp_arg(_pcb, this); + tcp_recv(_pcb, &_tcp_recv); + tcp_sent(_pcb, &_tcp_sent); + tcp_err(_pcb, &_tcp_error); + tcp_poll(_pcb, &_tcp_poll, 1); + } + return *this; +} + +bool AsyncClient::operator==(const AsyncClient &other) { + return _pcb == other._pcb; +} + +AsyncClient & AsyncClient::operator+=(const AsyncClient &other) { + if(next == NULL){ + next = (AsyncClient*)(&other); + next->prev = this; + } else { + AsyncClient *c = next; + while(c->next != NULL) { + c = c->next; + } + c->next =(AsyncClient*)(&other); + c->next->prev = c; + } + return *this; +} + +/* + * Callback Setters + * */ + +void AsyncClient::onConnect(AcConnectHandler cb, void* arg){ + _connect_cb = cb; + _connect_cb_arg = arg; +} + +void AsyncClient::onDisconnect(AcConnectHandler cb, void* arg){ + _discard_cb = cb; + _discard_cb_arg = arg; +} + +void AsyncClient::onAck(AcAckHandler cb, void* arg){ + _sent_cb = cb; + _sent_cb_arg = arg; +} + +void AsyncClient::onError(AcErrorHandler cb, void* arg){ + _error_cb = cb; + _error_cb_arg = arg; +} + +void AsyncClient::onData(AcDataHandler cb, void* arg){ + _recv_cb = cb; + _recv_cb_arg = arg; +} + +void AsyncClient::onPacket(AcPacketHandler cb, void* arg){ + _pb_cb = cb; + _pb_cb_arg = arg; +} + +void AsyncClient::onTimeout(AcTimeoutHandler cb, void* arg){ + _timeout_cb = cb; + _timeout_cb_arg = arg; +} + +void AsyncClient::onPoll(AcConnectHandler cb, void* arg){ + _poll_cb = cb; + _poll_cb_arg = arg; +} + +/* + * Main Public Methods + * */ + +bool AsyncClient::connect(IPAddress ip, uint16_t port){ + if (_pcb){ + log_w("already connected, state %d", _pcb->state); + return false; + } + if(!_start_async_task()){ + log_e("failed to start task"); + return false; + } + + ip_addr_t addr; + addr.type = IPADDR_TYPE_V4; + addr.u_addr.ip4.addr = ip; + + tcp_pcb* pcb = tcp_new_ip_type(IPADDR_TYPE_V4); + if (!pcb){ + log_e("pcb == NULL"); + return false; + } + + tcp_arg(pcb, this); + tcp_err(pcb, &_tcp_error); + tcp_recv(pcb, &_tcp_recv); + tcp_sent(pcb, &_tcp_sent); + tcp_poll(pcb, &_tcp_poll, 1); + //_tcp_connect(pcb, &addr, port,(tcp_connected_fn)&_s_connected); + _tcp_connect(pcb, _closed_slot, &addr, port,(tcp_connected_fn)&_tcp_connected); + return true; +} + +bool AsyncClient::connect(const char* host, uint16_t port){ + ip_addr_t addr; + + if(!_start_async_task()){ + log_e("failed to start task"); + return false; + } + + err_t err = dns_gethostbyname(host, &addr, (dns_found_callback)&_tcp_dns_found, this); + if(err == ERR_OK) { + return connect(IPAddress(addr.u_addr.ip4.addr), port); + } else if(err == ERR_INPROGRESS) { + _connect_port = port; + return true; + } + log_e("error: %d", err); + return false; +} + +void AsyncClient::close(bool now){ + if(_pcb){ + _tcp_recved(_pcb, _closed_slot, _rx_ack_len); + } + _close(); +} + +int8_t AsyncClient::abort(){ + if(_pcb) { + _tcp_abort(_pcb, _closed_slot ); + _pcb = NULL; + } + return ERR_ABRT; +} + +size_t AsyncClient::space(){ + if((_pcb != NULL) && (_pcb->state == 4)){ + return tcp_sndbuf(_pcb); + } + return 0; +} + +size_t AsyncClient::add(const char* data, size_t size, uint8_t apiflags) { + if(!_pcb || size == 0 || data == NULL) { + return 0; + } + size_t room = space(); + if(!room) { + return 0; + } + size_t will_send = (room < size) ? room : size; + int8_t err = ERR_OK; + err = _tcp_write(_pcb, _closed_slot, data, will_send, apiflags); + if(err != ERR_OK) { + return 0; + } + return will_send; +} + +bool AsyncClient::send(){ + int8_t err = ERR_OK; + err = _tcp_output(_pcb, _closed_slot); + if(err == ERR_OK){ + _pcb_busy = true; + _pcb_sent_at = millis(); + return true; + } + return false; +} + +size_t AsyncClient::ack(size_t len){ + if(len > _rx_ack_len) + len = _rx_ack_len; + if(len){ + _tcp_recved(_pcb, _closed_slot, len); + } + _rx_ack_len -= len; + return len; +} + +void AsyncClient::ackPacket(struct pbuf * pb){ + if(!pb){ + return; + } + _tcp_recved(_pcb, _closed_slot, pb->len); + pbuf_free(pb); +} + +/* + * Main Private Methods + * */ + +int8_t AsyncClient::_close(){ + //ets_printf("X: 0x%08x\n", (uint32_t)this); + int8_t err = ERR_OK; + if(_pcb) { + //log_i(""); + tcp_arg(_pcb, NULL); + tcp_sent(_pcb, NULL); + tcp_recv(_pcb, NULL); + tcp_err(_pcb, NULL); + tcp_poll(_pcb, NULL, 0); + _tcp_clear_events(this); + err = _tcp_close(_pcb, _closed_slot); + if(err != ERR_OK) { + err = abort(); + } + _pcb = NULL; + if(_discard_cb) { + _discard_cb(_discard_cb_arg, this); + } + } + return err; +} + +void AsyncClient::_allocate_closed_slot(){ + xSemaphoreTake(_slots_lock, portMAX_DELAY); + uint32_t closed_slot_min_index = 0; + for (int i = 0; i < _number_of_closed_slots; ++ i) { + if ((_closed_slot == -1 || _closed_slots[i] <= closed_slot_min_index) && _closed_slots[i] != 0) { + closed_slot_min_index = _closed_slots[i]; + _closed_slot = i; + } + } + if (_closed_slot != -1) { + _closed_slots[_closed_slot] = 0; + } + xSemaphoreGive(_slots_lock); +} + +void AsyncClient::_free_closed_slot(){ + if (_closed_slot != -1) { + _closed_slots[_closed_slot] = _closed_index; + _closed_slot = -1; + ++ _closed_index; + } +} + +/* + * Private Callbacks + * */ + +int8_t AsyncClient::_connected(void* pcb, int8_t err){ + _pcb = reinterpret_cast(pcb); + if(_pcb){ + _rx_last_packet = millis(); + _pcb_busy = false; +// tcp_recv(_pcb, &_tcp_recv); +// tcp_sent(_pcb, &_tcp_sent); +// tcp_poll(_pcb, &_tcp_poll, 1); + } + if(_connect_cb) { + _connect_cb(_connect_cb_arg, this); + } + return ERR_OK; +} + +void AsyncClient::_error(int8_t err) { + if(_pcb){ + tcp_arg(_pcb, NULL); + if(_pcb->state == LISTEN) { + tcp_sent(_pcb, NULL); + tcp_recv(_pcb, NULL); + tcp_err(_pcb, NULL); + tcp_poll(_pcb, NULL, 0); + } + _pcb = NULL; + } + if(_error_cb) { + _error_cb(_error_cb_arg, this, err); + } + if(_discard_cb) { + _discard_cb(_discard_cb_arg, this); + } +} + +//In LwIP Thread +int8_t AsyncClient::_lwip_fin(tcp_pcb* pcb, int8_t err) { + if(!_pcb || pcb != _pcb){ + log_e("0x%08x != 0x%08x", (uint32_t)pcb, (uint32_t)_pcb); + return ERR_OK; + } + tcp_arg(_pcb, NULL); + if(_pcb->state == LISTEN) { + tcp_sent(_pcb, NULL); + tcp_recv(_pcb, NULL); + tcp_err(_pcb, NULL); + tcp_poll(_pcb, NULL, 0); + } + if(tcp_close(_pcb) != ERR_OK) { + tcp_abort(_pcb); + } + _free_closed_slot(); + _pcb = NULL; + return ERR_OK; +} + +//In Async Thread +int8_t AsyncClient::_fin(tcp_pcb* pcb, int8_t err) { + _tcp_clear_events(this); + if(_discard_cb) { + _discard_cb(_discard_cb_arg, this); + } + return ERR_OK; +} + +int8_t AsyncClient::_sent(tcp_pcb* pcb, uint16_t len) { + _rx_last_packet = millis(); + //log_i("%u", len); + _pcb_busy = false; + if(_sent_cb) { + _sent_cb(_sent_cb_arg, this, len, (millis() - _pcb_sent_at)); + } + return ERR_OK; +} + +int8_t AsyncClient::_recv(tcp_pcb* pcb, pbuf* pb, int8_t err) { + while(pb != NULL) { + _rx_last_packet = millis(); + //we should not ack before we assimilate the data + _ack_pcb = true; + pbuf *b = pb; + pb = b->next; + b->next = NULL; + if(_pb_cb){ + _pb_cb(_pb_cb_arg, this, b); + } else { + if(_recv_cb) { + _recv_cb(_recv_cb_arg, this, b->payload, b->len); + } + if(!_ack_pcb) { + _rx_ack_len += b->len; + } else if(_pcb) { + _tcp_recved(_pcb, _closed_slot, b->len); + } + pbuf_free(b); + } + } + return ERR_OK; +} + +int8_t AsyncClient::_poll(tcp_pcb* pcb){ + if(!_pcb){ + log_w("pcb is NULL"); + return ERR_OK; + } + if(pcb != _pcb){ + log_e("0x%08x != 0x%08x", (uint32_t)pcb, (uint32_t)_pcb); + return ERR_OK; + } + + uint32_t now = millis(); + + // ACK Timeout + if(_pcb_busy && _ack_timeout && (now - _pcb_sent_at) >= _ack_timeout){ + _pcb_busy = false; + log_w("ack timeout %d", pcb->state); + if(_timeout_cb) + _timeout_cb(_timeout_cb_arg, this, (now - _pcb_sent_at)); + return ERR_OK; + } + // RX Timeout + if(_rx_since_timeout && (now - _rx_last_packet) >= (_rx_since_timeout * 1000)){ + log_w("rx timeout %d", pcb->state); + _close(); + return ERR_OK; + } + // Everything is fine + if(_poll_cb) { + _poll_cb(_poll_cb_arg, this); + } + return ERR_OK; +} + +void AsyncClient::_dns_found(struct ip_addr *ipaddr){ + if(ipaddr && ipaddr->u_addr.ip4.addr){ + connect(IPAddress(ipaddr->u_addr.ip4.addr), _connect_port); + } else { + if(_error_cb) { + _error_cb(_error_cb_arg, this, -55); + } + if(_discard_cb) { + _discard_cb(_discard_cb_arg, this); + } + } +} + +/* + * Public Helper Methods + * */ + +void AsyncClient::stop() { + close(false); +} + +bool AsyncClient::free(){ + if(!_pcb) { + return true; + } + if(_pcb->state == 0 || _pcb->state > 4) { + return true; + } + return false; +} + +size_t AsyncClient::write(const char* data) { + if(data == NULL) { + return 0; + } + return write(data, strlen(data)); +} + +size_t AsyncClient::write(const char* data, size_t size, uint8_t apiflags) { + size_t will_send = add(data, size, apiflags); + if(!will_send || !send()) { + return 0; + } + return will_send; +} + +void AsyncClient::setRxTimeout(uint32_t timeout){ + _rx_since_timeout = timeout; +} + +uint32_t AsyncClient::getRxTimeout(){ + return _rx_since_timeout; +} + +uint32_t AsyncClient::getAckTimeout(){ + return _ack_timeout; +} + +void AsyncClient::setAckTimeout(uint32_t timeout){ + _ack_timeout = timeout; +} + +void AsyncClient::setNoDelay(bool nodelay){ + if(!_pcb) { + return; + } + if(nodelay) { + tcp_nagle_disable(_pcb); + } else { + tcp_nagle_enable(_pcb); + } +} + +bool AsyncClient::getNoDelay(){ + if(!_pcb) { + return false; + } + return tcp_nagle_disabled(_pcb); +} + +uint16_t AsyncClient::getMss(){ + if(!_pcb) { + return 0; + } + return tcp_mss(_pcb); +} + +uint32_t AsyncClient::getRemoteAddress() { + if(!_pcb) { + return 0; + } + return _pcb->remote_ip.u_addr.ip4.addr; +} + +uint16_t AsyncClient::getRemotePort() { + if(!_pcb) { + return 0; + } + return _pcb->remote_port; +} + +uint32_t AsyncClient::getLocalAddress() { + if(!_pcb) { + return 0; + } + return _pcb->local_ip.u_addr.ip4.addr; +} + +uint16_t AsyncClient::getLocalPort() { + if(!_pcb) { + return 0; + } + return _pcb->local_port; +} + +IPAddress AsyncClient::remoteIP() { + return IPAddress(getRemoteAddress()); +} + +uint16_t AsyncClient::remotePort() { + return getRemotePort(); +} + +IPAddress AsyncClient::localIP() { + return IPAddress(getLocalAddress()); +} + +uint16_t AsyncClient::localPort() { + return getLocalPort(); +} + +uint8_t AsyncClient::state() { + if(!_pcb) { + return 0; + } + return _pcb->state; +} + +bool AsyncClient::connected(){ + if (!_pcb) { + return false; + } + return _pcb->state == 4; +} + +bool AsyncClient::connecting(){ + if (!_pcb) { + return false; + } + return _pcb->state > 0 && _pcb->state < 4; +} + +bool AsyncClient::disconnecting(){ + if (!_pcb) { + return false; + } + return _pcb->state > 4 && _pcb->state < 10; +} + +bool AsyncClient::disconnected(){ + if (!_pcb) { + return true; + } + return _pcb->state == 0 || _pcb->state == 10; +} + +bool AsyncClient::freeable(){ + if (!_pcb) { + return true; + } + return _pcb->state == 0 || _pcb->state > 4; +} + +bool AsyncClient::canSend(){ + return space() > 0; +} + +const char * AsyncClient::errorToString(int8_t error){ + switch(error){ + case ERR_OK: return "OK"; + case ERR_MEM: return "Out of memory error"; + case ERR_BUF: return "Buffer error"; + case ERR_TIMEOUT: return "Timeout"; + case ERR_RTE: return "Routing problem"; + case ERR_INPROGRESS: return "Operation in progress"; + case ERR_VAL: return "Illegal value"; + case ERR_WOULDBLOCK: return "Operation would block"; + case ERR_USE: return "Address in use"; + case ERR_ALREADY: return "Already connected"; + case ERR_CONN: return "Not connected"; + case ERR_IF: return "Low-level netif error"; + case ERR_ABRT: return "Connection aborted"; + case ERR_RST: return "Connection reset"; + case ERR_CLSD: return "Connection closed"; + case ERR_ARG: return "Illegal argument"; + case -55: return "DNS failed"; + default: return "UNKNOWN"; + } +} + +const char * AsyncClient::stateToString(){ + switch(state()){ + case 0: return "Closed"; + case 1: return "Listen"; + case 2: return "SYN Sent"; + case 3: return "SYN Received"; + case 4: return "Established"; + case 5: return "FIN Wait 1"; + case 6: return "FIN Wait 2"; + case 7: return "Close Wait"; + case 8: return "Closing"; + case 9: return "Last ACK"; + case 10: return "Time Wait"; + default: return "UNKNOWN"; + } +} + +/* + * Static Callbacks (LwIP C2C++ interconnect) + * */ + +void AsyncClient::_s_dns_found(const char * name, struct ip_addr * ipaddr, void * arg){ + reinterpret_cast(arg)->_dns_found(ipaddr); +} + +int8_t AsyncClient::_s_poll(void * arg, struct tcp_pcb * pcb) { + return reinterpret_cast(arg)->_poll(pcb); +} + +int8_t AsyncClient::_s_recv(void * arg, struct tcp_pcb * pcb, struct pbuf *pb, int8_t err) { + return reinterpret_cast(arg)->_recv(pcb, pb, err); +} + +int8_t AsyncClient::_s_fin(void * arg, struct tcp_pcb * pcb, int8_t err) { + return reinterpret_cast(arg)->_fin(pcb, err); +} + +int8_t AsyncClient::_s_lwip_fin(void * arg, struct tcp_pcb * pcb, int8_t err) { + return reinterpret_cast(arg)->_lwip_fin(pcb, err); +} + +int8_t AsyncClient::_s_sent(void * arg, struct tcp_pcb * pcb, uint16_t len) { + return reinterpret_cast(arg)->_sent(pcb, len); +} + +void AsyncClient::_s_error(void * arg, int8_t err) { + reinterpret_cast(arg)->_error(err); +} + +int8_t AsyncClient::_s_connected(void * arg, void * pcb, int8_t err){ + return reinterpret_cast(arg)->_connected(pcb, err); +} + +/* + Async TCP Server + */ + +AsyncServer::AsyncServer(IPAddress addr, uint16_t port) +: _port(port) +, _addr(addr) +, _noDelay(false) +, _pcb(0) +, _connect_cb(0) +, _connect_cb_arg(0) +{} + +AsyncServer::AsyncServer(uint16_t port) +: _port(port) +, _addr((uint32_t) IPADDR_ANY) +, _noDelay(false) +, _pcb(0) +, _connect_cb(0) +, _connect_cb_arg(0) +{} + +AsyncServer::~AsyncServer(){ + end(); +} + +void AsyncServer::onClient(AcConnectHandler cb, void* arg){ + _connect_cb = cb; + _connect_cb_arg = arg; +} + +void AsyncServer::begin(){ + if(_pcb) { + return; + } + + if(!_start_async_task()){ + log_e("failed to start task"); + return; + } + int8_t err; + _pcb = tcp_new_ip_type(IPADDR_TYPE_V4); + if (!_pcb){ + log_e("_pcb == NULL"); + return; + } + + ip_addr_t local_addr; + local_addr.type = IPADDR_TYPE_V4; + local_addr.u_addr.ip4.addr = (uint32_t) _addr; + err = _tcp_bind(_pcb, &local_addr, _port); + + if (err != ERR_OK) { + _tcp_close(_pcb, -1); + log_e("bind error: %d", err); + return; + } + + static uint8_t backlog = 5; + _pcb = _tcp_listen_with_backlog(_pcb, backlog); + if (!_pcb) { + log_e("listen_pcb == NULL"); + return; + } + tcp_arg(_pcb, (void*) this); + tcp_accept(_pcb, &_s_accept); +} + +void AsyncServer::end(){ + if(_pcb){ + tcp_arg(_pcb, NULL); + tcp_accept(_pcb, NULL); + if(tcp_close(_pcb) != ERR_OK){ + _tcp_abort(_pcb, -1); + } + _pcb = NULL; + } +} + +//runs on LwIP thread +int8_t AsyncServer::_accept(tcp_pcb* pcb, int8_t err){ + //ets_printf("+A: 0x%08x\n", pcb); + if(_connect_cb){ + AsyncClient *c = new AsyncClient(pcb); + if(c){ + c->setNoDelay(_noDelay); + return _tcp_accept(this, c); + } + } + if(tcp_close(pcb) != ERR_OK){ + tcp_abort(pcb); + } + log_e("FAIL"); + return ERR_OK; +} + +int8_t AsyncServer::_accepted(AsyncClient* client){ + if(_connect_cb){ + _connect_cb(_connect_cb_arg, client); + } + return ERR_OK; +} + +void AsyncServer::setNoDelay(bool nodelay){ + _noDelay = nodelay; +} + +bool AsyncServer::getNoDelay(){ + return _noDelay; +} + +uint8_t AsyncServer::status(){ + if (!_pcb) { + return 0; + } + return _pcb->state; +} + +int8_t AsyncServer::_s_accept(void * arg, tcp_pcb * pcb, int8_t err){ + return reinterpret_cast(arg)->_accept(pcb, err); +} + +int8_t AsyncServer::_s_accepted(void *arg, AsyncClient* client){ + return reinterpret_cast(arg)->_accepted(client); +} diff --git a/Software/src/lib/me-no-dev-AsyncTCP/src/AsyncTCP.h b/Software/src/lib/me-no-dev-AsyncTCP/src/AsyncTCP.h new file mode 100644 index 00000000..ac87deda --- /dev/null +++ b/Software/src/lib/me-no-dev-AsyncTCP/src/AsyncTCP.h @@ -0,0 +1,217 @@ +/* + Asynchronous TCP library for Espressif MCUs + + Copyright (c) 2016 Hristo Gochkov. All rights reserved. + This file is part of the esp8266 core for Arduino environment. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#ifndef ASYNCTCP_H_ +#define ASYNCTCP_H_ + +#include "IPAddress.h" +#include "sdkconfig.h" +#include +extern "C" { + #include "freertos/semphr.h" + #include "lwip/pbuf.h" +} + +//If core is not defined, then we are running in Arduino or PIO +#ifndef CONFIG_ASYNC_TCP_RUNNING_CORE +#define CONFIG_ASYNC_TCP_RUNNING_CORE -1 //any available core +#define CONFIG_ASYNC_TCP_USE_WDT 1 //if enabled, adds between 33us and 200us per event +#endif + +class AsyncClient; + +#define ASYNC_MAX_ACK_TIME 5000 +#define ASYNC_WRITE_FLAG_COPY 0x01 //will allocate new buffer to hold the data while sending (else will hold reference to the data given) +#define ASYNC_WRITE_FLAG_MORE 0x02 //will not send PSH flag, meaning that there should be more data to be sent before the application should react. + +typedef std::function AcConnectHandler; +typedef std::function AcAckHandler; +typedef std::function AcErrorHandler; +typedef std::function AcDataHandler; +typedef std::function AcPacketHandler; +typedef std::function AcTimeoutHandler; + +struct tcp_pcb; +struct ip_addr; + +class AsyncClient { + public: + AsyncClient(tcp_pcb* pcb = 0); + ~AsyncClient(); + + AsyncClient & operator=(const AsyncClient &other); + AsyncClient & operator+=(const AsyncClient &other); + + bool operator==(const AsyncClient &other); + + bool operator!=(const AsyncClient &other) { + return !(*this == other); + } + bool connect(IPAddress ip, uint16_t port); + bool connect(const char* host, uint16_t port); + void close(bool now = false); + void stop(); + int8_t abort(); + bool free(); + + bool canSend();//ack is not pending + size_t space();//space available in the TCP window + size_t add(const char* data, size_t size, uint8_t apiflags=ASYNC_WRITE_FLAG_COPY);//add for sending + bool send();//send all data added with the method above + + //write equals add()+send() + size_t write(const char* data); + size_t write(const char* data, size_t size, uint8_t apiflags=ASYNC_WRITE_FLAG_COPY); //only when canSend() == true + + uint8_t state(); + bool connecting(); + bool connected(); + bool disconnecting(); + bool disconnected(); + bool freeable();//disconnected or disconnecting + + uint16_t getMss(); + + uint32_t getRxTimeout(); + void setRxTimeout(uint32_t timeout);//no RX data timeout for the connection in seconds + + uint32_t getAckTimeout(); + void setAckTimeout(uint32_t timeout);//no ACK timeout for the last sent packet in milliseconds + + void setNoDelay(bool nodelay); + bool getNoDelay(); + + uint32_t getRemoteAddress(); + uint16_t getRemotePort(); + uint32_t getLocalAddress(); + uint16_t getLocalPort(); + + //compatibility + IPAddress remoteIP(); + uint16_t remotePort(); + IPAddress localIP(); + uint16_t localPort(); + + void onConnect(AcConnectHandler cb, void* arg = 0); //on successful connect + void onDisconnect(AcConnectHandler cb, void* arg = 0); //disconnected + void onAck(AcAckHandler cb, void* arg = 0); //ack received + void onError(AcErrorHandler cb, void* arg = 0); //unsuccessful connect or error + void onData(AcDataHandler cb, void* arg = 0); //data received (called if onPacket is not used) + void onPacket(AcPacketHandler cb, void* arg = 0); //data received + void onTimeout(AcTimeoutHandler cb, void* arg = 0); //ack timeout + void onPoll(AcConnectHandler cb, void* arg = 0); //every 125ms when connected + + void ackPacket(struct pbuf * pb);//ack pbuf from onPacket + size_t ack(size_t len); //ack data that you have not acked using the method below + void ackLater(){ _ack_pcb = false; } //will not ack the current packet. Call from onData + + const char * errorToString(int8_t error); + const char * stateToString(); + + //Do not use any of the functions below! + static int8_t _s_poll(void *arg, struct tcp_pcb *tpcb); + static int8_t _s_recv(void *arg, struct tcp_pcb *tpcb, struct pbuf *pb, int8_t err); + static int8_t _s_fin(void *arg, struct tcp_pcb *tpcb, int8_t err); + static int8_t _s_lwip_fin(void *arg, struct tcp_pcb *tpcb, int8_t err); + static void _s_error(void *arg, int8_t err); + static int8_t _s_sent(void *arg, struct tcp_pcb *tpcb, uint16_t len); + static int8_t _s_connected(void* arg, void* tpcb, int8_t err); + static void _s_dns_found(const char *name, struct ip_addr *ipaddr, void *arg); + + int8_t _recv(tcp_pcb* pcb, pbuf* pb, int8_t err); + tcp_pcb * pcb(){ return _pcb; } + + protected: + tcp_pcb* _pcb; + int8_t _closed_slot; + + AcConnectHandler _connect_cb; + void* _connect_cb_arg; + AcConnectHandler _discard_cb; + void* _discard_cb_arg; + AcAckHandler _sent_cb; + void* _sent_cb_arg; + AcErrorHandler _error_cb; + void* _error_cb_arg; + AcDataHandler _recv_cb; + void* _recv_cb_arg; + AcPacketHandler _pb_cb; + void* _pb_cb_arg; + AcTimeoutHandler _timeout_cb; + void* _timeout_cb_arg; + AcConnectHandler _poll_cb; + void* _poll_cb_arg; + + bool _pcb_busy; + uint32_t _pcb_sent_at; + bool _ack_pcb; + uint32_t _rx_ack_len; + uint32_t _rx_last_packet; + uint32_t _rx_since_timeout; + uint32_t _ack_timeout; + uint16_t _connect_port; + + int8_t _close(); + void _free_closed_slot(); + void _allocate_closed_slot(); + int8_t _connected(void* pcb, int8_t err); + void _error(int8_t err); + int8_t _poll(tcp_pcb* pcb); + int8_t _sent(tcp_pcb* pcb, uint16_t len); + int8_t _fin(tcp_pcb* pcb, int8_t err); + int8_t _lwip_fin(tcp_pcb* pcb, int8_t err); + void _dns_found(struct ip_addr *ipaddr); + + public: + AsyncClient* prev; + AsyncClient* next; +}; + +class AsyncServer { + public: + AsyncServer(IPAddress addr, uint16_t port); + AsyncServer(uint16_t port); + ~AsyncServer(); + void onClient(AcConnectHandler cb, void* arg); + void begin(); + void end(); + void setNoDelay(bool nodelay); + bool getNoDelay(); + uint8_t status(); + + //Do not use any of the functions below! + static int8_t _s_accept(void *arg, tcp_pcb* newpcb, int8_t err); + static int8_t _s_accepted(void *arg, AsyncClient* client); + + protected: + uint16_t _port; + IPAddress _addr; + bool _noDelay; + tcp_pcb* _pcb; + AcConnectHandler _connect_cb; + void* _connect_cb_arg; + + int8_t _accept(tcp_pcb* newpcb, int8_t err); + int8_t _accepted(AsyncClient* client); +}; + + +#endif /* ASYNCTCP_H_ */ From 19900e66314f0a2f66eb26f1eb5aeb4458b9a051 Mon Sep 17 00:00:00 2001 From: lenvm Date: Wed, 22 Nov 2023 20:56:41 +0100 Subject: [PATCH 02/12] add ESPAsyncWebserver library --- .../scripts/install-arduino-core-esp32.sh | 36 + .../scripts/install-arduino-core-esp8266.sh | 29 + .../.github/scripts/install-arduino-ide.sh | 228 +++ .../.github/scripts/install-platformio.sh | 140 ++ .../.github/scripts/on-push.sh | 71 + .../.github/stale.yml | 31 + .../.github/workflows/push.yml | 34 + .../me-no-dev-ESPAsyncWebServer/.gitignore | 2 + .../me-no-dev-ESPAsyncWebServer/.travis.yml | 46 + .../CMakeLists.txt | 17 + .../lib/me-no-dev-ESPAsyncWebServer/README.md | 1523 +++++++++++++++++ .../me-no-dev-ESPAsyncWebServer/_config.yml | 1 + .../me-no-dev-ESPAsyncWebServer/component.mk | 3 + .../examples/CaptivePortal/CaptivePortal.ino | 47 + .../ESP_AsyncFSBrowser/ESP_AsyncFSBrowser.ino | 221 +++ .../ESP_AsyncFSBrowser/data/.exclude.files | 2 + .../ESP_AsyncFSBrowser/data/ace.js.gz | Bin 0 -> 98943 bytes .../data/ext-searchbox.js.gz | Bin 0 -> 3131 bytes .../ESP_AsyncFSBrowser/data/favicon.ico | Bin 0 -> 1150 bytes .../ESP_AsyncFSBrowser/data/index.htm | 131 ++ .../ESP_AsyncFSBrowser/data/mode-css.js.gz | Bin 0 -> 6102 bytes .../ESP_AsyncFSBrowser/data/mode-html.js.gz | Bin 0 -> 17037 bytes .../data/mode-javascript.js.gz | Bin 0 -> 6315 bytes .../ESP_AsyncFSBrowser/data/worker-html.js.gz | Bin 0 -> 50024 bytes .../examples/regex_patterns/.test.build_flags | 1 + .../regex_patterns/regex_patterns.ino | 77 + .../examples/simple_server/simple_server.ino | 74 + .../me-no-dev-ESPAsyncWebServer/keywords.txt | 3 + .../me-no-dev-ESPAsyncWebServer/library.json | 37 + .../library.properties | 9 + .../src/AsyncEventSource.cpp | 368 ++++ .../src/AsyncEventSource.h | 133 ++ .../src/AsyncJson.h | 254 +++ .../src/AsyncWebSocket.cpp | 1294 ++++++++++++++ .../src/AsyncWebSocket.h | 350 ++++ .../src/AsyncWebSynchronization.h | 87 + .../src/ESPAsyncWebServer.h | 471 +++++ .../src/SPIFFSEditor.cpp | 544 ++++++ .../src/SPIFFSEditor.h | 24 + .../src/StringArray.h | 193 +++ .../src/WebAuthentication.cpp | 235 +++ .../src/WebAuthentication.h | 34 + .../src/WebHandlerImpl.h | 151 ++ .../src/WebHandlers.cpp | 220 +++ .../src/WebRequest.cpp | 1008 +++++++++++ .../src/WebResponseImpl.h | 136 ++ .../src/WebResponses.cpp | 699 ++++++++ .../src/WebServer.cpp | 193 +++ .../me-no-dev-ESPAsyncWebServer/src/edit.htm | 627 +++++++ 49 files changed, 9784 insertions(+) create mode 100755 Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/scripts/install-arduino-core-esp32.sh create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/scripts/install-arduino-core-esp8266.sh create mode 100755 Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/scripts/install-arduino-ide.sh create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/scripts/install-platformio.sh create mode 100755 Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/scripts/on-push.sh create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/stale.yml create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/workflows/push.yml create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/.gitignore create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/.travis.yml create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/CMakeLists.txt create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/README.md create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/_config.yml create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/component.mk create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/CaptivePortal/CaptivePortal.ino create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/ESP_AsyncFSBrowser.ino create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/data/.exclude.files create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/data/ace.js.gz create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/data/ext-searchbox.js.gz create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/data/favicon.ico create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/data/index.htm create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/data/mode-css.js.gz create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/data/mode-html.js.gz create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/data/mode-javascript.js.gz create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/data/worker-html.js.gz create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/regex_patterns/.test.build_flags create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/regex_patterns/regex_patterns.ino create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/simple_server/simple_server.ino create mode 100755 Software/src/lib/me-no-dev-ESPAsyncWebServer/keywords.txt create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/library.json create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/library.properties create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncEventSource.cpp create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncEventSource.h create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncJson.h create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncWebSocket.cpp create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncWebSocket.h create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncWebSynchronization.h create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/src/ESPAsyncWebServer.h create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/src/SPIFFSEditor.cpp create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/src/SPIFFSEditor.h create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/src/StringArray.h create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebAuthentication.cpp create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebAuthentication.h create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebHandlerImpl.h create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebHandlers.cpp create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebRequest.cpp create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebResponseImpl.h create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebResponses.cpp create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebServer.cpp create mode 100644 Software/src/lib/me-no-dev-ESPAsyncWebServer/src/edit.htm diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/scripts/install-arduino-core-esp32.sh b/Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/scripts/install-arduino-core-esp32.sh new file mode 100755 index 00000000..cf1026d6 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/scripts/install-arduino-core-esp32.sh @@ -0,0 +1,36 @@ +#!/bin/bash + +export ARDUINO_ESP32_PATH="$ARDUINO_USR_PATH/hardware/espressif/esp32" +if [ ! -d "$ARDUINO_ESP32_PATH" ]; then + echo "Installing ESP32 Arduino Core ..." + script_init_path="$PWD" + mkdir -p "$ARDUINO_USR_PATH/hardware/espressif" + cd "$ARDUINO_USR_PATH/hardware/espressif" + + echo "Installing Python Serial ..." + pip install pyserial > /dev/null + + if [ "$OS_IS_WINDOWS" == "1" ]; then + echo "Installing Python Requests ..." + pip install requests > /dev/null + fi + + if [ "$GITHUB_REPOSITORY" == "espressif/arduino-esp32" ]; then + echo "Linking Core..." + ln -s $GITHUB_WORKSPACE esp32 + else + echo "Cloning Core Repository..." + git clone https://github.com/espressif/arduino-esp32.git esp32 > /dev/null 2>&1 + fi + + echo "Updating Submodules ..." + cd esp32 + git submodule update --init --recursive > /dev/null 2>&1 + + echo "Installing Platform Tools ..." + cd tools && python get.py + cd $script_init_path + + echo "ESP32 Arduino has been installed in '$ARDUINO_ESP32_PATH'" + echo "" +fi diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/scripts/install-arduino-core-esp8266.sh b/Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/scripts/install-arduino-core-esp8266.sh new file mode 100644 index 00000000..048cd024 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/scripts/install-arduino-core-esp8266.sh @@ -0,0 +1,29 @@ +#!/bin/bash + +echo "Installing ESP8266 Arduino Core ..." +script_init_path="$PWD" +mkdir -p "$ARDUINO_USR_PATH/hardware/esp8266com" +cd "$ARDUINO_USR_PATH/hardware/esp8266com" + +echo "Installing Python Serial ..." +pip install pyserial > /dev/null + +if [ "$OS_IS_WINDOWS" == "1" ]; then + echo "Installing Python Requests ..." + pip install requests > /dev/null +fi + +echo "Cloning Core Repository ..." +git clone https://github.com/esp8266/Arduino.git esp8266 > /dev/null 2>&1 + +echo "Updating submodules ..." +cd esp8266 +git submodule update --init --recursive > /dev/null 2>&1 + +echo "Installing Platform Tools ..." +cd tools +python get.py > /dev/null +cd $script_init_path + +echo "ESP8266 Arduino has been installed in '$ARDUINO_USR_PATH/hardware/esp8266com'" +echo "" diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/scripts/install-arduino-ide.sh b/Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/scripts/install-arduino-ide.sh new file mode 100755 index 00000000..ce60cb82 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/scripts/install-arduino-ide.sh @@ -0,0 +1,228 @@ +#!/bin/bash + +#OSTYPE: 'linux-gnu', ARCH: 'x86_64' => linux64 +#OSTYPE: 'msys', ARCH: 'x86_64' => win32 +#OSTYPE: 'darwin18', ARCH: 'i386' => macos + +OSBITS=`arch` +if [[ "$OSTYPE" == "linux"* ]]; then + export OS_IS_LINUX="1" + ARCHIVE_FORMAT="tar.xz" + if [[ "$OSBITS" == "i686" ]]; then + OS_NAME="linux32" + elif [[ "$OSBITS" == "x86_64" ]]; then + OS_NAME="linux64" + elif [[ "$OSBITS" == "armv7l" || "$OSBITS" == "aarch64" ]]; then + OS_NAME="linuxarm" + else + OS_NAME="$OSTYPE-$OSBITS" + echo "Unknown OS '$OS_NAME'" + exit 1 + fi +elif [[ "$OSTYPE" == "darwin"* ]]; then + export OS_IS_MACOS="1" + ARCHIVE_FORMAT="zip" + OS_NAME="macosx" +elif [[ "$OSTYPE" == "cygwin" ]] || [[ "$OSTYPE" == "msys" ]] || [[ "$OSTYPE" == "win32" ]]; then + export OS_IS_WINDOWS="1" + ARCHIVE_FORMAT="zip" + OS_NAME="windows" +else + OS_NAME="$OSTYPE-$OSBITS" + echo "Unknown OS '$OS_NAME'" + exit 1 +fi +export OS_NAME + +ARDUINO_BUILD_DIR="$HOME/.arduino/build.tmp" +ARDUINO_CACHE_DIR="$HOME/.arduino/cache.tmp" + +if [ "$OS_IS_MACOS" == "1" ]; then + export ARDUINO_IDE_PATH="/Applications/Arduino.app/Contents/Java" + export ARDUINO_USR_PATH="$HOME/Documents/Arduino" +elif [ "$OS_IS_WINDOWS" == "1" ]; then + export ARDUINO_IDE_PATH="$HOME/arduino_ide" + export ARDUINO_USR_PATH="$HOME/Documents/Arduino" +else + export ARDUINO_IDE_PATH="$HOME/arduino_ide" + export ARDUINO_USR_PATH="$HOME/Arduino" +fi + +if [ ! -d "$ARDUINO_IDE_PATH" ]; then + echo "Installing Arduino IDE on $OS_NAME ..." + echo "Downloading 'arduino-nightly-$OS_NAME.$ARCHIVE_FORMAT' to 'arduino.$ARCHIVE_FORMAT' ..." + if [ "$OS_IS_LINUX" == "1" ]; then + wget -O "arduino.$ARCHIVE_FORMAT" "https://www.arduino.cc/download.php?f=/arduino-nightly-$OS_NAME.$ARCHIVE_FORMAT" > /dev/null 2>&1 + echo "Extracting 'arduino.$ARCHIVE_FORMAT' ..." + tar xf "arduino.$ARCHIVE_FORMAT" > /dev/null + mv arduino-nightly "$ARDUINO_IDE_PATH" + else + curl -o "arduino.$ARCHIVE_FORMAT" -L "https://www.arduino.cc/download.php?f=/arduino-nightly-$OS_NAME.$ARCHIVE_FORMAT" > /dev/null 2>&1 + echo "Extracting 'arduino.$ARCHIVE_FORMAT' ..." + unzip "arduino.$ARCHIVE_FORMAT" > /dev/null + if [ "$OS_IS_MACOS" == "1" ]; then + mv "Arduino.app" "/Applications/Arduino.app" + else + mv arduino-nightly "$ARDUINO_IDE_PATH" + fi + fi + rm -rf "arduino.$ARCHIVE_FORMAT" + + mkdir -p "$ARDUINO_USR_PATH/libraries" + mkdir -p "$ARDUINO_USR_PATH/hardware" + + echo "Arduino IDE Installed in '$ARDUINO_IDE_PATH'" + echo "" +fi + +function build_sketch(){ # build_sketch [extra-options] + if [ "$#" -lt 2 ]; then + echo "ERROR: Illegal number of parameters" + echo "USAGE: build_sketch [extra-options]" + return 1 + fi + + local fqbn="$1" + local sketch="$2" + local build_flags="$3" + local xtra_opts="$4" + local win_opts="" + if [ "$OS_IS_WINDOWS" == "1" ]; then + local ctags_version=`ls "$ARDUINO_IDE_PATH/tools-builder/ctags/"` + local preprocessor_version=`ls "$ARDUINO_IDE_PATH/tools-builder/arduino-preprocessor/"` + win_opts="-prefs=runtime.tools.ctags.path=$ARDUINO_IDE_PATH/tools-builder/ctags/$ctags_version -prefs=runtime.tools.arduino-preprocessor.path=$ARDUINO_IDE_PATH/tools-builder/arduino-preprocessor/$preprocessor_version" + fi + + echo "" + echo "Compiling '"$(basename "$sketch")"' ..." + mkdir -p "$ARDUINO_BUILD_DIR" + mkdir -p "$ARDUINO_CACHE_DIR" + $ARDUINO_IDE_PATH/arduino-builder -compile -logger=human -core-api-version=10810 \ + -fqbn=$fqbn \ + -warnings="all" \ + -tools "$ARDUINO_IDE_PATH/tools-builder" \ + -tools "$ARDUINO_IDE_PATH/tools" \ + -built-in-libraries "$ARDUINO_IDE_PATH/libraries" \ + -hardware "$ARDUINO_IDE_PATH/hardware" \ + -hardware "$ARDUINO_USR_PATH/hardware" \ + -libraries "$ARDUINO_USR_PATH/libraries" \ + -build-cache "$ARDUINO_CACHE_DIR" \ + -build-path "$ARDUINO_BUILD_DIR" \ + -prefs=compiler.cpp.extra_flags="$build_flags" \ + $win_opts $xtra_opts "$sketch" +} + +function count_sketches() # count_sketches +{ + local examples="$1" + rm -rf sketches.txt + if [ ! -d "$examples" ]; then + touch sketches.txt + return 0 + fi + local sketches=$(find $examples -name *.ino) + local sketchnum=0 + for sketch in $sketches; do + local sketchdir=$(dirname $sketch) + local sketchdirname=$(basename $sketchdir) + local sketchname=$(basename $sketch) + if [[ "${sketchdirname}.ino" != "$sketchname" ]]; then + continue + fi; + if [[ -f "$sketchdir/.test.skip" ]]; then + continue + fi + echo $sketch >> sketches.txt + sketchnum=$(($sketchnum + 1)) + done + return $sketchnum +} + +function build_sketches() # build_sketches [extra-options] +{ + local fqbn=$1 + local examples=$2 + local chunk_idex=$3 + local chunks_num=$4 + local xtra_opts=$5 + + if [ "$#" -lt 2 ]; then + echo "ERROR: Illegal number of parameters" + echo "USAGE: build_sketches [ ] [extra-options]" + return 1 + fi + + if [ "$#" -lt 4 ]; then + chunk_idex="0" + chunks_num="1" + xtra_opts=$3 + fi + + if [ "$chunks_num" -le 0 ]; then + echo "ERROR: Chunks count must be positive number" + return 1 + fi + if [ "$chunk_idex" -ge "$chunks_num" ]; then + echo "ERROR: Chunk index must be less than chunks count" + return 1 + fi + + set +e + count_sketches "$examples" + local sketchcount=$? + set -e + local sketches=$(cat sketches.txt) + rm -rf sketches.txt + + local chunk_size=$(( $sketchcount / $chunks_num )) + local all_chunks=$(( $chunks_num * $chunk_size )) + if [ "$all_chunks" -lt "$sketchcount" ]; then + chunk_size=$(( $chunk_size + 1 )) + fi + + local start_index=$(( $chunk_idex * $chunk_size )) + if [ "$sketchcount" -le "$start_index" ]; then + echo "Skipping job" + return 0 + fi + + local end_index=$(( $(( $chunk_idex + 1 )) * $chunk_size )) + if [ "$end_index" -gt "$sketchcount" ]; then + end_index=$sketchcount + fi + + local start_num=$(( $start_index + 1 )) + echo "Found $sketchcount Sketches"; + echo "Chunk Count : $chunks_num" + echo "Chunk Size : $chunk_size" + echo "Start Sketch: $start_num" + echo "End Sketch : $end_index" + + local sketchnum=0 + for sketch in $sketches; do + local sketchdir=$(dirname $sketch) + local sketchdirname=$(basename $sketchdir) + local sketchname=$(basename $sketch) + if [ "${sketchdirname}.ino" != "$sketchname" ] \ + || [ -f "$sketchdir/.test.skip" ]; then + continue + fi + sketchnum=$(($sketchnum + 1)) + if [ "$sketchnum" -le "$start_index" ] \ + || [ "$sketchnum" -gt "$end_index" ]; then + continue + fi + local sketchBuildFlags="" + if [ -f "$sketchdir/.test.build_flags" ]; then + while read line; do + sketchBuildFlags="$sketchBuildFlags $line" + done < "$sketchdir/.test.build_flags" + fi + build_sketch "$fqbn" "$sketch" "$sketchBuildFlags" "$xtra_opts" + local result=$? + if [ $result -ne 0 ]; then + return $result + fi + done + return 0 +} diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/scripts/install-platformio.sh b/Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/scripts/install-platformio.sh new file mode 100644 index 00000000..594948ea --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/scripts/install-platformio.sh @@ -0,0 +1,140 @@ +#!/bin/bash + +echo "Installing Python Wheel ..." +pip install wheel > /dev/null 2>&1 + +echo "Installing PlatformIO ..." +pip install -U platformio > /dev/null 2>&1 + +echo "PlatformIO has been installed" +echo "" + + +function build_pio_sketch(){ # build_pio_sketch + if [ "$#" -lt 3 ]; then + echo "ERROR: Illegal number of parameters" + echo "USAGE: build_pio_sketch " + return 1 + fi + + local board="$1" + local sketch="$2" + local buildFlags="$3" + local sketch_dir=$(dirname "$sketch") + echo "" + echo "Compiling '"$(basename "$sketch")"' ..." + python -m platformio ci -l '.' --board "$board" "$sketch_dir" --project-option="board_build.partitions = huge_app.csv" --project-option="build_flags=$buildFlags" +} + +function count_sketches() # count_sketches +{ + local examples="$1" + rm -rf sketches.txt + if [ ! -d "$examples" ]; then + touch sketches.txt + return 0 + fi + local sketches=$(find $examples -name *.ino) + local sketchnum=0 + for sketch in $sketches; do + local sketchdir=$(dirname $sketch) + local sketchdirname=$(basename $sketchdir) + local sketchname=$(basename $sketch) + if [[ "${sketchdirname}.ino" != "$sketchname" ]]; then + continue + fi; + if [[ -f "$sketchdir/.test.skip" ]]; then + continue + fi + echo $sketch >> sketches.txt + sketchnum=$(($sketchnum + 1)) + done + return $sketchnum +} + +function build_pio_sketches() # build_pio_sketches +{ + if [ "$#" -lt 2 ]; then + echo "ERROR: Illegal number of parameters" + echo "USAGE: build_pio_sketches [ ]" + return 1 + fi + + local board=$1 + local examples=$2 + local chunk_idex=$3 + local chunks_num=$4 + + if [ "$#" -lt 4 ]; then + chunk_idex="0" + chunks_num="1" + fi + + if [ "$chunks_num" -le 0 ]; then + echo "ERROR: Chunks count must be positive number" + return 1 + fi + if [ "$chunk_idex" -ge "$chunks_num" ]; then + echo "ERROR: Chunk index must be less than chunks count" + return 1 + fi + + set +e + count_sketches "$examples" + local sketchcount=$? + set -e + local sketches=$(cat sketches.txt) + rm -rf sketches.txt + + local chunk_size=$(( $sketchcount / $chunks_num )) + local all_chunks=$(( $chunks_num * $chunk_size )) + if [ "$all_chunks" -lt "$sketchcount" ]; then + chunk_size=$(( $chunk_size + 1 )) + fi + + local start_index=$(( $chunk_idex * $chunk_size )) + if [ "$sketchcount" -le "$start_index" ]; then + echo "Skipping job" + return 0 + fi + + local end_index=$(( $(( $chunk_idex + 1 )) * $chunk_size )) + if [ "$end_index" -gt "$sketchcount" ]; then + end_index=$sketchcount + fi + + local start_num=$(( $start_index + 1 )) + echo "Found $sketchcount Sketches"; + echo "Chunk Count : $chunks_num" + echo "Chunk Size : $chunk_size" + echo "Start Sketch: $start_num" + echo "End Sketch : $end_index" + + local sketchnum=0 + for sketch in $sketches; do + local sketchdir=$(dirname $sketch) + local sketchdirname=$(basename $sketchdir) + local sketchname=$(basename $sketch) + if [ "${sketchdirname}.ino" != "$sketchname" ] \ + || [ -f "$sketchdir/.test.skip" ]; then + continue + fi + local sketchBuildFlags="" + if [ -f "$sketchdir/.test.build_flags" ]; then + while read line; do + sketchBuildFlags="$sketchBuildFlags $line" + done < "$sketchdir/.test.build_flags" + fi + sketchnum=$(($sketchnum + 1)) + if [ "$sketchnum" -le "$start_index" ] \ + || [ "$sketchnum" -gt "$end_index" ]; then + continue + fi + build_pio_sketch "$board" "$sketch" "$sketchBuildFlags" + local result=$? + if [ $result -ne 0 ]; then + return $result + fi + done + return 0 +} diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/scripts/on-push.sh b/Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/scripts/on-push.sh new file mode 100755 index 00000000..96fff573 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/scripts/on-push.sh @@ -0,0 +1,71 @@ +#!/bin/bash + +set -e + +if [ ! -z "$TRAVIS_BUILD_DIR" ]; then + export GITHUB_WORKSPACE="$TRAVIS_BUILD_DIR" + export GITHUB_REPOSITORY="$TRAVIS_REPO_SLUG" +elif [ -z "$GITHUB_WORKSPACE" ]; then + export GITHUB_WORKSPACE="$PWD" + export GITHUB_REPOSITORY="me-no-dev/ESPAsyncWebServer" +fi + +TARGET_PLATFORM="$1" +CHUNK_INDEX=$2 +CHUNKS_CNT=$3 +BUILD_PIO=0 +if [ "$#" -lt 1 ]; then + TARGET_PLATFORM="esp32" +fi +if [ "$#" -lt 3 ] || [ "$CHUNKS_CNT" -le 0 ]; then + CHUNK_INDEX=0 + CHUNKS_CNT=1 +elif [ "$CHUNK_INDEX" -gt "$CHUNKS_CNT" ]; then + CHUNK_INDEX=$CHUNKS_CNT +elif [ "$CHUNK_INDEX" -eq "$CHUNKS_CNT" ]; then + BUILD_PIO=1 +fi + +if [ "$BUILD_PIO" -eq 0 ]; then + # ArduinoIDE Test + source ./.github/scripts/install-arduino-ide.sh + + echo "Installing ESPAsyncWebServer ..." + cp -rf "$GITHUB_WORKSPACE" "$ARDUINO_USR_PATH/libraries/ESPAsyncWebServer" + echo "Installing ArduinoJson ..." + git clone https://github.com/bblanchon/ArduinoJson "$ARDUINO_USR_PATH/libraries/ArduinoJson" > /dev/null 2>&1 + + if [[ "$TARGET_PLATFORM" == "esp32" ]]; then + echo "Installing AsyncTCP ..." + git clone https://github.com/me-no-dev/AsyncTCP "$ARDUINO_USR_PATH/libraries/AsyncTCP" > /dev/null 2>&1 + FQBN="espressif:esp32:esp32:PSRAM=enabled,PartitionScheme=huge_app" + source ./.github/scripts/install-arduino-core-esp32.sh + echo "BUILDING ESP32 EXAMPLES" + else + echo "Installing ESPAsyncTCP ..." + git clone https://github.com/me-no-dev/ESPAsyncTCP "$ARDUINO_USR_PATH/libraries/ESPAsyncTCP" > /dev/null 2>&1 + FQBN="esp8266com:esp8266:generic:eesz=4M1M,ip=lm2f" + source ./.github/scripts/install-arduino-core-esp8266.sh + echo "BUILDING ESP8266 EXAMPLES" + fi + build_sketches "$FQBN" "$GITHUB_WORKSPACE/examples" "$CHUNK_INDEX" "$CHUNKS_CNT" +else + # PlatformIO Test + source ./.github/scripts/install-platformio.sh + + python -m platformio lib --storage-dir "$GITHUB_WORKSPACE" install + echo "Installing ArduinoJson ..." + python -m platformio lib -g install https://github.com/bblanchon/ArduinoJson.git > /dev/null 2>&1 + if [[ "$TARGET_PLATFORM" == "esp32" ]]; then + BOARD="esp32dev" + echo "Installing AsyncTCP ..." + python -m platformio lib -g install https://github.com/me-no-dev/AsyncTCP.git > /dev/null 2>&1 + echo "BUILDING ESP32 EXAMPLES" + else + BOARD="esp12e" + echo "Installing ESPAsyncTCP ..." + python -m platformio lib -g install https://github.com/me-no-dev/ESPAsyncTCP.git > /dev/null 2>&1 + echo "BUILDING ESP8266 EXAMPLES" + fi + build_pio_sketches "$BOARD" "$GITHUB_WORKSPACE/examples" +fi diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/stale.yml b/Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/stale.yml new file mode 100644 index 00000000..ce7a8e3f --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/stale.yml @@ -0,0 +1,31 @@ +# Configuration for probot-stale - https://github.com/probot/stale + +daysUntilStale: 60 +daysUntilClose: 14 +limitPerRun: 30 +staleLabel: stale +exemptLabels: + - pinned + - security + - "to be implemented" + - "for reference" + - "move to PR" + - "enhancement" + +only: issues +onlyLabels: [] +exemptProjects: false +exemptMilestones: false +exemptAssignees: false + +markComment: > + [STALE_SET] This issue has been automatically marked as stale because it has not had + recent activity. It will be closed in 14 days if no further activity occurs. Thank you + for your contributions. + +unmarkComment: > + [STALE_CLR] This issue has been removed from the stale queue. Please ensure activity to keep it openin the future. + +closeComment: > + [STALE_DEL] This stale issue has been automatically closed. Thank you for your contributions. + diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/workflows/push.yml b/Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/workflows/push.yml new file mode 100644 index 00000000..231dc529 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/.github/workflows/push.yml @@ -0,0 +1,34 @@ +name: ESP Async Web Server CI + +on: + push: + branches: + - master + - release/* + pull_request: + +jobs: + + build-arduino: + name: Arduino for ${{ matrix.board }} on ${{ matrix.os }} + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest, windows-latest, macOS-latest] + board: [esp32, esp8266] + steps: + - uses: actions/checkout@v1 + - name: Build Tests + run: bash ./.github/scripts/on-push.sh ${{ matrix.board }} 0 1 + +# build-pio: +# name: PlatformIO for ${{ matrix.board }} on ${{ matrix.os }} +# runs-on: ${{ matrix.os }} +# strategy: +# matrix: +# os: [ubuntu-latest, windows-latest, macOS-latest] +# board: [esp32, esp8266] +# steps: +# - uses: actions/checkout@v1 +# - name: Build Tests +# run: bash ./.github/scripts/on-push.sh ${{ matrix.board }} 1 1 diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/.gitignore b/Software/src/lib/me-no-dev-ESPAsyncWebServer/.gitignore new file mode 100644 index 00000000..a0f0e538 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/.gitignore @@ -0,0 +1,2 @@ +.vscode +.DS_Store diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/.travis.yml b/Software/src/lib/me-no-dev-ESPAsyncWebServer/.travis.yml new file mode 100644 index 00000000..e1b70352 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/.travis.yml @@ -0,0 +1,46 @@ +sudo: false + +language: python + +os: + - linux + +git: + depth: false + +stages: + - build + +jobs: + include: + + - name: "Build Arduino ESP32" + if: tag IS blank AND (type = pull_request OR (type = push AND branch = master)) + stage: build + script: bash $TRAVIS_BUILD_DIR/.github/scripts/on-push.sh esp32 + + - name: "Build Arduino ESP8266" + if: tag IS blank AND (type = pull_request OR (type = push AND branch = master)) + stage: build + script: bash $TRAVIS_BUILD_DIR/.github/scripts/on-push.sh esp8266 + + - name: "Build Platformio ESP32" + if: tag IS blank AND (type = pull_request OR (type = push AND branch = master)) + stage: build + script: bash $TRAVIS_BUILD_DIR/.github/scripts/on-push.sh esp32 1 1 + + - name: "Build Platformio ESP8266" + if: tag IS blank AND (type = pull_request OR (type = push AND branch = master)) + stage: build + script: bash $TRAVIS_BUILD_DIR/.github/scripts/on-push.sh esp8266 1 1 + +notifications: + email: + on_success: change + on_failure: change + webhooks: + urls: + - https://webhooks.gitter.im/e/60e65d0c78ea0a920347 + on_success: change # options: [always|never|change] default: always + on_failure: always # options: [always|never|change] default: always + on_start: never # options: [always|never|change] default: always diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/CMakeLists.txt b/Software/src/lib/me-no-dev-ESPAsyncWebServer/CMakeLists.txt new file mode 100644 index 00000000..64292eca --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/CMakeLists.txt @@ -0,0 +1,17 @@ +set(COMPONENT_SRCDIRS + "src" +) + +set(COMPONENT_ADD_INCLUDEDIRS + "src" +) + +set(COMPONENT_REQUIRES + "arduino-esp32" + "AsyncTCP" +) + +register_component() + +target_compile_definitions(${COMPONENT_TARGET} PUBLIC -DESP32) +target_compile_options(${COMPONENT_TARGET} PRIVATE -fno-rtti) diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/README.md b/Software/src/lib/me-no-dev-ESPAsyncWebServer/README.md new file mode 100644 index 00000000..2013d9ab --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/README.md @@ -0,0 +1,1523 @@ +This is commit f71e3d4 from https://github.com/me-no-dev/ESPAsyncWebServer + +# ESPAsyncWebServer +[![Build Status](https://travis-ci.org/me-no-dev/ESPAsyncWebServer.svg?branch=master)](https://travis-ci.org/me-no-dev/ESPAsyncWebServer) ![](https://github.com/me-no-dev/ESPAsyncWebServer/workflows/ESP%20Async%20Web%20Server%20CI/badge.svg) [![Codacy Badge](https://api.codacy.com/project/badge/Grade/395dd42cfc674e6ca2e326af3af80ffc)](https://www.codacy.com/manual/me-no-dev/ESPAsyncWebServer?utm_source=github.com&utm_medium=referral&utm_content=me-no-dev/ESPAsyncWebServer&utm_campaign=Badge_Grade) + +For help and support [![Join the chat at https://gitter.im/me-no-dev/ESPAsyncWebServer](https://badges.gitter.im/me-no-dev/ESPAsyncWebServer.svg)](https://gitter.im/me-no-dev/ESPAsyncWebServer?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) + +Async HTTP and WebSocket Server for ESP8266 Arduino + +For ESP8266 it requires [ESPAsyncTCP](https://github.com/me-no-dev/ESPAsyncTCP) +To use this library you might need to have the latest git versions of [ESP8266](https://github.com/esp8266/Arduino) Arduino Core + +For ESP32 it requires [AsyncTCP](https://github.com/me-no-dev/AsyncTCP) to work +To use this library you might need to have the latest git versions of [ESP32](https://github.com/espressif/arduino-esp32) Arduino Core + +## Table of contents +- [ESPAsyncWebServer](#espasyncwebserver) + - [Table of contents](#table-of-contents) + - [Installation](#installation) + - [Using PlatformIO](#using-platformio) + - [Why should you care](#why-should-you-care) + - [Important things to remember](#important-things-to-remember) + - [Principles of operation](#principles-of-operation) + - [The Async Web server](#the-async-web-server) + - [Request Life Cycle](#request-life-cycle) + - [Rewrites and how do they work](#rewrites-and-how-do-they-work) + - [Handlers and how do they work](#handlers-and-how-do-they-work) + - [Responses and how do they work](#responses-and-how-do-they-work) + - [Template processing](#template-processing) + - [Libraries and projects that use AsyncWebServer](#libraries-and-projects-that-use-asyncwebserver) + - [Request Variables](#request-variables) + - [Common Variables](#common-variables) + - [Headers](#headers) + - [GET, POST and FILE parameters](#get-post-and-file-parameters) + - [FILE Upload handling](#file-upload-handling) + - [Body data handling](#body-data-handling) + - [JSON body handling with ArduinoJson](#json-body-handling-with-arduinojson) + - [Responses](#responses) + - [Redirect to another URL](#redirect-to-another-url) + - [Basic response with HTTP Code](#basic-response-with-http-code) + - [Basic response with HTTP Code and extra headers](#basic-response-with-http-code-and-extra-headers) + - [Basic response with string content](#basic-response-with-string-content) + - [Basic response with string content and extra headers](#basic-response-with-string-content-and-extra-headers) + - [Send large webpage from PROGMEM](#send-large-webpage-from-progmem) + - [Send large webpage from PROGMEM and extra headers](#send-large-webpage-from-progmem-and-extra-headers) + - [Send large webpage from PROGMEM containing templates](#send-large-webpage-from-progmem-containing-templates) + - [Send large webpage from PROGMEM containing templates and extra headers](#send-large-webpage-from-progmem-containing-templates-and-extra-headers) + - [Send binary content from PROGMEM](#send-binary-content-from-progmem) + - [Respond with content coming from a Stream](#respond-with-content-coming-from-a-stream) + - [Respond with content coming from a Stream and extra headers](#respond-with-content-coming-from-a-stream-and-extra-headers) + - [Respond with content coming from a Stream containing templates](#respond-with-content-coming-from-a-stream-containing-templates) + - [Respond with content coming from a Stream containing templates and extra headers](#respond-with-content-coming-from-a-stream-containing-templates-and-extra-headers) + - [Respond with content coming from a File](#respond-with-content-coming-from-a-file) + - [Respond with content coming from a File and extra headers](#respond-with-content-coming-from-a-file-and-extra-headers) + - [Respond with content coming from a File containing templates](#respond-with-content-coming-from-a-file-containing-templates) + - [Respond with content using a callback](#respond-with-content-using-a-callback) + - [Respond with content using a callback and extra headers](#respond-with-content-using-a-callback-and-extra-headers) + - [Respond with content using a callback containing templates](#respond-with-content-using-a-callback-containing-templates) + - [Respond with content using a callback containing templates and extra headers](#respond-with-content-using-a-callback-containing-templates-and-extra-headers) + - [Chunked Response](#chunked-response) + - [Chunked Response containing templates](#chunked-response-containing-templates) + - [Print to response](#print-to-response) + - [ArduinoJson Basic Response](#arduinojson-basic-response) + - [ArduinoJson Advanced Response](#arduinojson-advanced-response) + - [Serving static files](#serving-static-files) + - [Serving specific file by name](#serving-specific-file-by-name) + - [Serving files in directory](#serving-files-in-directory) + - [Serving static files with authentication](#serving-static-files-with-authentication) + - [Specifying Cache-Control header](#specifying-cache-control-header) + - [Specifying Date-Modified header](#specifying-date-modified-header) + - [Specifying Template Processor callback](#specifying-template-processor-callback) + - [Param Rewrite With Matching](#param-rewrite-with-matching) + - [Using filters](#using-filters) + - [Serve different site files in AP mode](#serve-different-site-files-in-ap-mode) + - [Rewrite to different index on AP](#rewrite-to-different-index-on-ap) + - [Serving different hosts](#serving-different-hosts) + - [Determine interface inside callbacks](#determine-interface-inside-callbacks) + - [Bad Responses](#bad-responses) + - [Respond with content using a callback without content length to HTTP/1.0 clients](#respond-with-content-using-a-callback-without-content-length-to-http10-clients) + - [Async WebSocket Plugin](#async-websocket-plugin) + - [Async WebSocket Event](#async-websocket-event) + - [Methods for sending data to a socket client](#methods-for-sending-data-to-a-socket-client) + - [Direct access to web socket message buffer](#direct-access-to-web-socket-message-buffer) + - [Limiting the number of web socket clients](#limiting-the-number-of-web-socket-clients) + - [Async Event Source Plugin](#async-event-source-plugin) + - [Setup Event Source on the server](#setup-event-source-on-the-server) + - [Setup Event Source in the browser](#setup-event-source-in-the-browser) + - [Scanning for available WiFi Networks](#scanning-for-available-wifi-networks) + - [Remove handlers and rewrites](#remove-handlers-and-rewrites) + - [Setting up the server](#setting-up-the-server) + - [Setup global and class functions as request handlers](#setup-global-and-class-functions-as-request-handlers) + - [Methods for controlling websocket connections](#methods-for-controlling-websocket-connections) + - [Adding Default Headers](#adding-default-headers) + - [Path variable](#path-variable) + +## Installation + +### Using PlatformIO + +[PlatformIO](http://platformio.org) is an open source ecosystem for IoT development with cross platform build system, library manager and full support for Espressif ESP8266/ESP32 development. It works on the popular host OS: Mac OS X, Windows, Linux 32/64, Linux ARM (like Raspberry Pi, BeagleBone, CubieBoard). + +1. Install [PlatformIO IDE](http://platformio.org/platformio-ide) +2. Create new project using "PlatformIO Home > New Project" +3. Update dev/platform to staging version: + - [Instruction for Espressif 8266](http://docs.platformio.org/en/latest/platforms/espressif8266.html#using-arduino-framework-with-staging-version) + - [Instruction for Espressif 32](http://docs.platformio.org/en/latest/platforms/espressif32.html#using-arduino-framework-with-staging-version) + 4. Add "ESP Async WebServer" to project using [Project Configuration File `platformio.ini`](http://docs.platformio.org/page/projectconf.html) and [lib_deps](http://docs.platformio.org/page/projectconf/section_env_library.html#lib-deps) option: + +```ini +[env:myboard] +platform = espressif... +board = ... +framework = arduino + +# using the latest stable version +lib_deps = ESP Async WebServer + +# or using GIT Url (the latest development version) +lib_deps = https://github.com/me-no-dev/ESPAsyncWebServer.git +``` + 5. Happy coding with PlatformIO! + +## Why should you care +- Using asynchronous network means that you can handle more than one connection at the same time +- You are called once the request is ready and parsed +- When you send the response, you are immediately ready to handle other connections + while the server is taking care of sending the response in the background +- Speed is OMG +- Easy to use API, HTTP Basic and Digest MD5 Authentication (default), ChunkedResponse +- Easily extendible to handle any type of content +- Supports Continue 100 +- Async WebSocket plugin offering different locations without extra servers or ports +- Async EventSource (Server-Sent Events) plugin to send events to the browser +- URL Rewrite plugin for conditional and permanent url rewrites +- ServeStatic plugin that supports cache, Last-Modified, default index and more +- Simple template processing engine to handle templates + +## Important things to remember +- This is fully asynchronous server and as such does not run on the loop thread. +- You can not use yield or delay or any function that uses them inside the callbacks +- The server is smart enough to know when to close the connection and free resources +- You can not send more than one response to a single request + +## Principles of operation + +### The Async Web server +- Listens for connections +- Wraps the new clients into ```Request``` +- Keeps track of clients and cleans memory +- Manages ```Rewrites``` and apply them on the request url +- Manages ```Handlers``` and attaches them to Requests + +### Request Life Cycle +- TCP connection is received by the server +- The connection is wrapped inside ```Request``` object +- When the request head is received (type, url, get params, http version and host), + the server goes through all ```Rewrites``` (in the order they were added) to rewrite the url and inject query parameters, + next, it goes through all attached ```Handlers```(in the order they were added) trying to find one + that ```canHandle``` the given request. If none are found, the default(catch-all) handler is attached. +- The rest of the request is received, calling the ```handleUpload``` or ```handleBody``` methods of the ```Handler``` if they are needed (POST+File/Body) +- When the whole request is parsed, the result is given to the ```handleRequest``` method of the ```Handler``` and is ready to be responded to +- In the ```handleRequest``` method, to the ```Request``` is attached a ```Response``` object (see below) that will serve the response data back to the client +- When the ```Response``` is sent, the client is closed and freed from the memory + +### Rewrites and how do they work +- The ```Rewrites``` are used to rewrite the request url and/or inject get parameters for a specific request url path. +- All ```Rewrites``` are evaluated on the request in the order they have been added to the server. +- The ```Rewrite``` will change the request url only if the request url (excluding get parameters) is fully match + the rewrite url, and when the optional ```Filter``` callback return true. +- Setting a ```Filter``` to the ```Rewrite``` enables to control when to apply the rewrite, decision can be based on + request url, http version, request host/port/target host, get parameters or the request client's localIP or remoteIP. +- Two filter callbacks are provided: ```ON_AP_FILTER``` to execute the rewrite when request is made to the AP interface, + ```ON_STA_FILTER``` to execute the rewrite when request is made to the STA interface. +- The ```Rewrite``` can specify a target url with optional get parameters, e.g. ```/to-url?with=params``` + +### Handlers and how do they work +- The ```Handlers``` are used for executing specific actions to particular requests +- One ```Handler``` instance can be attached to any request and lives together with the server +- Setting a ```Filter``` to the ```Handler``` enables to control when to apply the handler, decision can be based on + request url, http version, request host/port/target host, get parameters or the request client's localIP or remoteIP. +- Two filter callbacks are provided: ```ON_AP_FILTER``` to execute the rewrite when request is made to the AP interface, + ```ON_STA_FILTER``` to execute the rewrite when request is made to the STA interface. +- The ```canHandle``` method is used for handler specific control on whether the requests can be handled + and for declaring any interesting headers that the ```Request``` should parse. Decision can be based on request + method, request url, http version, request host/port/target host and get parameters +- Once a ```Handler``` is attached to given ```Request``` (```canHandle``` returned true) + that ```Handler``` takes care to receive any file/data upload and attach a ```Response``` + once the ```Request``` has been fully parsed +- ```Handlers``` are evaluated in the order they are attached to the server. The ```canHandle``` is called only + if the ```Filter``` that was set to the ```Handler``` return true. +- The first ```Handler``` that can handle the request is selected, not further ```Filter``` and ```canHandle``` are called. + +### Responses and how do they work +- The ```Response``` objects are used to send the response data back to the client +- The ```Response``` object lives with the ```Request``` and is freed on end or disconnect +- Different techniques are used depending on the response type to send the data in packets + returning back almost immediately and sending the next packet when this one is received. + Any time in between is spent to run the user loop and handle other network packets +- Responding asynchronously is probably the most difficult thing for most to understand +- Many different options exist for the user to make responding a background task + +### Template processing +- ESPAsyncWebserver contains simple template processing engine. +- Template processing can be added to most response types. +- Currently it supports only replacing template placeholders with actual values. No conditional processing, cycles, etc. +- Placeholders are delimited with ```%``` symbols. Like this: ```%TEMPLATE_PLACEHOLDER%```. +- It works by extracting placeholder name from response text and passing it to user provided function which should return actual value to be used instead of placeholder. +- Since it's user provided function, it is possible for library users to implement conditional processing and cycles themselves. +- Since it's impossible to know the actual response size after template processing step in advance (and, therefore, to include it in response headers), the response becomes [chunked](#chunked-response). + +## Libraries and projects that use AsyncWebServer +- [WebSocketToSerial](https://github.com/hallard/WebSocketToSerial) - Debug serial devices through the web browser +- [Sattrack](https://github.com/Hopperpop/Sattrack) - Track the ISS with ESP8266 +- [ESP Radio](https://github.com/Edzelf/Esp-radio) - Icecast radio based on ESP8266 and VS1053 +- [VZero](https://github.com/andig/vzero) - the Wireless zero-config controller for volkszaehler.org +- [ESPurna](https://bitbucket.org/xoseperez/espurna) - ESPurna ("spark" in Catalan) is a custom C firmware for ESP8266 based smart switches. It was originally developed with the ITead Sonoff in mind. +- [fauxmoESP](https://bitbucket.org/xoseperez/fauxmoesp) - Belkin WeMo emulator library for ESP8266. +- [ESP-RFID](https://github.com/omersiar/esp-rfid) - MFRC522 RFID Access Control Management project for ESP8266. + +## Request Variables + +### Common Variables +```cpp +request->version(); // uint8_t: 0 = HTTP/1.0, 1 = HTTP/1.1 +request->method(); // enum: HTTP_GET, HTTP_POST, HTTP_DELETE, HTTP_PUT, HTTP_PATCH, HTTP_HEAD, HTTP_OPTIONS +request->url(); // String: URL of the request (not including host, port or GET parameters) +request->host(); // String: The requested host (can be used for virtual hosting) +request->contentType(); // String: ContentType of the request (not avaiable in Handler::canHandle) +request->contentLength(); // size_t: ContentLength of the request (not avaiable in Handler::canHandle) +request->multipart(); // bool: True if the request has content type "multipart" +``` + +### Headers +```cpp +//List all collected headers +int headers = request->headers(); +int i; +for(i=0;igetHeader(i); + Serial.printf("HEADER[%s]: %s\n", h->name().c_str(), h->value().c_str()); +} + +//get specific header by name +if(request->hasHeader("MyHeader")){ + AsyncWebHeader* h = request->getHeader("MyHeader"); + Serial.printf("MyHeader: %s\n", h->value().c_str()); +} + +//List all collected headers (Compatibility) +int headers = request->headers(); +int i; +for(i=0;iheaderName(i).c_str(), request->header(i).c_str()); +} + +//get specific header by name (Compatibility) +if(request->hasHeader("MyHeader")){ + Serial.printf("MyHeader: %s\n", request->header("MyHeader").c_str()); +} +``` + +### GET, POST and FILE parameters +```cpp +//List all parameters +int params = request->params(); +for(int i=0;igetParam(i); + if(p->isFile()){ //p->isPost() is also true + Serial.printf("FILE[%s]: %s, size: %u\n", p->name().c_str(), p->value().c_str(), p->size()); + } else if(p->isPost()){ + Serial.printf("POST[%s]: %s\n", p->name().c_str(), p->value().c_str()); + } else { + Serial.printf("GET[%s]: %s\n", p->name().c_str(), p->value().c_str()); + } +} + +//Check if GET parameter exists +if(request->hasParam("download")) + AsyncWebParameter* p = request->getParam("download"); + +//Check if POST (but not File) parameter exists +if(request->hasParam("download", true)) + AsyncWebParameter* p = request->getParam("download", true); + +//Check if FILE was uploaded +if(request->hasParam("download", true, true)) + AsyncWebParameter* p = request->getParam("download", true, true); + +//List all parameters (Compatibility) +int args = request->args(); +for(int i=0;iargName(i).c_str(), request->arg(i).c_str()); +} + +//Check if parameter exists (Compatibility) +if(request->hasArg("download")) + String arg = request->arg("download"); +``` + +### FILE Upload handling +```cpp +void handleUpload(AsyncWebServerRequest *request, String filename, size_t index, uint8_t *data, size_t len, bool final){ + if(!index){ + Serial.printf("UploadStart: %s\n", filename.c_str()); + } + for(size_t i=0; i(); + // ... +}); +server.addHandler(handler); +``` + +## Responses +### Redirect to another URL +```cpp +//to local url +request->redirect("/login"); + +//to external url +request->redirect("http://esp8266.com"); +``` + +### Basic response with HTTP Code +```cpp +request->send(404); //Sends 404 File Not Found +``` + +### Basic response with HTTP Code and extra headers +```cpp +AsyncWebServerResponse *response = request->beginResponse(404); //Sends 404 File Not Found +response->addHeader("Server","ESP Async Web Server"); +request->send(response); +``` + +### Basic response with string content +```cpp +request->send(200, "text/plain", "Hello World!"); +``` + +### Basic response with string content and extra headers +```cpp +AsyncWebServerResponse *response = request->beginResponse(200, "text/plain", "Hello World!"); +response->addHeader("Server","ESP Async Web Server"); +request->send(response); +``` + +### Send large webpage from PROGMEM +```cpp +const char index_html[] PROGMEM = "..."; // large char array, tested with 14k +request->send_P(200, "text/html", index_html); +``` + +### Send large webpage from PROGMEM and extra headers +```cpp +const char index_html[] PROGMEM = "..."; // large char array, tested with 14k +AsyncWebServerResponse *response = request->beginResponse_P(200, "text/html", index_html); +response->addHeader("Server","ESP Async Web Server"); +request->send(response); +``` + +### Send large webpage from PROGMEM containing templates +```cpp +String processor(const String& var) +{ + if(var == "HELLO_FROM_TEMPLATE") + return F("Hello world!"); + return String(); +} + +// ... + +const char index_html[] PROGMEM = "..."; // large char array, tested with 14k +request->send_P(200, "text/html", index_html, processor); +``` + +### Send large webpage from PROGMEM containing templates and extra headers +```cpp +String processor(const String& var) +{ + if(var == "HELLO_FROM_TEMPLATE") + return F("Hello world!"); + return String(); +} + +// ... + +const char index_html[] PROGMEM = "..."; // large char array, tested with 14k +AsyncWebServerResponse *response = request->beginResponse_P(200, "text/html", index_html, processor); +response->addHeader("Server","ESP Async Web Server"); +request->send(response); +``` + +### Send binary content from PROGMEM +```cpp + +//File: favicon.ico.gz, Size: 726 +#define favicon_ico_gz_len 726 +const uint8_t favicon_ico_gz[] PROGMEM = { + 0x1F, 0x8B, 0x08, 0x08, 0x0B, 0x87, 0x90, 0x57, 0x00, 0x03, 0x66, 0x61, 0x76, 0x69, 0x63, 0x6F, + 0x6E, 0x2E, 0x69, 0x63, 0x6F, 0x00, 0xCD, 0x53, 0x5F, 0x48, 0x9A, 0x51, 0x14, 0xBF, 0x62, 0x6D, + 0x86, 0x96, 0xA9, 0x64, 0xD3, 0xFE, 0xA8, 0x99, 0x65, 0x1A, 0xB4, 0x8A, 0xA8, 0x51, 0x54, 0x23, + 0xA8, 0x11, 0x49, 0x51, 0x8A, 0x34, 0x62, 0x93, 0x85, 0x31, 0x58, 0x44, 0x12, 0x45, 0x2D, 0x58, + 0xF5, 0x52, 0x41, 0x10, 0x23, 0x82, 0xA0, 0x20, 0x98, 0x2F, 0xC1, 0x26, 0xED, 0xA1, 0x20, 0x89, + 0x04, 0xD7, 0x83, 0x58, 0x20, 0x28, 0x04, 0xAB, 0xD1, 0x9B, 0x8C, 0xE5, 0xC3, 0x60, 0x32, 0x64, + 0x0E, 0x56, 0xBF, 0x9D, 0xEF, 0xF6, 0x30, 0x82, 0xED, 0xAD, 0x87, 0xDD, 0x8F, 0xF3, 0xDD, 0x8F, + 0x73, 0xCF, 0xEF, 0x9C, 0xDF, 0x39, 0xBF, 0xFB, 0x31, 0x26, 0xA2, 0x27, 0x37, 0x97, 0xD1, 0x5B, + 0xCF, 0x9E, 0x67, 0x30, 0xA6, 0x66, 0x8C, 0x99, 0xC9, 0xC8, 0x45, 0x9E, 0x6B, 0x3F, 0x5F, 0x74, + 0xA6, 0x94, 0x5E, 0xDB, 0xFF, 0xB2, 0xE6, 0xE7, 0xE7, 0xF9, 0xDE, 0xD6, 0xD6, 0x96, 0xDB, 0xD8, + 0xD8, 0x78, 0xBF, 0xA1, 0xA1, 0xC1, 0xDA, 0xDC, 0xDC, 0x2C, 0xEB, 0xED, 0xED, 0x15, 0x9B, 0xCD, + 0xE6, 0x4A, 0x83, 0xC1, 0xE0, 0x2E, 0x29, 0x29, 0x99, 0xD6, 0x6A, 0xB5, 0x4F, 0x75, 0x3A, 0x9D, + 0x61, 0x75, 0x75, 0x95, 0xB5, 0xB7, 0xB7, 0xDF, 0xC8, 0xD1, 0xD4, 0xD4, 0xF4, 0xB0, 0xBA, 0xBA, + 0xFA, 0x83, 0xD5, 0x6A, 0xFD, 0x5A, 0x5E, 0x5E, 0x9E, 0x28, 0x2D, 0x2D, 0x0D, 0x10, 0xC6, 0x4B, + 0x98, 0x78, 0x5E, 0x5E, 0xDE, 0x95, 0x42, 0xA1, 0x40, 0x4E, 0x4E, 0xCE, 0x65, 0x76, 0x76, 0xF6, + 0x47, 0xB5, 0x5A, 0x6D, 0x4F, 0x26, 0x93, 0xA2, 0xD6, 0xD6, 0x56, 0x8E, 0x6D, 0x69, 0x69, 0xD1, + 0x11, 0x36, 0x62, 0xB1, 0x58, 0x60, 0x32, 0x99, 0xA0, 0xD7, 0xEB, 0x51, 0x58, 0x58, 0x88, 0xFC, + 0xFC, 0x7C, 0x10, 0x16, 0x02, 0x56, 0x2E, 0x97, 0x43, 0x2A, 0x95, 0x42, 0x2C, 0x16, 0x23, 0x33, + 0x33, 0x33, 0xAE, 0x52, 0xA9, 0x1E, 0x64, 0x65, 0x65, 0x71, 0x7C, 0x7D, 0x7D, 0xBD, 0x93, 0xEA, + 0xFE, 0x30, 0x1A, 0x8D, 0xE8, 0xEC, 0xEC, 0xC4, 0xE2, 0xE2, 0x22, 0x6A, 0x6A, 0x6A, 0x40, 0x39, + 0x41, 0xB5, 0x38, 0x4E, 0xC8, 0x33, 0x3C, 0x3C, 0x0C, 0x87, 0xC3, 0xC1, 0x6B, 0x54, 0x54, 0x54, + 0xBC, 0xE9, 0xEB, 0xEB, 0x93, 0x5F, 0x5C, 0x5C, 0x30, 0x8A, 0x9D, 0x2E, 0x2B, 0x2B, 0xBB, 0xA2, + 0x3E, 0x41, 0xBD, 0x21, 0x1E, 0x8F, 0x63, 0x6A, 0x6A, 0x0A, 0x81, 0x40, 0x00, 0x94, 0x1B, 0x3D, + 0x3D, 0x3D, 0x42, 0x3C, 0x96, 0x96, 0x96, 0x70, 0x7E, 0x7E, 0x8E, 0xE3, 0xE3, 0x63, 0xF8, 0xFD, + 0xFE, 0xB4, 0xD7, 0xEB, 0xF5, 0x8F, 0x8F, 0x8F, 0x5B, 0x68, 0x5E, 0x6F, 0x05, 0xCE, 0xB4, 0xE3, + 0xE8, 0xE8, 0x08, 0x27, 0x27, 0x27, 0xD8, 0xDF, 0xDF, 0xC7, 0xD9, 0xD9, 0x19, 0x6C, 0x36, 0x1B, + 0x36, 0x36, 0x36, 0x38, 0x9F, 0x85, 0x85, 0x05, 0xAC, 0xAF, 0xAF, 0x23, 0x1A, 0x8D, 0x22, 0x91, + 0x48, 0x20, 0x16, 0x8B, 0xFD, 0xDA, 0xDA, 0xDA, 0x7A, 0x41, 0x33, 0x7E, 0x57, 0x50, 0x50, 0x80, + 0x89, 0x89, 0x09, 0x84, 0xC3, 0x61, 0x6C, 0x6F, 0x6F, 0x23, 0x12, 0x89, 0xE0, 0xE0, 0xE0, 0x00, + 0x43, 0x43, 0x43, 0x58, 0x5E, 0x5E, 0xE6, 0x9C, 0x7D, 0x3E, 0x1F, 0x46, 0x47, 0x47, 0x79, 0xBE, + 0xBD, 0xBD, 0x3D, 0xE1, 0x3C, 0x1D, 0x0C, 0x06, 0x9F, 0x10, 0xB7, 0xC7, 0x84, 0x4F, 0xF6, 0xF7, + 0xF7, 0x63, 0x60, 0x60, 0x00, 0x83, 0x83, 0x83, 0x18, 0x19, 0x19, 0xC1, 0xDC, 0xDC, 0x1C, 0x8F, + 0x17, 0x7C, 0xA4, 0x27, 0xE7, 0x34, 0x39, 0x39, 0x89, 0x9D, 0x9D, 0x1D, 0x6E, 0x54, 0xE3, 0x13, + 0xE5, 0x34, 0x11, 0x37, 0x49, 0x51, 0x51, 0xD1, 0x4B, 0xA5, 0x52, 0xF9, 0x45, 0x26, 0x93, 0x5D, + 0x0A, 0xF3, 0x92, 0x48, 0x24, 0xA0, 0x6F, 0x14, 0x17, 0x17, 0xA3, 0xB6, 0xB6, 0x16, 0x5D, 0x5D, + 0x5D, 0x7C, 0x1E, 0xBB, 0xBB, 0xBB, 0x9C, 0xD7, 0xE1, 0xE1, 0x21, 0x42, 0xA1, 0xD0, 0x6B, 0xD2, + 0x45, 0x4C, 0x33, 0x12, 0x34, 0xCC, 0xA0, 0x19, 0x54, 0x92, 0x56, 0x0E, 0xD2, 0xD9, 0x43, 0xF8, + 0xCF, 0x82, 0x56, 0xC2, 0xDC, 0xEB, 0xEA, 0xEA, 0x38, 0x7E, 0x6C, 0x6C, 0x4C, 0xE0, 0xFE, 0x9D, + 0xB8, 0xBF, 0xA7, 0xFA, 0xAF, 0x56, 0x56, 0x56, 0xEE, 0x6D, 0x6E, 0x6E, 0xDE, 0xB8, 0x47, 0x55, + 0x55, 0x55, 0x6C, 0x66, 0x66, 0x46, 0x44, 0xDA, 0x3B, 0x34, 0x1A, 0x4D, 0x94, 0xB0, 0x3F, 0x09, + 0x7B, 0x45, 0xBD, 0xA5, 0x5D, 0x2E, 0x57, 0x8C, 0x7A, 0x73, 0xD9, 0xED, 0xF6, 0x3B, 0x84, 0xFF, + 0xE7, 0x7D, 0xA6, 0x3A, 0x2C, 0x95, 0x4A, 0xB1, 0x8E, 0x8E, 0x0E, 0x6D, 0x77, 0x77, 0xB7, 0xCD, + 0xE9, 0x74, 0x3E, 0x73, 0xBB, 0xDD, 0x8F, 0x3C, 0x1E, 0x8F, 0xE6, 0xF4, 0xF4, 0x94, 0xAD, 0xAD, + 0xAD, 0xDD, 0xDE, 0xCF, 0x73, 0x0B, 0x0B, 0xB8, 0xB6, 0xE0, 0x5D, 0xC6, 0x66, 0xC5, 0xE4, 0x10, + 0x4C, 0xF4, 0xF7, 0xD8, 0x59, 0xF2, 0x7F, 0xA3, 0xB8, 0xB4, 0xFC, 0x0F, 0xEE, 0x37, 0x70, 0xEC, + 0x16, 0x4A, 0x7E, 0x04, 0x00, 0x00 +}; + +AsyncWebServerResponse *response = request->beginResponse_P(200, "image/x-icon", favicon_ico_gz, favicon_ico_gz_len); +response->addHeader("Content-Encoding", "gzip"); +request->send(response); +``` + +### Respond with content coming from a Stream +```cpp +//read 12 bytes from Serial and send them as Content Type text/plain +request->send(Serial, "text/plain", 12); +``` + +### Respond with content coming from a Stream and extra headers +```cpp +//read 12 bytes from Serial and send them as Content Type text/plain +AsyncWebServerResponse *response = request->beginResponse(Serial, "text/plain", 12); +response->addHeader("Server","ESP Async Web Server"); +request->send(response); +``` + +### Respond with content coming from a Stream containing templates +```cpp +String processor(const String& var) +{ + if(var == "HELLO_FROM_TEMPLATE") + return F("Hello world!"); + return String(); +} + +// ... + +//read 12 bytes from Serial and send them as Content Type text/plain +request->send(Serial, "text/plain", 12, processor); +``` + +### Respond with content coming from a Stream containing templates and extra headers +```cpp +String processor(const String& var) +{ + if(var == "HELLO_FROM_TEMPLATE") + return F("Hello world!"); + return String(); +} + +// ... + +//read 12 bytes from Serial and send them as Content Type text/plain +AsyncWebServerResponse *response = request->beginResponse(Serial, "text/plain", 12, processor); +response->addHeader("Server","ESP Async Web Server"); +request->send(response); +``` + +### Respond with content coming from a File +```cpp +//Send index.htm with default content type +request->send(SPIFFS, "/index.htm"); + +//Send index.htm as text +request->send(SPIFFS, "/index.htm", "text/plain"); + +//Download index.htm +request->send(SPIFFS, "/index.htm", String(), true); +``` + +### Respond with content coming from a File and extra headers +```cpp +//Send index.htm with default content type +AsyncWebServerResponse *response = request->beginResponse(SPIFFS, "/index.htm"); + +//Send index.htm as text +AsyncWebServerResponse *response = request->beginResponse(SPIFFS, "/index.htm", "text/plain"); + +//Download index.htm +AsyncWebServerResponse *response = request->beginResponse(SPIFFS, "/index.htm", String(), true); + +response->addHeader("Server","ESP Async Web Server"); +request->send(response); +``` + +### Respond with content coming from a File containing templates +Internally uses [Chunked Response](#chunked-response). + +Index.htm contents: +``` +%HELLO_FROM_TEMPLATE% +``` + +Somewhere in source files: +```cpp +String processor(const String& var) +{ + if(var == "HELLO_FROM_TEMPLATE") + return F("Hello world!"); + return String(); +} + +// ... + +//Send index.htm with template processor function +request->send(SPIFFS, "/index.htm", String(), false, processor); +``` + +### Respond with content using a callback +```cpp +//send 128 bytes as plain text +request->send("text/plain", 128, [](uint8_t *buffer, size_t maxLen, size_t index) -> size_t { + //Write up to "maxLen" bytes into "buffer" and return the amount written. + //index equals the amount of bytes that have been already sent + //You will not be asked for more bytes once the content length has been reached. + //Keep in mind that you can not delay or yield waiting for more data! + //Send what you currently have and you will be asked for more again + return mySource.read(buffer, maxLen); +}); +``` + +### Respond with content using a callback and extra headers +```cpp +//send 128 bytes as plain text +AsyncWebServerResponse *response = request->beginResponse("text/plain", 128, [](uint8_t *buffer, size_t maxLen, size_t index) -> size_t { + //Write up to "maxLen" bytes into "buffer" and return the amount written. + //index equals the amount of bytes that have been already sent + //You will not be asked for more bytes once the content length has been reached. + //Keep in mind that you can not delay or yield waiting for more data! + //Send what you currently have and you will be asked for more again + return mySource.read(buffer, maxLen); +}); +response->addHeader("Server","ESP Async Web Server"); +request->send(response); +``` + +### Respond with content using a callback containing templates +```cpp +String processor(const String& var) +{ + if(var == "HELLO_FROM_TEMPLATE") + return F("Hello world!"); + return String(); +} + +// ... + +//send 128 bytes as plain text +request->send("text/plain", 128, [](uint8_t *buffer, size_t maxLen, size_t index) -> size_t { + //Write up to "maxLen" bytes into "buffer" and return the amount written. + //index equals the amount of bytes that have been already sent + //You will not be asked for more bytes once the content length has been reached. + //Keep in mind that you can not delay or yield waiting for more data! + //Send what you currently have and you will be asked for more again + return mySource.read(buffer, maxLen); +}, processor); +``` + +### Respond with content using a callback containing templates and extra headers +```cpp +String processor(const String& var) +{ + if(var == "HELLO_FROM_TEMPLATE") + return F("Hello world!"); + return String(); +} + +// ... + +//send 128 bytes as plain text +AsyncWebServerResponse *response = request->beginResponse("text/plain", 128, [](uint8_t *buffer, size_t maxLen, size_t index) -> size_t { + //Write up to "maxLen" bytes into "buffer" and return the amount written. + //index equals the amount of bytes that have been already sent + //You will not be asked for more bytes once the content length has been reached. + //Keep in mind that you can not delay or yield waiting for more data! + //Send what you currently have and you will be asked for more again + return mySource.read(buffer, maxLen); +}, processor); +response->addHeader("Server","ESP Async Web Server"); +request->send(response); +``` + +### Chunked Response +Used when content length is unknown. Works best if the client supports HTTP/1.1 +```cpp +AsyncWebServerResponse *response = request->beginChunkedResponse("text/plain", [](uint8_t *buffer, size_t maxLen, size_t index) -> size_t { + //Write up to "maxLen" bytes into "buffer" and return the amount written. + //index equals the amount of bytes that have been already sent + //You will be asked for more data until 0 is returned + //Keep in mind that you can not delay or yield waiting for more data! + return mySource.read(buffer, maxLen); +}); +response->addHeader("Server","ESP Async Web Server"); +request->send(response); +``` + +### Chunked Response containing templates +Used when content length is unknown. Works best if the client supports HTTP/1.1 +```cpp +String processor(const String& var) +{ + if(var == "HELLO_FROM_TEMPLATE") + return F("Hello world!"); + return String(); +} + +// ... + +AsyncWebServerResponse *response = request->beginChunkedResponse("text/plain", [](uint8_t *buffer, size_t maxLen, size_t index) -> size_t { + //Write up to "maxLen" bytes into "buffer" and return the amount written. + //index equals the amount of bytes that have been already sent + //You will be asked for more data until 0 is returned + //Keep in mind that you can not delay or yield waiting for more data! + return mySource.read(buffer, maxLen); +}, processor); +response->addHeader("Server","ESP Async Web Server"); +request->send(response); +``` + +### Print to response +```cpp +AsyncResponseStream *response = request->beginResponseStream("text/html"); +response->addHeader("Server","ESP Async Web Server"); +response->printf("Webpage at %s", request->url().c_str()); + +response->print("

Hello "); +response->print(request->client()->remoteIP()); +response->print("

"); + +response->print("

General

"); +response->print("
    "); +response->printf("
  • Version: HTTP/1.%u
  • ", request->version()); +response->printf("
  • Method: %s
  • ", request->methodToString()); +response->printf("
  • URL: %s
  • ", request->url().c_str()); +response->printf("
  • Host: %s
  • ", request->host().c_str()); +response->printf("
  • ContentType: %s
  • ", request->contentType().c_str()); +response->printf("
  • ContentLength: %u
  • ", request->contentLength()); +response->printf("
  • Multipart: %s
  • ", request->multipart()?"true":"false"); +response->print("
"); + +response->print("

Headers

"); +response->print("
    "); +int headers = request->headers(); +for(int i=0;igetHeader(i); + response->printf("
  • %s: %s
  • ", h->name().c_str(), h->value().c_str()); +} +response->print("
"); + +response->print("

Parameters

"); +response->print("
    "); +int params = request->params(); +for(int i=0;igetParam(i); + if(p->isFile()){ + response->printf("
  • FILE[%s]: %s, size: %u
  • ", p->name().c_str(), p->value().c_str(), p->size()); + } else if(p->isPost()){ + response->printf("
  • POST[%s]: %s
  • ", p->name().c_str(), p->value().c_str()); + } else { + response->printf("
  • GET[%s]: %s
  • ", p->name().c_str(), p->value().c_str()); + } +} +response->print("
"); + +response->print(""); +//send the response last +request->send(response); +``` + +### ArduinoJson Basic Response +This way of sending Json is great for when the result is below 4KB +```cpp +#include "AsyncJson.h" +#include "ArduinoJson.h" + + +AsyncResponseStream *response = request->beginResponseStream("application/json"); +DynamicJsonBuffer jsonBuffer; +JsonObject &root = jsonBuffer.createObject(); +root["heap"] = ESP.getFreeHeap(); +root["ssid"] = WiFi.SSID(); +root.printTo(*response); +request->send(response); +``` + +### ArduinoJson Advanced Response +This response can handle really large Json objects (tested to 40KB) +There isn't any noticeable speed decrease for small results with the method above +Since ArduinoJson does not allow reading parts of the string, the whole Json has to +be passed every time a chunks needs to be sent, which shows speed decrease proportional +to the resulting json packets +```cpp +#include "AsyncJson.h" +#include "ArduinoJson.h" + + +AsyncJsonResponse * response = new AsyncJsonResponse(); +response->addHeader("Server","ESP Async Web Server"); +JsonObject& root = response->getRoot(); +root["heap"] = ESP.getFreeHeap(); +root["ssid"] = WiFi.SSID(); +response->setLength(); +request->send(response); +``` + +## Serving static files +In addition to serving files from SPIFFS as described above, the server provide a dedicated handler that optimize the +performance of serving files from SPIFFS - ```AsyncStaticWebHandler```. Use ```server.serveStatic()``` function to +initialize and add a new instance of ```AsyncStaticWebHandler``` to the server. +The Handler will not handle the request if the file does not exists, e.g. the server will continue to look for another +handler that can handle the request. +Notice that you can chain setter functions to setup the handler, or keep a pointer to change it at a later time. + +### Serving specific file by name +```cpp +// Serve the file "/www/page.htm" when request url is "/page.htm" +server.serveStatic("/page.htm", SPIFFS, "/www/page.htm"); +``` + +### Serving files in directory +To serve files in a directory, the path to the files should specify a directory in SPIFFS and ends with "/". +```cpp +// Serve files in directory "/www/" when request url starts with "/" +// Request to the root or none existing files will try to server the defualt +// file name "index.htm" if exists +server.serveStatic("/", SPIFFS, "/www/"); + +// Server with different default file +server.serveStatic("/", SPIFFS, "/www/").setDefaultFile("default.html"); +``` + +### Serving static files with authentication + +```cpp +server + .serveStatic("/", SPIFFS, "/www/") + .setDefaultFile("default.html") + .setAuthentication("user", "pass"); +``` + +### Specifying Cache-Control header +It is possible to specify Cache-Control header value to reduce the number of calls to the server once the client loaded +the files. For more information on Cache-Control values see [Cache-Control](https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9) +```cpp +// Cache responses for 10 minutes (600 seconds) +server.serveStatic("/", SPIFFS, "/www/").setCacheControl("max-age=600"); + +//*** Change Cache-Control after server setup *** + +// During setup - keep a pointer to the handler +AsyncStaticWebHandler* handler = &server.serveStatic("/", SPIFFS, "/www/").setCacheControl("max-age=600"); + +// At a later event - change Cache-Control +handler->setCacheControl("max-age=30"); +``` + +### Specifying Date-Modified header +It is possible to specify Date-Modified header to enable the server to return Not-Modified (304) response for requests +with "If-Modified-Since" header with the same value, instead of responding with the actual file content. +```cpp +// Update the date modified string every time files are updated +server.serveStatic("/", SPIFFS, "/www/").setLastModified("Mon, 20 Jun 2016 14:00:00 GMT"); + +//*** Chage last modified value at a later stage *** + +// During setup - read last modified value from config or EEPROM +String date_modified = loadDateModified(); +AsyncStaticWebHandler* handler = &server.serveStatic("/", SPIFFS, "/www/"); +handler->setLastModified(date_modified); + +// At a later event when files are updated +String date_modified = getNewDateModfied(); +saveDateModified(date_modified); // Save for next reset +handler->setLastModified(date_modified); +``` + +### Specifying Template Processor callback +It is possible to specify template processor for static files. For information on template processor see +[Respond with content coming from a File containing templates](#respond-with-content-coming-from-a-file-containing-templates). +```cpp +String processor(const String& var) +{ + if(var == "HELLO_FROM_TEMPLATE") + return F("Hello world!"); + return String(); +} + +// ... + +server.serveStatic("/", SPIFFS, "/www/").setTemplateProcessor(processor); +``` + +## Param Rewrite With Matching +It is possible to rewrite the request url with parameter matchg. Here is an example with one parameter: +Rewrite for example "/radio/{frequence}" -> "/radio?f={frequence}" + +```cpp +class OneParamRewrite : public AsyncWebRewrite +{ + protected: + String _urlPrefix; + int _paramIndex; + String _paramsBackup; + + public: + OneParamRewrite(const char* from, const char* to) + : AsyncWebRewrite(from, to) { + + _paramIndex = _from.indexOf('{'); + + if( _paramIndex >=0 && _from.endsWith("}")) { + _urlPrefix = _from.substring(0, _paramIndex); + int index = _params.indexOf('{'); + if(index >= 0) { + _params = _params.substring(0, index); + } + } else { + _urlPrefix = _from; + } + _paramsBackup = _params; + } + + bool match(AsyncWebServerRequest *request) override { + if(request->url().startsWith(_urlPrefix)) { + if(_paramIndex >= 0) { + _params = _paramsBackup + request->url().substring(_paramIndex); + } else { + _params = _paramsBackup; + } + return true; + + } else { + return false; + } + } +}; +``` + +Usage: + +```cpp + server.addRewrite( new OneParamRewrite("/radio/{frequence}", "/radio?f={frequence}") ); +``` + +## Using filters +Filters can be set to `Rewrite` or `Handler` in order to control when to apply the rewrite and consider the handler. +A filter is a callback function that evaluates the request and return a boolean `true` to include the item +or `false` to exclude it. +Two filter callback are provided for convince: +* `ON_STA_FILTER` - return true when requests are made to the STA (station mode) interface. +* `ON_AP_FILTER` - return true when requests are made to the AP (access point) interface. + +### Serve different site files in AP mode +```cpp +server.serveStatic("/", SPIFFS, "/www/").setFilter(ON_STA_FILTER); +server.serveStatic("/", SPIFFS, "/ap/").setFilter(ON_AP_FILTER); +``` + +### Rewrite to different index on AP +```cpp +// Serve the file "/www/index-ap.htm" in AP, and the file "/www/index.htm" on STA +server.rewrite("/", "index.htm"); +server.rewrite("/index.htm", "index-ap.htm").setFilter(ON_AP_FILTER); +server.serveStatic("/", SPIFFS, "/www/"); +``` + +### Serving different hosts +```cpp +// Filter callback using request host +bool filterOnHost1(AsyncWebServerRequest *request) { return request->host() == "host1"; } + +// Server setup: server files in "/host1/" to requests for "host1", and files in "/www/" otherwise. +server.serveStatic("/", SPIFFS, "/host1/").setFilter(filterOnHost1); +server.serveStatic("/", SPIFFS, "/www/"); +``` + +### Determine interface inside callbacks +```cpp + String RedirectUrl = "http://"; + if (ON_STA_FILTER(request)) { + RedirectUrl += WiFi.localIP().toString(); + } else { + RedirectUrl += WiFi.softAPIP().toString(); + } + RedirectUrl += "/index.htm"; + request->redirect(RedirectUrl); +``` + +## Bad Responses +Some responses are implemented, but you should not use them, because they do not conform to HTTP. +The following example will lead to unclean close of the connection and more time wasted +than providing the length of the content + +### Respond with content using a callback without content length to HTTP/1.0 clients +```cpp +//This is used as fallback for chunked responses to HTTP/1.0 Clients +request->send("text/plain", 0, [](uint8_t *buffer, size_t maxLen, size_t index) -> size_t { + //Write up to "maxLen" bytes into "buffer" and return the amount written. + //You will be asked for more data until 0 is returned + //Keep in mind that you can not delay or yield waiting for more data! + return mySource.read(buffer, maxLen); +}); +``` + +## Async WebSocket Plugin +The server includes a web socket plugin which lets you define different WebSocket locations to connect to +without starting another listening service or using different port + +### Async WebSocket Event +```cpp + +void onEvent(AsyncWebSocket * server, AsyncWebSocketClient * client, AwsEventType type, void * arg, uint8_t *data, size_t len){ + if(type == WS_EVT_CONNECT){ + //client connected + os_printf("ws[%s][%u] connect\n", server->url(), client->id()); + client->printf("Hello Client %u :)", client->id()); + client->ping(); + } else if(type == WS_EVT_DISCONNECT){ + //client disconnected + os_printf("ws[%s][%u] disconnect: %u\n", server->url(), client->id()); + } else if(type == WS_EVT_ERROR){ + //error was received from the other end + os_printf("ws[%s][%u] error(%u): %s\n", server->url(), client->id(), *((uint16_t*)arg), (char*)data); + } else if(type == WS_EVT_PONG){ + //pong message was received (in response to a ping request maybe) + os_printf("ws[%s][%u] pong[%u]: %s\n", server->url(), client->id(), len, (len)?(char*)data:""); + } else if(type == WS_EVT_DATA){ + //data packet + AwsFrameInfo * info = (AwsFrameInfo*)arg; + if(info->final && info->index == 0 && info->len == len){ + //the whole message is in a single frame and we got all of it's data + os_printf("ws[%s][%u] %s-message[%llu]: ", server->url(), client->id(), (info->opcode == WS_TEXT)?"text":"binary", info->len); + if(info->opcode == WS_TEXT){ + data[len] = 0; + os_printf("%s\n", (char*)data); + } else { + for(size_t i=0; i < info->len; i++){ + os_printf("%02x ", data[i]); + } + os_printf("\n"); + } + if(info->opcode == WS_TEXT) + client->text("I got your text message"); + else + client->binary("I got your binary message"); + } else { + //message is comprised of multiple frames or the frame is split into multiple packets + if(info->index == 0){ + if(info->num == 0) + os_printf("ws[%s][%u] %s-message start\n", server->url(), client->id(), (info->message_opcode == WS_TEXT)?"text":"binary"); + os_printf("ws[%s][%u] frame[%u] start[%llu]\n", server->url(), client->id(), info->num, info->len); + } + + os_printf("ws[%s][%u] frame[%u] %s[%llu - %llu]: ", server->url(), client->id(), info->num, (info->message_opcode == WS_TEXT)?"text":"binary", info->index, info->index + len); + if(info->message_opcode == WS_TEXT){ + data[len] = 0; + os_printf("%s\n", (char*)data); + } else { + for(size_t i=0; i < len; i++){ + os_printf("%02x ", data[i]); + } + os_printf("\n"); + } + + if((info->index + len) == info->len){ + os_printf("ws[%s][%u] frame[%u] end[%llu]\n", server->url(), client->id(), info->num, info->len); + if(info->final){ + os_printf("ws[%s][%u] %s-message end\n", server->url(), client->id(), (info->message_opcode == WS_TEXT)?"text":"binary"); + if(info->message_opcode == WS_TEXT) + client->text("I got your text message"); + else + client->binary("I got your binary message"); + } + } + } + } +} +``` + +### Methods for sending data to a socket client +```cpp + + + +//Server methods +AsyncWebSocket ws("/ws"); +//printf to a client +ws.printf((uint32_t)client_id, arguments...); +//printf to all clients +ws.printfAll(arguments...); +//printf_P to a client +ws.printf_P((uint32_t)client_id, PSTR(format), arguments...); +//printfAll_P to all clients +ws.printfAll_P(PSTR(format), arguments...); +//send text to a client +ws.text((uint32_t)client_id, (char*)text); +ws.text((uint32_t)client_id, (uint8_t*)text, (size_t)len); +//send text from PROGMEM to a client +ws.text((uint32_t)client_id, PSTR("text")); +const char flash_text[] PROGMEM = "Text to send" +ws.text((uint32_t)client_id, FPSTR(flash_text)); +//send text to all clients +ws.textAll((char*)text); +ws.textAll((uint8_t*)text, (size_t)len); +//send binary to a client +ws.binary((uint32_t)client_id, (char*)binary); +ws.binary((uint32_t)client_id, (uint8_t*)binary, (size_t)len); +//send binary from PROGMEM to a client +const uint8_t flash_binary[] PROGMEM = { 0x01, 0x02, 0x03, 0x04 }; +ws.binary((uint32_t)client_id, flash_binary, 4); +//send binary to all clients +ws.binaryAll((char*)binary); +ws.binaryAll((uint8_t*)binary, (size_t)len); +//HTTP Authenticate before switch to Websocket protocol +ws.setAuthentication("user", "pass"); + +//client methods +AsyncWebSocketClient * client; +//printf +client->printf(arguments...); +//printf_P +client->printf_P(PSTR(format), arguments...); +//send text +client->text((char*)text); +client->text((uint8_t*)text, (size_t)len); +//send text from PROGMEM +client->text(PSTR("text")); +const char flash_text[] PROGMEM = "Text to send"; +client->text(FPSTR(flash_text)); +//send binary +client->binary((char*)binary); +client->binary((uint8_t*)binary, (size_t)len); +//send binary from PROGMEM +const uint8_t flash_binary[] PROGMEM = { 0x01, 0x02, 0x03, 0x04 }; +client->binary(flash_binary, 4); +``` + +### Direct access to web socket message buffer +When sending a web socket message using the above methods a buffer is created. Under certain circumstances you might want to manipulate or populate this buffer directly from your application, for example to prevent unnecessary duplications of the data. This example below shows how to create a buffer and print data to it from an ArduinoJson object then send it. + +```cpp +void sendDataWs(AsyncWebSocketClient * client) +{ + DynamicJsonBuffer jsonBuffer; + JsonObject& root = jsonBuffer.createObject(); + root["a"] = "abc"; + root["b"] = "abcd"; + root["c"] = "abcde"; + root["d"] = "abcdef"; + root["e"] = "abcdefg"; + size_t len = root.measureLength(); + AsyncWebSocketMessageBuffer * buffer = ws.makeBuffer(len); // creates a buffer (len + 1) for you. + if (buffer) { + root.printTo((char *)buffer->get(), len + 1); + if (client) { + client->text(buffer); + } else { + ws.textAll(buffer); + } + } +} +``` + +### Limiting the number of web socket clients +Browsers sometimes do not correctly close the websocket connection, even when the close() function is called in javascript. This will eventually exhaust the web server's resources and will cause the server to crash. Periodically calling the cleanClients() function from the main loop() function limits the number of clients by closing the oldest client when the maximum number of clients has been exceeded. This can called be every cycle, however, if you wish to use less power, then calling as infrequently as once per second is sufficient. + +```cpp +void loop(){ + ws.cleanupClients(); +} +``` + + +## Async Event Source Plugin +The server includes EventSource (Server-Sent Events) plugin which can be used to send short text events to the browser. +Difference between EventSource and WebSockets is that EventSource is single direction, text-only protocol. + +### Setup Event Source on the server +```cpp +AsyncWebServer server(80); +AsyncEventSource events("/events"); + +void setup(){ + // setup ...... + events.onConnect([](AsyncEventSourceClient *client){ + if(client->lastId()){ + Serial.printf("Client reconnected! Last message ID that it gat is: %u\n", client->lastId()); + } + //send event with message "hello!", id current millis + // and set reconnect delay to 1 second + client->send("hello!",NULL,millis(),1000); + }); + //HTTP Basic authentication + events.setAuthentication("user", "pass"); + server.addHandler(&events); + // setup ...... +} + +void loop(){ + if(eventTriggered){ // your logic here + //send event "myevent" + events.send("my event content","myevent",millis()); + } +} +``` + +### Setup Event Source in the browser +```javascript +if (!!window.EventSource) { + var source = new EventSource('/events'); + + source.addEventListener('open', function(e) { + console.log("Events Connected"); + }, false); + + source.addEventListener('error', function(e) { + if (e.target.readyState != EventSource.OPEN) { + console.log("Events Disconnected"); + } + }, false); + + source.addEventListener('message', function(e) { + console.log("message", e.data); + }, false); + + source.addEventListener('myevent', function(e) { + console.log("myevent", e.data); + }, false); +} +``` + +## Scanning for available WiFi Networks +```cpp +//First request will return 0 results unless you start scan from somewhere else (loop/setup) +//Do not request more often than 3-5 seconds +server.on("/scan", HTTP_GET, [](AsyncWebServerRequest *request){ + String json = "["; + int n = WiFi.scanComplete(); + if(n == -2){ + WiFi.scanNetworks(true); + } else if(n){ + for (int i = 0; i < n; ++i){ + if(i) json += ","; + json += "{"; + json += "\"rssi\":"+String(WiFi.RSSI(i)); + json += ",\"ssid\":\""+WiFi.SSID(i)+"\""; + json += ",\"bssid\":\""+WiFi.BSSIDstr(i)+"\""; + json += ",\"channel\":"+String(WiFi.channel(i)); + json += ",\"secure\":"+String(WiFi.encryptionType(i)); + json += ",\"hidden\":"+String(WiFi.isHidden(i)?"true":"false"); + json += "}"; + } + WiFi.scanDelete(); + if(WiFi.scanComplete() == -2){ + WiFi.scanNetworks(true); + } + } + json += "]"; + request->send(200, "application/json", json); + json = String(); +}); +``` + +## Remove handlers and rewrites + +Server goes through handlers in same order as they were added. You can't simple add handler with same path to override them. +To remove handler: +```arduino +// save callback for particular URL path +auto handler = server.on("/some/path", [](AsyncWebServerRequest *request){ + //do something useful +}); +// when you don't need handler anymore remove it +server.removeHandler(&handler); + +// same with rewrites +server.removeRewrite(&someRewrite); + +server.onNotFound([](AsyncWebServerRequest *request){ + request->send(404); +}); + +// remove server.onNotFound handler +server.onNotFound(NULL); + +// remove all rewrites, handlers and onNotFound/onFileUpload/onRequestBody callbacks +server.reset(); +``` + +## Setting up the server +```cpp +#include "ESPAsyncTCP.h" +#include "ESPAsyncWebServer.h" + +AsyncWebServer server(80); +AsyncWebSocket ws("/ws"); // access at ws://[esp ip]/ws +AsyncEventSource events("/events"); // event source (Server-Sent events) + +const char* ssid = "your-ssid"; +const char* password = "your-pass"; +const char* http_username = "admin"; +const char* http_password = "admin"; + +//flag to use from web update to reboot the ESP +bool shouldReboot = false; + +void onRequest(AsyncWebServerRequest *request){ + //Handle Unknown Request + request->send(404); +} + +void onBody(AsyncWebServerRequest *request, uint8_t *data, size_t len, size_t index, size_t total){ + //Handle body +} + +void onUpload(AsyncWebServerRequest *request, String filename, size_t index, uint8_t *data, size_t len, bool final){ + //Handle upload +} + +void onEvent(AsyncWebSocket * server, AsyncWebSocketClient * client, AwsEventType type, void * arg, uint8_t *data, size_t len){ + //Handle WebSocket event +} + +void setup(){ + Serial.begin(115200); + WiFi.mode(WIFI_STA); + WiFi.begin(ssid, password); + if (WiFi.waitForConnectResult() != WL_CONNECTED) { + Serial.printf("WiFi Failed!\n"); + return; + } + + // attach AsyncWebSocket + ws.onEvent(onEvent); + server.addHandler(&ws); + + // attach AsyncEventSource + server.addHandler(&events); + + // respond to GET requests on URL /heap + server.on("/heap", HTTP_GET, [](AsyncWebServerRequest *request){ + request->send(200, "text/plain", String(ESP.getFreeHeap())); + }); + + // upload a file to /upload + server.on("/upload", HTTP_POST, [](AsyncWebServerRequest *request){ + request->send(200); + }, onUpload); + + // send a file when /index is requested + server.on("/index", HTTP_ANY, [](AsyncWebServerRequest *request){ + request->send(SPIFFS, "/index.htm"); + }); + + // HTTP basic authentication + server.on("/login", HTTP_GET, [](AsyncWebServerRequest *request){ + if(!request->authenticate(http_username, http_password)) + return request->requestAuthentication(); + request->send(200, "text/plain", "Login Success!"); + }); + + // Simple Firmware Update Form + server.on("/update", HTTP_GET, [](AsyncWebServerRequest *request){ + request->send(200, "text/html", "
"); + }); + server.on("/update", HTTP_POST, [](AsyncWebServerRequest *request){ + shouldReboot = !Update.hasError(); + AsyncWebServerResponse *response = request->beginResponse(200, "text/plain", shouldReboot?"OK":"FAIL"); + response->addHeader("Connection", "close"); + request->send(response); + },[](AsyncWebServerRequest *request, String filename, size_t index, uint8_t *data, size_t len, bool final){ + if(!index){ + Serial.printf("Update Start: %s\n", filename.c_str()); + Update.runAsync(true); + if(!Update.begin((ESP.getFreeSketchSpace() - 0x1000) & 0xFFFFF000)){ + Update.printError(Serial); + } + } + if(!Update.hasError()){ + if(Update.write(data, len) != len){ + Update.printError(Serial); + } + } + if(final){ + if(Update.end(true)){ + Serial.printf("Update Success: %uB\n", index+len); + } else { + Update.printError(Serial); + } + } + }); + + // attach filesystem root at URL /fs + server.serveStatic("/fs", SPIFFS, "/"); + + // Catch-All Handlers + // Any request that can not find a Handler that canHandle it + // ends in the callbacks below. + server.onNotFound(onRequest); + server.onFileUpload(onUpload); + server.onRequestBody(onBody); + + server.begin(); +} + +void loop(){ + if(shouldReboot){ + Serial.println("Rebooting..."); + delay(100); + ESP.restart(); + } + static char temp[128]; + sprintf(temp, "Seconds since boot: %u", millis()/1000); + events.send(temp, "time"); //send event "time" +} +``` + +### Setup global and class functions as request handlers + +```cpp +#include +#include +#include +#include + +void handleRequest(AsyncWebServerRequest *request){} + +class WebClass { +public : + AsyncWebServer classWebServer = AsyncWebServer(81); + + WebClass(){}; + + void classRequest (AsyncWebServerRequest *request){} + + void begin(){ + // attach global request handler + classWebServer.on("/example", HTTP_ANY, handleRequest); + + // attach class request handler + classWebServer.on("/example", HTTP_ANY, std::bind(&WebClass::classRequest, this, std::placeholders::_1)); + } +}; + +AsyncWebServer globalWebServer(80); +WebClass webClassInstance; + +void setup() { + // attach global request handler + globalWebServer.on("/example", HTTP_ANY, handleRequest); + + // attach class request handler + globalWebServer.on("/example", HTTP_ANY, std::bind(&WebClass::classRequest, webClassInstance, std::placeholders::_1)); +} + +void loop() { + +} +``` + +### Methods for controlling websocket connections + +```cpp + // Disable client connections if it was activated + if ( ws.enabled() ) + ws.enable(false); + + // enable client connections if it was disabled + if ( !ws.enabled() ) + ws.enable(true); +``` + +Example of OTA code + +```cpp + // OTA callbacks + ArduinoOTA.onStart([]() { + // Clean SPIFFS + SPIFFS.end(); + + // Disable client connections + ws.enable(false); + + // Advertise connected clients what's going on + ws.textAll("OTA Update Started"); + + // Close them + ws.closeAll(); + + }); + +``` + +### Adding Default Headers + +In some cases, such as when working with CORS, or with some sort of custom authentication system, +you might need to define a header that should get added to all responses (including static, websocket and EventSource). +The DefaultHeaders singleton allows you to do this. + +Example: + +```cpp +DefaultHeaders::Instance().addHeader("Access-Control-Allow-Origin", "*"); +webServer.begin(); +``` + +*NOTE*: You will still need to respond to the OPTIONS method for CORS pre-flight in most cases. (unless you are only using GET) + +This is one option: + +```cpp +webServer.onNotFound([](AsyncWebServerRequest *request) { + if (request->method() == HTTP_OPTIONS) { + request->send(200); + } else { + request->send(404); + } +}); +``` + +### Path variable + +With path variable you can create a custom regex rule for a specific parameter in a route. +For example we want a `sensorId` parameter in a route rule to match only a integer. + +```cpp + server.on("^\\/sensor\\/([0-9]+)$", HTTP_GET, [] (AsyncWebServerRequest *request) { + String sensorId = request->pathArg(0); + }); +``` +*NOTE*: All regex patterns starts with `^` and ends with `$` + +To enable the `Path variable` support, you have to define the buildflag `-DASYNCWEBSERVER_REGEX`. + + +For Arduino IDE create/update `platform.local.txt`: + +`Windows`: C:\Users\(username)\AppData\Local\Arduino15\packages\\`{espxxxx}`\hardware\\`espxxxx`\\`{version}`\platform.local.txt + +`Linux`: ~/.arduino15/packages/`{espxxxx}`/hardware/`{espxxxx}`/`{version}`/platform.local.txt + +Add/Update the following line: +``` + compiler.cpp.extra_flags=-DDASYNCWEBSERVER_REGEX +``` + +For platformio modify `platformio.ini`: +```ini +[env:myboard] +build_flags = + -DASYNCWEBSERVER_REGEX +``` +*NOTE*: By enabling `ASYNCWEBSERVER_REGEX`, `` will be included. This will add an 100k to your binary. diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/_config.yml b/Software/src/lib/me-no-dev-ESPAsyncWebServer/_config.yml new file mode 100644 index 00000000..c4192631 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/_config.yml @@ -0,0 +1 @@ +theme: jekyll-theme-cayman \ No newline at end of file diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/component.mk b/Software/src/lib/me-no-dev-ESPAsyncWebServer/component.mk new file mode 100644 index 00000000..bb5bb161 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/component.mk @@ -0,0 +1,3 @@ +COMPONENT_ADD_INCLUDEDIRS := src +COMPONENT_SRCDIRS := src +CXXFLAGS += -fno-rtti diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/CaptivePortal/CaptivePortal.ino b/Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/CaptivePortal/CaptivePortal.ino new file mode 100644 index 00000000..f97f142a --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/CaptivePortal/CaptivePortal.ino @@ -0,0 +1,47 @@ +#include +#ifdef ESP32 +#include +#include +#elif defined(ESP8266) +#include +#include +#endif +#include "ESPAsyncWebServer.h" + +DNSServer dnsServer; +AsyncWebServer server(80); + +class CaptiveRequestHandler : public AsyncWebHandler { +public: + CaptiveRequestHandler() {} + virtual ~CaptiveRequestHandler() {} + + bool canHandle(AsyncWebServerRequest *request){ + //request->addInterestingHeader("ANY"); + return true; + } + + void handleRequest(AsyncWebServerRequest *request) { + AsyncResponseStream *response = request->beginResponseStream("text/html"); + response->print("Captive Portal"); + response->print("

This is out captive portal front page.

"); + response->printf("

You were trying to reach: http://%s%s

", request->host().c_str(), request->url().c_str()); + response->printf("

Try opening this link instead

", WiFi.softAPIP().toString().c_str()); + response->print(""); + request->send(response); + } +}; + + +void setup(){ + //your other setup stuff... + WiFi.softAP("esp-captive"); + dnsServer.start(53, "*", WiFi.softAPIP()); + server.addHandler(new CaptiveRequestHandler()).setFilter(ON_AP_FILTER);//only when requested from AP + //more handlers... + server.begin(); +} + +void loop(){ + dnsServer.processNextRequest(); +} diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/ESP_AsyncFSBrowser.ino b/Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/ESP_AsyncFSBrowser.ino new file mode 100644 index 00000000..bf42d003 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/ESP_AsyncFSBrowser.ino @@ -0,0 +1,221 @@ +#include +#ifdef ESP32 +#include +#include +#include +#include +#include +#elif defined(ESP8266) +#include +#include +#include +#endif +#include +#include + +// SKETCH BEGIN +AsyncWebServer server(80); +AsyncWebSocket ws("/ws"); +AsyncEventSource events("/events"); + +void onWsEvent(AsyncWebSocket * server, AsyncWebSocketClient * client, AwsEventType type, void * arg, uint8_t *data, size_t len){ + if(type == WS_EVT_CONNECT){ + Serial.printf("ws[%s][%u] connect\n", server->url(), client->id()); + client->printf("Hello Client %u :)", client->id()); + client->ping(); + } else if(type == WS_EVT_DISCONNECT){ + Serial.printf("ws[%s][%u] disconnect\n", server->url(), client->id()); + } else if(type == WS_EVT_ERROR){ + Serial.printf("ws[%s][%u] error(%u): %s\n", server->url(), client->id(), *((uint16_t*)arg), (char*)data); + } else if(type == WS_EVT_PONG){ + Serial.printf("ws[%s][%u] pong[%u]: %s\n", server->url(), client->id(), len, (len)?(char*)data:""); + } else if(type == WS_EVT_DATA){ + AwsFrameInfo * info = (AwsFrameInfo*)arg; + String msg = ""; + if(info->final && info->index == 0 && info->len == len){ + //the whole message is in a single frame and we got all of it's data + Serial.printf("ws[%s][%u] %s-message[%llu]: ", server->url(), client->id(), (info->opcode == WS_TEXT)?"text":"binary", info->len); + + if(info->opcode == WS_TEXT){ + for(size_t i=0; i < info->len; i++) { + msg += (char) data[i]; + } + } else { + char buff[3]; + for(size_t i=0; i < info->len; i++) { + sprintf(buff, "%02x ", (uint8_t) data[i]); + msg += buff ; + } + } + Serial.printf("%s\n",msg.c_str()); + + if(info->opcode == WS_TEXT) + client->text("I got your text message"); + else + client->binary("I got your binary message"); + } else { + //message is comprised of multiple frames or the frame is split into multiple packets + if(info->index == 0){ + if(info->num == 0) + Serial.printf("ws[%s][%u] %s-message start\n", server->url(), client->id(), (info->message_opcode == WS_TEXT)?"text":"binary"); + Serial.printf("ws[%s][%u] frame[%u] start[%llu]\n", server->url(), client->id(), info->num, info->len); + } + + Serial.printf("ws[%s][%u] frame[%u] %s[%llu - %llu]: ", server->url(), client->id(), info->num, (info->message_opcode == WS_TEXT)?"text":"binary", info->index, info->index + len); + + if(info->opcode == WS_TEXT){ + for(size_t i=0; i < len; i++) { + msg += (char) data[i]; + } + } else { + char buff[3]; + for(size_t i=0; i < len; i++) { + sprintf(buff, "%02x ", (uint8_t) data[i]); + msg += buff ; + } + } + Serial.printf("%s\n",msg.c_str()); + + if((info->index + len) == info->len){ + Serial.printf("ws[%s][%u] frame[%u] end[%llu]\n", server->url(), client->id(), info->num, info->len); + if(info->final){ + Serial.printf("ws[%s][%u] %s-message end\n", server->url(), client->id(), (info->message_opcode == WS_TEXT)?"text":"binary"); + if(info->message_opcode == WS_TEXT) + client->text("I got your text message"); + else + client->binary("I got your binary message"); + } + } + } + } +} + + +const char* ssid = "*******"; +const char* password = "*******"; +const char * hostName = "esp-async"; +const char* http_username = "admin"; +const char* http_password = "admin"; + +void setup(){ + Serial.begin(115200); + Serial.setDebugOutput(true); + WiFi.mode(WIFI_AP_STA); + WiFi.softAP(hostName); + WiFi.begin(ssid, password); + if (WiFi.waitForConnectResult() != WL_CONNECTED) { + Serial.printf("STA: Failed!\n"); + WiFi.disconnect(false); + delay(1000); + WiFi.begin(ssid, password); + } + + //Send OTA events to the browser + ArduinoOTA.onStart([]() { events.send("Update Start", "ota"); }); + ArduinoOTA.onEnd([]() { events.send("Update End", "ota"); }); + ArduinoOTA.onProgress([](unsigned int progress, unsigned int total) { + char p[32]; + sprintf(p, "Progress: %u%%\n", (progress/(total/100))); + events.send(p, "ota"); + }); + ArduinoOTA.onError([](ota_error_t error) { + if(error == OTA_AUTH_ERROR) events.send("Auth Failed", "ota"); + else if(error == OTA_BEGIN_ERROR) events.send("Begin Failed", "ota"); + else if(error == OTA_CONNECT_ERROR) events.send("Connect Failed", "ota"); + else if(error == OTA_RECEIVE_ERROR) events.send("Recieve Failed", "ota"); + else if(error == OTA_END_ERROR) events.send("End Failed", "ota"); + }); + ArduinoOTA.setHostname(hostName); + ArduinoOTA.begin(); + + MDNS.addService("http","tcp",80); + + SPIFFS.begin(); + + ws.onEvent(onWsEvent); + server.addHandler(&ws); + + events.onConnect([](AsyncEventSourceClient *client){ + client->send("hello!",NULL,millis(),1000); + }); + server.addHandler(&events); + +#ifdef ESP32 + server.addHandler(new SPIFFSEditor(SPIFFS, http_username,http_password)); +#elif defined(ESP8266) + server.addHandler(new SPIFFSEditor(http_username,http_password)); +#endif + + server.on("/heap", HTTP_GET, [](AsyncWebServerRequest *request){ + request->send(200, "text/plain", String(ESP.getFreeHeap())); + }); + + server.serveStatic("/", SPIFFS, "/").setDefaultFile("index.htm"); + + server.onNotFound([](AsyncWebServerRequest *request){ + Serial.printf("NOT_FOUND: "); + if(request->method() == HTTP_GET) + Serial.printf("GET"); + else if(request->method() == HTTP_POST) + Serial.printf("POST"); + else if(request->method() == HTTP_DELETE) + Serial.printf("DELETE"); + else if(request->method() == HTTP_PUT) + Serial.printf("PUT"); + else if(request->method() == HTTP_PATCH) + Serial.printf("PATCH"); + else if(request->method() == HTTP_HEAD) + Serial.printf("HEAD"); + else if(request->method() == HTTP_OPTIONS) + Serial.printf("OPTIONS"); + else + Serial.printf("UNKNOWN"); + Serial.printf(" http://%s%s\n", request->host().c_str(), request->url().c_str()); + + if(request->contentLength()){ + Serial.printf("_CONTENT_TYPE: %s\n", request->contentType().c_str()); + Serial.printf("_CONTENT_LENGTH: %u\n", request->contentLength()); + } + + int headers = request->headers(); + int i; + for(i=0;igetHeader(i); + Serial.printf("_HEADER[%s]: %s\n", h->name().c_str(), h->value().c_str()); + } + + int params = request->params(); + for(i=0;igetParam(i); + if(p->isFile()){ + Serial.printf("_FILE[%s]: %s, size: %u\n", p->name().c_str(), p->value().c_str(), p->size()); + } else if(p->isPost()){ + Serial.printf("_POST[%s]: %s\n", p->name().c_str(), p->value().c_str()); + } else { + Serial.printf("_GET[%s]: %s\n", p->name().c_str(), p->value().c_str()); + } + } + + request->send(404); + }); + server.onFileUpload([](AsyncWebServerRequest *request, const String& filename, size_t index, uint8_t *data, size_t len, bool final){ + if(!index) + Serial.printf("UploadStart: %s\n", filename.c_str()); + Serial.printf("%s", (const char*)data); + if(final) + Serial.printf("UploadEnd: %s (%u)\n", filename.c_str(), index+len); + }); + server.onRequestBody([](AsyncWebServerRequest *request, uint8_t *data, size_t len, size_t index, size_t total){ + if(!index) + Serial.printf("BodyStart: %u\n", total); + Serial.printf("%s", (const char*)data); + if(index + len == total) + Serial.printf("BodyEnd: %u\n", total); + }); + server.begin(); +} + +void loop(){ + ArduinoOTA.handle(); + ws.cleanupClients(); +} diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/data/.exclude.files b/Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/data/.exclude.files new file mode 100644 index 00000000..955397fa --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/data/.exclude.files @@ -0,0 +1,2 @@ +/*.js.gz +/.exclude.files diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/data/ace.js.gz b/Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/data/ace.js.gz new file mode 100644 index 0000000000000000000000000000000000000000..7b175c1c92c541999766de1f36c1e7141f0f7236 GIT binary patch literal 98943 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 literal 0 HcmV?d00001 diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/data/ext-searchbox.js.gz b/Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/data/ext-searchbox.js.gz new file mode 100644 index 0000000000000000000000000000000000000000..cf5b49f6fb0b3b8817e05ddda3e55ca969d64fa8 GIT binary patch literal 3131 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 VGMhX(j|D9=`)`h{Z=Vz=005Io7cT$+ literal 0 HcmV?d00001 diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/data/favicon.ico b/Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/data/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..71b25fe6ee6012a4c26602977262d217af885520 GIT binary patch literal 1150 zcmd5)T}YZ?6n@3p3@y{hrv0dyWg4`Ks8LiSs1Zp~iZo)Ag)vw}5=AXod1FBkBZ8nH zm^Z-|?V=!w1lNUBASeXo@J`0^VlWvo2dii2d%G#v{l>?6f6jZJbDr~@k1-K_xw(v1 z9ebI0x7Iqot*#Mb_8XCpMW( zReHVNRa#m)qtR%dYqeVa%E}7s=;*k^yt%pgaZOFlCyT}Mt)ikLSyomSAdHVNiTwQh zYlT9AoSdAi?Ck6_l}cqxrBb4{wllAZC#W|h5(!LCPa_ZrfO4a^w-*$T#l=O$<8hpvoWSq* zr+q%3e_~?7OnSW+IMa^f<71qjo??H0AF)^rR;v~3>+77){QNxD*47Y-M377-5sgNF zZ*FeBB8@*378YW1auP>JN7&xpMmQYC!NCEBhljDWw8S}YZEay}Y>emI+uIY~)4^cy z8F70`_|(9_00svKF*G!U(a}+OJRTk|_-LM-)6~=yc6N5SQH{@((@6bGii?Y1E0xNx zGMVg3&{-mpfX*l>DM4Lb9lE=_xgNW_yPVhI;UPky&|8{|m^5NE!wk}(ie_b}IlBq} zMVOVKdwqR9$B&PX3*3JY_m9Nk&GPc{gN==iJO5F2bv2uvofXmS?P|3;LfBta`3zy6F#O-#g&(F`<>gww4@PB>= d7!xdbpRqYH(Gg7acUp7g|4wmf`3*+E{Q*gMMA`rV literal 0 HcmV?d00001 diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/data/index.htm b/Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/data/index.htm new file mode 100644 index 00000000..28f47e99 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/data/index.htm @@ -0,0 +1,131 @@ + + + + + + WebSocketTester + + + + +

+    
+ $ +
+ + diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/data/mode-css.js.gz b/Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/data/mode-css.js.gz new file mode 100644 index 0000000000000000000000000000000000000000..ebd6fe940ab29aff1fe3b9687ea65eb4a4f83e4d GIT binary patch literal 6102 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 literal 0 HcmV?d00001 diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/data/mode-javascript.js.gz b/Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/ESP_AsyncFSBrowser/data/mode-javascript.js.gz new file mode 100644 index 0000000000000000000000000000000000000000..c0451c1c5dbe7eb3d41d2a4e0e7946b38e26b47d GIT binary patch literal 6315 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 Z!^aCRntfb +#ifdef ESP32 +#include +#include +#elif defined(ESP8266) +#include +#include +#endif +#include + +AsyncWebServer server(80); + +const char* ssid = "YOUR_SSID"; +const char* password = "YOUR_PASSWORD"; + +const char* PARAM_MESSAGE = "message"; + +void notFound(AsyncWebServerRequest *request) { + request->send(404, "text/plain", "Not found"); +} + +void setup() { + + Serial.begin(115200); + WiFi.mode(WIFI_STA); + WiFi.begin(ssid, password); + if (WiFi.waitForConnectResult() != WL_CONNECTED) { + Serial.printf("WiFi Failed!\n"); + return; + } + + Serial.print("IP Address: "); + Serial.println(WiFi.localIP()); + + server.on("/", HTTP_GET, [](AsyncWebServerRequest *request){ + request->send(200, "text/plain", "Hello, world"); + }); + + // Send a GET request to /sensor/ + server.on("^\\/sensor\\/([0-9]+)$", HTTP_GET, [] (AsyncWebServerRequest *request) { + String sensorNumber = request->pathArg(0); + request->send(200, "text/plain", "Hello, sensor: " + sensorNumber); + }); + + // Send a GET request to /sensor//action/ + server.on("^\\/sensor\\/([0-9]+)\\/action\\/([a-zA-Z0-9]+)$", HTTP_GET, [] (AsyncWebServerRequest *request) { + String sensorNumber = request->pathArg(0); + String action = request->pathArg(1); + request->send(200, "text/plain", "Hello, sensor: " + sensorNumber + ", with action: " + action); + }); + + server.onNotFound(notFound); + + server.begin(); +} + +void loop() { +} diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/simple_server/simple_server.ino b/Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/simple_server/simple_server.ino new file mode 100644 index 00000000..bdbcf60d --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/examples/simple_server/simple_server.ino @@ -0,0 +1,74 @@ +// +// A simple server implementation showing how to: +// * serve static messages +// * read GET and POST parameters +// * handle missing pages / 404s +// + +#include +#ifdef ESP32 +#include +#include +#elif defined(ESP8266) +#include +#include +#endif +#include + +AsyncWebServer server(80); + +const char* ssid = "YOUR_SSID"; +const char* password = "YOUR_PASSWORD"; + +const char* PARAM_MESSAGE = "message"; + +void notFound(AsyncWebServerRequest *request) { + request->send(404, "text/plain", "Not found"); +} + +void setup() { + + Serial.begin(115200); + WiFi.mode(WIFI_STA); + WiFi.begin(ssid, password); + if (WiFi.waitForConnectResult() != WL_CONNECTED) { + Serial.printf("WiFi Failed!\n"); + return; + } + + Serial.print("IP Address: "); + Serial.println(WiFi.localIP()); + + server.on("/", HTTP_GET, [](AsyncWebServerRequest *request){ + request->send(200, "text/plain", "Hello, world"); + }); + + // Send a GET request to /get?message= + server.on("/get", HTTP_GET, [] (AsyncWebServerRequest *request) { + String message; + if (request->hasParam(PARAM_MESSAGE)) { + message = request->getParam(PARAM_MESSAGE)->value(); + } else { + message = "No message sent"; + } + request->send(200, "text/plain", "Hello, GET: " + message); + }); + + // Send a POST request to /post with a form field message set to + server.on("/post", HTTP_POST, [](AsyncWebServerRequest *request){ + String message; + if (request->hasParam(PARAM_MESSAGE, true)) { + message = request->getParam(PARAM_MESSAGE, true)->value(); + } else { + message = "No message sent"; + } + request->send(200, "text/plain", "Hello, POST: " + message); + }); + + server.onNotFound(notFound); + + server.begin(); +} + +void loop() { +} \ No newline at end of file diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/keywords.txt b/Software/src/lib/me-no-dev-ESPAsyncWebServer/keywords.txt new file mode 100755 index 00000000..c391e6c4 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/keywords.txt @@ -0,0 +1,3 @@ +JsonArray KEYWORD1 +add KEYWORD2 +createArray KEYWORD3 diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/library.json b/Software/src/lib/me-no-dev-ESPAsyncWebServer/library.json new file mode 100644 index 00000000..750ca28d --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/library.json @@ -0,0 +1,37 @@ +{ + "name":"ESP Async WebServer", + "description":"Asynchronous HTTP and WebSocket Server Library for ESP8266 and ESP32", + "keywords":"http,async,websocket,webserver", + "authors": + { + "name": "Hristo Gochkov", + "maintainer": true + }, + "repository": + { + "type": "git", + "url": "https://github.com/me-no-dev/ESPAsyncWebServer.git" + }, + "version": "1.2.3", + "license": "LGPL-3.0", + "frameworks": "arduino", + "platforms": ["espressif8266", "espressif32"], + "dependencies": [ + { + "owner": "me-no-dev", + "name": "ESPAsyncTCP", + "version": "^1.2.2", + "platforms": "espressif8266" + }, + { + "owner": "me-no-dev", + "name": "AsyncTCP", + "version": "^1.1.1", + "platforms": "espressif32" + }, + { + "name": "Hash", + "platforms": "espressif8266" + } + ] +} diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/library.properties b/Software/src/lib/me-no-dev-ESPAsyncWebServer/library.properties new file mode 100644 index 00000000..401b0417 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/library.properties @@ -0,0 +1,9 @@ +name=ESP Async WebServer +version=1.2.3 +author=Me-No-Dev +maintainer=Me-No-Dev +sentence=Async Web Server for ESP8266 and ESP31B +paragraph=Async Web Server for ESP8266 and ESP31B +category=Other +url=https://github.com/me-no-dev/ESPAsyncWebServer +architectures=* diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncEventSource.cpp b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncEventSource.cpp new file mode 100644 index 00000000..f2914df5 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncEventSource.cpp @@ -0,0 +1,368 @@ +/* + Asynchronous WebServer library for Espressif MCUs + + Copyright (c) 2016 Hristo Gochkov. All rights reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ +#include "Arduino.h" +#include "AsyncEventSource.h" + +static String generateEventMessage(const char *message, const char *event, uint32_t id, uint32_t reconnect){ + String ev = ""; + + if(reconnect){ + ev += "retry: "; + ev += String(reconnect); + ev += "\r\n"; + } + + if(id){ + ev += "id: "; + ev += String(id); + ev += "\r\n"; + } + + if(event != NULL){ + ev += "event: "; + ev += String(event); + ev += "\r\n"; + } + + if(message != NULL){ + size_t messageLen = strlen(message); + char * lineStart = (char *)message; + char * lineEnd; + do { + char * nextN = strchr(lineStart, '\n'); + char * nextR = strchr(lineStart, '\r'); + if(nextN == NULL && nextR == NULL){ + size_t llen = ((char *)message + messageLen) - lineStart; + char * ldata = (char *)malloc(llen+1); + if(ldata != NULL){ + memcpy(ldata, lineStart, llen); + ldata[llen] = 0; + ev += "data: "; + ev += ldata; + ev += "\r\n\r\n"; + free(ldata); + } + lineStart = (char *)message + messageLen; + } else { + char * nextLine = NULL; + if(nextN != NULL && nextR != NULL){ + if(nextR < nextN){ + lineEnd = nextR; + if(nextN == (nextR + 1)) + nextLine = nextN + 1; + else + nextLine = nextR + 1; + } else { + lineEnd = nextN; + if(nextR == (nextN + 1)) + nextLine = nextR + 1; + else + nextLine = nextN + 1; + } + } else if(nextN != NULL){ + lineEnd = nextN; + nextLine = nextN + 1; + } else { + lineEnd = nextR; + nextLine = nextR + 1; + } + + size_t llen = lineEnd - lineStart; + char * ldata = (char *)malloc(llen+1); + if(ldata != NULL){ + memcpy(ldata, lineStart, llen); + ldata[llen] = 0; + ev += "data: "; + ev += ldata; + ev += "\r\n"; + free(ldata); + } + lineStart = nextLine; + if(lineStart == ((char *)message + messageLen)) + ev += "\r\n"; + } + } while(lineStart < ((char *)message + messageLen)); + } + + return ev; +} + +// Message + +AsyncEventSourceMessage::AsyncEventSourceMessage(const char * data, size_t len) +: _data(nullptr), _len(len), _sent(0), _acked(0) +{ + _data = (uint8_t*)malloc(_len+1); + if(_data == nullptr){ + _len = 0; + } else { + memcpy(_data, data, len); + _data[_len] = 0; + } +} + +AsyncEventSourceMessage::~AsyncEventSourceMessage() { + if(_data != NULL) + free(_data); +} + +size_t AsyncEventSourceMessage::ack(size_t len, uint32_t time) { + (void)time; + // If the whole message is now acked... + if(_acked + len > _len){ + // Return the number of extra bytes acked (they will be carried on to the next message) + const size_t extra = _acked + len - _len; + _acked = _len; + return extra; + } + // Return that no extra bytes left. + _acked += len; + return 0; +} + +size_t AsyncEventSourceMessage::send(AsyncClient *client) { + const size_t len = _len - _sent; + if(client->space() < len){ + return 0; + } + size_t sent = client->add((const char *)_data, len); + if(client->canSend()) + client->send(); + _sent += sent; + return sent; +} + +// Client + +AsyncEventSourceClient::AsyncEventSourceClient(AsyncWebServerRequest *request, AsyncEventSource *server) +: _messageQueue(LinkedList([](AsyncEventSourceMessage *m){ delete m; })) +{ + _client = request->client(); + _server = server; + _lastId = 0; + if(request->hasHeader("Last-Event-ID")) + _lastId = atoi(request->getHeader("Last-Event-ID")->value().c_str()); + + _client->setRxTimeout(0); + _client->onError(NULL, NULL); + _client->onAck([](void *r, AsyncClient* c, size_t len, uint32_t time){ (void)c; ((AsyncEventSourceClient*)(r))->_onAck(len, time); }, this); + _client->onPoll([](void *r, AsyncClient* c){ (void)c; ((AsyncEventSourceClient*)(r))->_onPoll(); }, this); + _client->onData(NULL, NULL); + _client->onTimeout([this](void *r, AsyncClient* c __attribute__((unused)), uint32_t time){ ((AsyncEventSourceClient*)(r))->_onTimeout(time); }, this); + _client->onDisconnect([this](void *r, AsyncClient* c){ ((AsyncEventSourceClient*)(r))->_onDisconnect(); delete c; }, this); + + _server->_addClient(this); + delete request; +} + +AsyncEventSourceClient::~AsyncEventSourceClient(){ + _messageQueue.free(); + close(); +} + +void AsyncEventSourceClient::_queueMessage(AsyncEventSourceMessage *dataMessage){ + if(dataMessage == NULL) + return; + if(!connected()){ + delete dataMessage; + return; + } + if(_messageQueue.length() >= SSE_MAX_QUEUED_MESSAGES){ + ets_printf("ERROR: Too many messages queued\n"); + delete dataMessage; + } else { + _messageQueue.add(dataMessage); + } + if(_client->canSend()) + _runQueue(); +} + +void AsyncEventSourceClient::_onAck(size_t len, uint32_t time){ + while(len && !_messageQueue.isEmpty()){ + len = _messageQueue.front()->ack(len, time); + if(_messageQueue.front()->finished()) + _messageQueue.remove(_messageQueue.front()); + } + + _runQueue(); +} + +void AsyncEventSourceClient::_onPoll(){ + if(!_messageQueue.isEmpty()){ + _runQueue(); + } +} + + +void AsyncEventSourceClient::_onTimeout(uint32_t time __attribute__((unused))){ + _client->close(true); +} + +void AsyncEventSourceClient::_onDisconnect(){ + _client = NULL; + _server->_handleDisconnect(this); +} + +void AsyncEventSourceClient::close(){ + if(_client != NULL) + _client->close(); +} + +void AsyncEventSourceClient::write(const char * message, size_t len){ + _queueMessage(new AsyncEventSourceMessage(message, len)); +} + +void AsyncEventSourceClient::send(const char *message, const char *event, uint32_t id, uint32_t reconnect){ + String ev = generateEventMessage(message, event, id, reconnect); + _queueMessage(new AsyncEventSourceMessage(ev.c_str(), ev.length())); +} + +void AsyncEventSourceClient::_runQueue(){ + while(!_messageQueue.isEmpty() && _messageQueue.front()->finished()){ + _messageQueue.remove(_messageQueue.front()); + } + + for(auto i = _messageQueue.begin(); i != _messageQueue.end(); ++i) + { + if(!(*i)->sent()) + (*i)->send(_client); + } +} + + +// Handler + +AsyncEventSource::AsyncEventSource(const String& url) + : _url(url) + , _clients(LinkedList([](AsyncEventSourceClient *c){ delete c; })) + , _connectcb(NULL) +{} + +AsyncEventSource::~AsyncEventSource(){ + close(); +} + +void AsyncEventSource::onConnect(ArEventHandlerFunction cb){ + _connectcb = cb; +} + +void AsyncEventSource::_addClient(AsyncEventSourceClient * client){ + /*char * temp = (char *)malloc(2054); + if(temp != NULL){ + memset(temp+1,' ',2048); + temp[0] = ':'; + temp[2049] = '\r'; + temp[2050] = '\n'; + temp[2051] = '\r'; + temp[2052] = '\n'; + temp[2053] = 0; + client->write((const char *)temp, 2053); + free(temp); + }*/ + + _clients.add(client); + if(_connectcb) + _connectcb(client); +} + +void AsyncEventSource::_handleDisconnect(AsyncEventSourceClient * client){ + _clients.remove(client); +} + +void AsyncEventSource::close(){ + for(const auto &c: _clients){ + if(c->connected()) + c->close(); + } +} + +// pmb fix +size_t AsyncEventSource::avgPacketsWaiting() const { + if(_clients.isEmpty()) + return 0; + + size_t aql=0; + uint32_t nConnectedClients=0; + + for(const auto &c: _clients){ + if(c->connected()) { + aql+=c->packetsWaiting(); + ++nConnectedClients; + } + } +// return aql / nConnectedClients; + return ((aql) + (nConnectedClients/2))/(nConnectedClients); // round up +} + +void AsyncEventSource::send(const char *message, const char *event, uint32_t id, uint32_t reconnect){ + + + String ev = generateEventMessage(message, event, id, reconnect); + for(const auto &c: _clients){ + if(c->connected()) { + c->write(ev.c_str(), ev.length()); + } + } +} + +size_t AsyncEventSource::count() const { + return _clients.count_if([](AsyncEventSourceClient *c){ + return c->connected(); + }); +} + +bool AsyncEventSource::canHandle(AsyncWebServerRequest *request){ + if(request->method() != HTTP_GET || !request->url().equals(_url)) { + return false; + } + request->addInterestingHeader("Last-Event-ID"); + return true; +} + +void AsyncEventSource::handleRequest(AsyncWebServerRequest *request){ + if((_username != "" && _password != "") && !request->authenticate(_username.c_str(), _password.c_str())) + return request->requestAuthentication(); + request->send(new AsyncEventSourceResponse(this)); +} + +// Response + +AsyncEventSourceResponse::AsyncEventSourceResponse(AsyncEventSource *server){ + _server = server; + _code = 200; + _contentType = "text/event-stream"; + _sendContentLength = false; + addHeader("Cache-Control", "no-cache"); + addHeader("Connection","keep-alive"); +} + +void AsyncEventSourceResponse::_respond(AsyncWebServerRequest *request){ + String out = _assembleHead(request->version()); + request->client()->write(out.c_str(), _headLength); + _state = RESPONSE_WAIT_ACK; +} + +size_t AsyncEventSourceResponse::_ack(AsyncWebServerRequest *request, size_t len, uint32_t time __attribute__((unused))){ + if(len){ + new AsyncEventSourceClient(request, _server); + } + return 0; +} + diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncEventSource.h b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncEventSource.h new file mode 100644 index 00000000..b097fa62 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncEventSource.h @@ -0,0 +1,133 @@ +/* + Asynchronous WebServer library for Espressif MCUs + + Copyright (c) 2016 Hristo Gochkov. All rights reserved. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ +#ifndef ASYNCEVENTSOURCE_H_ +#define ASYNCEVENTSOURCE_H_ + +#include +#ifdef ESP32 +#include +#define SSE_MAX_QUEUED_MESSAGES 32 +#else +#include +#define SSE_MAX_QUEUED_MESSAGES 8 +#endif +#include + +#include "AsyncWebSynchronization.h" + +#ifdef ESP8266 +#include +#ifdef CRYPTO_HASH_h // include Hash.h from espressif framework if the first include was from the crypto library +#include <../src/Hash.h> +#endif +#endif + +#ifdef ESP32 +#define DEFAULT_MAX_SSE_CLIENTS 8 +#else +#define DEFAULT_MAX_SSE_CLIENTS 4 +#endif + +class AsyncEventSource; +class AsyncEventSourceResponse; +class AsyncEventSourceClient; +typedef std::function ArEventHandlerFunction; + +class AsyncEventSourceMessage { + private: + uint8_t * _data; + size_t _len; + size_t _sent; + //size_t _ack; + size_t _acked; + public: + AsyncEventSourceMessage(const char * data, size_t len); + ~AsyncEventSourceMessage(); + size_t ack(size_t len, uint32_t time __attribute__((unused))); + size_t send(AsyncClient *client); + bool finished(){ return _acked == _len; } + bool sent() { return _sent == _len; } +}; + +class AsyncEventSourceClient { + private: + AsyncClient *_client; + AsyncEventSource *_server; + uint32_t _lastId; + LinkedList _messageQueue; + void _queueMessage(AsyncEventSourceMessage *dataMessage); + void _runQueue(); + + public: + + AsyncEventSourceClient(AsyncWebServerRequest *request, AsyncEventSource *server); + ~AsyncEventSourceClient(); + + AsyncClient* client(){ return _client; } + void close(); + void write(const char * message, size_t len); + void send(const char *message, const char *event=NULL, uint32_t id=0, uint32_t reconnect=0); + bool connected() const { return (_client != NULL) && _client->connected(); } + uint32_t lastId() const { return _lastId; } + size_t packetsWaiting() const { return _messageQueue.length(); } + + //system callbacks (do not call) + void _onAck(size_t len, uint32_t time); + void _onPoll(); + void _onTimeout(uint32_t time); + void _onDisconnect(); +}; + +class AsyncEventSource: public AsyncWebHandler { + private: + String _url; + LinkedList _clients; + ArEventHandlerFunction _connectcb; + public: + AsyncEventSource(const String& url); + ~AsyncEventSource(); + + const char * url() const { return _url.c_str(); } + void close(); + void onConnect(ArEventHandlerFunction cb); + void send(const char *message, const char *event=NULL, uint32_t id=0, uint32_t reconnect=0); + size_t count() const; //number clinets connected + size_t avgPacketsWaiting() const; + + //system callbacks (do not call) + void _addClient(AsyncEventSourceClient * client); + void _handleDisconnect(AsyncEventSourceClient * client); + virtual bool canHandle(AsyncWebServerRequest *request) override final; + virtual void handleRequest(AsyncWebServerRequest *request) override final; +}; + +class AsyncEventSourceResponse: public AsyncWebServerResponse { + private: + String _content; + AsyncEventSource *_server; + public: + AsyncEventSourceResponse(AsyncEventSource *server); + void _respond(AsyncWebServerRequest *request); + size_t _ack(AsyncWebServerRequest *request, size_t len, uint32_t time); + bool _sourceValid() const { return true; } +}; + + +#endif /* ASYNCEVENTSOURCE_H_ */ diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncJson.h b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncJson.h new file mode 100644 index 00000000..2fa6a2d2 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncJson.h @@ -0,0 +1,254 @@ +// AsyncJson.h +/* + Async Response to use with ArduinoJson and AsyncWebServer + Written by Andrew Melvin (SticilFace) with help from me-no-dev and BBlanchon. + + Example of callback in use + + server.on("/json", HTTP_ANY, [](AsyncWebServerRequest * request) { + + AsyncJsonResponse * response = new AsyncJsonResponse(); + JsonObject& root = response->getRoot(); + root["key1"] = "key number one"; + JsonObject& nested = root.createNestedObject("nested"); + nested["key1"] = "key number one"; + + response->setLength(); + request->send(response); + }); + + -------------------- + + Async Request to use with ArduinoJson and AsyncWebServer + Written by Arsène von Wyss (avonwyss) + + Example + + AsyncCallbackJsonWebHandler* handler = new AsyncCallbackJsonWebHandler("/rest/endpoint"); + handler->onRequest([](AsyncWebServerRequest *request, JsonVariant &json) { + JsonObject& jsonObj = json.as(); + // ... + }); + server.addHandler(handler); + +*/ +#ifndef ASYNC_JSON_H_ +#define ASYNC_JSON_H_ +#include +#include +#include + +#if ARDUINOJSON_VERSION_MAJOR == 5 + #define ARDUINOJSON_5_COMPATIBILITY +#else + #ifndef DYNAMIC_JSON_DOCUMENT_SIZE + #define DYNAMIC_JSON_DOCUMENT_SIZE 1024 + #endif +#endif + +constexpr const char* JSON_MIMETYPE = "application/json"; + +/* + * Json Response + * */ + +class ChunkPrint : public Print { + private: + uint8_t* _destination; + size_t _to_skip; + size_t _to_write; + size_t _pos; + public: + ChunkPrint(uint8_t* destination, size_t from, size_t len) + : _destination(destination), _to_skip(from), _to_write(len), _pos{0} {} + virtual ~ChunkPrint(){} + size_t write(uint8_t c){ + if (_to_skip > 0) { + _to_skip--; + return 1; + } else if (_to_write > 0) { + _to_write--; + _destination[_pos++] = c; + return 1; + } + return 0; + } + size_t write(const uint8_t *buffer, size_t size) + { + return this->Print::write(buffer, size); + } +}; + +class AsyncJsonResponse: public AsyncAbstractResponse { + protected: + +#ifdef ARDUINOJSON_5_COMPATIBILITY + DynamicJsonBuffer _jsonBuffer; +#else + DynamicJsonDocument _jsonBuffer; +#endif + + JsonVariant _root; + bool _isValid; + + public: + +#ifdef ARDUINOJSON_5_COMPATIBILITY + AsyncJsonResponse(bool isArray=false): _isValid{false} { + _code = 200; + _contentType = JSON_MIMETYPE; + if(isArray) + _root = _jsonBuffer.createArray(); + else + _root = _jsonBuffer.createObject(); + } +#else + AsyncJsonResponse(bool isArray=false, size_t maxJsonBufferSize = DYNAMIC_JSON_DOCUMENT_SIZE) : _jsonBuffer(maxJsonBufferSize), _isValid{false} { + _code = 200; + _contentType = JSON_MIMETYPE; + if(isArray) + _root = _jsonBuffer.createNestedArray(); + else + _root = _jsonBuffer.createNestedObject(); + } +#endif + + ~AsyncJsonResponse() {} + JsonVariant & getRoot() { return _root; } + bool _sourceValid() const { return _isValid; } + size_t setLength() { + +#ifdef ARDUINOJSON_5_COMPATIBILITY + _contentLength = _root.measureLength(); +#else + _contentLength = measureJson(_root); +#endif + + if (_contentLength) { _isValid = true; } + return _contentLength; + } + + size_t getSize() { return _jsonBuffer.size(); } + + size_t _fillBuffer(uint8_t *data, size_t len){ + ChunkPrint dest(data, _sentLength, len); + +#ifdef ARDUINOJSON_5_COMPATIBILITY + _root.printTo( dest ) ; +#else + serializeJson(_root, dest); +#endif + return len; + } +}; + +class PrettyAsyncJsonResponse: public AsyncJsonResponse { +public: +#ifdef ARDUINOJSON_5_COMPATIBILITY + PrettyAsyncJsonResponse (bool isArray=false) : AsyncJsonResponse{isArray} {} +#else + PrettyAsyncJsonResponse (bool isArray=false, size_t maxJsonBufferSize = DYNAMIC_JSON_DOCUMENT_SIZE) : AsyncJsonResponse{isArray, maxJsonBufferSize} {} +#endif + size_t setLength () { +#ifdef ARDUINOJSON_5_COMPATIBILITY + _contentLength = _root.measurePrettyLength (); +#else + _contentLength = measureJsonPretty(_root); +#endif + if (_contentLength) {_isValid = true;} + return _contentLength; + } + size_t _fillBuffer (uint8_t *data, size_t len) { + ChunkPrint dest (data, _sentLength, len); +#ifdef ARDUINOJSON_5_COMPATIBILITY + _root.prettyPrintTo (dest); +#else + serializeJsonPretty(_root, dest); +#endif + return len; + } +}; + +typedef std::function ArJsonRequestHandlerFunction; + +class AsyncCallbackJsonWebHandler: public AsyncWebHandler { +private: +protected: + const String _uri; + WebRequestMethodComposite _method; + ArJsonRequestHandlerFunction _onRequest; + size_t _contentLength; +#ifndef ARDUINOJSON_5_COMPATIBILITY + const size_t maxJsonBufferSize; +#endif + size_t _maxContentLength; +public: +#ifdef ARDUINOJSON_5_COMPATIBILITY + AsyncCallbackJsonWebHandler(const String& uri, ArJsonRequestHandlerFunction onRequest) + : _uri(uri), _method(HTTP_POST|HTTP_PUT|HTTP_PATCH), _onRequest(onRequest), _maxContentLength(16384) {} +#else + AsyncCallbackJsonWebHandler(const String& uri, ArJsonRequestHandlerFunction onRequest, size_t maxJsonBufferSize=DYNAMIC_JSON_DOCUMENT_SIZE) + : _uri(uri), _method(HTTP_POST|HTTP_PUT|HTTP_PATCH), _onRequest(onRequest), maxJsonBufferSize(maxJsonBufferSize), _maxContentLength(16384) {} +#endif + + void setMethod(WebRequestMethodComposite method){ _method = method; } + void setMaxContentLength(int maxContentLength){ _maxContentLength = maxContentLength; } + void onRequest(ArJsonRequestHandlerFunction fn){ _onRequest = fn; } + + virtual bool canHandle(AsyncWebServerRequest *request) override final{ + if(!_onRequest) + return false; + + if(!(_method & request->method())) + return false; + + if(_uri.length() && (_uri != request->url() && !request->url().startsWith(_uri+"/"))) + return false; + + if ( !request->contentType().equalsIgnoreCase(JSON_MIMETYPE) ) + return false; + + request->addInterestingHeader("ANY"); + return true; + } + + virtual void handleRequest(AsyncWebServerRequest *request) override final { + if(_onRequest) { + if (request->_tempObject != NULL) { + +#ifdef ARDUINOJSON_5_COMPATIBILITY + DynamicJsonBuffer jsonBuffer; + JsonVariant json = jsonBuffer.parse((uint8_t*)(request->_tempObject)); + if (json.success()) { +#else + DynamicJsonDocument jsonBuffer(this->maxJsonBufferSize); + DeserializationError error = deserializeJson(jsonBuffer, (uint8_t*)(request->_tempObject)); + if(!error) { + JsonVariant json = jsonBuffer.as(); +#endif + + _onRequest(request, json); + return; + } + } + request->send(_contentLength > _maxContentLength ? 413 : 400); + } else { + request->send(500); + } + } + virtual void handleUpload(AsyncWebServerRequest *request, const String& filename, size_t index, uint8_t *data, size_t len, bool final) override final { + } + virtual void handleBody(AsyncWebServerRequest *request, uint8_t *data, size_t len, size_t index, size_t total) override final { + if (_onRequest) { + _contentLength = total; + if (total > 0 && request->_tempObject == NULL && total < _maxContentLength) { + request->_tempObject = malloc(total); + } + if (request->_tempObject != NULL) { + memcpy((uint8_t*)(request->_tempObject) + index, data, len); + } + } + } + virtual bool isRequestHandlerTrivial() override final {return _onRequest ? false : true;} +}; +#endif diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncWebSocket.cpp b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncWebSocket.cpp new file mode 100644 index 00000000..f76f2fc9 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncWebSocket.cpp @@ -0,0 +1,1294 @@ +/* + Asynchronous WebServer library for Espressif MCUs + + Copyright (c) 2016 Hristo Gochkov. All rights reserved. + This file is part of the esp8266 core for Arduino environment. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ +#include "Arduino.h" +#include "AsyncWebSocket.h" + +#include + +#ifndef ESP8266 +#include "mbedtls/sha1.h" +#else +#include +#endif + +#define MAX_PRINTF_LEN 64 + +size_t webSocketSendFrameWindow(AsyncClient *client){ + if(!client->canSend()) + return 0; + size_t space = client->space(); + if(space < 9) + return 0; + return space - 8; +} + +size_t webSocketSendFrame(AsyncClient *client, bool final, uint8_t opcode, bool mask, uint8_t *data, size_t len){ + if(!client->canSend()) + return 0; + size_t space = client->space(); + if(space < 2) + return 0; + uint8_t mbuf[4] = {0,0,0,0}; + uint8_t headLen = 2; + if(len && mask){ + headLen += 4; + mbuf[0] = rand() % 0xFF; + mbuf[1] = rand() % 0xFF; + mbuf[2] = rand() % 0xFF; + mbuf[3] = rand() % 0xFF; + } + if(len > 125) + headLen += 2; + if(space < headLen) + return 0; + space -= headLen; + + if(len > space) len = space; + + uint8_t *buf = (uint8_t*)malloc(headLen); + if(buf == NULL){ + //os_printf("could not malloc %u bytes for frame header\n", headLen); + return 0; + } + + buf[0] = opcode & 0x0F; + if(final) + buf[0] |= 0x80; + if(len < 126) + buf[1] = len & 0x7F; + else { + buf[1] = 126; + buf[2] = (uint8_t)((len >> 8) & 0xFF); + buf[3] = (uint8_t)(len & 0xFF); + } + if(len && mask){ + buf[1] |= 0x80; + memcpy(buf + (headLen - 4), mbuf, 4); + } + if(client->add((const char *)buf, headLen) != headLen){ + //os_printf("error adding %lu header bytes\n", headLen); + free(buf); + return 0; + } + free(buf); + + if(len){ + if(len && mask){ + size_t i; + for(i=0;iadd((const char *)data, len) != len){ + //os_printf("error adding %lu data bytes\n", len); + return 0; + } + } + if(!client->send()){ + //os_printf("error sending frame: %lu\n", headLen+len); + return 0; + } + return len; +} + + +/* + * AsyncWebSocketMessageBuffer + */ + + + +AsyncWebSocketMessageBuffer::AsyncWebSocketMessageBuffer() + :_data(nullptr) + ,_len(0) + ,_lock(false) + ,_count(0) +{ + +} + +AsyncWebSocketMessageBuffer::AsyncWebSocketMessageBuffer(uint8_t * data, size_t size) + :_data(nullptr) + ,_len(size) + ,_lock(false) + ,_count(0) +{ + + if (!data) { + return; + } + + _data = new uint8_t[_len + 1]; + + if (_data) { + memcpy(_data, data, _len); + _data[_len] = 0; + } +} + + +AsyncWebSocketMessageBuffer::AsyncWebSocketMessageBuffer(size_t size) + :_data(nullptr) + ,_len(size) + ,_lock(false) + ,_count(0) +{ + _data = new uint8_t[_len + 1]; + + if (_data) { + _data[_len] = 0; + } + +} + +AsyncWebSocketMessageBuffer::AsyncWebSocketMessageBuffer(const AsyncWebSocketMessageBuffer & copy) + :_data(nullptr) + ,_len(0) + ,_lock(false) + ,_count(0) +{ + _len = copy._len; + _lock = copy._lock; + _count = 0; + + if (_len) { + _data = new uint8_t[_len + 1]; + _data[_len] = 0; + } + + if (_data) { + memcpy(_data, copy._data, _len); + _data[_len] = 0; + } + +} + +AsyncWebSocketMessageBuffer::AsyncWebSocketMessageBuffer(AsyncWebSocketMessageBuffer && copy) + :_data(nullptr) + ,_len(0) + ,_lock(false) + ,_count(0) +{ + _len = copy._len; + _lock = copy._lock; + _count = 0; + + if (copy._data) { + _data = copy._data; + copy._data = nullptr; + } + +} + +AsyncWebSocketMessageBuffer::~AsyncWebSocketMessageBuffer() +{ + if (_data) { + delete[] _data; + } +} + +bool AsyncWebSocketMessageBuffer::reserve(size_t size) +{ + _len = size; + + if (_data) { + delete[] _data; + _data = nullptr; + } + + _data = new uint8_t[_len + 1]; + + if (_data) { + _data[_len] = 0; + return true; + } else { + return false; + } + +} + + + +/* + * Control Frame + */ + +class AsyncWebSocketControl { + private: + uint8_t _opcode; + uint8_t *_data; + size_t _len; + bool _mask; + bool _finished; + public: + AsyncWebSocketControl(uint8_t opcode, uint8_t *data=NULL, size_t len=0, bool mask=false) + :_opcode(opcode) + ,_len(len) + ,_mask(len && mask) + ,_finished(false) + { + if(data == NULL) + _len = 0; + if(_len){ + if(_len > 125) + _len = 125; + _data = (uint8_t*)malloc(_len); + if(_data == NULL) + _len = 0; + else memcpy(_data, data, len); + } else _data = NULL; + } + virtual ~AsyncWebSocketControl(){ + if(_data != NULL) + free(_data); + } + virtual bool finished() const { return _finished; } + uint8_t opcode(){ return _opcode; } + uint8_t len(){ return _len + 2; } + size_t send(AsyncClient *client){ + _finished = true; + return webSocketSendFrame(client, true, _opcode & 0x0F, _mask, _data, _len); + } +}; + +/* + * Basic Buffered Message + */ + + +AsyncWebSocketBasicMessage::AsyncWebSocketBasicMessage(const char * data, size_t len, uint8_t opcode, bool mask) + :_len(len) + ,_sent(0) + ,_ack(0) + ,_acked(0) +{ + _opcode = opcode & 0x07; + _mask = mask; + _data = (uint8_t*)malloc(_len+1); + if(_data == NULL){ + _len = 0; + _status = WS_MSG_ERROR; + } else { + _status = WS_MSG_SENDING; + memcpy(_data, data, _len); + _data[_len] = 0; + } +} +AsyncWebSocketBasicMessage::AsyncWebSocketBasicMessage(uint8_t opcode, bool mask) + :_len(0) + ,_sent(0) + ,_ack(0) + ,_acked(0) + ,_data(NULL) +{ + _opcode = opcode & 0x07; + _mask = mask; + +} + + +AsyncWebSocketBasicMessage::~AsyncWebSocketBasicMessage() { + if(_data != NULL) + free(_data); +} + + void AsyncWebSocketBasicMessage::ack(size_t len, uint32_t time) { + (void)time; + _acked += len; + if(_sent == _len && _acked == _ack){ + _status = WS_MSG_SENT; + } +} + size_t AsyncWebSocketBasicMessage::send(AsyncClient *client) { + if(_status != WS_MSG_SENDING) + return 0; + if(_acked < _ack){ + return 0; + } + if(_sent == _len){ + if(_acked == _ack) + _status = WS_MSG_SENT; + return 0; + } + if(_sent > _len){ + _status = WS_MSG_ERROR; + return 0; + } + + size_t toSend = _len - _sent; + size_t window = webSocketSendFrameWindow(client); + + if(window < toSend) { + toSend = window; + } + + _sent += toSend; + _ack += toSend + ((toSend < 126)?2:4) + (_mask * 4); + + bool final = (_sent == _len); + uint8_t* dPtr = (uint8_t*)(_data + (_sent - toSend)); + uint8_t opCode = (toSend && _sent == toSend)?_opcode:(uint8_t)WS_CONTINUATION; + + size_t sent = webSocketSendFrame(client, final, opCode, _mask, dPtr, toSend); + _status = WS_MSG_SENDING; + if(toSend && sent != toSend){ + _sent -= (toSend - sent); + _ack -= (toSend - sent); + } + return sent; +} + +// bool AsyncWebSocketBasicMessage::reserve(size_t size) { +// if (size) { +// _data = (uint8_t*)malloc(size +1); +// if (_data) { +// memset(_data, 0, size); +// _len = size; +// _status = WS_MSG_SENDING; +// return true; +// } +// } +// return false; +// } + + +/* + * AsyncWebSocketMultiMessage Message + */ + + +AsyncWebSocketMultiMessage::AsyncWebSocketMultiMessage(AsyncWebSocketMessageBuffer * buffer, uint8_t opcode, bool mask) + :_len(0) + ,_sent(0) + ,_ack(0) + ,_acked(0) + ,_WSbuffer(nullptr) +{ + + _opcode = opcode & 0x07; + _mask = mask; + + if (buffer) { + _WSbuffer = buffer; + (*_WSbuffer)++; + _data = buffer->get(); + _len = buffer->length(); + _status = WS_MSG_SENDING; + //ets_printf("M: %u\n", _len); + } else { + _status = WS_MSG_ERROR; + } + +} + + +AsyncWebSocketMultiMessage::~AsyncWebSocketMultiMessage() { + if (_WSbuffer) { + (*_WSbuffer)--; // decreases the counter. + } +} + + void AsyncWebSocketMultiMessage::ack(size_t len, uint32_t time) { + (void)time; + _acked += len; + if(_sent >= _len && _acked >= _ack){ + _status = WS_MSG_SENT; + } + //ets_printf("A: %u\n", len); +} + size_t AsyncWebSocketMultiMessage::send(AsyncClient *client) { + if(_status != WS_MSG_SENDING) + return 0; + if(_acked < _ack){ + return 0; + } + if(_sent == _len){ + _status = WS_MSG_SENT; + return 0; + } + if(_sent > _len){ + _status = WS_MSG_ERROR; + //ets_printf("E: %u > %u\n", _sent, _len); + return 0; + } + + size_t toSend = _len - _sent; + size_t window = webSocketSendFrameWindow(client); + + if(window < toSend) { + toSend = window; + } + + _sent += toSend; + _ack += toSend + ((toSend < 126)?2:4) + (_mask * 4); + + //ets_printf("W: %u %u\n", _sent - toSend, toSend); + + bool final = (_sent == _len); + uint8_t* dPtr = (uint8_t*)(_data + (_sent - toSend)); + uint8_t opCode = (toSend && _sent == toSend)?_opcode:(uint8_t)WS_CONTINUATION; + + size_t sent = webSocketSendFrame(client, final, opCode, _mask, dPtr, toSend); + _status = WS_MSG_SENDING; + if(toSend && sent != toSend){ + //ets_printf("E: %u != %u\n", toSend, sent); + _sent -= (toSend - sent); + _ack -= (toSend - sent); + } + //ets_printf("S: %u %u\n", _sent, sent); + return sent; +} + + +/* + * Async WebSocket Client + */ + const char * AWSC_PING_PAYLOAD = "ESPAsyncWebServer-PING"; + const size_t AWSC_PING_PAYLOAD_LEN = 22; + +AsyncWebSocketClient::AsyncWebSocketClient(AsyncWebServerRequest *request, AsyncWebSocket *server) + : _controlQueue(LinkedList([](AsyncWebSocketControl *c){ delete c; })) + , _messageQueue(LinkedList([](AsyncWebSocketMessage *m){ delete m; })) + , _tempObject(NULL) +{ + _client = request->client(); + _server = server; + _clientId = _server->_getNextId(); + _status = WS_CONNECTED; + _pstate = 0; + _lastMessageTime = millis(); + _keepAlivePeriod = 0; + _client->setRxTimeout(0); + _client->onError([](void *r, AsyncClient* c, int8_t error){ (void)c; ((AsyncWebSocketClient*)(r))->_onError(error); }, this); + _client->onAck([](void *r, AsyncClient* c, size_t len, uint32_t time){ (void)c; ((AsyncWebSocketClient*)(r))->_onAck(len, time); }, this); + _client->onDisconnect([](void *r, AsyncClient* c){ ((AsyncWebSocketClient*)(r))->_onDisconnect(); delete c; }, this); + _client->onTimeout([](void *r, AsyncClient* c, uint32_t time){ (void)c; ((AsyncWebSocketClient*)(r))->_onTimeout(time); }, this); + _client->onData([](void *r, AsyncClient* c, void *buf, size_t len){ (void)c; ((AsyncWebSocketClient*)(r))->_onData(buf, len); }, this); + _client->onPoll([](void *r, AsyncClient* c){ (void)c; ((AsyncWebSocketClient*)(r))->_onPoll(); }, this); + _server->_addClient(this); + _server->_handleEvent(this, WS_EVT_CONNECT, request, NULL, 0); + delete request; +} + +AsyncWebSocketClient::~AsyncWebSocketClient(){ + _messageQueue.free(); + _controlQueue.free(); + _server->_handleEvent(this, WS_EVT_DISCONNECT, NULL, NULL, 0); +} + +void AsyncWebSocketClient::_onAck(size_t len, uint32_t time){ + _lastMessageTime = millis(); + if(!_controlQueue.isEmpty()){ + auto head = _controlQueue.front(); + if(head->finished()){ + len -= head->len(); + if(_status == WS_DISCONNECTING && head->opcode() == WS_DISCONNECT){ + _controlQueue.remove(head); + _status = WS_DISCONNECTED; + _client->close(true); + return; + } + _controlQueue.remove(head); + } + } + if(len && !_messageQueue.isEmpty()){ + _messageQueue.front()->ack(len, time); + } + _server->_cleanBuffers(); + _runQueue(); +} + +void AsyncWebSocketClient::_onPoll(){ + if(_client->canSend() && (!_controlQueue.isEmpty() || !_messageQueue.isEmpty())){ + _runQueue(); + } else if(_keepAlivePeriod > 0 && _controlQueue.isEmpty() && _messageQueue.isEmpty() && (millis() - _lastMessageTime) >= _keepAlivePeriod){ + ping((uint8_t *)AWSC_PING_PAYLOAD, AWSC_PING_PAYLOAD_LEN); + } +} + +void AsyncWebSocketClient::_runQueue(){ + while(!_messageQueue.isEmpty() && _messageQueue.front()->finished()){ + _messageQueue.remove(_messageQueue.front()); + } + + if(!_controlQueue.isEmpty() && (_messageQueue.isEmpty() || _messageQueue.front()->betweenFrames()) && webSocketSendFrameWindow(_client) > (size_t)(_controlQueue.front()->len() - 1)){ + _controlQueue.front()->send(_client); + } else if(!_messageQueue.isEmpty() && _messageQueue.front()->betweenFrames() && webSocketSendFrameWindow(_client)){ + _messageQueue.front()->send(_client); + } +} + +bool AsyncWebSocketClient::queueIsFull(){ + if((_messageQueue.length() >= WS_MAX_QUEUED_MESSAGES) || (_status != WS_CONNECTED) ) return true; + return false; +} + +void AsyncWebSocketClient::_queueMessage(AsyncWebSocketMessage *dataMessage){ + if(dataMessage == NULL) + return; + if(_status != WS_CONNECTED){ + delete dataMessage; + return; + } + if(_messageQueue.length() >= WS_MAX_QUEUED_MESSAGES){ + ets_printf("ERROR: Too many messages queued\n"); + delete dataMessage; + } else { + _messageQueue.add(dataMessage); + } + if(_client->canSend()) + _runQueue(); +} + +void AsyncWebSocketClient::_queueControl(AsyncWebSocketControl *controlMessage){ + if(controlMessage == NULL) + return; + _controlQueue.add(controlMessage); + if(_client->canSend()) + _runQueue(); +} + +void AsyncWebSocketClient::close(uint16_t code, const char * message){ + if(_status != WS_CONNECTED) + return; + if(code){ + uint8_t packetLen = 2; + if(message != NULL){ + size_t mlen = strlen(message); + if(mlen > 123) mlen = 123; + packetLen += mlen; + } + char * buf = (char*)malloc(packetLen); + if(buf != NULL){ + buf[0] = (uint8_t)(code >> 8); + buf[1] = (uint8_t)(code & 0xFF); + if(message != NULL){ + memcpy(buf+2, message, packetLen -2); + } + _queueControl(new AsyncWebSocketControl(WS_DISCONNECT,(uint8_t*)buf,packetLen)); + free(buf); + return; + } + } + _queueControl(new AsyncWebSocketControl(WS_DISCONNECT)); +} + +void AsyncWebSocketClient::ping(uint8_t *data, size_t len){ + if(_status == WS_CONNECTED) + _queueControl(new AsyncWebSocketControl(WS_PING, data, len)); +} + +void AsyncWebSocketClient::_onError(int8_t){} + +void AsyncWebSocketClient::_onTimeout(uint32_t time){ + (void)time; + _client->close(true); +} + +void AsyncWebSocketClient::_onDisconnect(){ + _client = NULL; + _server->_handleDisconnect(this); +} + +void AsyncWebSocketClient::_onData(void *pbuf, size_t plen){ + _lastMessageTime = millis(); + uint8_t *data = (uint8_t*)pbuf; + while(plen > 0){ + if(!_pstate){ + const uint8_t *fdata = data; + _pinfo.index = 0; + _pinfo.final = (fdata[0] & 0x80) != 0; + _pinfo.opcode = fdata[0] & 0x0F; + _pinfo.masked = (fdata[1] & 0x80) != 0; + _pinfo.len = fdata[1] & 0x7F; + data += 2; + plen -= 2; + if(_pinfo.len == 126){ + _pinfo.len = fdata[3] | (uint16_t)(fdata[2]) << 8; + data += 2; + plen -= 2; + } else if(_pinfo.len == 127){ + _pinfo.len = fdata[9] | (uint16_t)(fdata[8]) << 8 | (uint32_t)(fdata[7]) << 16 | (uint32_t)(fdata[6]) << 24 | (uint64_t)(fdata[5]) << 32 | (uint64_t)(fdata[4]) << 40 | (uint64_t)(fdata[3]) << 48 | (uint64_t)(fdata[2]) << 56; + data += 8; + plen -= 8; + } + + if(_pinfo.masked){ + memcpy(_pinfo.mask, data, 4); + data += 4; + plen -= 4; + } + } + + const size_t datalen = std::min((size_t)(_pinfo.len - _pinfo.index), plen); + const auto datalast = data[datalen]; + + if(_pinfo.masked){ + for(size_t i=0;i_handleEvent(this, WS_EVT_DATA, (void *)&_pinfo, (uint8_t*)data, datalen); + + _pinfo.index += datalen; + } else if((datalen + _pinfo.index) == _pinfo.len){ + _pstate = 0; + if(_pinfo.opcode == WS_DISCONNECT){ + if(datalen){ + uint16_t reasonCode = (uint16_t)(data[0] << 8) + data[1]; + char * reasonString = (char*)(data+2); + if(reasonCode > 1001){ + _server->_handleEvent(this, WS_EVT_ERROR, (void *)&reasonCode, (uint8_t*)reasonString, strlen(reasonString)); + } + } + if(_status == WS_DISCONNECTING){ + _status = WS_DISCONNECTED; + _client->close(true); + } else { + _status = WS_DISCONNECTING; + _client->ackLater(); + _queueControl(new AsyncWebSocketControl(WS_DISCONNECT, data, datalen)); + } + } else if(_pinfo.opcode == WS_PING){ + _queueControl(new AsyncWebSocketControl(WS_PONG, data, datalen)); + } else if(_pinfo.opcode == WS_PONG){ + if(datalen != AWSC_PING_PAYLOAD_LEN || memcmp(AWSC_PING_PAYLOAD, data, AWSC_PING_PAYLOAD_LEN) != 0) + _server->_handleEvent(this, WS_EVT_PONG, NULL, data, datalen); + } else if(_pinfo.opcode < 8){//continuation or text/binary frame + _server->_handleEvent(this, WS_EVT_DATA, (void *)&_pinfo, data, datalen); + } + } else { + //os_printf("frame error: len: %u, index: %llu, total: %llu\n", datalen, _pinfo.index, _pinfo.len); + //what should we do? + break; + } + + // restore byte as _handleEvent may have added a null terminator i.e., data[len] = 0; + if (datalen > 0) + data[datalen] = datalast; + + data += datalen; + plen -= datalen; + } +} + +size_t AsyncWebSocketClient::printf(const char *format, ...) { + va_list arg; + va_start(arg, format); + char* temp = new char[MAX_PRINTF_LEN]; + if(!temp){ + va_end(arg); + return 0; + } + char* buffer = temp; + size_t len = vsnprintf(temp, MAX_PRINTF_LEN, format, arg); + va_end(arg); + + if (len > (MAX_PRINTF_LEN - 1)) { + buffer = new char[len + 1]; + if (!buffer) { + delete[] temp; + return 0; + } + va_start(arg, format); + vsnprintf(buffer, len + 1, format, arg); + va_end(arg); + } + text(buffer, len); + if (buffer != temp) { + delete[] buffer; + } + delete[] temp; + return len; +} + +#ifndef ESP32 +size_t AsyncWebSocketClient::printf_P(PGM_P formatP, ...) { + va_list arg; + va_start(arg, formatP); + char* temp = new char[MAX_PRINTF_LEN]; + if(!temp){ + va_end(arg); + return 0; + } + char* buffer = temp; + size_t len = vsnprintf_P(temp, MAX_PRINTF_LEN, formatP, arg); + va_end(arg); + + if (len > (MAX_PRINTF_LEN - 1)) { + buffer = new char[len + 1]; + if (!buffer) { + delete[] temp; + return 0; + } + va_start(arg, formatP); + vsnprintf_P(buffer, len + 1, formatP, arg); + va_end(arg); + } + text(buffer, len); + if (buffer != temp) { + delete[] buffer; + } + delete[] temp; + return len; +} +#endif + +void AsyncWebSocketClient::text(const char * message, size_t len){ + _queueMessage(new AsyncWebSocketBasicMessage(message, len)); +} +void AsyncWebSocketClient::text(const char * message){ + text(message, strlen(message)); +} +void AsyncWebSocketClient::text(uint8_t * message, size_t len){ + text((const char *)message, len); +} +void AsyncWebSocketClient::text(char * message){ + text(message, strlen(message)); +} +void AsyncWebSocketClient::text(const String &message){ + text(message.c_str(), message.length()); +} +void AsyncWebSocketClient::text(const __FlashStringHelper *data){ + PGM_P p = reinterpret_cast(data); + size_t n = 0; + while (1) { + if (pgm_read_byte(p+n) == 0) break; + n += 1; + } + char * message = (char*) malloc(n+1); + if(message){ + for(size_t b=0; b(data); + char * message = (char*) malloc(len); + if(message){ + for(size_t b=0; bremoteIP(); +} + +uint16_t AsyncWebSocketClient::remotePort() { + if(!_client) { + return 0; + } + return _client->remotePort(); +} + + + +/* + * Async Web Socket - Each separate socket location + */ + +AsyncWebSocket::AsyncWebSocket(const String& url) + :_url(url) + ,_clients(LinkedList([](AsyncWebSocketClient *c){ delete c; })) + ,_cNextId(1) + ,_enabled(true) + ,_buffers(LinkedList([](AsyncWebSocketMessageBuffer *b){ delete b; })) +{ + _eventHandler = NULL; +} + +AsyncWebSocket::~AsyncWebSocket(){} + +void AsyncWebSocket::_handleEvent(AsyncWebSocketClient * client, AwsEventType type, void * arg, uint8_t *data, size_t len){ + if(_eventHandler != NULL){ + _eventHandler(this, client, type, arg, data, len); + } +} + +void AsyncWebSocket::_addClient(AsyncWebSocketClient * client){ + _clients.add(client); +} + +void AsyncWebSocket::_handleDisconnect(AsyncWebSocketClient * client){ + + _clients.remove_first([=](AsyncWebSocketClient * c){ + return c->id() == client->id(); + }); +} + +bool AsyncWebSocket::availableForWriteAll(){ + for(const auto& c: _clients){ + if(c->queueIsFull()) return false; + } + return true; +} + +bool AsyncWebSocket::availableForWrite(uint32_t id){ + for(const auto& c: _clients){ + if(c->queueIsFull() && (c->id() == id )) return false; + } + return true; +} + +size_t AsyncWebSocket::count() const { + return _clients.count_if([](AsyncWebSocketClient * c){ + return c->status() == WS_CONNECTED; + }); +} + +AsyncWebSocketClient * AsyncWebSocket::client(uint32_t id){ + for(const auto &c: _clients){ + if(c->id() == id && c->status() == WS_CONNECTED){ + return c; + } + } + return nullptr; +} + + +void AsyncWebSocket::close(uint32_t id, uint16_t code, const char * message){ + AsyncWebSocketClient * c = client(id); + if(c) + c->close(code, message); +} + +void AsyncWebSocket::closeAll(uint16_t code, const char * message){ + for(const auto& c: _clients){ + if(c->status() == WS_CONNECTED) + c->close(code, message); + } +} + +void AsyncWebSocket::cleanupClients(uint16_t maxClients) +{ + if (count() > maxClients){ + _clients.front()->close(); + } +} + +void AsyncWebSocket::ping(uint32_t id, uint8_t *data, size_t len){ + AsyncWebSocketClient * c = client(id); + if(c) + c->ping(data, len); +} + +void AsyncWebSocket::pingAll(uint8_t *data, size_t len){ + for(const auto& c: _clients){ + if(c->status() == WS_CONNECTED) + c->ping(data, len); + } +} + +void AsyncWebSocket::text(uint32_t id, const char * message, size_t len){ + AsyncWebSocketClient * c = client(id); + if(c) + c->text(message, len); +} + +void AsyncWebSocket::textAll(AsyncWebSocketMessageBuffer * buffer){ + if (!buffer) return; + buffer->lock(); + for(const auto& c: _clients){ + if(c->status() == WS_CONNECTED){ + c->text(buffer); + } + } + buffer->unlock(); + _cleanBuffers(); +} + + +void AsyncWebSocket::textAll(const char * message, size_t len){ + AsyncWebSocketMessageBuffer * WSBuffer = makeBuffer((uint8_t *)message, len); + textAll(WSBuffer); +} + +void AsyncWebSocket::binary(uint32_t id, const char * message, size_t len){ + AsyncWebSocketClient * c = client(id); + if(c) + c->binary(message, len); +} + +void AsyncWebSocket::binaryAll(const char * message, size_t len){ + AsyncWebSocketMessageBuffer * buffer = makeBuffer((uint8_t *)message, len); + binaryAll(buffer); +} + +void AsyncWebSocket::binaryAll(AsyncWebSocketMessageBuffer * buffer) +{ + if (!buffer) return; + buffer->lock(); + for(const auto& c: _clients){ + if(c->status() == WS_CONNECTED) + c->binary(buffer); + } + buffer->unlock(); + _cleanBuffers(); +} + +void AsyncWebSocket::message(uint32_t id, AsyncWebSocketMessage *message){ + AsyncWebSocketClient * c = client(id); + if(c) + c->message(message); +} + +void AsyncWebSocket::messageAll(AsyncWebSocketMultiMessage *message){ + for(const auto& c: _clients){ + if(c->status() == WS_CONNECTED) + c->message(message); + } + _cleanBuffers(); +} + +size_t AsyncWebSocket::printf(uint32_t id, const char *format, ...){ + AsyncWebSocketClient * c = client(id); + if(c){ + va_list arg; + va_start(arg, format); + size_t len = c->printf(format, arg); + va_end(arg); + return len; + } + return 0; +} + +size_t AsyncWebSocket::printfAll(const char *format, ...) { + va_list arg; + char* temp = new char[MAX_PRINTF_LEN]; + if(!temp){ + return 0; + } + va_start(arg, format); + size_t len = vsnprintf(temp, MAX_PRINTF_LEN, format, arg); + va_end(arg); + delete[] temp; + + AsyncWebSocketMessageBuffer * buffer = makeBuffer(len); + if (!buffer) { + return 0; + } + + va_start(arg, format); + vsnprintf( (char *)buffer->get(), len + 1, format, arg); + va_end(arg); + + textAll(buffer); + return len; +} + +#ifndef ESP32 +size_t AsyncWebSocket::printf_P(uint32_t id, PGM_P formatP, ...){ + AsyncWebSocketClient * c = client(id); + if(c != NULL){ + va_list arg; + va_start(arg, formatP); + size_t len = c->printf_P(formatP, arg); + va_end(arg); + return len; + } + return 0; +} +#endif + +size_t AsyncWebSocket::printfAll_P(PGM_P formatP, ...) { + va_list arg; + char* temp = new char[MAX_PRINTF_LEN]; + if(!temp){ + return 0; + } + va_start(arg, formatP); + size_t len = vsnprintf_P(temp, MAX_PRINTF_LEN, formatP, arg); + va_end(arg); + delete[] temp; + + AsyncWebSocketMessageBuffer * buffer = makeBuffer(len + 1); + if (!buffer) { + return 0; + } + + va_start(arg, formatP); + vsnprintf_P((char *)buffer->get(), len + 1, formatP, arg); + va_end(arg); + + textAll(buffer); + return len; +} + +void AsyncWebSocket::text(uint32_t id, const char * message){ + text(id, message, strlen(message)); +} +void AsyncWebSocket::text(uint32_t id, uint8_t * message, size_t len){ + text(id, (const char *)message, len); +} +void AsyncWebSocket::text(uint32_t id, char * message){ + text(id, message, strlen(message)); +} +void AsyncWebSocket::text(uint32_t id, const String &message){ + text(id, message.c_str(), message.length()); +} +void AsyncWebSocket::text(uint32_t id, const __FlashStringHelper *message){ + AsyncWebSocketClient * c = client(id); + if(c != NULL) + c->text(message); +} +void AsyncWebSocket::textAll(const char * message){ + textAll(message, strlen(message)); +} +void AsyncWebSocket::textAll(uint8_t * message, size_t len){ + textAll((const char *)message, len); +} +void AsyncWebSocket::textAll(char * message){ + textAll(message, strlen(message)); +} +void AsyncWebSocket::textAll(const String &message){ + textAll(message.c_str(), message.length()); +} +void AsyncWebSocket::textAll(const __FlashStringHelper *message){ + for(const auto& c: _clients){ + if(c->status() == WS_CONNECTED) + c->text(message); + } +} +void AsyncWebSocket::binary(uint32_t id, const char * message){ + binary(id, message, strlen(message)); +} +void AsyncWebSocket::binary(uint32_t id, uint8_t * message, size_t len){ + binary(id, (const char *)message, len); +} +void AsyncWebSocket::binary(uint32_t id, char * message){ + binary(id, message, strlen(message)); +} +void AsyncWebSocket::binary(uint32_t id, const String &message){ + binary(id, message.c_str(), message.length()); +} +void AsyncWebSocket::binary(uint32_t id, const __FlashStringHelper *message, size_t len){ + AsyncWebSocketClient * c = client(id); + if(c != NULL) + c-> binary(message, len); +} +void AsyncWebSocket::binaryAll(const char * message){ + binaryAll(message, strlen(message)); +} +void AsyncWebSocket::binaryAll(uint8_t * message, size_t len){ + binaryAll((const char *)message, len); +} +void AsyncWebSocket::binaryAll(char * message){ + binaryAll(message, strlen(message)); +} +void AsyncWebSocket::binaryAll(const String &message){ + binaryAll(message.c_str(), message.length()); +} +void AsyncWebSocket::binaryAll(const __FlashStringHelper *message, size_t len){ + for(const auto& c: _clients){ + if(c->status() == WS_CONNECTED) + c-> binary(message, len); + } + } + +const char * WS_STR_CONNECTION = "Connection"; +const char * WS_STR_UPGRADE = "Upgrade"; +const char * WS_STR_ORIGIN = "Origin"; +const char * WS_STR_VERSION = "Sec-WebSocket-Version"; +const char * WS_STR_KEY = "Sec-WebSocket-Key"; +const char * WS_STR_PROTOCOL = "Sec-WebSocket-Protocol"; +const char * WS_STR_ACCEPT = "Sec-WebSocket-Accept"; +const char * WS_STR_UUID = "258EAFA5-E914-47DA-95CA-C5AB0DC85B11"; + +bool AsyncWebSocket::canHandle(AsyncWebServerRequest *request){ + if(!_enabled) + return false; + + if(request->method() != HTTP_GET || !request->url().equals(_url) || !request->isExpectedRequestedConnType(RCT_WS)) + return false; + + request->addInterestingHeader(WS_STR_CONNECTION); + request->addInterestingHeader(WS_STR_UPGRADE); + request->addInterestingHeader(WS_STR_ORIGIN); + request->addInterestingHeader(WS_STR_VERSION); + request->addInterestingHeader(WS_STR_KEY); + request->addInterestingHeader(WS_STR_PROTOCOL); + return true; +} + +void AsyncWebSocket::handleRequest(AsyncWebServerRequest *request){ + if(!request->hasHeader(WS_STR_VERSION) || !request->hasHeader(WS_STR_KEY)){ + request->send(400); + return; + } + if((_username != "" && _password != "") && !request->authenticate(_username.c_str(), _password.c_str())){ + return request->requestAuthentication(); + } + AsyncWebHeader* version = request->getHeader(WS_STR_VERSION); + if(version->value().toInt() != 13){ + AsyncWebServerResponse *response = request->beginResponse(400); + response->addHeader(WS_STR_VERSION,"13"); + request->send(response); + return; + } + AsyncWebHeader* key = request->getHeader(WS_STR_KEY); + AsyncWebServerResponse *response = new AsyncWebSocketResponse(key->value(), this); + if(request->hasHeader(WS_STR_PROTOCOL)){ + AsyncWebHeader* protocol = request->getHeader(WS_STR_PROTOCOL); + //ToDo: check protocol + response->addHeader(WS_STR_PROTOCOL, protocol->value()); + } + request->send(response); +} + +AsyncWebSocketMessageBuffer * AsyncWebSocket::makeBuffer(size_t size) +{ + AsyncWebSocketMessageBuffer * buffer = new AsyncWebSocketMessageBuffer(size); + if (buffer) { + AsyncWebLockGuard l(_lock); + _buffers.add(buffer); + } + return buffer; +} + +AsyncWebSocketMessageBuffer * AsyncWebSocket::makeBuffer(uint8_t * data, size_t size) +{ + AsyncWebSocketMessageBuffer * buffer = new AsyncWebSocketMessageBuffer(data, size); + + if (buffer) { + AsyncWebLockGuard l(_lock); + _buffers.add(buffer); + } + + return buffer; +} + +void AsyncWebSocket::_cleanBuffers() +{ + AsyncWebLockGuard l(_lock); + + for(AsyncWebSocketMessageBuffer * c: _buffers){ + if(c && c->canDelete()){ + _buffers.remove(c); + } + } +} + +AsyncWebSocket::AsyncWebSocketClientLinkedList AsyncWebSocket::getClients() const { + return _clients; +} + +/* + * Response to Web Socket request - sends the authorization and detaches the TCP Client from the web server + * Authentication code from https://github.com/Links2004/arduinoWebSockets/blob/master/src/WebSockets.cpp#L480 + */ + +AsyncWebSocketResponse::AsyncWebSocketResponse(const String& key, AsyncWebSocket *server){ + _server = server; + _code = 101; + _sendContentLength = false; + + uint8_t * hash = (uint8_t*)malloc(20); + if(hash == NULL){ + _state = RESPONSE_FAILED; + return; + } + char * buffer = (char *) malloc(33); + if(buffer == NULL){ + free(hash); + _state = RESPONSE_FAILED; + return; + } +#ifdef ESP8266 + sha1(key + WS_STR_UUID, hash); +#else + (String&)key += WS_STR_UUID; + mbedtls_sha1_context ctx; + mbedtls_sha1_init(&ctx); + mbedtls_sha1_starts_ret(&ctx); + mbedtls_sha1_update_ret(&ctx, (const unsigned char*)key.c_str(), key.length()); + mbedtls_sha1_finish_ret(&ctx, hash); + mbedtls_sha1_free(&ctx); +#endif + base64_encodestate _state; + base64_init_encodestate(&_state); + int len = base64_encode_block((const char *) hash, 20, buffer, &_state); + len = base64_encode_blockend((buffer + len), &_state); + addHeader(WS_STR_CONNECTION, WS_STR_UPGRADE); + addHeader(WS_STR_UPGRADE, "websocket"); + addHeader(WS_STR_ACCEPT,buffer); + free(buffer); + free(hash); +} + +void AsyncWebSocketResponse::_respond(AsyncWebServerRequest *request){ + if(_state == RESPONSE_FAILED){ + request->client()->close(true); + return; + } + String out = _assembleHead(request->version()); + request->client()->write(out.c_str(), _headLength); + _state = RESPONSE_WAIT_ACK; +} + +size_t AsyncWebSocketResponse::_ack(AsyncWebServerRequest *request, size_t len, uint32_t time){ + (void)time; + if(len){ + new AsyncWebSocketClient(request, _server); + } + return 0; +} diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncWebSocket.h b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncWebSocket.h new file mode 100644 index 00000000..5b03aceb --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncWebSocket.h @@ -0,0 +1,350 @@ +/* + Asynchronous WebServer library for Espressif MCUs + + Copyright (c) 2016 Hristo Gochkov. All rights reserved. + This file is part of the esp8266 core for Arduino environment. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ +#ifndef ASYNCWEBSOCKET_H_ +#define ASYNCWEBSOCKET_H_ + +#include +#ifdef ESP32 +#include +#define WS_MAX_QUEUED_MESSAGES 32 +#else +#include +#define WS_MAX_QUEUED_MESSAGES 8 +#endif +#include + +#include "AsyncWebSynchronization.h" + +#ifdef ESP8266 +#include +#ifdef CRYPTO_HASH_h // include Hash.h from espressif framework if the first include was from the crypto library +#include <../src/Hash.h> +#endif +#endif + +#ifdef ESP32 +#define DEFAULT_MAX_WS_CLIENTS 8 +#else +#define DEFAULT_MAX_WS_CLIENTS 4 +#endif + +class AsyncWebSocket; +class AsyncWebSocketResponse; +class AsyncWebSocketClient; +class AsyncWebSocketControl; + +typedef struct { + /** Message type as defined by enum AwsFrameType. + * Note: Applications will only see WS_TEXT and WS_BINARY. + * All other types are handled by the library. */ + uint8_t message_opcode; + /** Frame number of a fragmented message. */ + uint32_t num; + /** Is this the last frame in a fragmented message ?*/ + uint8_t final; + /** Is this frame masked? */ + uint8_t masked; + /** Message type as defined by enum AwsFrameType. + * This value is the same as message_opcode for non-fragmented + * messages, but may also be WS_CONTINUATION in a fragmented message. */ + uint8_t opcode; + /** Length of the current frame. + * This equals the total length of the message if num == 0 && final == true */ + uint64_t len; + /** Mask key */ + uint8_t mask[4]; + /** Offset of the data inside the current frame. */ + uint64_t index; +} AwsFrameInfo; + +typedef enum { WS_DISCONNECTED, WS_CONNECTED, WS_DISCONNECTING } AwsClientStatus; +typedef enum { WS_CONTINUATION, WS_TEXT, WS_BINARY, WS_DISCONNECT = 0x08, WS_PING, WS_PONG } AwsFrameType; +typedef enum { WS_MSG_SENDING, WS_MSG_SENT, WS_MSG_ERROR } AwsMessageStatus; +typedef enum { WS_EVT_CONNECT, WS_EVT_DISCONNECT, WS_EVT_PONG, WS_EVT_ERROR, WS_EVT_DATA } AwsEventType; + +class AsyncWebSocketMessageBuffer { + private: + uint8_t * _data; + size_t _len; + bool _lock; + uint32_t _count; + + public: + AsyncWebSocketMessageBuffer(); + AsyncWebSocketMessageBuffer(size_t size); + AsyncWebSocketMessageBuffer(uint8_t * data, size_t size); + AsyncWebSocketMessageBuffer(const AsyncWebSocketMessageBuffer &); + AsyncWebSocketMessageBuffer(AsyncWebSocketMessageBuffer &&); + ~AsyncWebSocketMessageBuffer(); + void operator ++(int i) { (void)i; _count++; } + void operator --(int i) { (void)i; if (_count > 0) { _count--; } ; } + bool reserve(size_t size); + void lock() { _lock = true; } + void unlock() { _lock = false; } + uint8_t * get() { return _data; } + size_t length() { return _len; } + uint32_t count() { return _count; } + bool canDelete() { return (!_count && !_lock); } + + friend AsyncWebSocket; + +}; + +class AsyncWebSocketMessage { + protected: + uint8_t _opcode; + bool _mask; + AwsMessageStatus _status; + public: + AsyncWebSocketMessage():_opcode(WS_TEXT),_mask(false),_status(WS_MSG_ERROR){} + virtual ~AsyncWebSocketMessage(){} + virtual void ack(size_t len __attribute__((unused)), uint32_t time __attribute__((unused))){} + virtual size_t send(AsyncClient *client __attribute__((unused))){ return 0; } + virtual bool finished(){ return _status != WS_MSG_SENDING; } + virtual bool betweenFrames() const { return false; } +}; + +class AsyncWebSocketBasicMessage: public AsyncWebSocketMessage { + private: + size_t _len; + size_t _sent; + size_t _ack; + size_t _acked; + uint8_t * _data; +public: + AsyncWebSocketBasicMessage(const char * data, size_t len, uint8_t opcode=WS_TEXT, bool mask=false); + AsyncWebSocketBasicMessage(uint8_t opcode=WS_TEXT, bool mask=false); + virtual ~AsyncWebSocketBasicMessage() override; + virtual bool betweenFrames() const override { return _acked == _ack; } + virtual void ack(size_t len, uint32_t time) override ; + virtual size_t send(AsyncClient *client) override ; +}; + +class AsyncWebSocketMultiMessage: public AsyncWebSocketMessage { + private: + uint8_t * _data; + size_t _len; + size_t _sent; + size_t _ack; + size_t _acked; + AsyncWebSocketMessageBuffer * _WSbuffer; +public: + AsyncWebSocketMultiMessage(AsyncWebSocketMessageBuffer * buffer, uint8_t opcode=WS_TEXT, bool mask=false); + virtual ~AsyncWebSocketMultiMessage() override; + virtual bool betweenFrames() const override { return _acked == _ack; } + virtual void ack(size_t len, uint32_t time) override ; + virtual size_t send(AsyncClient *client) override ; +}; + +class AsyncWebSocketClient { + private: + AsyncClient *_client; + AsyncWebSocket *_server; + uint32_t _clientId; + AwsClientStatus _status; + + LinkedList _controlQueue; + LinkedList _messageQueue; + + uint8_t _pstate; + AwsFrameInfo _pinfo; + + uint32_t _lastMessageTime; + uint32_t _keepAlivePeriod; + + void _queueMessage(AsyncWebSocketMessage *dataMessage); + void _queueControl(AsyncWebSocketControl *controlMessage); + void _runQueue(); + + public: + void *_tempObject; + + AsyncWebSocketClient(AsyncWebServerRequest *request, AsyncWebSocket *server); + ~AsyncWebSocketClient(); + + //client id increments for the given server + uint32_t id(){ return _clientId; } + AwsClientStatus status(){ return _status; } + AsyncClient* client(){ return _client; } + AsyncWebSocket *server(){ return _server; } + AwsFrameInfo const &pinfo() const { return _pinfo; } + + IPAddress remoteIP(); + uint16_t remotePort(); + + //control frames + void close(uint16_t code=0, const char * message=NULL); + void ping(uint8_t *data=NULL, size_t len=0); + + //set auto-ping period in seconds. disabled if zero (default) + void keepAlivePeriod(uint16_t seconds){ + _keepAlivePeriod = seconds * 1000; + } + uint16_t keepAlivePeriod(){ + return (uint16_t)(_keepAlivePeriod / 1000); + } + + //data packets + void message(AsyncWebSocketMessage *message){ _queueMessage(message); } + bool queueIsFull(); + + size_t printf(const char *format, ...) __attribute__ ((format (printf, 2, 3))); +#ifndef ESP32 + size_t printf_P(PGM_P formatP, ...) __attribute__ ((format (printf, 2, 3))); +#endif + void text(const char * message, size_t len); + void text(const char * message); + void text(uint8_t * message, size_t len); + void text(char * message); + void text(const String &message); + void text(const __FlashStringHelper *data); + void text(AsyncWebSocketMessageBuffer *buffer); + + void binary(const char * message, size_t len); + void binary(const char * message); + void binary(uint8_t * message, size_t len); + void binary(char * message); + void binary(const String &message); + void binary(const __FlashStringHelper *data, size_t len); + void binary(AsyncWebSocketMessageBuffer *buffer); + + bool canSend() { return _messageQueue.length() < WS_MAX_QUEUED_MESSAGES; } + + //system callbacks (do not call) + void _onAck(size_t len, uint32_t time); + void _onError(int8_t); + void _onPoll(); + void _onTimeout(uint32_t time); + void _onDisconnect(); + void _onData(void *pbuf, size_t plen); +}; + +typedef std::function AwsEventHandler; + +//WebServer Handler implementation that plays the role of a socket server +class AsyncWebSocket: public AsyncWebHandler { + public: + typedef LinkedList AsyncWebSocketClientLinkedList; + private: + String _url; + AsyncWebSocketClientLinkedList _clients; + uint32_t _cNextId; + AwsEventHandler _eventHandler; + bool _enabled; + AsyncWebLock _lock; + + public: + AsyncWebSocket(const String& url); + ~AsyncWebSocket(); + const char * url() const { return _url.c_str(); } + void enable(bool e){ _enabled = e; } + bool enabled() const { return _enabled; } + bool availableForWriteAll(); + bool availableForWrite(uint32_t id); + + size_t count() const; + AsyncWebSocketClient * client(uint32_t id); + bool hasClient(uint32_t id){ return client(id) != NULL; } + + void close(uint32_t id, uint16_t code=0, const char * message=NULL); + void closeAll(uint16_t code=0, const char * message=NULL); + void cleanupClients(uint16_t maxClients = DEFAULT_MAX_WS_CLIENTS); + + void ping(uint32_t id, uint8_t *data=NULL, size_t len=0); + void pingAll(uint8_t *data=NULL, size_t len=0); // done + + void text(uint32_t id, const char * message, size_t len); + void text(uint32_t id, const char * message); + void text(uint32_t id, uint8_t * message, size_t len); + void text(uint32_t id, char * message); + void text(uint32_t id, const String &message); + void text(uint32_t id, const __FlashStringHelper *message); + + void textAll(const char * message, size_t len); + void textAll(const char * message); + void textAll(uint8_t * message, size_t len); + void textAll(char * message); + void textAll(const String &message); + void textAll(const __FlashStringHelper *message); // need to convert + void textAll(AsyncWebSocketMessageBuffer * buffer); + + void binary(uint32_t id, const char * message, size_t len); + void binary(uint32_t id, const char * message); + void binary(uint32_t id, uint8_t * message, size_t len); + void binary(uint32_t id, char * message); + void binary(uint32_t id, const String &message); + void binary(uint32_t id, const __FlashStringHelper *message, size_t len); + + void binaryAll(const char * message, size_t len); + void binaryAll(const char * message); + void binaryAll(uint8_t * message, size_t len); + void binaryAll(char * message); + void binaryAll(const String &message); + void binaryAll(const __FlashStringHelper *message, size_t len); + void binaryAll(AsyncWebSocketMessageBuffer * buffer); + + void message(uint32_t id, AsyncWebSocketMessage *message); + void messageAll(AsyncWebSocketMultiMessage *message); + + size_t printf(uint32_t id, const char *format, ...) __attribute__ ((format (printf, 3, 4))); + size_t printfAll(const char *format, ...) __attribute__ ((format (printf, 2, 3))); +#ifndef ESP32 + size_t printf_P(uint32_t id, PGM_P formatP, ...) __attribute__ ((format (printf, 3, 4))); +#endif + size_t printfAll_P(PGM_P formatP, ...) __attribute__ ((format (printf, 2, 3))); + + //event listener + void onEvent(AwsEventHandler handler){ + _eventHandler = handler; + } + + //system callbacks (do not call) + uint32_t _getNextId(){ return _cNextId++; } + void _addClient(AsyncWebSocketClient * client); + void _handleDisconnect(AsyncWebSocketClient * client); + void _handleEvent(AsyncWebSocketClient * client, AwsEventType type, void * arg, uint8_t *data, size_t len); + virtual bool canHandle(AsyncWebServerRequest *request) override final; + virtual void handleRequest(AsyncWebServerRequest *request) override final; + + + // messagebuffer functions/objects. + AsyncWebSocketMessageBuffer * makeBuffer(size_t size = 0); + AsyncWebSocketMessageBuffer * makeBuffer(uint8_t * data, size_t size); + LinkedList _buffers; + void _cleanBuffers(); + + AsyncWebSocketClientLinkedList getClients() const; +}; + +//WebServer response to authenticate the socket and detach the tcp client from the web server request +class AsyncWebSocketResponse: public AsyncWebServerResponse { + private: + String _content; + AsyncWebSocket *_server; + public: + AsyncWebSocketResponse(const String& key, AsyncWebSocket *server); + void _respond(AsyncWebServerRequest *request); + size_t _ack(AsyncWebServerRequest *request, size_t len, uint32_t time); + bool _sourceValid() const { return true; } +}; + + +#endif /* ASYNCWEBSOCKET_H_ */ diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncWebSynchronization.h b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncWebSynchronization.h new file mode 100644 index 00000000..f36c52dc --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncWebSynchronization.h @@ -0,0 +1,87 @@ +#ifndef ASYNCWEBSYNCHRONIZATION_H_ +#define ASYNCWEBSYNCHRONIZATION_H_ + +// Synchronisation is only available on ESP32, as the ESP8266 isn't using FreeRTOS by default + +#include + +#ifdef ESP32 + +// This is the ESP32 version of the Sync Lock, using the FreeRTOS Semaphore +class AsyncWebLock +{ +private: + SemaphoreHandle_t _lock; + mutable void *_lockedBy; + +public: + AsyncWebLock() { + _lock = xSemaphoreCreateBinary(); + _lockedBy = NULL; + xSemaphoreGive(_lock); + } + + ~AsyncWebLock() { + vSemaphoreDelete(_lock); + } + + bool lock() const { + extern void *pxCurrentTCB; + if (_lockedBy != pxCurrentTCB) { + xSemaphoreTake(_lock, portMAX_DELAY); + _lockedBy = pxCurrentTCB; + return true; + } + return false; + } + + void unlock() const { + _lockedBy = NULL; + xSemaphoreGive(_lock); + } +}; + +#else + +// This is the 8266 version of the Sync Lock which is currently unimplemented +class AsyncWebLock +{ + +public: + AsyncWebLock() { + } + + ~AsyncWebLock() { + } + + bool lock() const { + return false; + } + + void unlock() const { + } +}; +#endif + +class AsyncWebLockGuard +{ +private: + const AsyncWebLock *_lock; + +public: + AsyncWebLockGuard(const AsyncWebLock &l) { + if (l.lock()) { + _lock = &l; + } else { + _lock = NULL; + } + } + + ~AsyncWebLockGuard() { + if (_lock) { + _lock->unlock(); + } + } +}; + +#endif // ASYNCWEBSYNCHRONIZATION_H_ \ No newline at end of file diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/ESPAsyncWebServer.h b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/ESPAsyncWebServer.h new file mode 100644 index 00000000..7cd21aa8 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/ESPAsyncWebServer.h @@ -0,0 +1,471 @@ +/* + Asynchronous WebServer library for Espressif MCUs + + Copyright (c) 2016 Hristo Gochkov. All rights reserved. + This file is part of the esp8266 core for Arduino environment. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ +#ifndef _ESPAsyncWebServer_H_ +#define _ESPAsyncWebServer_H_ + +#include "Arduino.h" + +#include +#include "FS.h" + +#include "StringArray.h" + +#ifdef ESP32 +#include +#include +#elif defined(ESP8266) +#include +#include +#else +#error Platform not supported +#endif + +#ifdef ASYNCWEBSERVER_REGEX +#define ASYNCWEBSERVER_REGEX_ATTRIBUTE +#else +#define ASYNCWEBSERVER_REGEX_ATTRIBUTE __attribute__((warning("ASYNCWEBSERVER_REGEX not defined"))) +#endif + +#define DEBUGF(...) //Serial.printf(__VA_ARGS__) + +class AsyncWebServer; +class AsyncWebServerRequest; +class AsyncWebServerResponse; +class AsyncWebHeader; +class AsyncWebParameter; +class AsyncWebRewrite; +class AsyncWebHandler; +class AsyncStaticWebHandler; +class AsyncCallbackWebHandler; +class AsyncResponseStream; + +#ifndef WEBSERVER_H +typedef enum { + HTTP_GET = 0b00000001, + HTTP_POST = 0b00000010, + HTTP_DELETE = 0b00000100, + HTTP_PUT = 0b00001000, + HTTP_PATCH = 0b00010000, + HTTP_HEAD = 0b00100000, + HTTP_OPTIONS = 0b01000000, + HTTP_ANY = 0b01111111, +} WebRequestMethod; +#endif + +//if this value is returned when asked for data, packet will not be sent and you will be asked for data again +#define RESPONSE_TRY_AGAIN 0xFFFFFFFF + +typedef uint8_t WebRequestMethodComposite; +typedef std::function ArDisconnectHandler; + +/* + * PARAMETER :: Chainable object to hold GET/POST and FILE parameters + * */ + +class AsyncWebParameter { + private: + String _name; + String _value; + size_t _size; + bool _isForm; + bool _isFile; + + public: + + AsyncWebParameter(const String& name, const String& value, bool form=false, bool file=false, size_t size=0): _name(name), _value(value), _size(size), _isForm(form), _isFile(file){} + const String& name() const { return _name; } + const String& value() const { return _value; } + size_t size() const { return _size; } + bool isPost() const { return _isForm; } + bool isFile() const { return _isFile; } +}; + +/* + * HEADER :: Chainable object to hold the headers + * */ + +class AsyncWebHeader { + private: + String _name; + String _value; + + public: + AsyncWebHeader(const String& name, const String& value): _name(name), _value(value){} + AsyncWebHeader(const String& data): _name(), _value(){ + if(!data) return; + int index = data.indexOf(':'); + if (index < 0) return; + _name = data.substring(0, index); + _value = data.substring(index + 2); + } + ~AsyncWebHeader(){} + const String& name() const { return _name; } + const String& value() const { return _value; } + String toString() const { return String(_name+": "+_value+"\r\n"); } +}; + +/* + * REQUEST :: Each incoming Client is wrapped inside a Request and both live together until disconnect + * */ + +typedef enum { RCT_NOT_USED = -1, RCT_DEFAULT = 0, RCT_HTTP, RCT_WS, RCT_EVENT, RCT_MAX } RequestedConnectionType; + +typedef std::function AwsResponseFiller; +typedef std::function AwsTemplateProcessor; + +class AsyncWebServerRequest { + using File = fs::File; + using FS = fs::FS; + friend class AsyncWebServer; + friend class AsyncCallbackWebHandler; + private: + AsyncClient* _client; + AsyncWebServer* _server; + AsyncWebHandler* _handler; + AsyncWebServerResponse* _response; + StringArray _interestingHeaders; + ArDisconnectHandler _onDisconnectfn; + + String _temp; + uint8_t _parseState; + + uint8_t _version; + WebRequestMethodComposite _method; + String _url; + String _host; + String _contentType; + String _boundary; + String _authorization; + RequestedConnectionType _reqconntype; + void _removeNotInterestingHeaders(); + bool _isDigest; + bool _isMultipart; + bool _isPlainPost; + bool _expectingContinue; + size_t _contentLength; + size_t _parsedLength; + + LinkedList _headers; + LinkedList _params; + LinkedList _pathParams; + + uint8_t _multiParseState; + uint8_t _boundaryPosition; + size_t _itemStartIndex; + size_t _itemSize; + String _itemName; + String _itemFilename; + String _itemType; + String _itemValue; + uint8_t *_itemBuffer; + size_t _itemBufferIndex; + bool _itemIsFile; + + void _onPoll(); + void _onAck(size_t len, uint32_t time); + void _onError(int8_t error); + void _onTimeout(uint32_t time); + void _onDisconnect(); + void _onData(void *buf, size_t len); + + void _addParam(AsyncWebParameter*); + void _addPathParam(const char *param); + + bool _parseReqHead(); + bool _parseReqHeader(); + void _parseLine(); + void _parsePlainPostChar(uint8_t data); + void _parseMultipartPostByte(uint8_t data, bool last); + void _addGetParams(const String& params); + + void _handleUploadStart(); + void _handleUploadByte(uint8_t data, bool last); + void _handleUploadEnd(); + + public: + File _tempFile; + void *_tempObject; + + AsyncWebServerRequest(AsyncWebServer*, AsyncClient*); + ~AsyncWebServerRequest(); + + AsyncClient* client(){ return _client; } + uint8_t version() const { return _version; } + WebRequestMethodComposite method() const { return _method; } + const String& url() const { return _url; } + const String& host() const { return _host; } + const String& contentType() const { return _contentType; } + size_t contentLength() const { return _contentLength; } + bool multipart() const { return _isMultipart; } + const char * methodToString() const; + const char * requestedConnTypeToString() const; + RequestedConnectionType requestedConnType() const { return _reqconntype; } + bool isExpectedRequestedConnType(RequestedConnectionType erct1, RequestedConnectionType erct2 = RCT_NOT_USED, RequestedConnectionType erct3 = RCT_NOT_USED); + void onDisconnect (ArDisconnectHandler fn); + + //hash is the string representation of: + // base64(user:pass) for basic or + // user:realm:md5(user:realm:pass) for digest + bool authenticate(const char * hash); + bool authenticate(const char * username, const char * password, const char * realm = NULL, bool passwordIsHash = false); + void requestAuthentication(const char * realm = NULL, bool isDigest = true); + + void setHandler(AsyncWebHandler *handler){ _handler = handler; } + void addInterestingHeader(const String& name); + + void redirect(const String& url); + + void send(AsyncWebServerResponse *response); + void send(int code, const String& contentType=String(), const String& content=String()); + void send(FS &fs, const String& path, const String& contentType=String(), bool download=false, AwsTemplateProcessor callback=nullptr); + void send(File content, const String& path, const String& contentType=String(), bool download=false, AwsTemplateProcessor callback=nullptr); + void send(Stream &stream, const String& contentType, size_t len, AwsTemplateProcessor callback=nullptr); + void send(const String& contentType, size_t len, AwsResponseFiller callback, AwsTemplateProcessor templateCallback=nullptr); + void sendChunked(const String& contentType, AwsResponseFiller callback, AwsTemplateProcessor templateCallback=nullptr); + void send_P(int code, const String& contentType, const uint8_t * content, size_t len, AwsTemplateProcessor callback=nullptr); + void send_P(int code, const String& contentType, PGM_P content, AwsTemplateProcessor callback=nullptr); + + AsyncWebServerResponse *beginResponse(int code, const String& contentType=String(), const String& content=String()); + AsyncWebServerResponse *beginResponse(FS &fs, const String& path, const String& contentType=String(), bool download=false, AwsTemplateProcessor callback=nullptr); + AsyncWebServerResponse *beginResponse(File content, const String& path, const String& contentType=String(), bool download=false, AwsTemplateProcessor callback=nullptr); + AsyncWebServerResponse *beginResponse(Stream &stream, const String& contentType, size_t len, AwsTemplateProcessor callback=nullptr); + AsyncWebServerResponse *beginResponse(const String& contentType, size_t len, AwsResponseFiller callback, AwsTemplateProcessor templateCallback=nullptr); + AsyncWebServerResponse *beginChunkedResponse(const String& contentType, AwsResponseFiller callback, AwsTemplateProcessor templateCallback=nullptr); + AsyncResponseStream *beginResponseStream(const String& contentType, size_t bufferSize=1460); + AsyncWebServerResponse *beginResponse_P(int code, const String& contentType, const uint8_t * content, size_t len, AwsTemplateProcessor callback=nullptr); + AsyncWebServerResponse *beginResponse_P(int code, const String& contentType, PGM_P content, AwsTemplateProcessor callback=nullptr); + + size_t headers() const; // get header count + bool hasHeader(const String& name) const; // check if header exists + bool hasHeader(const __FlashStringHelper * data) const; // check if header exists + + AsyncWebHeader* getHeader(const String& name) const; + AsyncWebHeader* getHeader(const __FlashStringHelper * data) const; + AsyncWebHeader* getHeader(size_t num) const; + + size_t params() const; // get arguments count + bool hasParam(const String& name, bool post=false, bool file=false) const; + bool hasParam(const __FlashStringHelper * data, bool post=false, bool file=false) const; + + AsyncWebParameter* getParam(const String& name, bool post=false, bool file=false) const; + AsyncWebParameter* getParam(const __FlashStringHelper * data, bool post, bool file) const; + AsyncWebParameter* getParam(size_t num) const; + + size_t args() const { return params(); } // get arguments count + const String& arg(const String& name) const; // get request argument value by name + const String& arg(const __FlashStringHelper * data) const; // get request argument value by F(name) + const String& arg(size_t i) const; // get request argument value by number + const String& argName(size_t i) const; // get request argument name by number + bool hasArg(const char* name) const; // check if argument exists + bool hasArg(const __FlashStringHelper * data) const; // check if F(argument) exists + + const String& ASYNCWEBSERVER_REGEX_ATTRIBUTE pathArg(size_t i) const; + + const String& header(const char* name) const;// get request header value by name + const String& header(const __FlashStringHelper * data) const;// get request header value by F(name) + const String& header(size_t i) const; // get request header value by number + const String& headerName(size_t i) const; // get request header name by number + String urlDecode(const String& text) const; +}; + +/* + * FILTER :: Callback to filter AsyncWebRewrite and AsyncWebHandler (done by the Server) + * */ + +typedef std::function ArRequestFilterFunction; + +bool ON_STA_FILTER(AsyncWebServerRequest *request); + +bool ON_AP_FILTER(AsyncWebServerRequest *request); + +/* + * REWRITE :: One instance can be handle any Request (done by the Server) + * */ + +class AsyncWebRewrite { + protected: + String _from; + String _toUrl; + String _params; + ArRequestFilterFunction _filter; + public: + AsyncWebRewrite(const char* from, const char* to): _from(from), _toUrl(to), _params(String()), _filter(NULL){ + int index = _toUrl.indexOf('?'); + if (index > 0) { + _params = _toUrl.substring(index +1); + _toUrl = _toUrl.substring(0, index); + } + } + virtual ~AsyncWebRewrite(){} + AsyncWebRewrite& setFilter(ArRequestFilterFunction fn) { _filter = fn; return *this; } + bool filter(AsyncWebServerRequest *request) const { return _filter == NULL || _filter(request); } + const String& from(void) const { return _from; } + const String& toUrl(void) const { return _toUrl; } + const String& params(void) const { return _params; } + virtual bool match(AsyncWebServerRequest *request) { return from() == request->url() && filter(request); } +}; + +/* + * HANDLER :: One instance can be attached to any Request (done by the Server) + * */ + +class AsyncWebHandler { + protected: + ArRequestFilterFunction _filter; + String _username; + String _password; + public: + AsyncWebHandler():_username(""), _password(""){} + AsyncWebHandler& setFilter(ArRequestFilterFunction fn) { _filter = fn; return *this; } + AsyncWebHandler& setAuthentication(const char *username, const char *password){ _username = String(username);_password = String(password); return *this; }; + bool filter(AsyncWebServerRequest *request){ return _filter == NULL || _filter(request); } + virtual ~AsyncWebHandler(){} + virtual bool canHandle(AsyncWebServerRequest *request __attribute__((unused))){ + return false; + } + virtual void handleRequest(AsyncWebServerRequest *request __attribute__((unused))){} + virtual void handleUpload(AsyncWebServerRequest *request __attribute__((unused)), const String& filename __attribute__((unused)), size_t index __attribute__((unused)), uint8_t *data __attribute__((unused)), size_t len __attribute__((unused)), bool final __attribute__((unused))){} + virtual void handleBody(AsyncWebServerRequest *request __attribute__((unused)), uint8_t *data __attribute__((unused)), size_t len __attribute__((unused)), size_t index __attribute__((unused)), size_t total __attribute__((unused))){} + virtual bool isRequestHandlerTrivial(){return true;} +}; + +/* + * RESPONSE :: One instance is created for each Request (attached by the Handler) + * */ + +typedef enum { + RESPONSE_SETUP, RESPONSE_HEADERS, RESPONSE_CONTENT, RESPONSE_WAIT_ACK, RESPONSE_END, RESPONSE_FAILED +} WebResponseState; + +class AsyncWebServerResponse { + protected: + int _code; + LinkedList _headers; + String _contentType; + size_t _contentLength; + bool _sendContentLength; + bool _chunked; + size_t _headLength; + size_t _sentLength; + size_t _ackedLength; + size_t _writtenLength; + WebResponseState _state; + const char* _responseCodeToString(int code); + + public: + AsyncWebServerResponse(); + virtual ~AsyncWebServerResponse(); + virtual void setCode(int code); + virtual void setContentLength(size_t len); + virtual void setContentType(const String& type); + virtual void addHeader(const String& name, const String& value); + virtual String _assembleHead(uint8_t version); + virtual bool _started() const; + virtual bool _finished() const; + virtual bool _failed() const; + virtual bool _sourceValid() const; + virtual void _respond(AsyncWebServerRequest *request); + virtual size_t _ack(AsyncWebServerRequest *request, size_t len, uint32_t time); +}; + +/* + * SERVER :: One instance + * */ + +typedef std::function ArRequestHandlerFunction; +typedef std::function ArUploadHandlerFunction; +typedef std::function ArBodyHandlerFunction; + +class AsyncWebServer { + protected: + AsyncServer _server; + LinkedList _rewrites; + LinkedList _handlers; + AsyncCallbackWebHandler* _catchAllHandler; + + public: + AsyncWebServer(uint16_t port); + ~AsyncWebServer(); + + void begin(); + void end(); + +#if ASYNC_TCP_SSL_ENABLED + void onSslFileRequest(AcSSlFileHandler cb, void* arg); + void beginSecure(const char *cert, const char *private_key_file, const char *password); +#endif + + AsyncWebRewrite& addRewrite(AsyncWebRewrite* rewrite); + bool removeRewrite(AsyncWebRewrite* rewrite); + AsyncWebRewrite& rewrite(const char* from, const char* to); + + AsyncWebHandler& addHandler(AsyncWebHandler* handler); + bool removeHandler(AsyncWebHandler* handler); + + AsyncCallbackWebHandler& on(const char* uri, ArRequestHandlerFunction onRequest); + AsyncCallbackWebHandler& on(const char* uri, WebRequestMethodComposite method, ArRequestHandlerFunction onRequest); + AsyncCallbackWebHandler& on(const char* uri, WebRequestMethodComposite method, ArRequestHandlerFunction onRequest, ArUploadHandlerFunction onUpload); + AsyncCallbackWebHandler& on(const char* uri, WebRequestMethodComposite method, ArRequestHandlerFunction onRequest, ArUploadHandlerFunction onUpload, ArBodyHandlerFunction onBody); + + AsyncStaticWebHandler& serveStatic(const char* uri, fs::FS& fs, const char* path, const char* cache_control = NULL); + + void onNotFound(ArRequestHandlerFunction fn); //called when handler is not assigned + void onFileUpload(ArUploadHandlerFunction fn); //handle file uploads + void onRequestBody(ArBodyHandlerFunction fn); //handle posts with plain body content (JSON often transmitted this way as a request) + + void reset(); //remove all writers and handlers, with onNotFound/onFileUpload/onRequestBody + + void _handleDisconnect(AsyncWebServerRequest *request); + void _attachHandler(AsyncWebServerRequest *request); + void _rewriteRequest(AsyncWebServerRequest *request); +}; + +class DefaultHeaders { + using headers_t = LinkedList; + headers_t _headers; + + DefaultHeaders() + :_headers(headers_t([](AsyncWebHeader *h){ delete h; })) + {} +public: + using ConstIterator = headers_t::ConstIterator; + + void addHeader(const String& name, const String& value){ + _headers.add(new AsyncWebHeader(name, value)); + } + + ConstIterator begin() const { return _headers.begin(); } + ConstIterator end() const { return _headers.end(); } + + DefaultHeaders(DefaultHeaders const &) = delete; + DefaultHeaders &operator=(DefaultHeaders const &) = delete; + static DefaultHeaders &Instance() { + static DefaultHeaders instance; + return instance; + } +}; + +#include "WebResponseImpl.h" +#include "WebHandlerImpl.h" +#include "AsyncWebSocket.h" +#include "AsyncEventSource.h" + +#endif /* _AsyncWebServer_H_ */ diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/SPIFFSEditor.cpp b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/SPIFFSEditor.cpp new file mode 100644 index 00000000..a84fa87d --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/SPIFFSEditor.cpp @@ -0,0 +1,544 @@ +#include "SPIFFSEditor.h" +#include + +//File: edit.htm.gz, Size: 4151 +#define edit_htm_gz_len 4151 +const uint8_t edit_htm_gz[] PROGMEM = { + 0x1F, 0x8B, 0x08, 0x08, 0xB8, 0x94, 0xB1, 0x59, 0x00, 0x03, 0x65, 0x64, 0x69, 0x74, 0x2E, 0x68, + 0x74, 0x6D, 0x00, 0xB5, 0x3A, 0x0B, 0x7B, 0xDA, 0xB8, 0xB2, 0x7F, 0xC5, 0x71, 0xCF, 0x66, 0xED, + 0x83, 0x31, 0x90, 0xA4, 0xD9, 0xD6, 0xC4, 0xC9, 0x42, 0x92, 0x36, 0x6D, 0xF3, 0x6A, 0x80, 0xB6, + 0x69, 0x4F, 0xEE, 0x7E, 0xC2, 0x16, 0xA0, 0xC6, 0x96, 0x5D, 0x5B, 0x0E, 0x49, 0x59, 0xFE, 0xFB, + 0x9D, 0x91, 0x6C, 0xB0, 0x09, 0x69, 0x77, 0xCF, 0xBD, 0xBB, 0xDD, 0x2D, 0x92, 0x46, 0x33, 0x9A, + 0x19, 0xCD, 0x53, 0xDE, 0xBD, 0x8D, 0xA3, 0x8B, 0xC3, 0xFE, 0xF5, 0xE5, 0xB1, 0x36, 0x11, 0x61, + 0xB0, 0xBF, 0x87, 0x7F, 0x6B, 0x01, 0xE1, 0x63, 0x97, 0xF2, 0xFD, 0x3D, 0xC1, 0x44, 0x40, 0xF7, + 0x8F, 0x7B, 0x97, 0xDA, 0xB1, 0xCF, 0x44, 0x94, 0xEC, 0x35, 0xD4, 0xCA, 0x5E, 0x2A, 0x1E, 0x02, + 0xAA, 0x85, 0xD4, 0x67, 0xC4, 0x4D, 0xBD, 0x84, 0xC2, 0x66, 0xDB, 0x0B, 0x67, 0xDF, 0xEB, 0x8C, + 0xFB, 0xF4, 0xDE, 0xD9, 0x6E, 0x36, 0xDB, 0x71, 0x94, 0x32, 0xC1, 0x22, 0xEE, 0x90, 0x61, 0x1A, + 0x05, 0x99, 0xA0, 0xED, 0x80, 0x8E, 0x84, 0xF3, 0x3C, 0xBE, 0x6F, 0x0F, 0xA3, 0xC4, 0xA7, 0x89, + 0xD3, 0x8A, 0xEF, 0x35, 0x00, 0x31, 0x5F, 0x7B, 0xB6, 0xB3, 0xB3, 0xD3, 0x1E, 0x12, 0xEF, 0x76, + 0x9C, 0x44, 0x19, 0xF7, 0xEB, 0x5E, 0x14, 0x44, 0x89, 0xF3, 0x6C, 0xF4, 0x1C, 0xFF, 0xB4, 0x7D, + 0x96, 0xC6, 0x01, 0x79, 0x70, 0x78, 0xC4, 0x29, 0xE0, 0xDE, 0xD7, 0xD3, 0x09, 0xF1, 0xA3, 0xA9, + 0xD3, 0xD4, 0x9A, 0x5A, 0xAB, 0x09, 0x44, 0x92, 0xF1, 0x90, 0x18, 0x4D, 0x0B, 0xFF, 0xD8, 0x3B, + 0x66, 0x7B, 0x14, 0x71, 0x51, 0x4F, 0xD9, 0x77, 0xEA, 0xB4, 0xB6, 0xE0, 0x34, 0x39, 0x1D, 0x91, + 0x90, 0x05, 0x0F, 0x4E, 0x4A, 0x78, 0x5A, 0x4F, 0x69, 0xC2, 0x46, 0x6A, 0x79, 0x4A, 0xD9, 0x78, + 0x22, 0x9C, 0xDF, 0x9A, 0xCD, 0x39, 0xF0, 0xAF, 0x65, 0xC1, 0x2C, 0x60, 0x29, 0x20, 0xA3, 0x78, + 0xEA, 0x3C, 0x11, 0xC5, 0x4E, 0x53, 0xB1, 0xDE, 0x6C, 0x87, 0x24, 0x19, 0x33, 0x0E, 0x83, 0x98, + 0xF8, 0x3E, 0xE3, 0x63, 0x47, 0xA1, 0x05, 0x6C, 0xB6, 0x90, 0x36, 0xA1, 0x01, 0x11, 0xEC, 0x8E, + 0xB6, 0x43, 0xC6, 0xEB, 0x53, 0xE6, 0x8B, 0x89, 0xB3, 0x0B, 0x3C, 0xB6, 0xBD, 0x2C, 0x49, 0x41, + 0xA6, 0x38, 0x62, 0x5C, 0xD0, 0x44, 0xA2, 0xA5, 0x31, 0xE1, 0xB3, 0x5C, 0x54, 0x54, 0x40, 0x21, + 0x27, 0xE3, 0x01, 0xE3, 0xB4, 0x3E, 0x0C, 0x22, 0xEF, 0x76, 0x71, 0xD2, 0x6E, 0x7C, 0x9F, 0x9F, + 0xE5, 0x4C, 0xA2, 0x3B, 0x9A, 0xCC, 0x96, 0xEA, 0x92, 0xD8, 0x15, 0x60, 0x85, 0x34, 0xA5, 0x74, + 0x6E, 0x8B, 0xBB, 0x0C, 0xA0, 0x96, 0xFC, 0x05, 0x29, 0x17, 0xFC, 0x2F, 0x45, 0x5A, 0x11, 0x5C, + 0xA1, 0x30, 0x1E, 0x67, 0x62, 0xF6, 0xF8, 0x2A, 0xA3, 0x98, 0x78, 0x4C, 0x3C, 0xA0, 0xFC, 0xB0, + 0x6D, 0x86, 0xBA, 0x04, 0xAC, 0x24, 0x24, 0x81, 0x86, 0x3A, 0xD7, 0x3E, 0xD0, 0xC4, 0x27, 0x9C, + 0x58, 0x9D, 0x84, 0x91, 0xC0, 0xEA, 0x2D, 0xB5, 0x5E, 0x0F, 0xA3, 0xEF, 0xF5, 0x0C, 0xC6, 0x30, + 0x0F, 0xA8, 0x27, 0x94, 0x92, 0xE1, 0x1E, 0x86, 0xB7, 0x4C, 0x3C, 0x06, 0x3C, 0x5A, 0x28, 0xA9, + 0x4B, 0x2A, 0x69, 0xA2, 0x2E, 0xB0, 0x25, 0xD5, 0x83, 0x1C, 0x4B, 0xC9, 0x95, 0x50, 0xF5, 0x61, + 0x24, 0x44, 0x14, 0x4A, 0x93, 0x5B, 0x08, 0xAC, 0x49, 0xAB, 0x79, 0xF1, 0xE8, 0x46, 0xD6, 0x6B, + 0xBF, 0x44, 0xBE, 0x0D, 0x7A, 0x15, 0xCC, 0x23, 0x41, 0x9D, 0x04, 0x6C, 0xCC, 0x9D, 0x90, 0xF9, + 0x7E, 0x40, 0x4B, 0x56, 0xEB, 0x64, 0x49, 0x60, 0xF8, 0x44, 0x10, 0x87, 0x85, 0x64, 0x4C, 0x1B, + 0x31, 0x1F, 0x03, 0x34, 0xA5, 0xBB, 0x3B, 0x16, 0xFB, 0xD0, 0xBD, 0xB8, 0x9A, 0x36, 0xDF, 0xBD, + 0x1E, 0x47, 0x1D, 0xF8, 0xE7, 0xBC, 0x37, 0x98, 0x1C, 0x0F, 0xC6, 0x30, 0xEA, 0xE2, 0xB4, 0xF3, + 0xFE, 0xB0, 0xF3, 0x1E, 0x7E, 0x0E, 0x5B, 0xB5, 0xAF, 0xA3, 0x6F, 0xB8, 0xD0, 0x7D, 0xED, 0x77, + 0xFB, 0x83, 0xE3, 0x4E, 0xE7, 0x5D, 0xE3, 0xCD, 0xF9, 0xF4, 0xE3, 0xBB, 0x5D, 0x04, 0x77, 0x83, + 0xE6, 0xD5, 0x87, 0x49, 0x73, 0xB0, 0xF5, 0x32, 0xF4, 0x4F, 0xFC, 0x89, 0x17, 0x0E, 0x3A, 0xEF, + 0x3F, 0x5E, 0xDD, 0x5D, 0x87, 0x83, 0x71, 0xEF, 0x63, 0x6B, 0xF2, 0x79, 0xEB, 0x43, 0xEF, 0xF3, + 0xC7, 0x57, 0xB7, 0xF4, 0xD3, 0xC9, 0xDB, 0xCF, 0xFD, 0x29, 0x20, 0x1C, 0x45, 0xBD, 0xC1, 0x55, + 0xF7, 0x43, 0x77, 0xFC, 0xB9, 0xEB, 0x1D, 0xDF, 0x0F, 0x83, 0xF3, 0xEE, 0xEB, 0xCE, 0xB0, 0xB3, + 0xE5, 0x51, 0x3A, 0xEE, 0x5F, 0x75, 0xB3, 0x37, 0xEF, 0x2E, 0xC6, 0x8C, 0x4D, 0x7A, 0x9F, 0xCF, + 0xFB, 0xDE, 0xE1, 0xF3, 0xD3, 0xC1, 0x49, 0x87, 0x4D, 0xCE, 0xDF, 0x5E, 0x35, 0x6F, 0x5F, 0xBF, + 0x3B, 0x3C, 0xF2, 0xAE, 0xDF, 0x5E, 0xEF, 0x1E, 0x6D, 0x37, 0x7E, 0xFB, 0xED, 0xCC, 0xBF, 0x60, + 0xBC, 0x7F, 0xF7, 0xBD, 0x33, 0x3E, 0x9C, 0xBE, 0x78, 0x48, 0xFB, 0x93, 0x37, 0x77, 0xBC, 0xF1, + 0x21, 0xFA, 0xFA, 0xE6, 0xE1, 0x0C, 0xFE, 0xBB, 0xBC, 0xAC, 0x0D, 0x7B, 0xAD, 0x74, 0xF0, 0xFE, + 0xCD, 0x87, 0xAD, 0xF4, 0xE5, 0xF3, 0xB8, 0x7B, 0x74, 0x74, 0x17, 0x0E, 0x2F, 0x1B, 0xA1, 0x7F, + 0x3B, 0x12, 0x2F, 0xB6, 0x45, 0x7C, 0x3D, 0xCE, 0x3E, 0x7F, 0x7B, 0xFE, 0x76, 0xD2, 0xB8, 0xA0, + 0xE4, 0x7A, 0x52, 0x7B, 0xF8, 0xFE, 0xF0, 0x62, 0xD2, 0x3F, 0xB9, 0x3B, 0x0F, 0xC8, 0xFD, 0xF9, + 0xB9, 0xF7, 0x3D, 0xAC, 0x05, 0xE4, 0xE5, 0x45, 0x3F, 0x20, 0x49, 0x6B, 0xE0, 0x77, 0x1A, 0xB5, + 0xC3, 0xAD, 0xCE, 0x8E, 0x48, 0xAE, 0x0E, 0xF9, 0xD1, 0xF6, 0xD7, 0xDE, 0x8B, 0x6E, 0xB7, 0x15, + 0x0D, 0xBF, 0x6D, 0xBD, 0xBE, 0xDD, 0x7D, 0x3D, 0xD8, 0x7D, 0x3F, 0x7C, 0xDF, 0xE9, 0xED, 0x74, + 0x07, 0xE4, 0xBA, 0xF7, 0xBE, 0x33, 0xDA, 0x19, 0x4E, 0x26, 0xEF, 0xDE, 0xF5, 0x5F, 0xF9, 0x9D, + 0xEF, 0x49, 0xE7, 0x62, 0xDA, 0xB9, 0x3F, 0x1E, 0x74, 0x4E, 0x6A, 0xEF, 0x8E, 0xCF, 0x9A, 0xAD, + 0xDE, 0xF5, 0xF6, 0xF8, 0x6C, 0x77, 0xDA, 0x4D, 0x8F, 0x3B, 0xEF, 0xBB, 0xCD, 0xF1, 0xDB, 0x5A, + 0x48, 0x3E, 0x47, 0x87, 0xDB, 0xE3, 0x37, 0xBB, 0xEC, 0xF2, 0x9A, 0x74, 0xDE, 0x74, 0xDF, 0xA6, + 0xEC, 0x2A, 0x3C, 0x19, 0x34, 0x3B, 0x9D, 0xD3, 0x0B, 0xFA, 0xEA, 0x70, 0x9B, 0xBC, 0xDB, 0xF2, + 0x3E, 0x82, 0xFE, 0x07, 0x9F, 0xE8, 0x6F, 0xB5, 0xCE, 0xF4, 0xA2, 0x19, 0x78, 0x2F, 0x69, 0xFF, + 0xE4, 0xBA, 0x2F, 0x6F, 0xE7, 0x38, 0x78, 0xD5, 0xBF, 0xED, 0x65, 0xEF, 0xC3, 0xC3, 0x43, 0x53, + 0xE3, 0x51, 0x3D, 0xA1, 0x31, 0x25, 0xA2, 0x1C, 0xAE, 0x16, 0xFE, 0x01, 0xB6, 0xB5, 0xB4, 0xC2, + 0xDC, 0x4F, 0x05, 0xBD, 0x17, 0x75, 0x9F, 0x7A, 0x51, 0x42, 0xE4, 0x1E, 0x40, 0xA0, 0x09, 0x9A, + 0xD8, 0xFC, 0x77, 0x19, 0x3F, 0x35, 0x15, 0x3F, 0x35, 0xC2, 0x7D, 0xCD, 0x28, 0x1C, 0x01, 0x83, + 0x87, 0x4F, 0xEF, 0x98, 0x47, 0xEB, 0x31, 0xBB, 0xA7, 0x41, 0x5D, 0x22, 0x3B, 0x4D, 0x73, 0x26, + 0xFD, 0xAD, 0xD8, 0x46, 0x38, 0x98, 0x9A, 0xA4, 0x5A, 0x2C, 0xF8, 0x5F, 0x89, 0x47, 0x21, 0xB0, + 0x81, 0xCB, 0x84, 0xF8, 0xAB, 0x7C, 0x27, 0x4A, 0xEA, 0xC3, 0x6C, 0x3C, 0x62, 0xF7, 0xE0, 0xD0, + 0x23, 0xC6, 0x99, 0xA0, 0x5A, 0x2B, 0x9D, 0xFF, 0x5E, 0x90, 0xB9, 0xA5, 0x0F, 0xA3, 0x84, 0x84, + 0x34, 0xD5, 0xFE, 0x22, 0x99, 0xD9, 0x28, 0x89, 0xC2, 0x65, 0x10, 0x99, 0x8B, 0xA8, 0x34, 0x99, + 0xCF, 0x9F, 0x65, 0x71, 0x10, 0x11, 0x10, 0x73, 0x4D, 0xE4, 0x50, 0xF1, 0x34, 0x91, 0x6E, 0xB5, + 0x88, 0xAB, 0xB9, 0x9B, 0x6D, 0xA1, 0x5B, 0x96, 0xDD, 0x7A, 0x6B, 0x67, 0xE9, 0xBA, 0x75, 0xB9, + 0x17, 0xE3, 0xFD, 0x9A, 0x4C, 0x81, 0xF1, 0xA0, 0x14, 0xEE, 0x9E, 0x09, 0x50, 0xE9, 0x13, 0x87, + 0xCB, 0x43, 0xF2, 0xC8, 0xB0, 0x60, 0x40, 0x05, 0xEA, 0x96, 0x8C, 0xD4, 0x85, 0x24, 0xB0, 0x6F, + 0xFE, 0x8C, 0xCA, 0xBC, 0x67, 0x3D, 0x8B, 0x13, 0xB8, 0x0D, 0x3A, 0xFD, 0x11, 0xCD, 0x42, 0xA6, + 0x2A, 0x6D, 0x45, 0x53, 0x65, 0xBC, 0x5C, 0x84, 0x65, 0xDA, 0x93, 0xBC, 0x16, 0xA4, 0x1F, 0x4B, + 0x05, 0xE0, 0x05, 0x37, 0xCF, 0x91, 0x9B, 0x1F, 0x6A, 0x75, 0x7B, 0xF7, 0x97, 0x9C, 0x87, 0x9D, + 0xE6, 0x2F, 0x73, 0x3B, 0xDF, 0x5B, 0xA4, 0xE4, 0x56, 0x13, 0xFE, 0x29, 0x32, 0xEF, 0x8B, 0x25, + 0x0B, 0xC3, 0xE7, 0xF8, 0xA7, 0x60, 0x10, 0xE9, 0x94, 0x80, 0xDB, 0x3B, 0x2F, 0x5F, 0xF8, 0xC3, + 0x02, 0x98, 0x0B, 0xF6, 0x24, 0x3C, 0x21, 0x3E, 0xCB, 0x52, 0xE7, 0x79, 0xF3, 0x97, 0x5C, 0x9F, + 0x5B, 0x3B, 0x28, 0xFB, 0xE2, 0x2E, 0x71, 0xB2, 0xB4, 0xD8, 0x34, 0x66, 0x5C, 0xDB, 0x4A, 0x35, + 0xBC, 0x6F, 0x92, 0x2C, 0x0C, 0xB3, 0x92, 0xED, 0xE7, 0xBF, 0x2F, 0x4D, 0x13, 0xF7, 0xCF, 0x9A, + 0xBF, 0xCC, 0x44, 0x02, 0xD9, 0x64, 0x04, 0xB9, 0xC6, 0x49, 0x22, 0x41, 0x04, 0x35, 0x9A, 0xE6, + 0x1C, 0x84, 0x5B, 0x03, 0xD8, 0xDE, 0x6D, 0xFA, 0x74, 0x6C, 0xCE, 0xE7, 0x7B, 0x0D, 0x99, 0xD7, + 0xA0, 0x6C, 0xF1, 0x12, 0x16, 0x8B, 0xFD, 0x51, 0xC6, 0x3D, 0xE4, 0x41, 0x1B, 0x53, 0x83, 0x9A, + 0xB3, 0x84, 0x8A, 0x2C, 0xE1, 0x9A, 0x1F, 0x79, 0x19, 0x1A, 0xBB, 0x3D, 0xA6, 0xE2, 0x58, 0xD9, + 0x7D, 0xF7, 0xE1, 0x8D, 0x0F, 0x3B, 0xE6, 0x0B, 0x04, 0x6F, 0x2D, 0x02, 0x38, 0x30, 0x9C, 0x97, + 0xE3, 0x54, 0xF6, 0x43, 0x82, 0x01, 0x22, 0xEF, 0xE8, 0x83, 0x41, 0x2D, 0xB1, 0x40, 0xA4, 0x36, + 0xAE, 0x1B, 0xC5, 0x2E, 0x80, 0x71, 0x73, 0x76, 0x07, 0x4A, 0x20, 0x2E, 0xFD, 0x22, 0x6E, 0x2C, + 0xE6, 0x72, 0xF8, 0x69, 0xE7, 0xBB, 0xC9, 0x1E, 0x3B, 0xA8, 0xB7, 0x1C, 0xB2, 0xCF, 0x0E, 0x5A, + 0xE0, 0x5E, 0x65, 0x6E, 0xE4, 0xB9, 0xAF, 0x58, 0x40, 0x07, 0xB9, 0xC3, 0xE1, 0x31, 0x48, 0x6C, + 0xB1, 0x85, 0x28, 0xE2, 0x5B, 0xCD, 0xE6, 0x86, 0x4B, 0x0F, 0x48, 0x00, 0x39, 0xCC, 0xD0, 0x8F, + 0xAF, 0xAE, 0x2E, 0xAE, 0xBE, 0xE8, 0x35, 0x5A, 0xD3, 0x6F, 0x1C, 0x4D, 0xAF, 0x71, 0xD3, 0x11, + 0x76, 0x42, 0x47, 0x09, 0x4D, 0x27, 0x97, 0x44, 0x4C, 0x8C, 0xD4, 0xBE, 0x23, 0x41, 0x56, 0x16, + 0x84, 0xA1, 0xDC, 0xC8, 0xA2, 0x70, 0x39, 0x9D, 0x6A, 0xAF, 0x40, 0xCD, 0x47, 0x90, 0xEA, 0xDA, + 0xC2, 0x26, 0x71, 0x4C, 0xB9, 0x6F, 0xE8, 0x31, 0x20, 0xEA, 0x16, 0x35, 0xAD, 0x84, 0x7E, 0xCB, + 0x68, 0x2A, 0x52, 0x1B, 0x2C, 0xD7, 0xD0, 0x2F, 0x07, 0x7D, 0xDD, 0xD2, 0x1B, 0xE8, 0x47, 0x3A, + 0xF0, 0x46, 0xCC, 0x39, 0x52, 0x89, 0x5C, 0xD0, 0xA4, 0x3E, 0xCC, 0xC0, 0xA0, 0xB8, 0x6E, 0xB6, + 0x23, 0x9B, 0x71, 0x4E, 0x93, 0x93, 0xFE, 0xD9, 0xA9, 0xAB, 0x5F, 0x29, 0x46, 0xB4, 0x53, 0x28, + 0x48, 0x74, 0x4B, 0x5E, 0x51, 0x7E, 0xC8, 0xE1, 0x84, 0x05, 0xBE, 0x11, 0x99, 0x6D, 0x24, 0xE1, + 0x49, 0x12, 0xB2, 0x40, 0x01, 0x0A, 0x9E, 0x2D, 0x1E, 0x62, 0xEA, 0xEA, 0x23, 0x50, 0x86, 0x6E, + 0x79, 0x76, 0x98, 0x05, 0x82, 0xC5, 0x01, 0x75, 0x37, 0x5A, 0x30, 0xE3, 0x60, 0x41, 0xAE, 0x8E, + 0xB9, 0x19, 0x61, 0xCC, 0x77, 0x75, 0x15, 0xA1, 0xF2, 0xB8, 0xB6, 0xEE, 0x14, 0x4F, 0x9D, 0x92, + 0x56, 0x4E, 0x49, 0xCB, 0xB8, 0x4A, 0xE0, 0x34, 0x3F, 0x18, 0xC3, 0x3C, 0xCE, 0xD4, 0x51, 0x05, + 0xCC, 0xA7, 0x23, 0x02, 0x9C, 0x7C, 0x40, 0x6D, 0xBA, 0x7A, 0x63, 0xDD, 0x41, 0xA9, 0x3A, 0xC8, + 0xAF, 0x6A, 0xC4, 0x2F, 0x6B, 0x44, 0xDD, 0xEE, 0x3A, 0x64, 0x5F, 0x21, 0x07, 0x55, 0xE4, 0xA0, + 0x8C, 0x7C, 0x28, 0x8D, 0x64, 0x1D, 0x72, 0xA0, 0x90, 0x93, 0x8A, 0x88, 0x89, 0x14, 0x51, 0x85, + 0xBD, 0x3A, 0x6A, 0x13, 0x05, 0xD2, 0xAD, 0xA4, 0x22, 0x66, 0x62, 0x83, 0x97, 0x92, 0x61, 0x40, + 0x7D, 0x77, 0xA3, 0x09, 0x33, 0x2C, 0xB6, 0xDD, 0xAD, 0xE6, 0x9A, 0x33, 0x12, 0x75, 0x46, 0x56, + 0x65, 0x30, 0x2B, 0x33, 0xA8, 0xF5, 0xC8, 0x1D, 0xD5, 0xD6, 0x31, 0x98, 0x99, 0x56, 0x60, 0x47, + 0xDC, 0x0B, 0x98, 0x77, 0xEB, 0x2E, 0xBD, 0xC5, 0x9C, 0xB1, 0x85, 0x85, 0x5A, 0x5C, 0x06, 0xBA, + 0x01, 0x94, 0x5E, 0x8B, 0xA5, 0x7C, 0x80, 0xFA, 0x9E, 0x5B, 0xD9, 0x5A, 0x02, 0xDC, 0xA6, 0xF7, + 0xD4, 0x3B, 0x8C, 0xC2, 0x90, 0xA0, 0xED, 0xA6, 0xC0, 0x41, 0x3E, 0xD1, 0xCD, 0xB9, 0x15, 0xAD, + 0xC5, 0x79, 0xC2, 0x45, 0x2C, 0x7F, 0x3D, 0x8B, 0x23, 0x03, 0x5C, 0xCE, 0xF5, 0x6C, 0xD4, 0x61, + 0x6A, 0x83, 0x1E, 0xC7, 0x62, 0xF2, 0x13, 0x17, 0x2A, 0x0C, 0x54, 0xA2, 0x7C, 0x69, 0xDE, 0x58, + 0x0B, 0x91, 0x56, 0x7C, 0xEA, 0xA2, 0xB7, 0xE2, 0x54, 0xA8, 0xBC, 0x8A, 0x5D, 0x9A, 0x4B, 0x1D, + 0x94, 0x61, 0xB9, 0xBD, 0x2F, 0xA0, 0xFA, 0x7C, 0x0E, 0xE7, 0x01, 0xFF, 0x13, 0x68, 0xF9, 0xE8, + 0x5F, 0x17, 0x60, 0xC9, 0xA3, 0x34, 0x78, 0x8B, 0xBB, 0x0D, 0xE3, 0xC0, 0xF9, 0x8F, 0x6D, 0x7C, + 0xF9, 0x1F, 0xFB, 0xA6, 0x66, 0x9A, 0x07, 0xFF, 0x6A, 0x48, 0x0D, 0x1B, 0xC2, 0xFC, 0xD2, 0xBA, + 0xB1, 0x08, 0x80, 0xED, 0x7F, 0x9B, 0xFF, 0xB1, 0x25, 0xB8, 0x02, 0x6B, 0xDF, 0x45, 0x90, 0x49, + 0xF0, 0x24, 0x34, 0xB0, 0x68, 0xA4, 0x91, 0xCD, 0x4D, 0x43, 0xB8, 0xA4, 0x72, 0x8D, 0x35, 0x51, + 0xD3, 0x6D, 0x88, 0x53, 0x50, 0x5B, 0xAC, 0x04, 0xBF, 0x3E, 0x24, 0x7A, 0x15, 0x5B, 0x17, 0x00, + 0xC9, 0x3D, 0xCA, 0x0C, 0x3D, 0x22, 0x97, 0x52, 0xCB, 0x0C, 0x02, 0x42, 0xA7, 0x89, 0xE7, 0x2A, + 0xAD, 0x1D, 0x14, 0x30, 0x17, 0xA2, 0xE0, 0xBC, 0x1C, 0x2D, 0x15, 0xEA, 0xAA, 0xFD, 0x17, 0x0A, + 0xA3, 0xD6, 0x12, 0x8A, 0x04, 0x31, 0xAD, 0xD8, 0x79, 0xC6, 0x72, 0x75, 0x4C, 0x59, 0xBA, 0x35, + 0x59, 0x5D, 0x96, 0xAD, 0x04, 0xAE, 0x2F, 0x8D, 0xFE, 0xD7, 0x3D, 0x16, 0x8E, 0xB5, 0x12, 0x3F, + 0xF8, 0x97, 0xFB, 0x2B, 0x46, 0xE4, 0xCD, 0x3F, 0xBC, 0x21, 0x70, 0x05, 0xA6, 0x41, 0x6D, 0x1E, + 0x4D, 0x0D, 0xB3, 0xF6, 0xAB, 0xAE, 0x49, 0x8A, 0xAE, 0x1E, 0x92, 0xFB, 0xBC, 0xA7, 0xC4, 0x8C, + 0xD7, 0xD6, 0x70, 0x5E, 0xB4, 0x28, 0xF9, 0x82, 0xEC, 0xE6, 0x48, 0x26, 0xA2, 0xB6, 0x56, 0x64, + 0x52, 0xD5, 0xCA, 0xE8, 0x5A, 0x63, 0xFF, 0xD7, 0x4A, 0x40, 0xB7, 0x98, 0xBA, 0x4E, 0x15, 0x8C, + 0xB3, 0x00, 0x1C, 0x93, 0x3E, 0x1D, 0x69, 0x03, 0x26, 0x03, 0x75, 0x35, 0x46, 0x5A, 0x81, 0xC1, + 0xCC, 0x03, 0xC3, 0x2B, 0xFB, 0xF3, 0x1E, 0x16, 0xBF, 0xFB, 0x97, 0xAA, 0xAA, 0x81, 0xD4, 0x8B, + 0x33, 0x5D, 0x59, 0x59, 0xD5, 0x4B, 0xE0, 0xD2, 0x08, 0xA0, 0x5B, 0x8B, 0x3C, 0x3A, 0x8C, 0xFC, + 0x87, 0x52, 0xF6, 0x4D, 0xBB, 0x0F, 0x87, 0x01, 0x49, 0xD3, 0x73, 0xB8, 0x01, 0x43, 0xF7, 0x42, + 0x50, 0xB8, 0xB2, 0xC2, 0xFD, 0xE6, 0xE6, 0x66, 0x15, 0x29, 0xA1, 0x21, 0x14, 0xDB, 0x8A, 0x2B, + 0xF0, 0x49, 0xD3, 0xF1, 0x81, 0x30, 0x18, 0xD2, 0x1A, 0xC6, 0xF0, 0x25, 0xE3, 0x47, 0x5C, 0x71, + 0xF4, 0xF4, 0x22, 0xA6, 0xFC, 0x33, 0xDC, 0x95, 0x32, 0xCB, 0x1A, 0xAD, 0xA6, 0x68, 0xFA, 0x8F, + 0xD8, 0x3E, 0xCA, 0x0D, 0x76, 0xC1, 0x7A, 0xBA, 0x56, 0xA1, 0xFC, 0x9F, 0x61, 0xB9, 0x94, 0x28, + 0xD6, 0x70, 0x9C, 0x40, 0x80, 0x5A, 0xC3, 0x31, 0xC4, 0x1A, 0x41, 0x17, 0xFC, 0x26, 0x6B, 0xF9, + 0xCD, 0xFE, 0x19, 0x7E, 0x97, 0x76, 0x1E, 0x15, 0x25, 0x91, 0xAA, 0xAF, 0x50, 0x02, 0x9F, 0xDD, + 0xE9, 0xA6, 0x15, 0xB9, 0x55, 0x0A, 0x50, 0x1B, 0x46, 0x41, 0xD0, 0x8F, 0xE2, 0x83, 0x27, 0xD6, + 0x9D, 0xC5, 0x7A, 0x31, 0xC8, 0xD9, 0x5C, 0x6E, 0xB1, 0xBC, 0xB5, 0x44, 0x4F, 0xA1, 0xEC, 0x5F, + 0x4B, 0x15, 0x01, 0x3F, 0x23, 0x8B, 0x7B, 0xAC, 0xD4, 0xA5, 0x36, 0x28, 0x0F, 0x56, 0x3F, 0xD5, + 0x3C, 0xCB, 0x5F, 0xCC, 0xAE, 0x6B, 0x51, 0x9B, 0xC0, 0x38, 0x57, 0x92, 0x8B, 0x4A, 0xB2, 0xC8, + 0x13, 0x01, 0xA8, 0x58, 0xC7, 0x2E, 0xC4, 0x4D, 0x6B, 0x7A, 0x7C, 0xBF, 0x5C, 0x83, 0xC2, 0xDF, + 0xF5, 0xD5, 0x12, 0x33, 0x08, 0xC4, 0xD3, 0x95, 0x4B, 0x29, 0x5F, 0x37, 0x29, 0x8A, 0x0E, 0x62, + 0x47, 0xA3, 0x51, 0x4A, 0xC5, 0x47, 0x0C, 0x49, 0x56, 0xB2, 0x98, 0x9F, 0xC8, 0x90, 0x04, 0x8C, + 0x45, 0x3C, 0x8C, 0xB2, 0x94, 0x46, 0x99, 0xA8, 0xA4, 0x16, 0x63, 0x21, 0xCC, 0x5E, 0xFA, 0xE7, + 0x9F, 0x8B, 0xC9, 0x7E, 0x5A, 0x0B, 0x96, 0xD3, 0xEB, 0x3D, 0xBF, 0x34, 0xD9, 0xF7, 0x6B, 0x89, + 0xB9, 0x7A, 0xE9, 0xFF, 0x67, 0x4B, 0x21, 0x65, 0x4B, 0xF1, 0xB0, 0x54, 0x2E, 0x62, 0x62, 0x29, + 0xE6, 0xC9, 0x82, 0x91, 0x97, 0x7C, 0x16, 0x0D, 0x1A, 0x2B, 0x25, 0x55, 0x9E, 0x97, 0x7D, 0x95, + 0x43, 0x40, 0x59, 0x71, 0xE5, 0x35, 0x11, 0x06, 0x34, 0xE0, 0x63, 0x64, 0xF2, 0x41, 0xEB, 0xA7, + 0xD1, 0x94, 0x26, 0x87, 0x24, 0xA5, 0x06, 0x24, 0xCD, 0x65, 0xDC, 0x41, 0xA8, 0xE9, 0x04, 0xEB, + 0x76, 0x6D, 0x6E, 0x12, 0x05, 0xCE, 0x33, 0x77, 0xC4, 0xB1, 0x26, 0x03, 0xF9, 0xB2, 0xCA, 0x09, + 0xD4, 0xC6, 0xBE, 0x12, 0xA4, 0x3E, 0x52, 0x25, 0xA8, 0x61, 0x5A, 0xD0, 0x76, 0xC0, 0x35, 0x5F, + 0x26, 0x51, 0x4C, 0xC6, 0xB2, 0x07, 0x83, 0x35, 0x74, 0x0F, 0xA4, 0x66, 0x6D, 0x34, 0x91, 0x60, + 0xA9, 0x73, 0x29, 0xFC, 0x66, 0xD9, 0xC2, 0x70, 0x4B, 0x57, 0xC9, 0xB0, 0xBD, 0xF4, 0xA5, 0x35, + 0x59, 0x83, 0xE0, 0x0B, 0x6C, 0x62, 0xE0, 0x1E, 0x68, 0x64, 0xF2, 0x7B, 0x00, 0x77, 0x6B, 0xB6, + 0xA3, 0x3D, 0xD6, 0x8E, 0x6A, 0x35, 0x53, 0x55, 0xE9, 0xAE, 0x0B, 0x6D, 0x4E, 0x74, 0x23, 0x0B, + 0x4B, 0x10, 0xAA, 0x9A, 0x59, 0x0C, 0x38, 0x1B, 0x81, 0xAA, 0xBA, 0xC0, 0x11, 0xD6, 0x98, 0x66, + 0xA9, 0x23, 0xF1, 0x97, 0x1D, 0xC9, 0x13, 0xB5, 0x07, 0x95, 0xF5, 0x05, 0xD4, 0x31, 0xAB, 0x25, + 0x86, 0x30, 0xD3, 0x29, 0x13, 0xDE, 0x04, 0x03, 0x90, 0x07, 0x5A, 0xD5, 0x05, 0x14, 0xB5, 0x8E, + 0x1C, 0x4D, 0x44, 0xB8, 0x1C, 0x05, 0xF9, 0xF0, 0x6B, 0x9A, 0x0F, 0xBC, 0xB4, 0x18, 0xDD, 0x97, + 0x80, 0x50, 0xD2, 0xE6, 0xE0, 0x88, 0x8F, 0xF2, 0x21, 0xF4, 0xB2, 0x05, 0x9D, 0x02, 0x58, 0xFC, + 0xC6, 0x71, 0x3E, 0x8A, 0x27, 0xC5, 0x68, 0x42, 0xEF, 0x17, 0x78, 0x51, 0x01, 0xF5, 0xA9, 0xEE, + 0x28, 0x1B, 0xDB, 0x68, 0xCE, 0xF3, 0x41, 0x6B, 0x29, 0x7F, 0xF0, 0xFF, 0x28, 0x7F, 0xCC, 0xC7, + 0x85, 0x34, 0x71, 0x31, 0x1A, 0xB3, 0x42, 0x96, 0x61, 0x18, 0xFF, 0x90, 0x93, 0xA4, 0xD4, 0x13, + 0x97, 0x7A, 0x5A, 0xF1, 0xB3, 0xB6, 0x53, 0x98, 0x8E, 0x31, 0xAA, 0xF8, 0xE3, 0xC8, 0xF6, 0xF0, + 0xF7, 0x3C, 0xF2, 0x65, 0x6D, 0x69, 0x5A, 0xA1, 0x31, 0x82, 0x3A, 0x57, 0x37, 0xCB, 0x7E, 0x9A, + 0xFD, 0xB7, 0xAD, 0xE8, 0xD1, 0xF1, 0xE9, 0x71, 0xFF, 0xB8, 0x5C, 0x38, 0x23, 0xE7, 0x25, 0x93, + 0x8A, 0x2B, 0x5D, 0xFA, 0xB2, 0x22, 0x80, 0x02, 0x1B, 0x45, 0x01, 0x7B, 0xDD, 0xDC, 0x54, 0x7E, + 0xF1, 0xB6, 0x77, 0x71, 0x6E, 0xC7, 0x24, 0x01, 0x8F, 0x24, 0x15, 0xE6, 0xC2, 0x82, 0x44, 0xF9, + 0xE0, 0xD7, 0xC7, 0xA5, 0x72, 0x5D, 0x7E, 0x61, 0x70, 0xC4, 0xDC, 0x52, 0xA7, 0xA9, 0x7E, 0x78, + 0xE2, 0x62, 0x5D, 0x99, 0xBF, 0x04, 0x41, 0x72, 0x1A, 0x2D, 0x13, 0x55, 0x11, 0x67, 0x46, 0xE5, + 0x30, 0x2F, 0xEE, 0xB2, 0x75, 0x0D, 0xD3, 0xC8, 0xB4, 0xC4, 0x84, 0xA5, 0xE5, 0x46, 0xA5, 0x12, + 0x14, 0xFE, 0xA2, 0xB6, 0xE7, 0x8B, 0x91, 0x24, 0xB7, 0x5A, 0x73, 0xAB, 0x6F, 0x41, 0x2A, 0x3E, + 0x58, 0x04, 0x23, 0x66, 0x39, 0xDB, 0x16, 0x77, 0xA3, 0x43, 0xEE, 0x61, 0x5C, 0x7F, 0xBA, 0x35, + 0x78, 0xD2, 0x3C, 0x79, 0x61, 0x9E, 0xFC, 0xB1, 0x7B, 0x2E, 0x1C, 0x45, 0xF9, 0xDA, 0xE2, 0x98, + 0xF6, 0x10, 0x58, 0xBB, 0x6D, 0x2F, 0x7D, 0x18, 0x20, 0xD2, 0x83, 0xCB, 0x00, 0xF4, 0x63, 0x58, + 0xFF, 0x4A, 0xEE, 0x88, 0x7A, 0x09, 0xAA, 0xA2, 0xAD, 0x73, 0x54, 0xD8, 0xEE, 0xFD, 0x81, 0xA3, + 0xF2, 0xCE, 0x65, 0x18, 0x48, 0x97, 0xC3, 0x92, 0x37, 0x8B, 0x75, 0xC1, 0x61, 0x19, 0x31, 0x64, + 0x6C, 0x00, 0xE3, 0xCD, 0x5D, 0x49, 0x13, 0xD5, 0x1C, 0xB4, 0xF0, 0x1B, 0x08, 0x8A, 0x4F, 0x39, + 0xCE, 0x9A, 0x38, 0xAD, 0x62, 0x72, 0xC5, 0x23, 0xC8, 0x4A, 0x67, 0x89, 0xC0, 0x6E, 0x10, 0x0D, + 0x0D, 0x7C, 0x64, 0x9A, 0xA1, 0xB6, 0x1D, 0x3E, 0x37, 0xD7, 0xBC, 0xD9, 0x54, 0xFA, 0x4B, 0x62, + 0x79, 0xD5, 0xB0, 0x8B, 0x1C, 0x56, 0xCC, 0x75, 0x7D, 0x1F, 0xF4, 0xA3, 0x4E, 0x29, 0xAF, 0x48, + 0xA4, 0x53, 0xD1, 0x83, 0xC4, 0x86, 0xA2, 0x41, 0xBE, 0x91, 0x40, 0x44, 0x72, 0x4A, 0x33, 0x5D, + 0xC7, 0xCA, 0xD2, 0x0B, 0x28, 0x49, 0x7A, 0xB2, 0x73, 0x95, 0x49, 0x6B, 0x25, 0x06, 0xFE, 0xC8, + 0xD7, 0xF0, 0xC7, 0xA1, 0xD0, 0xA3, 0x83, 0x9B, 0x49, 0x2B, 0x83, 0xA4, 0x23, 0x64, 0x83, 0xA9, + 0x37, 0xE4, 0xBB, 0xA8, 0x2D, 0x2F, 0xCB, 0xB4, 0x16, 0x50, 0x70, 0x71, 0x83, 0xBB, 0x11, 0x30, + 0x52, 0x5A, 0xC4, 0x9E, 0x94, 0xA8, 0xC7, 0x8F, 0x10, 0x1F, 0x53, 0x4A, 0x20, 0x06, 0x20, 0xA6, + 0x40, 0xD0, 0xA7, 0x42, 0x8A, 0x54, 0xE6, 0x92, 0x53, 0x2A, 0x20, 0xCA, 0x48, 0xCD, 0xE2, 0xC1, + 0x85, 0x78, 0xD4, 0x46, 0xD6, 0x80, 0xFD, 0xDC, 0xBD, 0x73, 0x33, 0xDE, 0x90, 0x68, 0x09, 0x56, + 0x36, 0x3D, 0x9A, 0xA6, 0x52, 0x5C, 0x54, 0xC7, 0x19, 0xF8, 0xA8, 0xA1, 0x03, 0x5A, 0x23, 0x84, + 0x11, 0x1E, 0x84, 0x8A, 0x01, 0x40, 0x7F, 0x42, 0xC3, 0x1C, 0x22, 0x70, 0x08, 0x20, 0x82, 0xA0, + 0x7F, 0x49, 0x0D, 0xF7, 0x64, 0x05, 0xC9, 0xF8, 0xD8, 0x6D, 0x35, 0xF0, 0x9D, 0x66, 0x95, 0xEC, + 0x20, 0xA5, 0xBD, 0x68, 0x24, 0xFA, 0x64, 0x98, 0x1A, 0x50, 0x00, 0xAC, 0xD9, 0x01, 0xA0, 0x1E, + 0x24, 0x5E, 0x63, 0x2B, 0x3F, 0xEF, 0x04, 0x2A, 0xBB, 0x00, 0xAB, 0xBB, 0x8E, 0x87, 0x5F, 0x39, + 0x4F, 0x19, 0xA7, 0x39, 0x26, 0x00, 0x7B, 0x93, 0x68, 0x7A, 0x99, 0x30, 0x2E, 0xCE, 0x64, 0x1B, + 0x6A, 0x6C, 0xB4, 0xE4, 0xF5, 0xA9, 0x87, 0x15, 0x79, 0x3F, 0xC5, 0x8B, 0xCB, 0x0C, 0xF3, 0xBA, + 0x53, 0x79, 0x77, 0xB1, 0x86, 0x70, 0x21, 0x50, 0x66, 0x38, 0xB3, 0x29, 0x74, 0xB0, 0xFA, 0xA1, + 0x48, 0x82, 0x7A, 0x4F, 0xB7, 0x42, 0xE2, 0xC1, 0x44, 0xED, 0x81, 0xF9, 0xDC, 0xC2, 0xD8, 0xE1, + 0x94, 0x83, 0x5A, 0x0A, 0xB5, 0x02, 0x45, 0xC6, 0x95, 0xCD, 0x98, 0x35, 0x1D, 0x6A, 0x58, 0x88, + 0x61, 0xE0, 0xAF, 0xFE, 0x05, 0x0F, 0x1E, 0x1C, 0xC8, 0x55, 0x3F, 0xE1, 0x23, 0xE3, 0x7E, 0xF4, + 0x23, 0x3E, 0x3E, 0xAF, 0xF0, 0xF1, 0x79, 0x1D, 0x1F, 0xB4, 0xAA, 0x3C, 0x98, 0x0C, 0x80, 0xEC, + 0x19, 0xE1, 0x64, 0x4C, 0x13, 0x58, 0xC0, 0x43, 0x50, 0x25, 0x7F, 0x8B, 0xB3, 0x84, 0xFE, 0x98, + 0xB3, 0xDE, 0x84, 0x8D, 0xC4, 0x23, 0xFE, 0x8A, 0xD5, 0xFF, 0x82, 0x4B, 0x3C, 0x70, 0x3D, 0x97, + 0x79, 0x6D, 0x5A, 0x49, 0x28, 0x3F, 0x7E, 0x2B, 0x91, 0x7E, 0xE4, 0x42, 0x78, 0xA9, 0x38, 0xC8, + 0xDF, 0xB7, 0xF4, 0x00, 0xBC, 0x11, 0xF8, 0x29, 0x35, 0x75, 0xBC, 0x0B, 0xA5, 0xFC, 0x29, 0x30, + 0x64, 0xA8, 0xC0, 0x47, 0xDD, 0xD9, 0xDC, 0x12, 0xAE, 0x01, 0x8A, 0xF1, 0xA3, 0x29, 0xB0, 0xEA, + 0xC9, 0x02, 0xD7, 0x9E, 0x40, 0x26, 0x04, 0x91, 0xE0, 0x48, 0xC8, 0xA7, 0x8D, 0x2F, 0x07, 0x9B, + 0x37, 0x35, 0xC8, 0x43, 0x2E, 0xFC, 0x98, 0x2E, 0x0C, 0x36, 0x6F, 0xFE, 0x6D, 0x36, 0xC6, 0xCC, + 0x5A, 0x76, 0xA4, 0x96, 0x4C, 0xF6, 0xF4, 0x0B, 0xBF, 0x71, 0x09, 0x48, 0x5D, 0x49, 0x78, 0x45, + 0x34, 0x03, 0x6B, 0x43, 0x61, 0xE1, 0x07, 0xFF, 0x47, 0x09, 0xF8, 0x91, 0x9E, 0x07, 0xCE, 0xBD, + 0xE6, 0x3D, 0x5E, 0x2F, 0x3E, 0x85, 0xE9, 0x56, 0xE9, 0xC1, 0x4A, 0xC7, 0xEF, 0x53, 0x3A, 0x76, + 0x59, 0xA2, 0x14, 0x4A, 0x14, 0x59, 0x88, 0x1A, 0x6A, 0x50, 0x0E, 0x51, 0x98, 0x89, 0x17, 0xCD, + 0x81, 0x02, 0x9B, 0x73, 0x34, 0x5B, 0x3A, 0x02, 0x0F, 0xF4, 0xF5, 0x45, 0xEE, 0xFC, 0x74, 0x76, + 0x7A, 0x22, 0x44, 0x7C, 0xA5, 0x62, 0x22, 0xD0, 0xAA, 0x2E, 0x2C, 0x2F, 0xCF, 0x9C, 0x89, 0xE4, + 0xA1, 0x28, 0x75, 0x30, 0x31, 0x28, 0x87, 0xFE, 0x74, 0x31, 0xFC, 0x0A, 0x71, 0xD6, 0xD0, 0xCF, + 0x52, 0x48, 0x58, 0x5B, 0x36, 0xA2, 0xF7, 0xFB, 0x97, 0xF6, 0xAE, 0xDD, 0x84, 0xBA, 0x00, 0xB4, + 0x0A, 0x69, 0x19, 0xEE, 0x7D, 0xFE, 0xB7, 0x90, 0xB7, 0xFF, 0x1E, 0x32, 0x83, 0xA8, 0x95, 0x42, + 0x58, 0x2A, 0xF0, 0xAB, 0xB8, 0x93, 0x24, 0x9A, 0x4A, 0xB4, 0xE3, 0x24, 0xC1, 0x4B, 0xE9, 0x43, + 0x85, 0xA2, 0x0D, 0x61, 0x31, 0xA5, 0x89, 0xE6, 0x47, 0x34, 0xD5, 0x78, 0x24, 0xB4, 0x34, 0x8B, + 0x63, 0x68, 0x5C, 0x56, 0xF4, 0x61, 0xEB, 0xC5, 0xEB, 0xCB, 0xFB, 0x8C, 0x66, 0xD4, 0xCF, 0x97, + 0x69, 0x52, 0xD1, 0x0B, 0x56, 0x50, 0xDF, 0x10, 0xEE, 0x7E, 0xB9, 0xC9, 0xEB, 0xA9, 0x8C, 0x73, + 0x8C, 0xA2, 0x1B, 0x2D, 0x35, 0x07, 0xE9, 0x26, 0x40, 0xD5, 0xE5, 0x59, 0x10, 0xCC, 0xDB, 0x2B, + 0xB4, 0xA0, 0xF1, 0x8A, 0x44, 0x24, 0x9F, 0xCB, 0x67, 0x7F, 0xE4, 0xC9, 0xA9, 0xE2, 0x82, 0x50, + 0xF2, 0x54, 0xA9, 0x36, 0xAD, 0x0D, 0x63, 0x83, 0x6A, 0x8C, 0xA7, 0x82, 0x70, 0x0F, 0xAF, 0x51, + 0xE9, 0xC2, 0x2C, 0x6A, 0x29, 0xDC, 0xDE, 0x46, 0x5F, 0xCB, 0x6D, 0xE9, 0x89, 0x7C, 0x2A, 0x25, + 0xE3, 0xAE, 0xAE, 0x63, 0x55, 0x45, 0xB1, 0x3E, 0x25, 0x61, 0x5A, 0x26, 0x5B, 0x54, 0x06, 0x26, + 0x77, 0x0B, 0x70, 0x9B, 0x06, 0x29, 0x1C, 0xBD, 0x7E, 0x7F, 0xCE, 0x46, 0xD1, 0xCE, 0x11, 0x80, + 0x69, 0xC5, 0x3E, 0x93, 0xD7, 0xE0, 0x24, 0xCC, 0x73, 0x07, 0x32, 0xE9, 0x4A, 0x03, 0x0E, 0xA9, + 0x98, 0x44, 0xFE, 0x81, 0x7E, 0xA0, 0x3B, 0x3A, 0xFC, 0xBB, 0x09, 0x35, 0x47, 0xCD, 0xA5, 0xD0, + 0xA4, 0xFA, 0x74, 0x70, 0xF5, 0x06, 0xC2, 0x53, 0x0C, 0xA5, 0x01, 0x17, 0x50, 0x34, 0xD7, 0x74, + 0x7C, 0x7A, 0x7D, 0x0C, 0x29, 0xC8, 0x7F, 0x21, 0x37, 0x66, 0xBB, 0xAA, 0x6C, 0xB8, 0xF3, 0xEA, + 0x75, 0x56, 0x2E, 0x03, 0x7A, 0x61, 0x8C, 0x58, 0x0F, 0x29, 0x7E, 0xFB, 0x7B, 0xF4, 0x9E, 0x8D, + 0x15, 0xD2, 0x6A, 0x5D, 0x6F, 0xCE, 0x76, 0x90, 0x67, 0x89, 0xD5, 0x43, 0x2C, 0x70, 0x97, 0x1F, + 0x29, 0x59, 0x95, 0x35, 0xDC, 0xF6, 0x48, 0x10, 0xE0, 0xC7, 0x5A, 0x03, 0x1B, 0x6A, 0x22, 0xB2, + 0xD4, 0x42, 0x22, 0x29, 0x08, 0x90, 0xD2, 0x3E, 0x84, 0x39, 0xD3, 0x92, 0x65, 0x86, 0xB2, 0xA1, + 0xBC, 0xFF, 0xC5, 0x9A, 0xA3, 0x64, 0x46, 0xE8, 0xCE, 0xF9, 0x6C, 0x73, 0x53, 0xD8, 0x85, 0x99, + 0x18, 0x05, 0x52, 0x8A, 0x01, 0x1C, 0x9A, 0x7D, 0x68, 0x2D, 0x8C, 0xB2, 0x90, 0x58, 0xAB, 0x3D, + 0xD2, 0xB6, 0x51, 0x55, 0x03, 0x54, 0x7C, 0x46, 0x01, 0x03, 0xCE, 0xB2, 0x24, 0x80, 0xA8, 0x8B, + 0x39, 0xBA, 0xB2, 0x2D, 0xC5, 0xBA, 0xD0, 0x84, 0x0E, 0xEC, 0x67, 0xC8, 0x12, 0x95, 0x97, 0xAD, + 0xA2, 0x27, 0x12, 0xC5, 0x77, 0x95, 0x9E, 0xC8, 0x6F, 0xE5, 0x84, 0xAA, 0xC8, 0x77, 0x88, 0x2F, + 0x13, 0x5C, 0xD4, 0xD1, 0x13, 0xA0, 0x24, 0x83, 0x52, 0x34, 0x60, 0x2A, 0x2C, 0x37, 0xEE, 0xEB, + 0xD3, 0xE9, 0xB4, 0x8E, 0xDF, 0x6A, 0xEB, 0x70, 0x82, 0xB2, 0x02, 0x5F, 0x5F, 0xC7, 0x21, 0x47, + 0x15, 0x58, 0xF8, 0x6E, 0xE1, 0xAC, 0xBA, 0xE8, 0x42, 0x7F, 0x2B, 0xDE, 0xD4, 0xAA, 0xD2, 0x59, + 0xE1, 0x73, 0x79, 0xDB, 0x7B, 0x3B, 0x2B, 0x20, 0x32, 0xC4, 0xAF, 0xB2, 0x90, 0x69, 0x20, 0x0D, + 0x3B, 0xE5, 0x46, 0x56, 0x25, 0x85, 0x65, 0x5C, 0xB0, 0xE3, 0x2C, 0x9D, 0x18, 0x33, 0x60, 0xDD, + 0x11, 0x96, 0xD2, 0x95, 0x43, 0x2D, 0x65, 0xB7, 0x0E, 0xB7, 0x0A, 0xFB, 0x70, 0x30, 0x83, 0x94, + 0x79, 0xFB, 0xF3, 0x4F, 0x39, 0x5B, 0xDE, 0xF6, 0x92, 0x62, 0x71, 0xE1, 0xF3, 0xFC, 0xA9, 0x35, + 0xAF, 0x69, 0xA5, 0xD1, 0xAF, 0xC4, 0x97, 0xBD, 0x46, 0xFE, 0x19, 0x3B, 0xFF, 0x9C, 0xAD, 0x81, + 0xB1, 0x43, 0x23, 0x2A, 0xDC, 0x4C, 0x8C, 0xEA, 0x2F, 0x34, 0xE6, 0x63, 0x79, 0x29, 0xBF, 0x2D, + 0xA0, 0x54, 0xA9, 0xD3, 0x68, 0x78, 0x3E, 0xFF, 0x9A, 0x42, 0x19, 0x1D, 0x65, 0xFE, 0x28, 0x20, + 0x09, 0xC5, 0x82, 0xA3, 0x41, 0xBE, 0x92, 0xFB, 0x46, 0xC0, 0x86, 0x69, 0x03, 0x93, 0x6D, 0xCB, + 0xDE, 0xB2, 0x77, 0x71, 0x64, 0x7F, 0x4D, 0xF7, 0x57, 0x4F, 0xD8, 0x5F, 0x34, 0x69, 0x58, 0x0B, + 0xE7, 0xB5, 0xAB, 0x8A, 0x4D, 0x6A, 0x83, 0xFB, 0xC4, 0xA7, 0x70, 0x3D, 0x6F, 0xB3, 0xCC, 0xB6, + 0x1A, 0xE4, 0x5F, 0x60, 0xD4, 0x31, 0xBA, 0x95, 0x2F, 0x92, 0xF4, 0x81, 0x7B, 0x18, 0x5B, 0x17, + 0x54, 0x26, 0x70, 0x49, 0xD5, 0x87, 0x34, 0xB9, 0xD3, 0x9C, 0x2F, 0x39, 0xC3, 0xB7, 0x3C, 0xA8, + 0x03, 0xE4, 0x37, 0x9C, 0x72, 0x39, 0xB0, 0xBF, 0x07, 0x5D, 0x33, 0x2A, 0x41, 0x79, 0xB1, 0x26, + 0x9B, 0xE6, 0x7C, 0x02, 0x82, 0x01, 0x70, 0xB1, 0xA3, 0x48, 0xCD, 0x2B, 0xCB, 0x98, 0x9B, 0x57, + 0x96, 0x54, 0xE2, 0x5F, 0x59, 0xCC, 0xDB, 0x9F, 0xFC, 0xDB, 0x4C, 0xF9, 0x7F, 0x5B, 0x28, 0x36, + 0x32, 0xF9, 0xE1, 0x09, 0xF7, 0x56, 0x3F, 0x45, 0xAD, 0x47, 0x51, 0xBB, 0xF7, 0xFF, 0x17, 0x53, + 0xE8, 0x9D, 0x36, 0x92, 0x29, 0x00, 0x00 +}; + +#define SPIFFS_MAXLENGTH_FILEPATH 32 +const char *excludeListFile = "/.exclude.files"; + +typedef struct ExcludeListS { + char *item; + ExcludeListS *next; +} ExcludeList; + +static ExcludeList *excludes = NULL; + +static bool matchWild(const char *pattern, const char *testee) { + const char *nxPat = NULL, *nxTst = NULL; + + while (*testee) { + if (( *pattern == '?' ) || (*pattern == *testee)){ + pattern++;testee++; + continue; + } + if (*pattern=='*'){ + nxPat=pattern++; nxTst=testee; + continue; + } + if (nxPat){ + pattern = nxPat+1; testee=++nxTst; + continue; + } + return false; + } + while (*pattern=='*'){pattern++;} + return (*pattern == 0); +} + +static bool addExclude(const char *item){ + size_t len = strlen(item); + if(!len){ + return false; + } + ExcludeList *e = (ExcludeList *)malloc(sizeof(ExcludeList)); + if(!e){ + return false; + } + e->item = (char *)malloc(len+1); + if(!e->item){ + free(e); + return false; + } + memcpy(e->item, item, len+1); + e->next = excludes; + excludes = e; + return true; +} + +static void loadExcludeList(fs::FS &_fs, const char *filename){ + static char linebuf[SPIFFS_MAXLENGTH_FILEPATH]; + fs::File excludeFile=_fs.open(filename, "r"); + if(!excludeFile){ + //addExclude("/*.js.gz"); + return; + } +#ifdef ESP32 + if(excludeFile.isDirectory()){ + excludeFile.close(); + return; + } +#endif + if (excludeFile.size() > 0){ + uint8_t idx; + bool isOverflowed = false; + while (excludeFile.available()){ + linebuf[0] = '\0'; + idx = 0; + int lastChar; + do { + lastChar = excludeFile.read(); + if(lastChar != '\r'){ + linebuf[idx++] = (char) lastChar; + } + } while ((lastChar >= 0) && (lastChar != '\n') && (idx < SPIFFS_MAXLENGTH_FILEPATH)); + + if(isOverflowed){ + isOverflowed = (lastChar != '\n'); + continue; + } + isOverflowed = (idx >= SPIFFS_MAXLENGTH_FILEPATH); + linebuf[idx-1] = '\0'; + if(!addExclude(linebuf)){ + excludeFile.close(); + return; + } + } + } + excludeFile.close(); +} + +static bool isExcluded(fs::FS &_fs, const char *filename) { + if(excludes == NULL){ + loadExcludeList(_fs, excludeListFile); + } + ExcludeList *e = excludes; + while(e){ + if (matchWild(e->item, filename)){ + return true; + } + e = e->next; + } + return false; +} + +// WEB HANDLER IMPLEMENTATION + +#ifdef ESP32 +SPIFFSEditor::SPIFFSEditor(const fs::FS& fs, const String& username, const String& password) +#else +SPIFFSEditor::SPIFFSEditor(const String& username, const String& password, const fs::FS& fs) +#endif +:_fs(fs) +,_username(username) +,_password(password) +,_authenticated(false) +,_startTime(0) +{} + +bool SPIFFSEditor::canHandle(AsyncWebServerRequest *request){ + if(request->url().equalsIgnoreCase("/edit")){ + if(request->method() == HTTP_GET){ + if(request->hasParam("list")) + return true; + if(request->hasParam("edit")){ + request->_tempFile = _fs.open(request->arg("edit"), "r"); + if(!request->_tempFile){ + return false; + } +#ifdef ESP32 + if(request->_tempFile.isDirectory()){ + request->_tempFile.close(); + return false; + } +#endif + } + if(request->hasParam("download")){ + request->_tempFile = _fs.open(request->arg("download"), "r"); + if(!request->_tempFile){ + return false; + } +#ifdef ESP32 + if(request->_tempFile.isDirectory()){ + request->_tempFile.close(); + return false; + } +#endif + } + request->addInterestingHeader("If-Modified-Since"); + return true; + } + else if(request->method() == HTTP_POST) + return true; + else if(request->method() == HTTP_DELETE) + return true; + else if(request->method() == HTTP_PUT) + return true; + + } + return false; +} + + +void SPIFFSEditor::handleRequest(AsyncWebServerRequest *request){ + if(_username.length() && _password.length() && !request->authenticate(_username.c_str(), _password.c_str())) + return request->requestAuthentication(); + + if(request->method() == HTTP_GET){ + if(request->hasParam("list")){ + String path = request->getParam("list")->value(); +#ifdef ESP32 + File dir = _fs.open(path); +#else + Dir dir = _fs.openDir(path); +#endif + path = String(); + String output = "["; +#ifdef ESP32 + File entry = dir.openNextFile(); + while(entry){ +#else + while(dir.next()){ + fs::File entry = dir.openFile("r"); +#endif + if (isExcluded(_fs, entry.name())) { +#ifdef ESP32 + entry = dir.openNextFile(); +#endif + continue; + } + if (output != "[") output += ','; + output += "{\"type\":\""; + output += "file"; + output += "\",\"name\":\""; + output += String(entry.name()); + output += "\",\"size\":"; + output += String(entry.size()); + output += "}"; +#ifdef ESP32 + entry = dir.openNextFile(); +#else + entry.close(); +#endif + } +#ifdef ESP32 + dir.close(); +#endif + output += "]"; + request->send(200, "application/json", output); + output = String(); + } + else if(request->hasParam("edit") || request->hasParam("download")){ + request->send(request->_tempFile, request->_tempFile.name(), String(), request->hasParam("download")); + } + else { + const char * buildTime = __DATE__ " " __TIME__ " GMT"; + if (request->header("If-Modified-Since").equals(buildTime)) { + request->send(304); + } else { + AsyncWebServerResponse *response = request->beginResponse_P(200, "text/html", edit_htm_gz, edit_htm_gz_len); + response->addHeader("Content-Encoding", "gzip"); + response->addHeader("Last-Modified", buildTime); + request->send(response); + } + } + } else if(request->method() == HTTP_DELETE){ + if(request->hasParam("path", true)){ + _fs.remove(request->getParam("path", true)->value()); + request->send(200, "", "DELETE: "+request->getParam("path", true)->value()); + } else + request->send(404); + } else if(request->method() == HTTP_POST){ + if(request->hasParam("data", true, true) && _fs.exists(request->getParam("data", true, true)->value())) + request->send(200, "", "UPLOADED: "+request->getParam("data", true, true)->value()); + else + request->send(500); + } else if(request->method() == HTTP_PUT){ + if(request->hasParam("path", true)){ + String filename = request->getParam("path", true)->value(); + if(_fs.exists(filename)){ + request->send(200); + } else { + fs::File f = _fs.open(filename, "w"); + if(f){ + f.write((uint8_t)0x00); + f.close(); + request->send(200, "", "CREATE: "+filename); + } else { + request->send(500); + } + } + } else + request->send(400); + } +} + +void SPIFFSEditor::handleUpload(AsyncWebServerRequest *request, const String& filename, size_t index, uint8_t *data, size_t len, bool final){ + if(!index){ + if(!_username.length() || request->authenticate(_username.c_str(),_password.c_str())){ + _authenticated = true; + request->_tempFile = _fs.open(filename, "w"); + _startTime = millis(); + } + } + if(_authenticated && request->_tempFile){ + if(len){ + request->_tempFile.write(data,len); + } + if(final){ + request->_tempFile.close(); + } + } +} diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/SPIFFSEditor.h b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/SPIFFSEditor.h new file mode 100644 index 00000000..3586429e --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/SPIFFSEditor.h @@ -0,0 +1,24 @@ +#ifndef SPIFFSEditor_H_ +#define SPIFFSEditor_H_ +#include + +class SPIFFSEditor: public AsyncWebHandler { + private: + fs::FS _fs; + String _username; + String _password; + bool _authenticated; + uint32_t _startTime; + public: +#ifdef ESP32 + SPIFFSEditor(const fs::FS& fs, const String& username=String(), const String& password=String()); +#else + SPIFFSEditor(const String& username=String(), const String& password=String(), const fs::FS& fs=SPIFFS); +#endif + virtual bool canHandle(AsyncWebServerRequest *request) override final; + virtual void handleRequest(AsyncWebServerRequest *request) override final; + virtual void handleUpload(AsyncWebServerRequest *request, const String& filename, size_t index, uint8_t *data, size_t len, bool final) override final; + virtual bool isRequestHandlerTrivial() override final {return false;} +}; + +#endif diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/StringArray.h b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/StringArray.h new file mode 100644 index 00000000..4c0aa701 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/StringArray.h @@ -0,0 +1,193 @@ +/* + Asynchronous WebServer library for Espressif MCUs + + Copyright (c) 2016 Hristo Gochkov. All rights reserved. + This file is part of the esp8266 core for Arduino environment. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ +#ifndef STRINGARRAY_H_ +#define STRINGARRAY_H_ + +#include "stddef.h" +#include "WString.h" + +template +class LinkedListNode { + T _value; + public: + LinkedListNode* next; + LinkedListNode(const T val): _value(val), next(nullptr) {} + ~LinkedListNode(){} + const T& value() const { return _value; }; + T& value(){ return _value; } +}; + +template class Item = LinkedListNode> +class LinkedList { + public: + typedef Item ItemType; + typedef std::function OnRemove; + typedef std::function Predicate; + private: + ItemType* _root; + OnRemove _onRemove; + + class Iterator { + ItemType* _node; + public: + Iterator(ItemType* current = nullptr) : _node(current) {} + Iterator(const Iterator& i) : _node(i._node) {} + Iterator& operator ++() { _node = _node->next; return *this; } + bool operator != (const Iterator& i) const { return _node != i._node; } + const T& operator * () const { return _node->value(); } + const T* operator -> () const { return &_node->value(); } + }; + + public: + typedef const Iterator ConstIterator; + ConstIterator begin() const { return ConstIterator(_root); } + ConstIterator end() const { return ConstIterator(nullptr); } + + LinkedList(OnRemove onRemove) : _root(nullptr), _onRemove(onRemove) {} + ~LinkedList(){} + void add(const T& t){ + auto it = new ItemType(t); + if(!_root){ + _root = it; + } else { + auto i = _root; + while(i->next) i = i->next; + i->next = it; + } + } + T& front() const { + return _root->value(); + } + + bool isEmpty() const { + return _root == nullptr; + } + size_t length() const { + size_t i = 0; + auto it = _root; + while(it){ + i++; + it = it->next; + } + return i; + } + size_t count_if(Predicate predicate) const { + size_t i = 0; + auto it = _root; + while(it){ + if (!predicate){ + i++; + } + else if (predicate(it->value())) { + i++; + } + it = it->next; + } + return i; + } + const T* nth(size_t N) const { + size_t i = 0; + auto it = _root; + while(it){ + if(i++ == N) + return &(it->value()); + it = it->next; + } + return nullptr; + } + bool remove(const T& t){ + auto it = _root; + auto pit = _root; + while(it){ + if(it->value() == t){ + if(it == _root){ + _root = _root->next; + } else { + pit->next = it->next; + } + + if (_onRemove) { + _onRemove(it->value()); + } + + delete it; + return true; + } + pit = it; + it = it->next; + } + return false; + } + bool remove_first(Predicate predicate){ + auto it = _root; + auto pit = _root; + while(it){ + if(predicate(it->value())){ + if(it == _root){ + _root = _root->next; + } else { + pit->next = it->next; + } + if (_onRemove) { + _onRemove(it->value()); + } + delete it; + return true; + } + pit = it; + it = it->next; + } + return false; + } + + void free(){ + while(_root != nullptr){ + auto it = _root; + _root = _root->next; + if (_onRemove) { + _onRemove(it->value()); + } + delete it; + } + _root = nullptr; + } +}; + + +class StringArray : public LinkedList { +public: + + StringArray() : LinkedList(nullptr) {} + + bool containsIgnoreCase(const String& str){ + for (const auto& s : *this) { + if (str.equalsIgnoreCase(s)) { + return true; + } + } + return false; + } +}; + + + + +#endif /* STRINGARRAY_H_ */ diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebAuthentication.cpp b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebAuthentication.cpp new file mode 100644 index 00000000..45246a19 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebAuthentication.cpp @@ -0,0 +1,235 @@ +/* + Asynchronous WebServer library for Espressif MCUs + + Copyright (c) 2016 Hristo Gochkov. All rights reserved. + This file is part of the esp8266 core for Arduino environment. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ +#include "WebAuthentication.h" +#include +#ifdef ESP32 +#include "mbedtls/md5.h" +#else +#include "md5.h" +#endif + + +// Basic Auth hash = base64("username:password") + +bool checkBasicAuthentication(const char * hash, const char * username, const char * password){ + if(username == NULL || password == NULL || hash == NULL) + return false; + + size_t toencodeLen = strlen(username)+strlen(password)+1; + size_t encodedLen = base64_encode_expected_len(toencodeLen); + if(strlen(hash) != encodedLen) + return false; + + char *toencode = new char[toencodeLen+1]; + if(toencode == NULL){ + return false; + } + char *encoded = new char[base64_encode_expected_len(toencodeLen)+1]; + if(encoded == NULL){ + delete[] toencode; + return false; + } + sprintf(toencode, "%s:%s", username, password); + if(base64_encode_chars(toencode, toencodeLen, encoded) > 0 && memcmp(hash, encoded, encodedLen) == 0){ + delete[] toencode; + delete[] encoded; + return true; + } + delete[] toencode; + delete[] encoded; + return false; +} + +static bool getMD5(uint8_t * data, uint16_t len, char * output){//33 bytes or more +#ifdef ESP32 + mbedtls_md5_context _ctx; +#else + md5_context_t _ctx; +#endif + uint8_t i; + uint8_t * _buf = (uint8_t*)malloc(16); + if(_buf == NULL) + return false; + memset(_buf, 0x00, 16); +#ifdef ESP32 + mbedtls_md5_init(&_ctx); + mbedtls_md5_starts_ret(&_ctx); + mbedtls_md5_update_ret(&_ctx, data, len); + mbedtls_md5_finish_ret(&_ctx, _buf); +#else + MD5Init(&_ctx); + MD5Update(&_ctx, data, len); + MD5Final(_buf, &_ctx); +#endif + for(i = 0; i < 16; i++) { + sprintf(output + (i * 2), "%02x", _buf[i]); + } + free(_buf); + return true; +} + +static String genRandomMD5(){ +#ifdef ESP8266 + uint32_t r = RANDOM_REG32; +#else + uint32_t r = rand(); +#endif + char * out = (char*)malloc(33); + if(out == NULL || !getMD5((uint8_t*)(&r), 4, out)) + return ""; + String res = String(out); + free(out); + return res; +} + +static String stringMD5(const String& in){ + char * out = (char*)malloc(33); + if(out == NULL || !getMD5((uint8_t*)(in.c_str()), in.length(), out)) + return ""; + String res = String(out); + free(out); + return res; +} + +String generateDigestHash(const char * username, const char * password, const char * realm){ + if(username == NULL || password == NULL || realm == NULL){ + return ""; + } + char * out = (char*)malloc(33); + String res = String(username); + res.concat(":"); + res.concat(realm); + res.concat(":"); + String in = res; + in.concat(password); + if(out == NULL || !getMD5((uint8_t*)(in.c_str()), in.length(), out)) + return ""; + res.concat(out); + free(out); + return res; +} + +String requestDigestAuthentication(const char * realm){ + String header = "realm=\""; + if(realm == NULL) + header.concat("asyncesp"); + else + header.concat(realm); + header.concat( "\", qop=\"auth\", nonce=\""); + header.concat(genRandomMD5()); + header.concat("\", opaque=\""); + header.concat(genRandomMD5()); + header.concat("\""); + return header; +} + +bool checkDigestAuthentication(const char * header, const char * method, const char * username, const char * password, const char * realm, bool passwordIsHash, const char * nonce, const char * opaque, const char * uri){ + if(username == NULL || password == NULL || header == NULL || method == NULL){ + //os_printf("AUTH FAIL: missing requred fields\n"); + return false; + } + + String myHeader = String(header); + int nextBreak = myHeader.indexOf(","); + if(nextBreak < 0){ + //os_printf("AUTH FAIL: no variables\n"); + return false; + } + + String myUsername = String(); + String myRealm = String(); + String myNonce = String(); + String myUri = String(); + String myResponse = String(); + String myQop = String(); + String myNc = String(); + String myCnonce = String(); + + myHeader += ", "; + do { + String avLine = myHeader.substring(0, nextBreak); + avLine.trim(); + myHeader = myHeader.substring(nextBreak+1); + nextBreak = myHeader.indexOf(","); + + int eqSign = avLine.indexOf("="); + if(eqSign < 0){ + //os_printf("AUTH FAIL: no = sign\n"); + return false; + } + String varName = avLine.substring(0, eqSign); + avLine = avLine.substring(eqSign + 1); + if(avLine.startsWith("\"")){ + avLine = avLine.substring(1, avLine.length() - 1); + } + + if(varName.equals("username")){ + if(!avLine.equals(username)){ + //os_printf("AUTH FAIL: username\n"); + return false; + } + myUsername = avLine; + } else if(varName.equals("realm")){ + if(realm != NULL && !avLine.equals(realm)){ + //os_printf("AUTH FAIL: realm\n"); + return false; + } + myRealm = avLine; + } else if(varName.equals("nonce")){ + if(nonce != NULL && !avLine.equals(nonce)){ + //os_printf("AUTH FAIL: nonce\n"); + return false; + } + myNonce = avLine; + } else if(varName.equals("opaque")){ + if(opaque != NULL && !avLine.equals(opaque)){ + //os_printf("AUTH FAIL: opaque\n"); + return false; + } + } else if(varName.equals("uri")){ + if(uri != NULL && !avLine.equals(uri)){ + //os_printf("AUTH FAIL: uri\n"); + return false; + } + myUri = avLine; + } else if(varName.equals("response")){ + myResponse = avLine; + } else if(varName.equals("qop")){ + myQop = avLine; + } else if(varName.equals("nc")){ + myNc = avLine; + } else if(varName.equals("cnonce")){ + myCnonce = avLine; + } + } while(nextBreak > 0); + + String ha1 = (passwordIsHash) ? String(password) : stringMD5(myUsername + ":" + myRealm + ":" + String(password)); + String ha2 = String(method) + ":" + myUri; + String response = ha1 + ":" + myNonce + ":" + myNc + ":" + myCnonce + ":" + myQop + ":" + stringMD5(ha2); + + if(myResponse.equals(stringMD5(response))){ + //os_printf("AUTH SUCCESS\n"); + return true; + } + + //os_printf("AUTH FAIL: password\n"); + return false; +} diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebAuthentication.h b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebAuthentication.h new file mode 100644 index 00000000..ff68265d --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebAuthentication.h @@ -0,0 +1,34 @@ +/* + Asynchronous WebServer library for Espressif MCUs + + Copyright (c) 2016 Hristo Gochkov. All rights reserved. + This file is part of the esp8266 core for Arduino environment. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ + +#ifndef WEB_AUTHENTICATION_H_ +#define WEB_AUTHENTICATION_H_ + +#include "Arduino.h" + +bool checkBasicAuthentication(const char * header, const char * username, const char * password); +String requestDigestAuthentication(const char * realm); +bool checkDigestAuthentication(const char * header, const char * method, const char * username, const char * password, const char * realm, bool passwordIsHash, const char * nonce, const char * opaque, const char * uri); + +//for storing hashed versions on the device that can be authenticated against +String generateDigestHash(const char * username, const char * password, const char * realm); + +#endif diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebHandlerImpl.h b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebHandlerImpl.h new file mode 100644 index 00000000..9b7ba1b0 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebHandlerImpl.h @@ -0,0 +1,151 @@ +/* + Asynchronous WebServer library for Espressif MCUs + + Copyright (c) 2016 Hristo Gochkov. All rights reserved. + This file is part of the esp8266 core for Arduino environment. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ +#ifndef ASYNCWEBSERVERHANDLERIMPL_H_ +#define ASYNCWEBSERVERHANDLERIMPL_H_ + +#include +#ifdef ASYNCWEBSERVER_REGEX +#include +#endif + +#include "stddef.h" +#include + +class AsyncStaticWebHandler: public AsyncWebHandler { + using File = fs::File; + using FS = fs::FS; + private: + bool _getFile(AsyncWebServerRequest *request); + bool _fileExists(AsyncWebServerRequest *request, const String& path); + uint8_t _countBits(const uint8_t value) const; + protected: + FS _fs; + String _uri; + String _path; + String _default_file; + String _cache_control; + String _last_modified; + AwsTemplateProcessor _callback; + bool _isDir; + bool _gzipFirst; + uint8_t _gzipStats; + public: + AsyncStaticWebHandler(const char* uri, FS& fs, const char* path, const char* cache_control); + virtual bool canHandle(AsyncWebServerRequest *request) override final; + virtual void handleRequest(AsyncWebServerRequest *request) override final; + AsyncStaticWebHandler& setIsDir(bool isDir); + AsyncStaticWebHandler& setDefaultFile(const char* filename); + AsyncStaticWebHandler& setCacheControl(const char* cache_control); + AsyncStaticWebHandler& setLastModified(const char* last_modified); + AsyncStaticWebHandler& setLastModified(struct tm* last_modified); + #ifdef ESP8266 + AsyncStaticWebHandler& setLastModified(time_t last_modified); + AsyncStaticWebHandler& setLastModified(); //sets to current time. Make sure sntp is runing and time is updated + #endif + AsyncStaticWebHandler& setTemplateProcessor(AwsTemplateProcessor newCallback) {_callback = newCallback; return *this;} +}; + +class AsyncCallbackWebHandler: public AsyncWebHandler { + private: + protected: + String _uri; + WebRequestMethodComposite _method; + ArRequestHandlerFunction _onRequest; + ArUploadHandlerFunction _onUpload; + ArBodyHandlerFunction _onBody; + bool _isRegex; + public: + AsyncCallbackWebHandler() : _uri(), _method(HTTP_ANY), _onRequest(NULL), _onUpload(NULL), _onBody(NULL), _isRegex(false) {} + void setUri(const String& uri){ + _uri = uri; + _isRegex = uri.startsWith("^") && uri.endsWith("$"); + } + void setMethod(WebRequestMethodComposite method){ _method = method; } + void onRequest(ArRequestHandlerFunction fn){ _onRequest = fn; } + void onUpload(ArUploadHandlerFunction fn){ _onUpload = fn; } + void onBody(ArBodyHandlerFunction fn){ _onBody = fn; } + + virtual bool canHandle(AsyncWebServerRequest *request) override final{ + + if(!_onRequest) + return false; + + if(!(_method & request->method())) + return false; + +#ifdef ASYNCWEBSERVER_REGEX + if (_isRegex) { + std::regex pattern(_uri.c_str()); + std::smatch matches; + std::string s(request->url().c_str()); + if(std::regex_search(s, matches, pattern)) { + for (size_t i = 1; i < matches.size(); ++i) { // start from 1 + request->_addPathParam(matches[i].str().c_str()); + } + } else { + return false; + } + } else +#endif + if (_uri.length() && _uri.startsWith("/*.")) { + String uriTemplate = String (_uri); + uriTemplate = uriTemplate.substring(uriTemplate.lastIndexOf(".")); + if (!request->url().endsWith(uriTemplate)) + return false; + } + else + if (_uri.length() && _uri.endsWith("*")) { + String uriTemplate = String(_uri); + uriTemplate = uriTemplate.substring(0, uriTemplate.length() - 1); + if (!request->url().startsWith(uriTemplate)) + return false; + } + else if(_uri.length() && (_uri != request->url() && !request->url().startsWith(_uri+"/"))) + return false; + + request->addInterestingHeader("ANY"); + return true; + } + + virtual void handleRequest(AsyncWebServerRequest *request) override final { + if((_username != "" && _password != "") && !request->authenticate(_username.c_str(), _password.c_str())) + return request->requestAuthentication(); + if(_onRequest) + _onRequest(request); + else + request->send(500); + } + virtual void handleUpload(AsyncWebServerRequest *request, const String& filename, size_t index, uint8_t *data, size_t len, bool final) override final { + if((_username != "" && _password != "") && !request->authenticate(_username.c_str(), _password.c_str())) + return request->requestAuthentication(); + if(_onUpload) + _onUpload(request, filename, index, data, len, final); + } + virtual void handleBody(AsyncWebServerRequest *request, uint8_t *data, size_t len, size_t index, size_t total) override final { + if((_username != "" && _password != "") && !request->authenticate(_username.c_str(), _password.c_str())) + return request->requestAuthentication(); + if(_onBody) + _onBody(request, data, len, index, total); + } + virtual bool isRequestHandlerTrivial() override final {return _onRequest ? false : true;} +}; + +#endif /* ASYNCWEBSERVERHANDLERIMPL_H_ */ diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebHandlers.cpp b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebHandlers.cpp new file mode 100644 index 00000000..1f435e68 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebHandlers.cpp @@ -0,0 +1,220 @@ +/* + Asynchronous WebServer library for Espressif MCUs + + Copyright (c) 2016 Hristo Gochkov. All rights reserved. + This file is part of the esp8266 core for Arduino environment. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ +#include "ESPAsyncWebServer.h" +#include "WebHandlerImpl.h" + +AsyncStaticWebHandler::AsyncStaticWebHandler(const char* uri, FS& fs, const char* path, const char* cache_control) + : _fs(fs), _uri(uri), _path(path), _default_file("index.htm"), _cache_control(cache_control), _last_modified(""), _callback(nullptr) +{ + // Ensure leading '/' + if (_uri.length() == 0 || _uri[0] != '/') _uri = "/" + _uri; + if (_path.length() == 0 || _path[0] != '/') _path = "/" + _path; + + // If path ends with '/' we assume a hint that this is a directory to improve performance. + // However - if it does not end with '/' we, can't assume a file, path can still be a directory. + _isDir = _path[_path.length()-1] == '/'; + + // Remove the trailing '/' so we can handle default file + // Notice that root will be "" not "/" + if (_uri[_uri.length()-1] == '/') _uri = _uri.substring(0, _uri.length()-1); + if (_path[_path.length()-1] == '/') _path = _path.substring(0, _path.length()-1); + + // Reset stats + _gzipFirst = false; + _gzipStats = 0xF8; +} + +AsyncStaticWebHandler& AsyncStaticWebHandler::setIsDir(bool isDir){ + _isDir = isDir; + return *this; +} + +AsyncStaticWebHandler& AsyncStaticWebHandler::setDefaultFile(const char* filename){ + _default_file = String(filename); + return *this; +} + +AsyncStaticWebHandler& AsyncStaticWebHandler::setCacheControl(const char* cache_control){ + _cache_control = String(cache_control); + return *this; +} + +AsyncStaticWebHandler& AsyncStaticWebHandler::setLastModified(const char* last_modified){ + _last_modified = String(last_modified); + return *this; +} + +AsyncStaticWebHandler& AsyncStaticWebHandler::setLastModified(struct tm* last_modified){ + char result[30]; + strftime (result,30,"%a, %d %b %Y %H:%M:%S %Z", last_modified); + return setLastModified((const char *)result); +} + +#ifdef ESP8266 +AsyncStaticWebHandler& AsyncStaticWebHandler::setLastModified(time_t last_modified){ + return setLastModified((struct tm *)gmtime(&last_modified)); +} + +AsyncStaticWebHandler& AsyncStaticWebHandler::setLastModified(){ + time_t last_modified; + if(time(&last_modified) == 0) //time is not yet set + return *this; + return setLastModified(last_modified); +} +#endif +bool AsyncStaticWebHandler::canHandle(AsyncWebServerRequest *request){ + if(request->method() != HTTP_GET + || !request->url().startsWith(_uri) + || !request->isExpectedRequestedConnType(RCT_DEFAULT, RCT_HTTP) + ){ + return false; + } + if (_getFile(request)) { + // We interested in "If-Modified-Since" header to check if file was modified + if (_last_modified.length()) + request->addInterestingHeader("If-Modified-Since"); + + if(_cache_control.length()) + request->addInterestingHeader("If-None-Match"); + + DEBUGF("[AsyncStaticWebHandler::canHandle] TRUE\n"); + return true; + } + + return false; +} + +bool AsyncStaticWebHandler::_getFile(AsyncWebServerRequest *request) +{ + // Remove the found uri + String path = request->url().substring(_uri.length()); + + // We can skip the file check and look for default if request is to the root of a directory or that request path ends with '/' + bool canSkipFileCheck = (_isDir && path.length() == 0) || (path.length() && path[path.length()-1] == '/'); + + path = _path + path; + + // Do we have a file or .gz file + if (!canSkipFileCheck && _fileExists(request, path)) + return true; + + // Can't handle if not default file + if (_default_file.length() == 0) + return false; + + // Try to add default file, ensure there is a trailing '/' ot the path. + if (path.length() == 0 || path[path.length()-1] != '/') + path += "/"; + path += _default_file; + + return _fileExists(request, path); +} + +#ifdef ESP32 +#define FILE_IS_REAL(f) (f == true && !f.isDirectory()) +#else +#define FILE_IS_REAL(f) (f == true) +#endif + +bool AsyncStaticWebHandler::_fileExists(AsyncWebServerRequest *request, const String& path) +{ + bool fileFound = false; + bool gzipFound = false; + + String gzip = path + ".gz"; + + if (_gzipFirst) { + request->_tempFile = _fs.open(gzip, "r"); + gzipFound = FILE_IS_REAL(request->_tempFile); + if (!gzipFound){ + request->_tempFile = _fs.open(path, "r"); + fileFound = FILE_IS_REAL(request->_tempFile); + } + } else { + request->_tempFile = _fs.open(path, "r"); + fileFound = FILE_IS_REAL(request->_tempFile); + if (!fileFound){ + request->_tempFile = _fs.open(gzip, "r"); + gzipFound = FILE_IS_REAL(request->_tempFile); + } + } + + bool found = fileFound || gzipFound; + + if (found) { + // Extract the file name from the path and keep it in _tempObject + size_t pathLen = path.length(); + char * _tempPath = (char*)malloc(pathLen+1); + snprintf(_tempPath, pathLen+1, "%s", path.c_str()); + request->_tempObject = (void*)_tempPath; + + // Calculate gzip statistic + _gzipStats = (_gzipStats << 1) + (gzipFound ? 1 : 0); + if (_gzipStats == 0x00) _gzipFirst = false; // All files are not gzip + else if (_gzipStats == 0xFF) _gzipFirst = true; // All files are gzip + else _gzipFirst = _countBits(_gzipStats) > 4; // IF we have more gzip files - try gzip first + } + + return found; +} + +uint8_t AsyncStaticWebHandler::_countBits(const uint8_t value) const +{ + uint8_t w = value; + uint8_t n; + for (n=0; w!=0; n++) w&=w-1; + return n; +} + +void AsyncStaticWebHandler::handleRequest(AsyncWebServerRequest *request) +{ + // Get the filename from request->_tempObject and free it + String filename = String((char*)request->_tempObject); + free(request->_tempObject); + request->_tempObject = NULL; + if((_username != "" && _password != "") && !request->authenticate(_username.c_str(), _password.c_str())) + return request->requestAuthentication(); + + if (request->_tempFile == true) { + String etag = String(request->_tempFile.size()); + if (_last_modified.length() && _last_modified == request->header("If-Modified-Since")) { + request->_tempFile.close(); + request->send(304); // Not modified + } else if (_cache_control.length() && request->hasHeader("If-None-Match") && request->header("If-None-Match").equals(etag)) { + request->_tempFile.close(); + AsyncWebServerResponse * response = new AsyncBasicResponse(304); // Not modified + response->addHeader("Cache-Control", _cache_control); + response->addHeader("ETag", etag); + request->send(response); + } else { + AsyncWebServerResponse * response = new AsyncFileResponse(request->_tempFile, filename, String(), false, _callback); + if (_last_modified.length()) + response->addHeader("Last-Modified", _last_modified); + if (_cache_control.length()){ + response->addHeader("Cache-Control", _cache_control); + response->addHeader("ETag", etag); + } + request->send(response); + } + } else { + request->send(404); + } +} diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebRequest.cpp b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebRequest.cpp new file mode 100644 index 00000000..bbce5ca4 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebRequest.cpp @@ -0,0 +1,1008 @@ +/* + Asynchronous WebServer library for Espressif MCUs + + Copyright (c) 2016 Hristo Gochkov. All rights reserved. + This file is part of the esp8266 core for Arduino environment. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ +#include "ESPAsyncWebServer.h" +#include "WebResponseImpl.h" +#include "WebAuthentication.h" + +#ifndef ESP8266 +#define os_strlen strlen +#endif + +static const String SharedEmptyString = String(); + +#define __is_param_char(c) ((c) && ((c) != '{') && ((c) != '[') && ((c) != '&') && ((c) != '=')) + +enum { PARSE_REQ_START, PARSE_REQ_HEADERS, PARSE_REQ_BODY, PARSE_REQ_END, PARSE_REQ_FAIL }; + +AsyncWebServerRequest::AsyncWebServerRequest(AsyncWebServer* s, AsyncClient* c) + : _client(c) + , _server(s) + , _handler(NULL) + , _response(NULL) + , _temp() + , _parseState(0) + , _version(0) + , _method(HTTP_ANY) + , _url() + , _host() + , _contentType() + , _boundary() + , _authorization() + , _reqconntype(RCT_HTTP) + , _isDigest(false) + , _isMultipart(false) + , _isPlainPost(false) + , _expectingContinue(false) + , _contentLength(0) + , _parsedLength(0) + , _headers(LinkedList([](AsyncWebHeader *h){ delete h; })) + , _params(LinkedList([](AsyncWebParameter *p){ delete p; })) + , _pathParams(LinkedList([](String *p){ delete p; })) + , _multiParseState(0) + , _boundaryPosition(0) + , _itemStartIndex(0) + , _itemSize(0) + , _itemName() + , _itemFilename() + , _itemType() + , _itemValue() + , _itemBuffer(0) + , _itemBufferIndex(0) + , _itemIsFile(false) + , _tempObject(NULL) +{ + c->onError([](void *r, AsyncClient* c, int8_t error){ (void)c; AsyncWebServerRequest *req = (AsyncWebServerRequest*)r; req->_onError(error); }, this); + c->onAck([](void *r, AsyncClient* c, size_t len, uint32_t time){ (void)c; AsyncWebServerRequest *req = (AsyncWebServerRequest*)r; req->_onAck(len, time); }, this); + c->onDisconnect([](void *r, AsyncClient* c){ AsyncWebServerRequest *req = (AsyncWebServerRequest*)r; req->_onDisconnect(); delete c; }, this); + c->onTimeout([](void *r, AsyncClient* c, uint32_t time){ (void)c; AsyncWebServerRequest *req = (AsyncWebServerRequest*)r; req->_onTimeout(time); }, this); + c->onData([](void *r, AsyncClient* c, void *buf, size_t len){ (void)c; AsyncWebServerRequest *req = (AsyncWebServerRequest*)r; req->_onData(buf, len); }, this); + c->onPoll([](void *r, AsyncClient* c){ (void)c; AsyncWebServerRequest *req = ( AsyncWebServerRequest*)r; req->_onPoll(); }, this); +} + +AsyncWebServerRequest::~AsyncWebServerRequest(){ + _headers.free(); + + _params.free(); + _pathParams.free(); + + _interestingHeaders.free(); + + if(_response != NULL){ + delete _response; + } + + if(_tempObject != NULL){ + free(_tempObject); + } + + if(_tempFile){ + _tempFile.close(); + } +} + +void AsyncWebServerRequest::_onData(void *buf, size_t len){ + size_t i = 0; + while (true) { + + if(_parseState < PARSE_REQ_BODY){ + // Find new line in buf + char *str = (char*)buf; + for (i = 0; i < len; i++) { + if (str[i] == '\n') { + break; + } + } + if (i == len) { // No new line, just add the buffer in _temp + char ch = str[len-1]; + str[len-1] = 0; + _temp.reserve(_temp.length()+len); + _temp.concat(str); + _temp.concat(ch); + } else { // Found new line - extract it and parse + str[i] = 0; // Terminate the string at the end of the line. + _temp.concat(str); + _temp.trim(); + _parseLine(); + if (++i < len) { + // Still have more buffer to process + buf = str+i; + len-= i; + continue; + } + } + } else if(_parseState == PARSE_REQ_BODY){ + // A handler should be already attached at this point in _parseLine function. + // If handler does nothing (_onRequest is NULL), we don't need to really parse the body. + const bool needParse = _handler && !_handler->isRequestHandlerTrivial(); + if(_isMultipart){ + if(needParse){ + size_t i; + for(i=0; i end) equal = end; + String name = params.substring(start, equal); + String value = equal + 1 < end ? params.substring(equal + 1, end) : String(); + _addParam(new AsyncWebParameter(urlDecode(name), urlDecode(value))); + start = end + 1; + } +} + +bool AsyncWebServerRequest::_parseReqHead(){ + // Split the head into method, url and version + int index = _temp.indexOf(' '); + String m = _temp.substring(0, index); + index = _temp.indexOf(' ', index+1); + String u = _temp.substring(m.length()+1, index); + _temp = _temp.substring(index+1); + + if(m == "GET"){ + _method = HTTP_GET; + } else if(m == "POST"){ + _method = HTTP_POST; + } else if(m == "DELETE"){ + _method = HTTP_DELETE; + } else if(m == "PUT"){ + _method = HTTP_PUT; + } else if(m == "PATCH"){ + _method = HTTP_PATCH; + } else if(m == "HEAD"){ + _method = HTTP_HEAD; + } else if(m == "OPTIONS"){ + _method = HTTP_OPTIONS; + } + + String g = String(); + index = u.indexOf('?'); + if(index > 0){ + g = u.substring(index +1); + u = u.substring(0, index); + } + _url = urlDecode(u); + _addGetParams(g); + + if(!_temp.startsWith("HTTP/1.0")) + _version = 1; + + _temp = String(); + return true; +} + +bool strContains(String src, String find, bool mindcase = true) { + int pos=0, i=0; + const int slen = src.length(); + const int flen = find.length(); + + if (slen < flen) return false; + while (pos <= (slen - flen)) { + for (i=0; i < flen; i++) { + if (mindcase) { + if (src[pos+i] != find[i]) i = flen + 1; // no match + } else if (tolower(src[pos+i]) != tolower(find[i])) i = flen + 1; // no match + } + if (i == flen) return true; + pos++; + } + return false; +} + +bool AsyncWebServerRequest::_parseReqHeader(){ + int index = _temp.indexOf(':'); + if(index){ + String name = _temp.substring(0, index); + String value = _temp.substring(index + 2); + if(name.equalsIgnoreCase("Host")){ + _host = value; + } else if(name.equalsIgnoreCase("Content-Type")){ + _contentType = value.substring(0, value.indexOf(';')); + if (value.startsWith("multipart/")){ + _boundary = value.substring(value.indexOf('=')+1); + _boundary.replace("\"",""); + _isMultipart = true; + } + } else if(name.equalsIgnoreCase("Content-Length")){ + _contentLength = atoi(value.c_str()); + } else if(name.equalsIgnoreCase("Expect") && value == "100-continue"){ + _expectingContinue = true; + } else if(name.equalsIgnoreCase("Authorization")){ + if(value.length() > 5 && value.substring(0,5).equalsIgnoreCase("Basic")){ + _authorization = value.substring(6); + } else if(value.length() > 6 && value.substring(0,6).equalsIgnoreCase("Digest")){ + _isDigest = true; + _authorization = value.substring(7); + } + } else { + if(name.equalsIgnoreCase("Upgrade") && value.equalsIgnoreCase("websocket")){ + // WebSocket request can be uniquely identified by header: [Upgrade: websocket] + _reqconntype = RCT_WS; + } else { + if(name.equalsIgnoreCase("Accept") && strContains(value, "text/event-stream", false)){ + // WebEvent request can be uniquely identified by header: [Accept: text/event-stream] + _reqconntype = RCT_EVENT; + } + } + } + _headers.add(new AsyncWebHeader(name, value)); + } + _temp = String(); + return true; +} + +void AsyncWebServerRequest::_parsePlainPostChar(uint8_t data){ + if(data && (char)data != '&') + _temp += (char)data; + if(!data || (char)data == '&' || _parsedLength == _contentLength){ + String name = "body"; + String value = _temp; + if(!_temp.startsWith("{") && !_temp.startsWith("[") && _temp.indexOf('=') > 0){ + name = _temp.substring(0, _temp.indexOf('=')); + value = _temp.substring(_temp.indexOf('=') + 1); + } + _addParam(new AsyncWebParameter(urlDecode(name), urlDecode(value), true)); + _temp = String(); + } +} + +void AsyncWebServerRequest::_handleUploadByte(uint8_t data, bool last){ + _itemBuffer[_itemBufferIndex++] = data; + + if(last || _itemBufferIndex == 1460){ + //check if authenticated before calling the upload + if(_handler) + _handler->handleUpload(this, _itemFilename, _itemSize - _itemBufferIndex, _itemBuffer, _itemBufferIndex, false); + _itemBufferIndex = 0; + } +} + +enum { + EXPECT_BOUNDARY, + PARSE_HEADERS, + WAIT_FOR_RETURN1, + EXPECT_FEED1, + EXPECT_DASH1, + EXPECT_DASH2, + BOUNDARY_OR_DATA, + DASH3_OR_RETURN2, + EXPECT_FEED2, + PARSING_FINISHED, + PARSE_ERROR +}; + +void AsyncWebServerRequest::_parseMultipartPostByte(uint8_t data, bool last){ +#define itemWriteByte(b) do { _itemSize++; if(_itemIsFile) _handleUploadByte(b, last); else _itemValue+=(char)(b); } while(0) + + if(!_parsedLength){ + _multiParseState = EXPECT_BOUNDARY; + _temp = String(); + _itemName = String(); + _itemFilename = String(); + _itemType = String(); + } + + if(_multiParseState == WAIT_FOR_RETURN1){ + if(data != '\r'){ + itemWriteByte(data); + } else { + _multiParseState = EXPECT_FEED1; + } + } else if(_multiParseState == EXPECT_BOUNDARY){ + if(_parsedLength < 2 && data != '-'){ + _multiParseState = PARSE_ERROR; + return; + } else if(_parsedLength - 2 < _boundary.length() && _boundary.c_str()[_parsedLength - 2] != data){ + _multiParseState = PARSE_ERROR; + return; + } else if(_parsedLength - 2 == _boundary.length() && data != '\r'){ + _multiParseState = PARSE_ERROR; + return; + } else if(_parsedLength - 3 == _boundary.length()){ + if(data != '\n'){ + _multiParseState = PARSE_ERROR; + return; + } + _multiParseState = PARSE_HEADERS; + _itemIsFile = false; + } + } else if(_multiParseState == PARSE_HEADERS){ + if((char)data != '\r' && (char)data != '\n') + _temp += (char)data; + if((char)data == '\n'){ + if(_temp.length()){ + if(_temp.length() > 12 && _temp.substring(0, 12).equalsIgnoreCase("Content-Type")){ + _itemType = _temp.substring(14); + _itemIsFile = true; + } else if(_temp.length() > 19 && _temp.substring(0, 19).equalsIgnoreCase("Content-Disposition")){ + _temp = _temp.substring(_temp.indexOf(';') + 2); + while(_temp.indexOf(';') > 0){ + String name = _temp.substring(0, _temp.indexOf('=')); + String nameVal = _temp.substring(_temp.indexOf('=') + 2, _temp.indexOf(';') - 1); + if(name == "name"){ + _itemName = nameVal; + } else if(name == "filename"){ + _itemFilename = nameVal; + _itemIsFile = true; + } + _temp = _temp.substring(_temp.indexOf(';') + 2); + } + String name = _temp.substring(0, _temp.indexOf('=')); + String nameVal = _temp.substring(_temp.indexOf('=') + 2, _temp.length() - 1); + if(name == "name"){ + _itemName = nameVal; + } else if(name == "filename"){ + _itemFilename = nameVal; + _itemIsFile = true; + } + } + _temp = String(); + } else { + _multiParseState = WAIT_FOR_RETURN1; + //value starts from here + _itemSize = 0; + _itemStartIndex = _parsedLength; + _itemValue = String(); + if(_itemIsFile){ + if(_itemBuffer) + free(_itemBuffer); + _itemBuffer = (uint8_t*)malloc(1460); + if(_itemBuffer == NULL){ + _multiParseState = PARSE_ERROR; + return; + } + _itemBufferIndex = 0; + } + } + } + } else if(_multiParseState == EXPECT_FEED1){ + if(data != '\n'){ + _multiParseState = WAIT_FOR_RETURN1; + itemWriteByte('\r'); _parseMultipartPostByte(data, last); + } else { + _multiParseState = EXPECT_DASH1; + } + } else if(_multiParseState == EXPECT_DASH1){ + if(data != '-'){ + _multiParseState = WAIT_FOR_RETURN1; + itemWriteByte('\r'); itemWriteByte('\n'); _parseMultipartPostByte(data, last); + } else { + _multiParseState = EXPECT_DASH2; + } + } else if(_multiParseState == EXPECT_DASH2){ + if(data != '-'){ + _multiParseState = WAIT_FOR_RETURN1; + itemWriteByte('\r'); itemWriteByte('\n'); itemWriteByte('-'); _parseMultipartPostByte(data, last); + } else { + _multiParseState = BOUNDARY_OR_DATA; + _boundaryPosition = 0; + } + } else if(_multiParseState == BOUNDARY_OR_DATA){ + if(_boundaryPosition < _boundary.length() && _boundary.c_str()[_boundaryPosition] != data){ + _multiParseState = WAIT_FOR_RETURN1; + itemWriteByte('\r'); itemWriteByte('\n'); itemWriteByte('-'); itemWriteByte('-'); + uint8_t i; + for(i=0; i<_boundaryPosition; i++) + itemWriteByte(_boundary.c_str()[i]); + _parseMultipartPostByte(data, last); + } else if(_boundaryPosition == _boundary.length() - 1){ + _multiParseState = DASH3_OR_RETURN2; + if(!_itemIsFile){ + _addParam(new AsyncWebParameter(_itemName, _itemValue, true)); + } else { + if(_itemSize){ + //check if authenticated before calling the upload + if(_handler) _handler->handleUpload(this, _itemFilename, _itemSize - _itemBufferIndex, _itemBuffer, _itemBufferIndex, true); + _itemBufferIndex = 0; + _addParam(new AsyncWebParameter(_itemName, _itemFilename, true, true, _itemSize)); + } + free(_itemBuffer); + _itemBuffer = NULL; + } + + } else { + _boundaryPosition++; + } + } else if(_multiParseState == DASH3_OR_RETURN2){ + if(data == '-' && (_contentLength - _parsedLength - 4) != 0){ + //os_printf("ERROR: The parser got to the end of the POST but is expecting %u bytes more!\nDrop an issue so we can have more info on the matter!\n", _contentLength - _parsedLength - 4); + _contentLength = _parsedLength + 4;//lets close the request gracefully + } + if(data == '\r'){ + _multiParseState = EXPECT_FEED2; + } else if(data == '-' && _contentLength == (_parsedLength + 4)){ + _multiParseState = PARSING_FINISHED; + } else { + _multiParseState = WAIT_FOR_RETURN1; + itemWriteByte('\r'); itemWriteByte('\n'); itemWriteByte('-'); itemWriteByte('-'); + uint8_t i; for(i=0; i<_boundary.length(); i++) itemWriteByte(_boundary.c_str()[i]); + _parseMultipartPostByte(data, last); + } + } else if(_multiParseState == EXPECT_FEED2){ + if(data == '\n'){ + _multiParseState = PARSE_HEADERS; + _itemIsFile = false; + } else { + _multiParseState = WAIT_FOR_RETURN1; + itemWriteByte('\r'); itemWriteByte('\n'); itemWriteByte('-'); itemWriteByte('-'); + uint8_t i; for(i=0; i<_boundary.length(); i++) itemWriteByte(_boundary.c_str()[i]); + itemWriteByte('\r'); _parseMultipartPostByte(data, last); + } + } +} + +void AsyncWebServerRequest::_parseLine(){ + if(_parseState == PARSE_REQ_START){ + if(!_temp.length()){ + _parseState = PARSE_REQ_FAIL; + _client->close(); + } else { + _parseReqHead(); + _parseState = PARSE_REQ_HEADERS; + } + return; + } + + if(_parseState == PARSE_REQ_HEADERS){ + if(!_temp.length()){ + //end of headers + _server->_rewriteRequest(this); + _server->_attachHandler(this); + _removeNotInterestingHeaders(); + if(_expectingContinue){ + const char * response = "HTTP/1.1 100 Continue\r\n\r\n"; + _client->write(response, os_strlen(response)); + } + //check handler for authentication + if(_contentLength){ + _parseState = PARSE_REQ_BODY; + } else { + _parseState = PARSE_REQ_END; + if(_handler) _handler->handleRequest(this); + else send(501); + } + } else _parseReqHeader(); + } +} + +size_t AsyncWebServerRequest::headers() const{ + return _headers.length(); +} + +bool AsyncWebServerRequest::hasHeader(const String& name) const { + for(const auto& h: _headers){ + if(h->name().equalsIgnoreCase(name)){ + return true; + } + } + return false; +} + +bool AsyncWebServerRequest::hasHeader(const __FlashStringHelper * data) const { + PGM_P p = reinterpret_cast(data); + size_t n = 0; + while (1) { + if (pgm_read_byte(p+n) == 0) break; + n += 1; + } + char * name = (char*) malloc(n+1); + name[n] = 0; + if (name) { + for(size_t b=0; bname().equalsIgnoreCase(name)){ + return h; + } + } + return nullptr; +} + +AsyncWebHeader* AsyncWebServerRequest::getHeader(const __FlashStringHelper * data) const { + PGM_P p = reinterpret_cast(data); + size_t n = strlen_P(p); + char * name = (char*) malloc(n+1); + if (name) { + strcpy_P(name, p); + AsyncWebHeader* result = getHeader( String(name)); + free(name); + return result; + } else { + return nullptr; + } +} + +AsyncWebHeader* AsyncWebServerRequest::getHeader(size_t num) const { + auto header = _headers.nth(num); + return header ? *header : nullptr; +} + +size_t AsyncWebServerRequest::params() const { + return _params.length(); +} + +bool AsyncWebServerRequest::hasParam(const String& name, bool post, bool file) const { + for(const auto& p: _params){ + if(p->name() == name && p->isPost() == post && p->isFile() == file){ + return true; + } + } + return false; +} + +bool AsyncWebServerRequest::hasParam(const __FlashStringHelper * data, bool post, bool file) const { + PGM_P p = reinterpret_cast(data); + size_t n = strlen_P(p); + + char * name = (char*) malloc(n+1); + name[n] = 0; + if (name) { + strcpy_P(name,p); + bool result = hasParam( name, post, file); + free(name); + return result; + } else { + return false; + } +} + +AsyncWebParameter* AsyncWebServerRequest::getParam(const String& name, bool post, bool file) const { + for(const auto& p: _params){ + if(p->name() == name && p->isPost() == post && p->isFile() == file){ + return p; + } + } + return nullptr; +} + +AsyncWebParameter* AsyncWebServerRequest::getParam(const __FlashStringHelper * data, bool post, bool file) const { + PGM_P p = reinterpret_cast(data); + size_t n = strlen_P(p); + char * name = (char*) malloc(n+1); + if (name) { + strcpy_P(name, p); + AsyncWebParameter* result = getParam(name, post, file); + free(name); + return result; + } else { + return nullptr; + } +} + +AsyncWebParameter* AsyncWebServerRequest::getParam(size_t num) const { + auto param = _params.nth(num); + return param ? *param : nullptr; +} + +void AsyncWebServerRequest::addInterestingHeader(const String& name){ + if(!_interestingHeaders.containsIgnoreCase(name)) + _interestingHeaders.add(name); +} + +void AsyncWebServerRequest::send(AsyncWebServerResponse *response){ + _response = response; + if(_response == NULL){ + _client->close(true); + _onDisconnect(); + return; + } + if(!_response->_sourceValid()){ + delete response; + _response = NULL; + send(500); + } + else { + _client->setRxTimeout(0); + _response->_respond(this); + } +} + +AsyncWebServerResponse * AsyncWebServerRequest::beginResponse(int code, const String& contentType, const String& content){ + return new AsyncBasicResponse(code, contentType, content); +} + +AsyncWebServerResponse * AsyncWebServerRequest::beginResponse(FS &fs, const String& path, const String& contentType, bool download, AwsTemplateProcessor callback){ + if(fs.exists(path) || (!download && fs.exists(path+".gz"))) + return new AsyncFileResponse(fs, path, contentType, download, callback); + return NULL; +} + +AsyncWebServerResponse * AsyncWebServerRequest::beginResponse(File content, const String& path, const String& contentType, bool download, AwsTemplateProcessor callback){ + if(content == true) + return new AsyncFileResponse(content, path, contentType, download, callback); + return NULL; +} + +AsyncWebServerResponse * AsyncWebServerRequest::beginResponse(Stream &stream, const String& contentType, size_t len, AwsTemplateProcessor callback){ + return new AsyncStreamResponse(stream, contentType, len, callback); +} + +AsyncWebServerResponse * AsyncWebServerRequest::beginResponse(const String& contentType, size_t len, AwsResponseFiller callback, AwsTemplateProcessor templateCallback){ + return new AsyncCallbackResponse(contentType, len, callback, templateCallback); +} + +AsyncWebServerResponse * AsyncWebServerRequest::beginChunkedResponse(const String& contentType, AwsResponseFiller callback, AwsTemplateProcessor templateCallback){ + if(_version) + return new AsyncChunkedResponse(contentType, callback, templateCallback); + return new AsyncCallbackResponse(contentType, 0, callback, templateCallback); +} + +AsyncResponseStream * AsyncWebServerRequest::beginResponseStream(const String& contentType, size_t bufferSize){ + return new AsyncResponseStream(contentType, bufferSize); +} + +AsyncWebServerResponse * AsyncWebServerRequest::beginResponse_P(int code, const String& contentType, const uint8_t * content, size_t len, AwsTemplateProcessor callback){ + return new AsyncProgmemResponse(code, contentType, content, len, callback); +} + +AsyncWebServerResponse * AsyncWebServerRequest::beginResponse_P(int code, const String& contentType, PGM_P content, AwsTemplateProcessor callback){ + return beginResponse_P(code, contentType, (const uint8_t *)content, strlen_P(content), callback); +} + +void AsyncWebServerRequest::send(int code, const String& contentType, const String& content){ + send(beginResponse(code, contentType, content)); +} + +void AsyncWebServerRequest::send(FS &fs, const String& path, const String& contentType, bool download, AwsTemplateProcessor callback){ + if(fs.exists(path) || (!download && fs.exists(path+".gz"))){ + send(beginResponse(fs, path, contentType, download, callback)); + } else send(404); +} + +void AsyncWebServerRequest::send(File content, const String& path, const String& contentType, bool download, AwsTemplateProcessor callback){ + if(content == true){ + send(beginResponse(content, path, contentType, download, callback)); + } else send(404); +} + +void AsyncWebServerRequest::send(Stream &stream, const String& contentType, size_t len, AwsTemplateProcessor callback){ + send(beginResponse(stream, contentType, len, callback)); +} + +void AsyncWebServerRequest::send(const String& contentType, size_t len, AwsResponseFiller callback, AwsTemplateProcessor templateCallback){ + send(beginResponse(contentType, len, callback, templateCallback)); +} + +void AsyncWebServerRequest::sendChunked(const String& contentType, AwsResponseFiller callback, AwsTemplateProcessor templateCallback){ + send(beginChunkedResponse(contentType, callback, templateCallback)); +} + +void AsyncWebServerRequest::send_P(int code, const String& contentType, const uint8_t * content, size_t len, AwsTemplateProcessor callback){ + send(beginResponse_P(code, contentType, content, len, callback)); +} + +void AsyncWebServerRequest::send_P(int code, const String& contentType, PGM_P content, AwsTemplateProcessor callback){ + send(beginResponse_P(code, contentType, content, callback)); +} + +void AsyncWebServerRequest::redirect(const String& url){ + AsyncWebServerResponse * response = beginResponse(302); + response->addHeader("Location",url); + send(response); +} + +bool AsyncWebServerRequest::authenticate(const char * username, const char * password, const char * realm, bool passwordIsHash){ + if(_authorization.length()){ + if(_isDigest) + return checkDigestAuthentication(_authorization.c_str(), methodToString(), username, password, realm, passwordIsHash, NULL, NULL, NULL); + else if(!passwordIsHash) + return checkBasicAuthentication(_authorization.c_str(), username, password); + else + return _authorization.equals(password); + } + return false; +} + +bool AsyncWebServerRequest::authenticate(const char * hash){ + if(!_authorization.length() || hash == NULL) + return false; + + if(_isDigest){ + String hStr = String(hash); + int separator = hStr.indexOf(":"); + if(separator <= 0) + return false; + String username = hStr.substring(0, separator); + hStr = hStr.substring(separator + 1); + separator = hStr.indexOf(":"); + if(separator <= 0) + return false; + String realm = hStr.substring(0, separator); + hStr = hStr.substring(separator + 1); + return checkDigestAuthentication(_authorization.c_str(), methodToString(), username.c_str(), hStr.c_str(), realm.c_str(), true, NULL, NULL, NULL); + } + + return (_authorization.equals(hash)); +} + +void AsyncWebServerRequest::requestAuthentication(const char * realm, bool isDigest){ + AsyncWebServerResponse * r = beginResponse(401); + if(!isDigest && realm == NULL){ + r->addHeader("WWW-Authenticate", "Basic realm=\"Login Required\""); + } else if(!isDigest){ + String header = "Basic realm=\""; + header.concat(realm); + header.concat("\""); + r->addHeader("WWW-Authenticate", header); + } else { + String header = "Digest "; + header.concat(requestDigestAuthentication(realm)); + r->addHeader("WWW-Authenticate", header); + } + send(r); +} + +bool AsyncWebServerRequest::hasArg(const char* name) const { + for(const auto& arg: _params){ + if(arg->name() == name){ + return true; + } + } + return false; +} + +bool AsyncWebServerRequest::hasArg(const __FlashStringHelper * data) const { + PGM_P p = reinterpret_cast(data); + size_t n = strlen_P(p); + char * name = (char*) malloc(n+1); + if (name) { + strcpy_P(name, p); + bool result = hasArg( name ); + free(name); + return result; + } else { + return false; + } +} + + +const String& AsyncWebServerRequest::arg(const String& name) const { + for(const auto& arg: _params){ + if(arg->name() == name){ + return arg->value(); + } + } + return SharedEmptyString; +} + +const String& AsyncWebServerRequest::arg(const __FlashStringHelper * data) const { + PGM_P p = reinterpret_cast(data); + size_t n = strlen_P(p); + char * name = (char*) malloc(n+1); + if (name) { + strcpy_P(name, p); + const String & result = arg( String(name) ); + free(name); + return result; + } else { + return SharedEmptyString; + } + +} + +const String& AsyncWebServerRequest::arg(size_t i) const { + return getParam(i)->value(); +} + +const String& AsyncWebServerRequest::argName(size_t i) const { + return getParam(i)->name(); +} + +const String& AsyncWebServerRequest::pathArg(size_t i) const { + auto param = _pathParams.nth(i); + return param ? **param : SharedEmptyString; +} + +const String& AsyncWebServerRequest::header(const char* name) const { + AsyncWebHeader* h = getHeader(String(name)); + return h ? h->value() : SharedEmptyString; +} + +const String& AsyncWebServerRequest::header(const __FlashStringHelper * data) const { + PGM_P p = reinterpret_cast(data); + size_t n = strlen_P(p); + char * name = (char*) malloc(n+1); + if (name) { + strcpy_P(name, p); + const String & result = header( (const char *)name ); + free(name); + return result; + } else { + return SharedEmptyString; + } +}; + + +const String& AsyncWebServerRequest::header(size_t i) const { + AsyncWebHeader* h = getHeader(i); + return h ? h->value() : SharedEmptyString; +} + +const String& AsyncWebServerRequest::headerName(size_t i) const { + AsyncWebHeader* h = getHeader(i); + return h ? h->name() : SharedEmptyString; +} + +String AsyncWebServerRequest::urlDecode(const String& text) const { + char temp[] = "0x00"; + unsigned int len = text.length(); + unsigned int i = 0; + String decoded = String(); + decoded.reserve(len); // Allocate the string internal buffer - never longer from source text + while (i < len){ + char decodedChar; + char encodedChar = text.charAt(i++); + if ((encodedChar == '%') && (i + 1 < len)){ + temp[2] = text.charAt(i++); + temp[3] = text.charAt(i++); + decodedChar = strtol(temp, NULL, 16); + } else if (encodedChar == '+') { + decodedChar = ' '; + } else { + decodedChar = encodedChar; // normal ascii char + } + decoded.concat(decodedChar); + } + return decoded; +} + + +const char * AsyncWebServerRequest::methodToString() const { + if(_method == HTTP_ANY) return "ANY"; + else if(_method & HTTP_GET) return "GET"; + else if(_method & HTTP_POST) return "POST"; + else if(_method & HTTP_DELETE) return "DELETE"; + else if(_method & HTTP_PUT) return "PUT"; + else if(_method & HTTP_PATCH) return "PATCH"; + else if(_method & HTTP_HEAD) return "HEAD"; + else if(_method & HTTP_OPTIONS) return "OPTIONS"; + return "UNKNOWN"; +} + +const char *AsyncWebServerRequest::requestedConnTypeToString() const { + switch (_reqconntype) { + case RCT_NOT_USED: return "RCT_NOT_USED"; + case RCT_DEFAULT: return "RCT_DEFAULT"; + case RCT_HTTP: return "RCT_HTTP"; + case RCT_WS: return "RCT_WS"; + case RCT_EVENT: return "RCT_EVENT"; + default: return "ERROR"; + } +} + +bool AsyncWebServerRequest::isExpectedRequestedConnType(RequestedConnectionType erct1, RequestedConnectionType erct2, RequestedConnectionType erct3) { + bool res = false; + if ((erct1 != RCT_NOT_USED) && (erct1 == _reqconntype)) res = true; + if ((erct2 != RCT_NOT_USED) && (erct2 == _reqconntype)) res = true; + if ((erct3 != RCT_NOT_USED) && (erct3 == _reqconntype)) res = true; + return res; +} diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebResponseImpl.h b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebResponseImpl.h new file mode 100644 index 00000000..9a64e3a5 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebResponseImpl.h @@ -0,0 +1,136 @@ +/* + Asynchronous WebServer library for Espressif MCUs + + Copyright (c) 2016 Hristo Gochkov. All rights reserved. + This file is part of the esp8266 core for Arduino environment. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ +#ifndef ASYNCWEBSERVERRESPONSEIMPL_H_ +#define ASYNCWEBSERVERRESPONSEIMPL_H_ + +#ifdef Arduino_h +// arduino is not compatible with std::vector +#undef min +#undef max +#endif +#include +// It is possible to restore these defines, but one can use _min and _max instead. Or std::min, std::max. + +class AsyncBasicResponse: public AsyncWebServerResponse { + private: + String _content; + public: + AsyncBasicResponse(int code, const String& contentType=String(), const String& content=String()); + void _respond(AsyncWebServerRequest *request); + size_t _ack(AsyncWebServerRequest *request, size_t len, uint32_t time); + bool _sourceValid() const { return true; } +}; + +class AsyncAbstractResponse: public AsyncWebServerResponse { + private: + String _head; + // Data is inserted into cache at begin(). + // This is inefficient with vector, but if we use some other container, + // we won't be able to access it as contiguous array of bytes when reading from it, + // so by gaining performance in one place, we'll lose it in another. + std::vector _cache; + size_t _readDataFromCacheOrContent(uint8_t* data, const size_t len); + size_t _fillBufferAndProcessTemplates(uint8_t* buf, size_t maxLen); + protected: + AwsTemplateProcessor _callback; + public: + AsyncAbstractResponse(AwsTemplateProcessor callback=nullptr); + void _respond(AsyncWebServerRequest *request); + size_t _ack(AsyncWebServerRequest *request, size_t len, uint32_t time); + bool _sourceValid() const { return false; } + virtual size_t _fillBuffer(uint8_t *buf __attribute__((unused)), size_t maxLen __attribute__((unused))) { return 0; } +}; + +#ifndef TEMPLATE_PLACEHOLDER +#define TEMPLATE_PLACEHOLDER '%' +#endif + +#define TEMPLATE_PARAM_NAME_LENGTH 32 +class AsyncFileResponse: public AsyncAbstractResponse { + using File = fs::File; + using FS = fs::FS; + private: + File _content; + String _path; + void _setContentType(const String& path); + public: + AsyncFileResponse(FS &fs, const String& path, const String& contentType=String(), bool download=false, AwsTemplateProcessor callback=nullptr); + AsyncFileResponse(File content, const String& path, const String& contentType=String(), bool download=false, AwsTemplateProcessor callback=nullptr); + ~AsyncFileResponse(); + bool _sourceValid() const { return !!(_content); } + virtual size_t _fillBuffer(uint8_t *buf, size_t maxLen) override; +}; + +class AsyncStreamResponse: public AsyncAbstractResponse { + private: + Stream *_content; + public: + AsyncStreamResponse(Stream &stream, const String& contentType, size_t len, AwsTemplateProcessor callback=nullptr); + bool _sourceValid() const { return !!(_content); } + virtual size_t _fillBuffer(uint8_t *buf, size_t maxLen) override; +}; + +class AsyncCallbackResponse: public AsyncAbstractResponse { + private: + AwsResponseFiller _content; + size_t _filledLength; + public: + AsyncCallbackResponse(const String& contentType, size_t len, AwsResponseFiller callback, AwsTemplateProcessor templateCallback=nullptr); + bool _sourceValid() const { return !!(_content); } + virtual size_t _fillBuffer(uint8_t *buf, size_t maxLen) override; +}; + +class AsyncChunkedResponse: public AsyncAbstractResponse { + private: + AwsResponseFiller _content; + size_t _filledLength; + public: + AsyncChunkedResponse(const String& contentType, AwsResponseFiller callback, AwsTemplateProcessor templateCallback=nullptr); + bool _sourceValid() const { return !!(_content); } + virtual size_t _fillBuffer(uint8_t *buf, size_t maxLen) override; +}; + +class AsyncProgmemResponse: public AsyncAbstractResponse { + private: + const uint8_t * _content; + size_t _readLength; + public: + AsyncProgmemResponse(int code, const String& contentType, const uint8_t * content, size_t len, AwsTemplateProcessor callback=nullptr); + bool _sourceValid() const { return true; } + virtual size_t _fillBuffer(uint8_t *buf, size_t maxLen) override; +}; + +class cbuf; + +class AsyncResponseStream: public AsyncAbstractResponse, public Print { + private: + cbuf *_content; + public: + AsyncResponseStream(const String& contentType, size_t bufferSize); + ~AsyncResponseStream(); + bool _sourceValid() const { return (_state < RESPONSE_END); } + virtual size_t _fillBuffer(uint8_t *buf, size_t maxLen) override; + size_t write(const uint8_t *data, size_t len); + size_t write(uint8_t data); + using Print::write; +}; + +#endif /* ASYNCWEBSERVERRESPONSEIMPL_H_ */ diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebResponses.cpp b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebResponses.cpp new file mode 100644 index 00000000..a22e991a --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebResponses.cpp @@ -0,0 +1,699 @@ +/* + Asynchronous WebServer library for Espressif MCUs + + Copyright (c) 2016 Hristo Gochkov. All rights reserved. + This file is part of the esp8266 core for Arduino environment. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ +#include "ESPAsyncWebServer.h" +#include "WebResponseImpl.h" +#include "cbuf.h" + +// Since ESP8266 does not link memchr by default, here's its implementation. +void* memchr(void* ptr, int ch, size_t count) +{ + unsigned char* p = static_cast(ptr); + while(count--) + if(*p++ == static_cast(ch)) + return --p; + return nullptr; +} + + +/* + * Abstract Response + * */ +const char* AsyncWebServerResponse::_responseCodeToString(int code) { + switch (code) { + case 100: return "Continue"; + case 101: return "Switching Protocols"; + case 200: return "OK"; + case 201: return "Created"; + case 202: return "Accepted"; + case 203: return "Non-Authoritative Information"; + case 204: return "No Content"; + case 205: return "Reset Content"; + case 206: return "Partial Content"; + case 300: return "Multiple Choices"; + case 301: return "Moved Permanently"; + case 302: return "Found"; + case 303: return "See Other"; + case 304: return "Not Modified"; + case 305: return "Use Proxy"; + case 307: return "Temporary Redirect"; + case 400: return "Bad Request"; + case 401: return "Unauthorized"; + case 402: return "Payment Required"; + case 403: return "Forbidden"; + case 404: return "Not Found"; + case 405: return "Method Not Allowed"; + case 406: return "Not Acceptable"; + case 407: return "Proxy Authentication Required"; + case 408: return "Request Time-out"; + case 409: return "Conflict"; + case 410: return "Gone"; + case 411: return "Length Required"; + case 412: return "Precondition Failed"; + case 413: return "Request Entity Too Large"; + case 414: return "Request-URI Too Large"; + case 415: return "Unsupported Media Type"; + case 416: return "Requested range not satisfiable"; + case 417: return "Expectation Failed"; + case 500: return "Internal Server Error"; + case 501: return "Not Implemented"; + case 502: return "Bad Gateway"; + case 503: return "Service Unavailable"; + case 504: return "Gateway Time-out"; + case 505: return "HTTP Version not supported"; + default: return ""; + } +} + +AsyncWebServerResponse::AsyncWebServerResponse() + : _code(0) + , _headers(LinkedList([](AsyncWebHeader *h){ delete h; })) + , _contentType() + , _contentLength(0) + , _sendContentLength(true) + , _chunked(false) + , _headLength(0) + , _sentLength(0) + , _ackedLength(0) + , _writtenLength(0) + , _state(RESPONSE_SETUP) +{ + for(auto header: DefaultHeaders::Instance()) { + _headers.add(new AsyncWebHeader(header->name(), header->value())); + } +} + +AsyncWebServerResponse::~AsyncWebServerResponse(){ + _headers.free(); +} + +void AsyncWebServerResponse::setCode(int code){ + if(_state == RESPONSE_SETUP) + _code = code; +} + +void AsyncWebServerResponse::setContentLength(size_t len){ + if(_state == RESPONSE_SETUP) + _contentLength = len; +} + +void AsyncWebServerResponse::setContentType(const String& type){ + if(_state == RESPONSE_SETUP) + _contentType = type; +} + +void AsyncWebServerResponse::addHeader(const String& name, const String& value){ + _headers.add(new AsyncWebHeader(name, value)); +} + +String AsyncWebServerResponse::_assembleHead(uint8_t version){ + if(version){ + addHeader("Accept-Ranges","none"); + if(_chunked) + addHeader("Transfer-Encoding","chunked"); + } + String out = String(); + int bufSize = 300; + char buf[bufSize]; + + snprintf(buf, bufSize, "HTTP/1.%d %d %s\r\n", version, _code, _responseCodeToString(_code)); + out.concat(buf); + + if(_sendContentLength) { + snprintf(buf, bufSize, "Content-Length: %d\r\n", _contentLength); + out.concat(buf); + } + if(_contentType.length()) { + snprintf(buf, bufSize, "Content-Type: %s\r\n", _contentType.c_str()); + out.concat(buf); + } + + for(const auto& header: _headers){ + snprintf(buf, bufSize, "%s: %s\r\n", header->name().c_str(), header->value().c_str()); + out.concat(buf); + } + _headers.free(); + + out.concat("\r\n"); + _headLength = out.length(); + return out; +} + +bool AsyncWebServerResponse::_started() const { return _state > RESPONSE_SETUP; } +bool AsyncWebServerResponse::_finished() const { return _state > RESPONSE_WAIT_ACK; } +bool AsyncWebServerResponse::_failed() const { return _state == RESPONSE_FAILED; } +bool AsyncWebServerResponse::_sourceValid() const { return false; } +void AsyncWebServerResponse::_respond(AsyncWebServerRequest *request){ _state = RESPONSE_END; request->client()->close(); } +size_t AsyncWebServerResponse::_ack(AsyncWebServerRequest *request, size_t len, uint32_t time){ (void)request; (void)len; (void)time; return 0; } + +/* + * String/Code Response + * */ +AsyncBasicResponse::AsyncBasicResponse(int code, const String& contentType, const String& content){ + _code = code; + _content = content; + _contentType = contentType; + if(_content.length()){ + _contentLength = _content.length(); + if(!_contentType.length()) + _contentType = "text/plain"; + } + addHeader("Connection","close"); +} + +void AsyncBasicResponse::_respond(AsyncWebServerRequest *request){ + _state = RESPONSE_HEADERS; + String out = _assembleHead(request->version()); + size_t outLen = out.length(); + size_t space = request->client()->space(); + if(!_contentLength && space >= outLen){ + _writtenLength += request->client()->write(out.c_str(), outLen); + _state = RESPONSE_WAIT_ACK; + } else if(_contentLength && space >= outLen + _contentLength){ + out += _content; + outLen += _contentLength; + _writtenLength += request->client()->write(out.c_str(), outLen); + _state = RESPONSE_WAIT_ACK; + } else if(space && space < outLen){ + String partial = out.substring(0, space); + _content = out.substring(space) + _content; + _contentLength += outLen - space; + _writtenLength += request->client()->write(partial.c_str(), partial.length()); + _state = RESPONSE_CONTENT; + } else if(space > outLen && space < (outLen + _contentLength)){ + size_t shift = space - outLen; + outLen += shift; + _sentLength += shift; + out += _content.substring(0, shift); + _content = _content.substring(shift); + _writtenLength += request->client()->write(out.c_str(), outLen); + _state = RESPONSE_CONTENT; + } else { + _content = out + _content; + _contentLength += outLen; + _state = RESPONSE_CONTENT; + } +} + +size_t AsyncBasicResponse::_ack(AsyncWebServerRequest *request, size_t len, uint32_t time){ + (void)time; + _ackedLength += len; + if(_state == RESPONSE_CONTENT){ + size_t available = _contentLength - _sentLength; + size_t space = request->client()->space(); + //we can fit in this packet + if(space > available){ + _writtenLength += request->client()->write(_content.c_str(), available); + _content = String(); + _state = RESPONSE_WAIT_ACK; + return available; + } + //send some data, the rest on ack + String out = _content.substring(0, space); + _content = _content.substring(space); + _sentLength += space; + _writtenLength += request->client()->write(out.c_str(), space); + return space; + } else if(_state == RESPONSE_WAIT_ACK){ + if(_ackedLength >= _writtenLength){ + _state = RESPONSE_END; + } + } + return 0; +} + + +/* + * Abstract Response + * */ + +AsyncAbstractResponse::AsyncAbstractResponse(AwsTemplateProcessor callback): _callback(callback) +{ + // In case of template processing, we're unable to determine real response size + if(callback) { + _contentLength = 0; + _sendContentLength = false; + _chunked = true; + } +} + +void AsyncAbstractResponse::_respond(AsyncWebServerRequest *request){ + addHeader("Connection","close"); + _head = _assembleHead(request->version()); + _state = RESPONSE_HEADERS; + _ack(request, 0, 0); +} + +size_t AsyncAbstractResponse::_ack(AsyncWebServerRequest *request, size_t len, uint32_t time){ + (void)time; + if(!_sourceValid()){ + _state = RESPONSE_FAILED; + request->client()->close(); + return 0; + } + _ackedLength += len; + size_t space = request->client()->space(); + + size_t headLen = _head.length(); + if(_state == RESPONSE_HEADERS){ + if(space >= headLen){ + _state = RESPONSE_CONTENT; + space -= headLen; + } else { + String out = _head.substring(0, space); + _head = _head.substring(space); + _writtenLength += request->client()->write(out.c_str(), out.length()); + return out.length(); + } + } + + if(_state == RESPONSE_CONTENT){ + size_t outLen; + if(_chunked){ + if(space <= 8){ + return 0; + } + outLen = space; + } else if(!_sendContentLength){ + outLen = space; + } else { + outLen = ((_contentLength - _sentLength) > space)?space:(_contentLength - _sentLength); + } + + uint8_t *buf = (uint8_t *)malloc(outLen+headLen); + if (!buf) { + // os_printf("_ack malloc %d failed\n", outLen+headLen); + return 0; + } + + if(headLen){ + memcpy(buf, _head.c_str(), _head.length()); + } + + size_t readLen = 0; + + if(_chunked){ + // HTTP 1.1 allows leading zeros in chunk length. Or spaces may be added. + // See RFC2616 sections 2, 3.6.1. + readLen = _fillBufferAndProcessTemplates(buf+headLen+6, outLen - 8); + if(readLen == RESPONSE_TRY_AGAIN){ + free(buf); + return 0; + } + outLen = sprintf((char*)buf+headLen, "%x", readLen) + headLen; + while(outLen < headLen + 4) buf[outLen++] = ' '; + buf[outLen++] = '\r'; + buf[outLen++] = '\n'; + outLen += readLen; + buf[outLen++] = '\r'; + buf[outLen++] = '\n'; + } else { + readLen = _fillBufferAndProcessTemplates(buf+headLen, outLen); + if(readLen == RESPONSE_TRY_AGAIN){ + free(buf); + return 0; + } + outLen = readLen + headLen; + } + + if(headLen){ + _head = String(); + } + + if(outLen){ + _writtenLength += request->client()->write((const char*)buf, outLen); + } + + if(_chunked){ + _sentLength += readLen; + } else { + _sentLength += outLen - headLen; + } + + free(buf); + + if((_chunked && readLen == 0) || (!_sendContentLength && outLen == 0) || (!_chunked && _sentLength == _contentLength)){ + _state = RESPONSE_WAIT_ACK; + } + return outLen; + + } else if(_state == RESPONSE_WAIT_ACK){ + if(!_sendContentLength || _ackedLength >= _writtenLength){ + _state = RESPONSE_END; + if(!_chunked && !_sendContentLength) + request->client()->close(true); + } + } + return 0; +} + +size_t AsyncAbstractResponse::_readDataFromCacheOrContent(uint8_t* data, const size_t len) +{ + // If we have something in cache, copy it to buffer + const size_t readFromCache = std::min(len, _cache.size()); + if(readFromCache) { + memcpy(data, _cache.data(), readFromCache); + _cache.erase(_cache.begin(), _cache.begin() + readFromCache); + } + // If we need to read more... + const size_t needFromFile = len - readFromCache; + const size_t readFromContent = _fillBuffer(data + readFromCache, needFromFile); + return readFromCache + readFromContent; +} + +size_t AsyncAbstractResponse::_fillBufferAndProcessTemplates(uint8_t* data, size_t len) +{ + if(!_callback) + return _fillBuffer(data, len); + + const size_t originalLen = len; + len = _readDataFromCacheOrContent(data, len); + // Now we've read 'len' bytes, either from cache or from file + // Search for template placeholders + uint8_t* pTemplateStart = data; + while((pTemplateStart < &data[len]) && (pTemplateStart = (uint8_t*)memchr(pTemplateStart, TEMPLATE_PLACEHOLDER, &data[len - 1] - pTemplateStart + 1))) { // data[0] ... data[len - 1] + uint8_t* pTemplateEnd = (pTemplateStart < &data[len - 1]) ? (uint8_t*)memchr(pTemplateStart + 1, TEMPLATE_PLACEHOLDER, &data[len - 1] - pTemplateStart) : nullptr; + // temporary buffer to hold parameter name + uint8_t buf[TEMPLATE_PARAM_NAME_LENGTH + 1]; + String paramName; + // If closing placeholder is found: + if(pTemplateEnd) { + // prepare argument to callback + const size_t paramNameLength = std::min(sizeof(buf) - 1, (unsigned int)(pTemplateEnd - pTemplateStart - 1)); + if(paramNameLength) { + memcpy(buf, pTemplateStart + 1, paramNameLength); + buf[paramNameLength] = 0; + paramName = String(reinterpret_cast(buf)); + } else { // double percent sign encountered, this is single percent sign escaped. + // remove the 2nd percent sign + memmove(pTemplateEnd, pTemplateEnd + 1, &data[len] - pTemplateEnd - 1); + len += _readDataFromCacheOrContent(&data[len - 1], 1) - 1; + ++pTemplateStart; + } + } else if(&data[len - 1] - pTemplateStart + 1 < TEMPLATE_PARAM_NAME_LENGTH + 2) { // closing placeholder not found, check if it's in the remaining file data + memcpy(buf, pTemplateStart + 1, &data[len - 1] - pTemplateStart); + const size_t readFromCacheOrContent = _readDataFromCacheOrContent(buf + (&data[len - 1] - pTemplateStart), TEMPLATE_PARAM_NAME_LENGTH + 2 - (&data[len - 1] - pTemplateStart + 1)); + if(readFromCacheOrContent) { + pTemplateEnd = (uint8_t*)memchr(buf + (&data[len - 1] - pTemplateStart), TEMPLATE_PLACEHOLDER, readFromCacheOrContent); + if(pTemplateEnd) { + // prepare argument to callback + *pTemplateEnd = 0; + paramName = String(reinterpret_cast(buf)); + // Copy remaining read-ahead data into cache + _cache.insert(_cache.begin(), pTemplateEnd + 1, buf + (&data[len - 1] - pTemplateStart) + readFromCacheOrContent); + pTemplateEnd = &data[len - 1]; + } + else // closing placeholder not found in file data, store found percent symbol as is and advance to the next position + { + // but first, store read file data in cache + _cache.insert(_cache.begin(), buf + (&data[len - 1] - pTemplateStart), buf + (&data[len - 1] - pTemplateStart) + readFromCacheOrContent); + ++pTemplateStart; + } + } + else // closing placeholder not found in content data, store found percent symbol as is and advance to the next position + ++pTemplateStart; + } + else // closing placeholder not found in content data, store found percent symbol as is and advance to the next position + ++pTemplateStart; + if(paramName.length()) { + // call callback and replace with result. + // Everything in range [pTemplateStart, pTemplateEnd] can be safely replaced with parameter value. + // Data after pTemplateEnd may need to be moved. + // The first byte of data after placeholder is located at pTemplateEnd + 1. + // It should be located at pTemplateStart + numBytesCopied (to begin right after inserted parameter value). + const String paramValue(_callback(paramName)); + const char* pvstr = paramValue.c_str(); + const unsigned int pvlen = paramValue.length(); + const size_t numBytesCopied = std::min(pvlen, static_cast(&data[originalLen - 1] - pTemplateStart + 1)); + // make room for param value + // 1. move extra data to cache if parameter value is longer than placeholder AND if there is no room to store + if((pTemplateEnd + 1 < pTemplateStart + numBytesCopied) && (originalLen - (pTemplateStart + numBytesCopied - pTemplateEnd - 1) < len)) { + _cache.insert(_cache.begin(), &data[originalLen - (pTemplateStart + numBytesCopied - pTemplateEnd - 1)], &data[len]); + //2. parameter value is longer than placeholder text, push the data after placeholder which not saved into cache further to the end + memmove(pTemplateStart + numBytesCopied, pTemplateEnd + 1, &data[originalLen] - pTemplateStart - numBytesCopied); + len = originalLen; // fix issue with truncated data, not sure if it has any side effects + } else if(pTemplateEnd + 1 != pTemplateStart + numBytesCopied) + //2. Either parameter value is shorter than placeholder text OR there is enough free space in buffer to fit. + // Move the entire data after the placeholder + memmove(pTemplateStart + numBytesCopied, pTemplateEnd + 1, &data[len] - pTemplateEnd - 1); + // 3. replace placeholder with actual value + memcpy(pTemplateStart, pvstr, numBytesCopied); + // If result is longer than buffer, copy the remainder into cache (this could happen only if placeholder text itself did not fit entirely in buffer) + if(numBytesCopied < pvlen) { + _cache.insert(_cache.begin(), pvstr + numBytesCopied, pvstr + pvlen); + } else if(pTemplateStart + numBytesCopied < pTemplateEnd + 1) { // result is copied fully; if result is shorter than placeholder text... + // there is some free room, fill it from cache + const size_t roomFreed = pTemplateEnd + 1 - pTemplateStart - numBytesCopied; + const size_t totalFreeRoom = originalLen - len + roomFreed; + len += _readDataFromCacheOrContent(&data[len - roomFreed], totalFreeRoom) - roomFreed; + } else { // result is copied fully; it is longer than placeholder text + const size_t roomTaken = pTemplateStart + numBytesCopied - pTemplateEnd - 1; + len = std::min(len + roomTaken, originalLen); + } + } + } // while(pTemplateStart) + return len; +} + + +/* + * File Response + * */ + +AsyncFileResponse::~AsyncFileResponse(){ + if(_content) + _content.close(); +} + +void AsyncFileResponse::_setContentType(const String& path){ + if (path.endsWith(".html")) _contentType = "text/html"; + else if (path.endsWith(".htm")) _contentType = "text/html"; + else if (path.endsWith(".css")) _contentType = "text/css"; + else if (path.endsWith(".json")) _contentType = "application/json"; + else if (path.endsWith(".js")) _contentType = "application/javascript"; + else if (path.endsWith(".png")) _contentType = "image/png"; + else if (path.endsWith(".gif")) _contentType = "image/gif"; + else if (path.endsWith(".jpg")) _contentType = "image/jpeg"; + else if (path.endsWith(".ico")) _contentType = "image/x-icon"; + else if (path.endsWith(".svg")) _contentType = "image/svg+xml"; + else if (path.endsWith(".eot")) _contentType = "font/eot"; + else if (path.endsWith(".woff")) _contentType = "font/woff"; + else if (path.endsWith(".woff2")) _contentType = "font/woff2"; + else if (path.endsWith(".ttf")) _contentType = "font/ttf"; + else if (path.endsWith(".xml")) _contentType = "text/xml"; + else if (path.endsWith(".pdf")) _contentType = "application/pdf"; + else if (path.endsWith(".zip")) _contentType = "application/zip"; + else if(path.endsWith(".gz")) _contentType = "application/x-gzip"; + else _contentType = "text/plain"; +} + +AsyncFileResponse::AsyncFileResponse(FS &fs, const String& path, const String& contentType, bool download, AwsTemplateProcessor callback): AsyncAbstractResponse(callback){ + _code = 200; + _path = path; + + if(!download && !fs.exists(_path) && fs.exists(_path+".gz")){ + _path = _path+".gz"; + addHeader("Content-Encoding", "gzip"); + _callback = nullptr; // Unable to process zipped templates + _sendContentLength = true; + _chunked = false; + } + + _content = fs.open(_path, "r"); + _contentLength = _content.size(); + + if(contentType == "") + _setContentType(path); + else + _contentType = contentType; + + int filenameStart = path.lastIndexOf('/') + 1; + char buf[26+path.length()-filenameStart]; + char* filename = (char*)path.c_str() + filenameStart; + + if(download) { + // set filename and force download + snprintf(buf, sizeof (buf), "attachment; filename=\"%s\"", filename); + } else { + // set filename and force rendering + snprintf(buf, sizeof (buf), "inline; filename=\"%s\"", filename); + } + addHeader("Content-Disposition", buf); +} + +AsyncFileResponse::AsyncFileResponse(File content, const String& path, const String& contentType, bool download, AwsTemplateProcessor callback): AsyncAbstractResponse(callback){ + _code = 200; + _path = path; + + if(!download && String(content.name()).endsWith(".gz") && !path.endsWith(".gz")){ + addHeader("Content-Encoding", "gzip"); + _callback = nullptr; // Unable to process gzipped templates + _sendContentLength = true; + _chunked = false; + } + + _content = content; + _contentLength = _content.size(); + + if(contentType == "") + _setContentType(path); + else + _contentType = contentType; + + int filenameStart = path.lastIndexOf('/') + 1; + char buf[26+path.length()-filenameStart]; + char* filename = (char*)path.c_str() + filenameStart; + + if(download) { + snprintf(buf, sizeof (buf), "attachment; filename=\"%s\"", filename); + } else { + snprintf(buf, sizeof (buf), "inline; filename=\"%s\"", filename); + } + addHeader("Content-Disposition", buf); +} + +size_t AsyncFileResponse::_fillBuffer(uint8_t *data, size_t len){ + return _content.read(data, len); +} + +/* + * Stream Response + * */ + +AsyncStreamResponse::AsyncStreamResponse(Stream &stream, const String& contentType, size_t len, AwsTemplateProcessor callback): AsyncAbstractResponse(callback) { + _code = 200; + _content = &stream; + _contentLength = len; + _contentType = contentType; +} + +size_t AsyncStreamResponse::_fillBuffer(uint8_t *data, size_t len){ + size_t available = _content->available(); + size_t outLen = (available > len)?len:available; + size_t i; + for(i=0;iread(); + return outLen; +} + +/* + * Callback Response + * */ + +AsyncCallbackResponse::AsyncCallbackResponse(const String& contentType, size_t len, AwsResponseFiller callback, AwsTemplateProcessor templateCallback): AsyncAbstractResponse(templateCallback) { + _code = 200; + _content = callback; + _contentLength = len; + if(!len) + _sendContentLength = false; + _contentType = contentType; + _filledLength = 0; +} + +size_t AsyncCallbackResponse::_fillBuffer(uint8_t *data, size_t len){ + size_t ret = _content(data, len, _filledLength); + if(ret != RESPONSE_TRY_AGAIN){ + _filledLength += ret; + } + return ret; +} + +/* + * Chunked Response + * */ + +AsyncChunkedResponse::AsyncChunkedResponse(const String& contentType, AwsResponseFiller callback, AwsTemplateProcessor processorCallback): AsyncAbstractResponse(processorCallback) { + _code = 200; + _content = callback; + _contentLength = 0; + _contentType = contentType; + _sendContentLength = false; + _chunked = true; + _filledLength = 0; +} + +size_t AsyncChunkedResponse::_fillBuffer(uint8_t *data, size_t len){ + size_t ret = _content(data, len, _filledLength); + if(ret != RESPONSE_TRY_AGAIN){ + _filledLength += ret; + } + return ret; +} + +/* + * Progmem Response + * */ + +AsyncProgmemResponse::AsyncProgmemResponse(int code, const String& contentType, const uint8_t * content, size_t len, AwsTemplateProcessor callback): AsyncAbstractResponse(callback) { + _code = code; + _content = content; + _contentType = contentType; + _contentLength = len; + _readLength = 0; +} + +size_t AsyncProgmemResponse::_fillBuffer(uint8_t *data, size_t len){ + size_t left = _contentLength - _readLength; + if (left > len) { + memcpy_P(data, _content + _readLength, len); + _readLength += len; + return len; + } + memcpy_P(data, _content + _readLength, left); + _readLength += left; + return left; +} + + +/* + * Response Stream (You can print/write/printf to it, up to the contentLen bytes) + * */ + +AsyncResponseStream::AsyncResponseStream(const String& contentType, size_t bufferSize){ + _code = 200; + _contentLength = 0; + _contentType = contentType; + _content = new cbuf(bufferSize); +} + +AsyncResponseStream::~AsyncResponseStream(){ + delete _content; +} + +size_t AsyncResponseStream::_fillBuffer(uint8_t *buf, size_t maxLen){ + return _content->read((char*)buf, maxLen); +} + +size_t AsyncResponseStream::write(const uint8_t *data, size_t len){ + if(_started()) + return 0; + + if(len > _content->room()){ + size_t needed = len - _content->room(); + _content->resizeAdd(needed); + } + size_t written = _content->write((const char*)data, len); + _contentLength += written; + return written; +} + +size_t AsyncResponseStream::write(uint8_t data){ + return write(&data, 1); +} diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebServer.cpp b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebServer.cpp new file mode 100644 index 00000000..95c2dd69 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/WebServer.cpp @@ -0,0 +1,193 @@ +/* + Asynchronous WebServer library for Espressif MCUs + + Copyright (c) 2016 Hristo Gochkov. All rights reserved. + This file is part of the esp8266 core for Arduino environment. + + This library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + This library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with this library; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA +*/ +#include "ESPAsyncWebServer.h" +#include "WebHandlerImpl.h" + +bool ON_STA_FILTER(AsyncWebServerRequest *request) { + return WiFi.localIP() == request->client()->localIP(); +} + +bool ON_AP_FILTER(AsyncWebServerRequest *request) { + return WiFi.localIP() != request->client()->localIP(); +} + + +AsyncWebServer::AsyncWebServer(uint16_t port) + : _server(port) + , _rewrites(LinkedList([](AsyncWebRewrite* r){ delete r; })) + , _handlers(LinkedList([](AsyncWebHandler* h){ delete h; })) +{ + _catchAllHandler = new AsyncCallbackWebHandler(); + if(_catchAllHandler == NULL) + return; + _server.onClient([](void *s, AsyncClient* c){ + if(c == NULL) + return; + c->setRxTimeout(3); + AsyncWebServerRequest *r = new AsyncWebServerRequest((AsyncWebServer*)s, c); + if(r == NULL){ + c->close(true); + c->free(); + delete c; + } + }, this); +} + +AsyncWebServer::~AsyncWebServer(){ + reset(); + end(); + if(_catchAllHandler) delete _catchAllHandler; +} + +AsyncWebRewrite& AsyncWebServer::addRewrite(AsyncWebRewrite* rewrite){ + _rewrites.add(rewrite); + return *rewrite; +} + +bool AsyncWebServer::removeRewrite(AsyncWebRewrite *rewrite){ + return _rewrites.remove(rewrite); +} + +AsyncWebRewrite& AsyncWebServer::rewrite(const char* from, const char* to){ + return addRewrite(new AsyncWebRewrite(from, to)); +} + +AsyncWebHandler& AsyncWebServer::addHandler(AsyncWebHandler* handler){ + _handlers.add(handler); + return *handler; +} + +bool AsyncWebServer::removeHandler(AsyncWebHandler *handler){ + return _handlers.remove(handler); +} + +void AsyncWebServer::begin(){ + _server.setNoDelay(true); + _server.begin(); +} + +void AsyncWebServer::end(){ + _server.end(); +} + +#if ASYNC_TCP_SSL_ENABLED +void AsyncWebServer::onSslFileRequest(AcSSlFileHandler cb, void* arg){ + _server.onSslFileRequest(cb, arg); +} + +void AsyncWebServer::beginSecure(const char *cert, const char *key, const char *password){ + _server.beginSecure(cert, key, password); +} +#endif + +void AsyncWebServer::_handleDisconnect(AsyncWebServerRequest *request){ + delete request; +} + +void AsyncWebServer::_rewriteRequest(AsyncWebServerRequest *request){ + for(const auto& r: _rewrites){ + if (r->match(request)){ + request->_url = r->toUrl(); + request->_addGetParams(r->params()); + } + } +} + +void AsyncWebServer::_attachHandler(AsyncWebServerRequest *request){ + for(const auto& h: _handlers){ + if (h->filter(request) && h->canHandle(request)){ + request->setHandler(h); + return; + } + } + + request->addInterestingHeader("ANY"); + request->setHandler(_catchAllHandler); +} + + +AsyncCallbackWebHandler& AsyncWebServer::on(const char* uri, WebRequestMethodComposite method, ArRequestHandlerFunction onRequest, ArUploadHandlerFunction onUpload, ArBodyHandlerFunction onBody){ + AsyncCallbackWebHandler* handler = new AsyncCallbackWebHandler(); + handler->setUri(uri); + handler->setMethod(method); + handler->onRequest(onRequest); + handler->onUpload(onUpload); + handler->onBody(onBody); + addHandler(handler); + return *handler; +} + +AsyncCallbackWebHandler& AsyncWebServer::on(const char* uri, WebRequestMethodComposite method, ArRequestHandlerFunction onRequest, ArUploadHandlerFunction onUpload){ + AsyncCallbackWebHandler* handler = new AsyncCallbackWebHandler(); + handler->setUri(uri); + handler->setMethod(method); + handler->onRequest(onRequest); + handler->onUpload(onUpload); + addHandler(handler); + return *handler; +} + +AsyncCallbackWebHandler& AsyncWebServer::on(const char* uri, WebRequestMethodComposite method, ArRequestHandlerFunction onRequest){ + AsyncCallbackWebHandler* handler = new AsyncCallbackWebHandler(); + handler->setUri(uri); + handler->setMethod(method); + handler->onRequest(onRequest); + addHandler(handler); + return *handler; +} + +AsyncCallbackWebHandler& AsyncWebServer::on(const char* uri, ArRequestHandlerFunction onRequest){ + AsyncCallbackWebHandler* handler = new AsyncCallbackWebHandler(); + handler->setUri(uri); + handler->onRequest(onRequest); + addHandler(handler); + return *handler; +} + +AsyncStaticWebHandler& AsyncWebServer::serveStatic(const char* uri, fs::FS& fs, const char* path, const char* cache_control){ + AsyncStaticWebHandler* handler = new AsyncStaticWebHandler(uri, fs, path, cache_control); + addHandler(handler); + return *handler; +} + +void AsyncWebServer::onNotFound(ArRequestHandlerFunction fn){ + _catchAllHandler->onRequest(fn); +} + +void AsyncWebServer::onFileUpload(ArUploadHandlerFunction fn){ + _catchAllHandler->onUpload(fn); +} + +void AsyncWebServer::onRequestBody(ArBodyHandlerFunction fn){ + _catchAllHandler->onBody(fn); +} + +void AsyncWebServer::reset(){ + _rewrites.free(); + _handlers.free(); + + if (_catchAllHandler != NULL){ + _catchAllHandler->onRequest(NULL); + _catchAllHandler->onUpload(NULL); + _catchAllHandler->onBody(NULL); + } +} + diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/edit.htm b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/edit.htm new file mode 100644 index 00000000..43d49845 --- /dev/null +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/edit.htm @@ -0,0 +1,627 @@ + + + + +ESP Editor + + + + + + +
+
+
+
+ + + + From ace426cf2c4edcc84dc1952ed6f617981d858c4d Mon Sep 17 00:00:00 2001 From: lenvm Date: Wed, 22 Nov 2023 21:17:51 +0100 Subject: [PATCH 03/12] modify ESPAsyncWebServer library such that it works correctly in this repository --- .../lib/me-no-dev-ESPAsyncWebServer/src/AsyncEventSource.h | 4 ++-- .../src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncJson.h | 2 +- .../lib/me-no-dev-ESPAsyncWebServer/src/AsyncWebSocket.h | 4 ++-- .../src/AsyncWebSynchronization.h | 2 +- .../lib/me-no-dev-ESPAsyncWebServer/src/ESPAsyncWebServer.h | 6 +++--- .../src/lib/me-no-dev-ESPAsyncWebServer/src/SPIFFSEditor.h | 2 +- 6 files changed, 10 insertions(+), 10 deletions(-) diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncEventSource.h b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncEventSource.h index b097fa62..d3d1b1d4 100644 --- a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncEventSource.h +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncEventSource.h @@ -22,13 +22,13 @@ #include #ifdef ESP32 -#include +#include "../../me-no-dev-AsyncTCP/src/AsyncTCP.h" #define SSE_MAX_QUEUED_MESSAGES 32 #else #include #define SSE_MAX_QUEUED_MESSAGES 8 #endif -#include +#include "ESPAsyncWebServer.h" #include "AsyncWebSynchronization.h" diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncJson.h b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncJson.h index 2fa6a2d2..131ad599 100644 --- a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncJson.h +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncJson.h @@ -35,7 +35,7 @@ #ifndef ASYNC_JSON_H_ #define ASYNC_JSON_H_ #include -#include +#include "ESPAsyncWebServer.h" #include #if ARDUINOJSON_VERSION_MAJOR == 5 diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncWebSocket.h b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncWebSocket.h index 5b03aceb..747399b8 100644 --- a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncWebSocket.h +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncWebSocket.h @@ -23,13 +23,13 @@ #include #ifdef ESP32 -#include +#include "../../me-no-dev-AsyncTCP/src/AsyncTCP.h" #define WS_MAX_QUEUED_MESSAGES 32 #else #include #define WS_MAX_QUEUED_MESSAGES 8 #endif -#include +#include "ESPAsyncWebServer.h" #include "AsyncWebSynchronization.h" diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncWebSynchronization.h b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncWebSynchronization.h index f36c52dc..d1d20acd 100644 --- a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncWebSynchronization.h +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/AsyncWebSynchronization.h @@ -3,7 +3,7 @@ // Synchronisation is only available on ESP32, as the ESP8266 isn't using FreeRTOS by default -#include +#include "ESPAsyncWebServer.h" #ifdef ESP32 diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/ESPAsyncWebServer.h b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/ESPAsyncWebServer.h index 7cd21aa8..664c0a5c 100644 --- a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/ESPAsyncWebServer.h +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/ESPAsyncWebServer.h @@ -30,10 +30,10 @@ #ifdef ESP32 #include -#include +#include "../../me-no-dev-AsyncTCP/src/AsyncTCP.h" #elif defined(ESP8266) #include -#include +#include "../../me-no-dev-AsyncTCP/src/AsyncTCP.h" #else #error Platform not supported #endif @@ -57,7 +57,7 @@ class AsyncStaticWebHandler; class AsyncCallbackWebHandler; class AsyncResponseStream; -#ifndef WEBSERVER_H +#ifndef ESPWEBSERVER_H typedef enum { HTTP_GET = 0b00000001, HTTP_POST = 0b00000010, diff --git a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/SPIFFSEditor.h b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/SPIFFSEditor.h index 3586429e..6b5896ea 100644 --- a/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/SPIFFSEditor.h +++ b/Software/src/lib/me-no-dev-ESPAsyncWebServer/src/SPIFFSEditor.h @@ -1,6 +1,6 @@ #ifndef SPIFFSEditor_H_ #define SPIFFSEditor_H_ -#include +#include "ESPAsyncWebServer.h" class SPIFFSEditor: public AsyncWebHandler { private: From 34ab0a0900f1935d321331e05a7087473bb6230f Mon Sep 17 00:00:00 2001 From: lenvm Date: Wed, 15 Nov 2023 22:52:33 +0100 Subject: [PATCH 04/12] add initial version of asynchronous webserver --- .gitignore | 3 + Software/Software.ino | 3 + Software/USER_SETTINGS.cpp | 6 + Software/src/devboard/webserver/README.md | 39 ++++++ Software/src/devboard/webserver/webserver.cpp | 112 ++++++++++++++++++ Software/src/devboard/webserver/webserver.h | 54 +++++++++ 6 files changed, 217 insertions(+) create mode 100644 Software/USER_SETTINGS.cpp create mode 100644 Software/src/devboard/webserver/README.md create mode 100644 Software/src/devboard/webserver/webserver.cpp create mode 100644 Software/src/devboard/webserver/webserver.h diff --git a/.gitignore b/.gitignore index 84864bbd..65ad4290 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,5 @@ # Ignore any .vscode folder *.vscode/ + +# Ignore any files in the build folder +Software/build/ diff --git a/Software/Software.ino b/Software/Software.ino index 71bc3c5f..13182646 100644 --- a/Software/Software.ino +++ b/Software/Software.ino @@ -6,6 +6,7 @@ #include "USER_SETTINGS.h" #include "src/battery/BATTERIES.h" #include "src/devboard/config.h" +#include "src/devboard/webserver/webserver.h" #include "src/inverter/INVERTERS.h" #include "src/lib/adafruit-Adafruit_NeoPixel/Adafruit_NeoPixel.h" #include "src/lib/eModbus-eModbus/Logging.h" @@ -109,6 +110,8 @@ bool inverterAllowsContactorClosing = true; void setup() { init_serial(); + init_webserver(); + init_CAN(); init_LED(); diff --git a/Software/USER_SETTINGS.cpp b/Software/USER_SETTINGS.cpp new file mode 100644 index 00000000..be47298a --- /dev/null +++ b/Software/USER_SETTINGS.cpp @@ -0,0 +1,6 @@ +#include "USER_SETTINGS.h" + +const char* ssid = "REPLACE_WITH_YOUR_SSID"; // maximum of 63 characters; +const char* password = "REPLACE_WITH_YOUR_PASSWORD"; // minimum of 8 characters; +const char* ssidAP = "Battery Emulator"; // maximum of 63 characters; +const char* passwordAP = "123456789"; // minimum of 8 characters; set to NULL if you want the access point to be open diff --git a/Software/src/devboard/webserver/README.md b/Software/src/devboard/webserver/README.md new file mode 100644 index 00000000..4ef9c15e --- /dev/null +++ b/Software/src/devboard/webserver/README.md @@ -0,0 +1,39 @@ +# Battery Emulator Webserver +This webserver creates a WiFi access point. It also connects ot an existing network. +The webserver intends to display useful information to the user of the battery emulator +development board, without the need to physically connect to the board via USB. +The webserver implementation also provides the option to update the firmware of the board over the air. + +To use the webserver, follow the following steps: +- Connect to the board via Serial, and boot up the board. +- The IP address of the WiFi access point is printed to Serial when the board boots up. Note this down. +- Connect to the access point created by board via a WiFi-capable device +- On that device, open a webbrowser and type the IP address of the WiFi access point. +- If the ssid and password of an existing WiFi network are provided, the board will also connect to this network. The IP address obtained on the existing network is shown in the webserver. Note this down. +- From this point onwards, any device connected to the existing WiFi network can access the webserver via a webbrowser. To do this: + - Connect your WiFi-capable device to the existing nwetork. + - Open a webbrowser and type the IP address obtained on the existing WiFi network. + +To update the software over the air: +- In Arduino, go to `Sketch` > `Export Compiled Binary`. This will create the `.bin` file that you need to update the firmware. It is found in the folder `Software/build/` +- In your webbrowser, go to the url consisting of the IP address, followed by `/update`, for instance `http://192.168.0.224/update`. +- In the webbrowser, follow the steps to select the `.bin` file and to upload the file to the board. + +## Future work +This section lists a number of features that can be implemented as part of the webserver in the future. + +- TODO: display state of charge +- TODO: display battery hardware selected +- TODO: display emulated inverter communication protocol selected +- TODO: list all available ssids: scan WiFi Networks https://randomnerdtutorials.com/esp32-useful-wi-fi-functions-arduino/ +- TODO: add option to add/change ssid and password and save, connect to the new ssid (Option: save ssid and password using Preferences.h library https://randomnerdtutorials.com/esp32-save-data-permanently-preferences/) +- TODO: display WiFi connection strength (https://randomnerdtutorials.com/esp32-useful-wi-fi-functions-arduino/) +- TODO: display CAN state (indicate if there is a communication error) +- TODO: display battery errors in battery diagnosis tab +- TODO: display inverter errors in battery diagnosis tab +- TODO: add functionality to turn WiFi AP off +- TODO: fix IP address on home network (https://randomnerdtutorials.com/esp32-static-fixed-ip-address-arduino-ide/) +- TODO: set hostname (https://randomnerdtutorials.com/esp32-set-custom-hostname-arduino/) + +# References +The code for this webserver is based on code provided by Rui Santos at https://randomnerdtutorials.com. diff --git a/Software/src/devboard/webserver/webserver.cpp b/Software/src/devboard/webserver/webserver.cpp new file mode 100644 index 00000000..a9664813 --- /dev/null +++ b/Software/src/devboard/webserver/webserver.cpp @@ -0,0 +1,112 @@ +#include "webserver.h" + +// Create AsyncWebServer object on port 80 +AsyncWebServer server(80); + +const char index_html[] PROGMEM = R"rawliteral( + + + Battery Emulator Web Server + + + + + +

Battery Emulator Web Server

+ %PLACEHOLDER% + + + +)rawliteral"; + +String wifi_state; +bool wifi_connected; + +// Wifi connect time declarations and definition +unsigned long wifi_connect_start_time; +unsigned long wifi_connect_current_time; +const long wifi_connect_timeout = 5000; // Timeout for WiFi connect in milliseconds + +void init_webserver() { + // Configure WiFi + WiFi.mode(WIFI_AP_STA); // Simultaneous WiFi Access Point and WiFi STAtion + init_WiFi_AP(); + init_WiFi_STA(ssid, password); + + // Route for root / web page + server.on("/", HTTP_GET, + [](AsyncWebServerRequest* request) { request->send_P(200, "text/html", index_html, processor); }); + + // Send a GET request to /update + server.on("/update", HTTP_GET, [](AsyncWebServerRequest* request) { request->send(200, "text/plain", "OK"); }); + + // Start server + server.begin(); +} + +void init_WiFi_AP() { + Serial.print("Creating Access Point: "); + Serial.println(ssidAP); + Serial.print("With password: "); + Serial.println(passwordAP); + + WiFi.softAP(ssidAP, passwordAP); + + IPAddress IP = WiFi.softAPIP(); + Serial.println("Access Point created."); + Serial.print("IP address: "); + Serial.println(IP); +} + +void init_WiFi_STA(const char* ssid, const char* password) { + // Connect to Wi-Fi network with SSID and password + Serial.print("Connecting to "); + Serial.println(ssid); + WiFi.begin(ssid, password); + + wifi_connect_start_time = millis(); + wifi_connect_current_time = wifi_connect_start_time; + while ((wifi_connect_current_time - wifi_connect_start_time) <= wifi_connect_timeout && + WiFi.status() != WL_CONNECTED) { // do this loop for up to 5000ms + // to break the loop when the connection is not established (wrong ssid or password). + delay(500); + Serial.print("."); + wifi_connect_current_time = millis(); + } + if (WiFi.status() == WL_CONNECTED) { // WL_CONNECTED is assigned when connected to a WiFi network + wifi_connected = true; + wifi_state = "connected"; + // Print local IP address and start web server + Serial.println(""); + Serial.print("Connected to WiFi network: "); + Serial.println(ssid); + Serial.print("IP address: "); + Serial.println(WiFi.localIP()); + } else { + wifi_connected = false; + wifi_state = "not connected"; + Serial.print("Not connected to WiFi network: "); + Serial.println(ssid); + Serial.println("Please check WiFi network name and password, and if WiFi network is available."); + } +} + +String processor(const String& var) { + if (var == "PLACEHOLDER") { + String content = ""; + content += "

Output

"; + return content; + } + return String(); +} diff --git a/Software/src/devboard/webserver/webserver.h b/Software/src/devboard/webserver/webserver.h new file mode 100644 index 00000000..36ccb023 --- /dev/null +++ b/Software/src/devboard/webserver/webserver.h @@ -0,0 +1,54 @@ +#ifndef WEBSERVER_H +#define WEBSERVER_H + +// Load Wi-Fi library +#include +#include "../../../USER_SETTINGS.h" // Needed for WiFi ssid and password +#include "../../lib/me-no-dev-AsyncTCP/src/AsyncTCP.h" +#include "../../lib/me-no-dev-ESPAsyncWebServer/src/ESPAsyncWebServer.h" +#include "../config.h" // Needed for LED defines + +extern uint8_t LEDcolor; // Enum, 0-10 +extern const char* ssid; +extern const char* password; +extern const char* ssidAP; +extern const char* passwordAP; + +/** + * @brief Initialization function for the webserver. + * + * @param[in] void + * + * @return void + */ +void init_webserver(); + +/** + * @brief Initialization function that creates a WiFi Access Point. + * + * @param[in] void + * + * @return void + */ +void init_WiFi_AP(); + +/** + * @brief Initialization function that connects to an existing network. + * + * @param[in] ssid WiFi network name + * @param[in] password WiFi network password + * + * @return void + */ +void init_WiFi_STA(const char* ssid, const char* password); + +/** + * @brief Replaces placeholder with content section in web page + * + * @param[in] var + * + * @return String + */ +String processor(const String& var); + +#endif From 9fddd27faa5a5c9177ee80c5e93498c2e14baf4e Mon Sep 17 00:00:00 2001 From: lenvm Date: Wed, 22 Nov 2023 21:59:04 +0100 Subject: [PATCH 05/12] display network information on webserver --- Software/src/devboard/webserver/webserver.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Software/src/devboard/webserver/webserver.cpp b/Software/src/devboard/webserver/webserver.cpp index a9664813..afc71502 100644 --- a/Software/src/devboard/webserver/webserver.cpp +++ b/Software/src/devboard/webserver/webserver.cpp @@ -105,7 +105,12 @@ void init_WiFi_STA(const char* ssid, const char* password) { String processor(const String& var) { if (var == "PLACEHOLDER") { String content = ""; - content += "

Output

"; + // Display ssid of network connected to and, if connected to the WiFi, its own IP + content += "

SSID: " + String(ssid) + "

"; + content += "

status: " + wifi_state + "

"; + if (wifi_connected == true) { + content += "

IP: " + WiFi.localIP().toString() + "

"; + } return content; } return String(); From 56784539fa431ec08c1e9ee6e0df60b1dccf579f Mon Sep 17 00:00:00 2001 From: lenvm Date: Wed, 22 Nov 2023 22:05:57 +0100 Subject: [PATCH 06/12] display LED color on webserver --- Software/src/devboard/webserver/webserver.cpp | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/Software/src/devboard/webserver/webserver.cpp b/Software/src/devboard/webserver/webserver.cpp index afc71502..207f29aa 100644 --- a/Software/src/devboard/webserver/webserver.cpp +++ b/Software/src/devboard/webserver/webserver.cpp @@ -105,6 +105,27 @@ void init_WiFi_STA(const char* ssid, const char* password) { String processor(const String& var) { if (var == "PLACEHOLDER") { String content = ""; + // Display LED color + content += "

LED color: "; + switch (LEDcolor) { + case GREEN: + content += "GREEN

"; + break; + case YELLOW: + content += "YELLOW"; + break; + case BLUE: + content += "BLUE"; + break; + case RED: + content += "RED"; + break; + case TEST_ALL_COLORS: + content += "RAINBOW"; + break; + default: + break; + } // Display ssid of network connected to and, if connected to the WiFi, its own IP content += "

SSID: " + String(ssid) + "

"; content += "

status: " + wifi_state + "

"; From ed1b6e75c7afc1cb4d835cc2afbf183ef765c54f Mon Sep 17 00:00:00 2001 From: lenvm Date: Wed, 22 Nov 2023 22:40:56 +0100 Subject: [PATCH 07/12] add ElegantOTA library --- .../ayushsharma82-ElegantOTA/.gitattributes | 2 + .../.github/workflows/ci.yml | 86 +++ .../lib/ayushsharma82-ElegantOTA/.gitignore | 39 ++ .../src/lib/ayushsharma82-ElegantOTA/LICENSE | 661 ++++++++++++++++++ .../lib/ayushsharma82-ElegantOTA/README.md | 96 +++ .../ayushsharma82-ElegantOTA/docs/demo.gif | Bin 0 -> 2049686 bytes .../ayushsharma82-ElegantOTA/docs/feature.png | Bin 0 -> 67129 bytes .../ayushsharma82-ElegantOTA/docs/logo.svg | 31 + .../docs/pro-preview.jpg | Bin 0 -> 81326 bytes .../AsyncDemo/.picow_rp2040.test.skip | 0 .../examples/AsyncDemo/AsyncDemo.ino | 100 +++ .../examples/Demo/Demo.ino | 117 ++++ .../lib/ayushsharma82-ElegantOTA/keywords.txt | 9 + .../lib/ayushsharma82-ElegantOTA/library.json | 21 + .../library.properties | 9 + .../platformio_upload.py | 103 +++ .../src/ElegantOTA.cpp | 348 +++++++++ .../ayushsharma82-ElegantOTA/src/ElegantOTA.h | 138 ++++ .../lib/ayushsharma82-ElegantOTA/src/elop.cpp | 324 +++++++++ .../lib/ayushsharma82-ElegantOTA/src/elop.h | 8 + 20 files changed, 2092 insertions(+) create mode 100644 Software/src/lib/ayushsharma82-ElegantOTA/.gitattributes create mode 100644 Software/src/lib/ayushsharma82-ElegantOTA/.github/workflows/ci.yml create mode 100644 Software/src/lib/ayushsharma82-ElegantOTA/.gitignore create mode 100644 Software/src/lib/ayushsharma82-ElegantOTA/LICENSE create mode 100644 Software/src/lib/ayushsharma82-ElegantOTA/README.md create mode 100644 Software/src/lib/ayushsharma82-ElegantOTA/docs/demo.gif create mode 100644 Software/src/lib/ayushsharma82-ElegantOTA/docs/feature.png create mode 100644 Software/src/lib/ayushsharma82-ElegantOTA/docs/logo.svg create mode 100644 Software/src/lib/ayushsharma82-ElegantOTA/docs/pro-preview.jpg create mode 100644 Software/src/lib/ayushsharma82-ElegantOTA/examples/AsyncDemo/.picow_rp2040.test.skip create mode 100644 Software/src/lib/ayushsharma82-ElegantOTA/examples/AsyncDemo/AsyncDemo.ino create mode 100644 Software/src/lib/ayushsharma82-ElegantOTA/examples/Demo/Demo.ino create mode 100644 Software/src/lib/ayushsharma82-ElegantOTA/keywords.txt create mode 100644 Software/src/lib/ayushsharma82-ElegantOTA/library.json create mode 100644 Software/src/lib/ayushsharma82-ElegantOTA/library.properties create mode 100644 Software/src/lib/ayushsharma82-ElegantOTA/platformio_upload.py create mode 100644 Software/src/lib/ayushsharma82-ElegantOTA/src/ElegantOTA.cpp create mode 100644 Software/src/lib/ayushsharma82-ElegantOTA/src/ElegantOTA.h create mode 100644 Software/src/lib/ayushsharma82-ElegantOTA/src/elop.cpp create mode 100644 Software/src/lib/ayushsharma82-ElegantOTA/src/elop.h diff --git a/Software/src/lib/ayushsharma82-ElegantOTA/.gitattributes b/Software/src/lib/ayushsharma82-ElegantOTA/.gitattributes new file mode 100644 index 00000000..dfe07704 --- /dev/null +++ b/Software/src/lib/ayushsharma82-ElegantOTA/.gitattributes @@ -0,0 +1,2 @@ +# Auto detect text files and perform LF normalization +* text=auto diff --git a/Software/src/lib/ayushsharma82-ElegantOTA/.github/workflows/ci.yml b/Software/src/lib/ayushsharma82-ElegantOTA/.github/workflows/ci.yml new file mode 100644 index 00000000..1c1b43cb --- /dev/null +++ b/Software/src/lib/ayushsharma82-ElegantOTA/.github/workflows/ci.yml @@ -0,0 +1,86 @@ +name: Arduino Library CI + +on: + push: + paths-ignore: + - '**/**.md' + - '/keywords.txt' + - '/library.json' + - '/library.properties' + - '/ui' + - '/docs' + pull_request: + paths-ignore: + - '**/**.md' + - '/keywords.txt' + - '/library.json' + - '/library.properties' + - '/ui' + - '/docs' + +jobs: + Async_CI: + runs-on: ubuntu-latest + steps: + - uses: actions/setup-python@v1 + with: + python-version: '3.x' + + - uses: actions/checkout@v2 + + - uses: actions/checkout@v2 + with: + repository: adafruit/ci-arduino + path: ci + + - name: pre-install + run: bash ci/actions_install.sh + + - name: Set configuration + run: arduino-cli config set library.enable_unsafe_install true + + - name: Install test dependencies + run: arduino-cli lib install --git-url https://github.com/me-no-dev/ESPAsyncWebServer --git-url https://github.com/me-no-dev/ESPAsyncTCP --git-url https://github.com/me-no-dev/AsyncTCP + + - name: Skip SyncDemo Example + run: | + cd examples + cd Demo + touch .esp32.test.skip + touch .esp8266.test.skip + + - name: Configure ElegantOTA to Async Mode + run: | + cd src + sed -i 's/ELEGANTOTA_USE_ASYNC_WEBSERVER 0/ELEGANTOTA_USE_ASYNC_WEBSERVER 1/' ElegantOTA.h + + - name: Test Async Demo + continue-on-error: true + run: python3 ci/build_platform.py esp8266 esp32 + + Sync_CI: + runs-on: ubuntu-latest + steps: + - uses: actions/setup-python@v1 + with: + python-version: '3.x' + + - uses: actions/checkout@v2 + + - uses: actions/checkout@v2 + with: + repository: adafruit/ci-arduino + path: ci + + - name: pre-install + run: bash ci/actions_install.sh + + - name: Skip AsyncDemo Example + run: | + cd examples + cd AsyncDemo + touch .esp32.test.skip + touch .esp8266.test.skip + + - name: Test Sync Demo + run: python3 ci/build_platform.py esp8266 esp32 picow_rp2040 diff --git a/Software/src/lib/ayushsharma82-ElegantOTA/.gitignore b/Software/src/lib/ayushsharma82-ElegantOTA/.gitignore new file mode 100644 index 00000000..78a7633e --- /dev/null +++ b/Software/src/lib/ayushsharma82-ElegantOTA/.gitignore @@ -0,0 +1,39 @@ +# Prerequisites +*.d + +# Compiled Object files +*.slo +*.lo +*.o +*.obj +.docusaurus + +# Precompiled Headers +*.gch +*.pch + +# Compiled Dynamic libraries +*.so +*.dylib +*.dll + +# Fortran module files +*.mod +*.smod + +# Compiled Static libraries +*.lai +*.la +*.a +*.lib + +# Executables +*.exe +*.out +*.app + +node_modules +.DS_Store +.vscode +/build +/portal \ No newline at end of file diff --git a/Software/src/lib/ayushsharma82-ElegantOTA/LICENSE b/Software/src/lib/ayushsharma82-ElegantOTA/LICENSE new file mode 100644 index 00000000..29ebfa54 --- /dev/null +++ b/Software/src/lib/ayushsharma82-ElegantOTA/LICENSE @@ -0,0 +1,661 @@ + GNU AFFERO GENERAL PUBLIC LICENSE + Version 3, 19 November 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU Affero General Public License is a free, copyleft license for +software and other kinds of works, specifically designed to ensure +cooperation with the community in the case of network server software. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +our General Public Licenses are intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + Developers that use our General Public Licenses protect your rights +with two steps: (1) assert copyright on the software, and (2) offer +you this License which gives you legal permission to copy, distribute +and/or modify the software. + + A secondary benefit of defending all users' freedom is that +improvements made in alternate versions of the program, if they +receive widespread use, become available for other developers to +incorporate. Many developers of free software are heartened and +encouraged by the resulting cooperation. However, in the case of +software used on network servers, this result may fail to come about. +The GNU General Public License permits making a modified version and +letting the public access it on a server without ever releasing its +source code to the public. + + The GNU Affero General Public License is designed specifically to +ensure that, in such cases, the modified source code becomes available +to the community. It requires the operator of a network server to +provide the source code of the modified version running there to the +users of that server. Therefore, public use of a modified version, on +a publicly accessible server, gives the public access to the source +code of the modified version. + + An older license, called the Affero General Public License and +published by Affero, was designed to accomplish similar goals. This is +a different license, not a version of the Affero GPL, but Affero has +released a new version of the Affero GPL which permits relicensing under +this license. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU Affero General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Remote Network Interaction; Use with the GNU General Public License. + + Notwithstanding any other provision of this License, if you modify the +Program, your modified version must prominently offer all users +interacting with it remotely through a computer network (if your version +supports such interaction) an opportunity to receive the Corresponding +Source of your version by providing access to the Corresponding Source +from a network server at no charge, through some standard or customary +means of facilitating copying of software. This Corresponding Source +shall include the Corresponding Source for any work covered by version 3 +of the GNU General Public License that is incorporated pursuant to the +following paragraph. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the work with which it is combined will remain governed by version +3 of the GNU General Public License. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU Affero General Public License from time to time. Such new versions +will be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU Affero General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU Affero General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU Affero General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published + by the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If your software can interact with users remotely through a computer +network, you should also make sure that it provides a way for users to +get its source. For example, if your program is a web application, its +interface could display a "Source" link that leads users to an archive +of the code. There are many ways you could offer source, and different +solutions will be better for different programs; see section 13 for the +specific requirements. + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU AGPL, see +. \ No newline at end of file diff --git a/Software/src/lib/ayushsharma82-ElegantOTA/README.md b/Software/src/lib/ayushsharma82-ElegantOTA/README.md new file mode 100644 index 00000000..fe447f4d --- /dev/null +++ b/Software/src/lib/ayushsharma82-ElegantOTA/README.md @@ -0,0 +1,96 @@ +This is commit 9ab44bd from https://github.com/ayushsharma82/ElegantOTA + +


+

+ +
+

+ +  + +  + +

+
+ + +

OTA update library for wireless microcontrollers

+

+ElegantOTA provides a beautiful user interface to upload over-the-air firmware/filesystem updates to your hardware with precise status and progress. ElegantOTA is designed to make the process of OTA updates slick and simple! +

+ +
+
+ +## Features +- 🔥 Quick & Simple OTA procedure +- 🏀 Get useful insight on progress and status of your OTA update +- 🎷 No need to learn HTML/CSS/JS +- 🛫 Ready to use within 3 lines of code + +
+ +## Supported MCUs +ElegantOTA works on the following microcontrollers/boards: +- ESP8266 +- ESP32 +- RP2040 ( Pico W ) +- *( more coming soon )* + +
+
+ +

Documentation

+
+ +
+ + + +
+ +## Open-Source Preview +*Preview might appear as blurry due to image optimization.* +
+ + + +
+
+ +## Want More? Upgrade to Pro + +ElegantOTA Pro comes with the following extended functionality: +- New Drag & Drop Zone +- Disable certain OTA modes +- Hardware ID & Firmware Version on portal +- Custom title +- Branding (Custom Logo) +- Commercial License +- Atlast, It is a fantastic way to support the developer for the time went into the making & maintaining the library. + +
Available here: + +- [Official Website ( elegantota.pro )](https://elegantota.pro) + +
+ + + ElegantOTA Pro + + +
+
+ +

Contributions

+

Every contribution to this repository is highly appreciated! If you spot any bug or problem, open a issue or pull request so that it can be rectified for everyone.

+ +**For feature requests:** Please open a issue and I'll add the feature in a future release once I get some time in my hands. + +
+ +

License

+ +ElegantOTA open-source edition is licensed under Affero General Public License v3.0 ( AGPL-3.0 ). + +If you are intending to use ElegantOTA in a commercial project, please consider purchasing [ElegantOTA Pro](https://elegantota.pro) which comes with a less restrictive SOFTT Commercial License 1.0 ( SCL-1.0 ). diff --git a/Software/src/lib/ayushsharma82-ElegantOTA/docs/demo.gif b/Software/src/lib/ayushsharma82-ElegantOTA/docs/demo.gif new file mode 100644 index 0000000000000000000000000000000000000000..b6b8d4ae58c67dd196839d428adda59743ca9fe8 GIT binary patch literal 2049686 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

!pnq#%P`DkD*YAw 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

TG95lQ-}=mvOlVUx;T0 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�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

bK`?e|O101mT%)TT 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%0Aj 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 >Ta$wXz$KW)8*rRATzNF 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

=vY7ZYw4tP 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�HRA0f;?QI)15nV3qwLX``mseQd-GQdMT~D)TM5bdLRDRK0FlR zI_xLB5&n9yzHr748)0~|pfeIXPjhUzLxz^gxB%1P$CC6*$8n(=Z{b$=j#ixx&Lu8a z9v(8PEBwOGXjB0RYYxuR(2p(|ux&!7q};uxO81klaM5xB7{6MqtU!Fg@BFJZ(`dc= zi?eg#bhh`hg({1nVT#t^uZR{S)ZL_X_4f7km9|BpC9uQ-8)FM&xH{{I2>KnlNn{St(|6O6ssJAo54!IUGl z|7~;xRCp<0G)eQkPfvhG!+e5WbOZE!kUxFj^Zk$mzRKb>2l&8L#{pEgKpwPvyVHRh zK=*S)^;W4gX$X3 zw^>{d5W4C$Uk|$3ZYyCM>B8rJhyk+xRD2_cAYqFru>I}%mDBXznx_*l@WQwAk81NX zZ{dda^5fc!+ghrxda7@D>cKkn`mS#GZfJ);hgtT6i?XU05&Cz4`qQ+kr~gI2GWD82 z^%LXFE&q0feb)m-lsEzj4m4O0;lL#(Oe9DU;9*3E5fns_nBc$!iWCn-gb2~$$BQCC zdW|#S(4_>nI>7T)Y(&}&zwVf{xnKdXi=m=nc`IXG-=eP zJEfK^(V|40tXs9VNRdMSfy)O9s+8b*HjW7n5Ft2d`_^q-xO3&!rF++IUc7tt_T~H6 zZ(s-sIQk{5po3t+F&TGEpcrsu$aZ5&wmkWAX3U#4cjo;0G5`pp1&oFu8Unm80RFB(4U`19r0r+*)~bp7mmALwv^zx~u3FagmB6fnBz z0Q@hu0|RsnKl~7!aJ`BIRA2%CF=TH7#2oxEK?*^XE<*bTd+@^uB#^Cv2^?y%zX&p9 zU_*x{Xn=tbQPgq�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

Lc)eGS(v%e7|Q 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

8; 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�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�jvEp<2Q&gS3 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⪙Wr_e=*$kWoUi~a+C7R;bK`Y%6 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

lJ)bk$gI9kte9kIl8yVT0YZ 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�(0t}B3+Q?TI`5G}bW^GYiMv6<-g$w$XB_d_ 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≤U05&)EGG!3FmHE1psBz7z+$E$-iosk6h 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 literal 0 HcmV?d00001 diff --git a/Software/src/lib/ayushsharma82-ElegantOTA/docs/feature.png b/Software/src/lib/ayushsharma82-ElegantOTA/docs/feature.png new file mode 100644 index 0000000000000000000000000000000000000000..c9080dc4382f36b5136eb9a71c168344e734183a GIT binary patch literal 67129 zcmeFZ_ghnI(>5$17F5(NMUkSSARVN45D}%f5C{Ymr1uhf5f$kmAiYT^2}x)n5SoGz zr1#!?h$QqLc-ed3&wCvA`|R&8`1TKLrLC2@)~xfInR8~Y6|SwRa)XA6=E8*wH(tMb zp?l%N#nKBGC_S%SI{!vX!O!IUg~DA|<@p6NAnQvCVdH_HF{^G|h@8#eyudxZr7lX^`G(3~ReL*1n^zeMLJ&>cV*cgEHReb&Gb zSkLzQiVt^WYAP0;!ijgQ;#UJDw;%|CVBv@FFHl~2@ZUQbe`+!NA%itHGr~BgF|R}1 z<6fU-cA*2CsVopxZ<1VucZ=hf#R~q@xet07?hZ$z2wNnqzhd$(R%X@KnX<&RzJmbq z$>XnJ-I3m+ym(9D0>yvtf@f5MH9&YT!j>HPGwXGQUByn5fjWVqC3kG~5}=4*{r?@~ zUqk*K{=OoA8{!kkPjvH6;MV|qO0U~qD=7f=H{!QarugIT{clO+&rrW`kEObv)rvzakTI)Q@O7#ZM*B-eCjYE)=Ig-&yM^7wg@t(V6~En8XGjiVmhPtb zKm94~hxfIAu;z7qnep?zRx(16n@a@z^H2-l3v*ioZ0#`L)8KxM1C|Dxg7UZj7e>xi zAW=-2zC%=5D{q*hB)CmItdlC9_$03K56Vj6m@R2f9nxoPD$?+aPya{wd{um4X+V5F zis%4=ecQFU+y8qS{AX4usJ$^9*`5m7c#XYfiq@}w{twcgM!y$^b4q@fsufYreejRM z9C%!+s7jtp$hFG;H}wBA6I9ttKV5)}Onmt8|IEg}k*@H7+Az{<9&MZ~{x#9tWrH=z1Y^!~3R{#C?(Gq8UV@h>9&MZ~`}{NH@UzqH{$jNxBJ{Huun zrcVDN;{Vr(P`L4*vQ*(UX2_t)+wv^^LTnY>n=01 zI_5C=95Kue!QI8JCB?YktFIVmSi`zgqO2UEHt%M5j?vxmt&~V&`R%rS`k&ZiLxBSL z`apxMz{sk2UPJKY5wssJStXHXq|9i1JmYpGsK-ykCbH`3FZjIG6PG2uV&}NbnJ1+k zSyG$!A%9P;|GxFaB#-HDT>tYE6J)wiiAl|~t_Du|?#9`ZgZ7bzXQFVkY{xS>yb--% zPd~RPWc?Q5Hjec^53#{-4L$j1J%#qGLZQWPod~#QM2)Mt7-!N8t(`?tHtK=0ihu(| z{P#3H;^@Lb=9%bk##V0Z$WQl{r*IEH92pA=DIkpw@SF{ zd%aUgylh`)QYG2XsrDdKenQ({vbg{6D%n@ydj`X$DY38DDK4t=Z>R*F;5L&Q4Np-|w^xhMF^88H&tk(jtzNL_?oG@Yo~2EgZ})FX{I)1kso=?- z)`n96@xvn3>qFP>fjqseaXUp`ety0-=)5JyYfqbaLJdt(dzP4M)|dXO zvt6{}sglsp8G1dYAoGkA+fb5ww@K&I%?~ug6PJ~y5WgRX?cY{cG0~_2SwmV64*lhqZ*Tu)1uvxvo<@aM?9B1tblp_P|*R>ohKeT>;3-N83(pfQD@WJ zF-bavlEN9q!%xJHF3ZxKWzDl~D{0+rcd64@yerFD-rPjO+{lt|>`wZR#u1L)lN8qN z!rt7pw6o8@i#B7HhkV~y6^&R4gyCAbK*cj9DJGyZd#x5e(!BvTN4xd9UH5g-Xm9Xo z%;>H3ae+CeKg(0!-cepOd@}KX?lQ$iRw>H$UR&Sr$XQ(Mf!Y~uA!4Rr_nnXy%nYr> z3$})-AH>7WdktZY-0~1bhm%>9#r$%Yj*mwWO}>8YD^%7g|N1v5*lglQEooC}-Ew`0 z+E&)Yh})oz{wv;c3{UW;JeQb45v;`Rz5qKJtbRZ{&|g)&J!7@>lz4Ylu<0$}2@4O4 zxULVKRMES}nye&1*2z-rg_}HgLc(U!aW6r|P@4@1> zX2R?io%~M2QF2v%J4yCO?6IwET2(FEw&(uh>h@JvUwt7wJ^&N>PG{~ztzo-ctpuhOz7WRc|GyX669G9uzDbNN|+Kl zTU2>b0rQz`{z*?0aOi27&mwU+9%SY;qeY5u=+yFSl&v%RM&(7NDIGI-(QeI~(Us!O$wO}K>u*FWkCY;Y9c23pvQJPOJBHw3i_$wfq)PQ0D*SP zjQ|m_JM{Z<`xZ`#iP!07B+y$dJt-XatG8trlkB=ar#WzSs#bVQ+OcGuzRCGi3{3)f zB8DRsc+r(^aDH+(3<6oja;fpXLSVO?y5N{JX8RXtE&I~fB;jU?Vad$c$QV{pE!JJn zLAJow`*^Q!%~H;WUe5dD1?wgy1y14#MM05vNROFq86iIte<9BAs_G|y8e7$;3hx0; z(a+;oIN2e@%b@Xq)bPQ0rESFUnQzd2K zW6Fja*P;tm4UzYC%378O@MTWA_H1gpmhi_EG>GSHmIW3q5MIeiXC<&OG8U)LHHwp> zNG)W1y=+f|CVdECsKoe*N3sH&@swPfViF}{5Ug!U8WawoNwkYFJEH&ov=Zh)NPa$r zC>f0C8)jR#4#h*I0xj(MSk6( zrWkAd?(hp~MYQoFe6XJnJ-oHxJMFwQ%l*Sn&Y7vp7y=iRO^UWp6_x=DuKaHE-AQ+O zVJ}s}@P^A!&!up8lkF38-BKRS5M60a?K^WFj7qZTz>&{2KW3F<)+B-OyoIo8K4Qk4 zZn?ytHSyroTMxdcT~$u{)3yKBRWSQ%oY25t)OZU+Iv$_89|2A2nfub<4lfEhn@5n& zWY>7N4kY{b4|j!j)}#BjJE_-}bK1kWsgRGWi$0%WiS5CJ`$*PGDh~M>Q(uC{-WoUc zTabZY&3Xvkex%zfc;cpe^tq(Yl>y(fo}-?Hf+Ru!-3h zQp=Lww#9%r5&~~QP~Ci%xPm6?0rVcCG6hROsi4rB>y^60IJ7`oW^cOHD_o?yt4x$(+iJw?xJUSVfUt01gdg zO-s&nk2d!XxTtL>kFfV556fX8rRQZ%xzAFi+%ak`jy;5LaM-U5FWUBkS7rELeW(kohXeGvNsKlz)p+Xm%CtIQ|p>C zo)vIXgM5)fIk!p+U9@||MGpKm5X~H+L(jAWayB_}Lv6JIJ$ga|yHzv{71xP`;kSr{29*E z%z272mf-_cM8tD2&F;1Q1B;jTfzi%LvpXQoBiV%!dsZzsq3E+O@mwdH&&bl9+m;Dg zIKSW(Abe&}S(_gZ+LwJ(dudeFnor;BCFcvGK?=`fcb9hyt@$7sbP0RzB_Ql73t<+n@neee*z6jqY@{{`O3&50&=_} zFNLtlN+PolHX9h@pZrBDJBu$+3`e<@3;r2iTT|kBJba%4r22t&Q@fc4)NctqV4vP( zTRsd56!& z$#wG1Xr7nH+p>mY=cY93`!8Gu^B63wtkuSYwVwrTnz^p|Fcc@=j*W>pDcUc1&oMGP zVMoLCkv-jNIePyMSFEAO^AobAbF31i@JC;|0d5qr-}=HmlM?#&#zbc^W`QFAX6IDCBbv%uj?{v(wA2RN&xe9D5YS2UOp}L_e z0Pu7!5K-)*-XjIkQ791Ce-0@5(gD&@GszARBn;Q3;cmeDT}OkHsGguaHs2hv#08=x zid+?zaA@0vR9tYsRKYEkMt7Mc08=G+?(575U%-8u(8+lo^v+h@u&(yfBhev5Uw4*( zo;^pSSjcPNlHAQQ-QvV)J@;dWPr@Ryp3}BMwO&a}Q-yuLk;QBdV`y)kqQ?E-V1 zr5t-+?X*33>IjxIY{}6!WY-10JP@vTa`~a`vLGpZ7l+#=TrIV-(JQ23FE%!<^cTz4ZOh5qYq$pS|o`6sw}u~z3_6shFLja zWEG`6l2>cKU_Go{75J#UWlel8qQyB>znLj=oZVWvK^q_fk^BWN+w^h;2!fo4d}C8< z#__%ka8Y6BCf#${jaQ=(%+b}Td%K5VC?M+N)zCkPM?;3gjJwnwL%uI@x6m6UHtIRQ zoX_kU6D^NE#L6#LAFK+aVpwnN$!@0K5ZX&PHurXm{_uwvs|hqauW#^27eXIw%Jvab zsTR3GhS7SGEp zVLqiWwT|y7X|=5+_s|~NJjaaYUmJ0^t1ndXf4skRm5C{6DG%MM3R25|MBGzR z=0n2V>0d(O#s$Vx)bt1W4_=}?)Oaon(O(8(!Mk@2Pg(k&Tt-zI->&(lYNb27B>z6& zOw-gE{k45aL(>Qdj+J)UGGe^%TT+->d5HdSG&iHd`gMviaVj`AC{}-$Nno63^~->T zDOAARH~Oq?UcUIb_|+XJWf-ha}|(Zu(S7mn>4c;t}GcmlSO0&aeu58wwqIn)W-o(b%?fchk| z?Qgdz3uu^?4CEcfuM3QyUUNfMe6r@;eK`^Y!6lJOq8qGvV_>IS{v=WPSTp}a>9XI8 zDy>^QT2bBC7**te^!IPB!38$)0_&!u*EL&wyJjhk=*|;3+QDVDp?PrRYzv=1^W>`F zkov=q&uLjc>e_2!uz35-I8tZJ?X#IvzWJt8>dl6t(}11g`wNTCBe=F3`>m^s+$lJOy3K98-O2ToUu(HIg-;Fc84pC`nwQ`fh?k9aQ;nSC~ zirdPeb2+F^0L?z7v+33;E@vxZ4Y4KF?vTuLS`*Uh^sMimY?6hZ%~SN@hUlHqt&QU) zVb7Na%BsQ)=-lv0d8ui`Id@~*6<@mQ@0vh&0aAA{3kAGM+$9nPMgWfj)ORlO=Jker zcAx837EIePWK6_@tx>!UpALmC5}7n6Q$O;4d4G(CjBM~M&2wqR{jOA3d1++AY|VAi zn9VH8+5S{EeH;O21{Ju%2h*x@4bb%HDmVL*!6A)C#!0s}>jyjTT>1T0B~N#@#%q~V zFX`{U$3v-8YS*FC-|l44J&=6wW;EbwfM-$XYIB=ialnxlX4`MTzWNq?@cZuGb7xxq zIy@kEZP;j9d?%DnR#(uDtv&NIK2GFIL)OMK*^fcEf^y&KfQ)WqH%||bV#`D-VX~L@ z@|~>eM8J_KtmznwH?Vf%DkK+jXYb%1+!!WO5Zxi{9+6^aIYljX2Z3TLN;XG$x#7cSPWSScba5B#h5E(^Y+ zk>`&osUJt-cA}ddR_fIgvmd(ejwElM_DVdk%NCRpVvw&T9=on+IfX9>$g|V>%;lNS zw-GOcnJ|`5xh;<#k)EA5@_%nu{We~pz-`G!6EFxWydtFE<7M%f`VToOFw>paeBP50 z6?0{!djpFG&zu`)1?H=#*>h{$A}={M%6}F^>2JD0?waH&PK@9UHcvG|kGMl)F`_K# z{uzT|I%TgGbauJ=u_`J}4?`HB={X(7`S!LWPM*!1{-cd%taHJL|nqCiZ#fId&j@iv5M zn4Gk8LJZ6&eo&3)wo^17@;0Q8c22B0&N5c3k!+hgt#bIjj)$=Fq|4_BVHQnV}A2t%)s2 z8NBnAOs|-nwLj*Z`N2ot6(bY+&1q;brB{Zw%44R3uSr0bB)>zaUTZPBzRk!I7`VoY zXJ|JqK0DCUIUJIIhRB$KUsFYT%ST9lHuesUF_B#%lGoMtlIRov+;cGN6V8FxR zod6^GlP421<+AhwuePh*lCc3cNrl|Phks;l+qs%K9PXv1xF710#wPwKu>cBvuv;5x9+^DT|En1_6w5C$*u{0cOK*B6rKvr^zsvT~CE z=cf;rAyS&vK&T|3e4n@BM_PVJ>CyIH#||e!C&e<^p+bk4FDOW zF}IRbMiGu@lXEO`f$#8mA;vJL##6Q?L_eVFD3a%^8&L5ECb0=V_^e}}#gNNSpSH+e zcC3gPO;aV(sprd&_Jr9t9dBr4?#B-+p<(Tdg6dhOS*Y4k6FiOQ)Y{Ww=Y`+9(#Rg=2bD{cf}-awEm{wOglm8H|0JtI<}lJ17acm*@&_l zy6Xk}A8DY>rb|*hZ;43;SeAN(eGxy_yP7vPJh3&vZDTcv+pvYIzDQiV^l|kdb#L%j zHa)3@OC~KOrcfQ-|4FP zcyi6^Gv{S~lEo*kmoWVem-=!K@%v09~Tdhm;D-8nY971KU%RD`BK-uVxSD2 z$vmf-^RlOUef_G!_KLJ_%>F*LvC%O&HU;*WRogw?h_`6k$ zA+NN6^BAvFYzp+Te2>&lRLam4D%ai&5Vmw~Vz?3mcb_i0KLwS1Yvx6N-}1Eu_meC_ z4DgaDFTaKz|1`zsD0+&lq>>fU*sSg0y4B+CtEH;tWUfo+Il5UA<=^>LzlXB|Cj&*` zDXqkhB4<^o)YGH#DSiX3nRzm&o!R-yvDt?Ly+))c>x|tfkyl@9ulxGvwWhpG(H&8Y z#jI4^5_<_Trr*znB*8YAFl|#PE4Q`c!G$H3p0GGJguXYLpZXFl>hru)i*7T`w+ID3 z7GS2p>ijdwhP32eoQ`i`%rb0sv{DC5i86?U%Xc}4k)Tw&)1QD7sEJF7a|4Hv&E*rO z7F&B`EiG}EPxA{k0?IZ1FQ1z+zd4-WXy+^Eu4lSt_aO3cd!@A^N!IZgGfvuIFF%}Ig&m~^2LgCdv z5s@kQd0~-4+|WGt)W|lpBX{ek&N_R|ld--V(X9*Tk4-Lk&;h~tu7o29#b-ZQ|pp^|*+%9{ZRyL|9^s%0`-5OQ2*zDH}>%*Vs8o{fk3yrir9LK4!|n0oL1!zE6{$Pv@0ZQ=_uJL4#HibF*rX$^*!Ep+U5JrVim4h@w(K^3n?UvSvSC9uR>98f=^hy6CE8Fse^kBM zz{YtwRCgL*=_As(=jE5r6jxOe-~Xr@08~Avk~1M_U)gRwjPiM!_dF2zD4@XD^s({A z)AKcnGC!$Ls7DYNb;W-eD2PIWY9a2Z5JY0udKT{(7}#GYg^Vxw#j|F0YeIu|DPnh= z7*6Gafx~$i_&{`#3b(xYkOe#JHA!7-@Xpeq=58*mm}WN}FTae1&omV7gP-1P35H<}U@+_pr)~F&-J7WeRvIE~IqJ_}ry5dcP{lBPO z2=SoYRi$p1Smqr3Y1(lZ7d3zGumZaWr&>}g^`da4rygCcnLZ8CD}$D@Pr-rAmIp4MHr z3k5l6qP@OM8DL8y)E|Y#*O+@nx^Xp z?rI_$jM*-VC&#G945w|XKj+Zw?A2RuSY-UB@BPIO&V3)eT%)QY;YHCEzX*Y!mf(P( zaIM5t{a_79y1pn6w*=DQ$S*)=PJ{k^rLHnK2Y{MD!96?6aIFPeKB_WHVlE;^NCAC}YME@IK;T7>)JcPItwzcsa-u6zk=`-CCKCp5X#)>5I zO1?-g=#v+e{w(esu1GDjUt)M0b26WF@GCaxkD0@6FLQr?+($hx&y=FCD*y8=0K1=A zX;@y{=>7wNfsx5lt-EY2}17MvfIGDp2kOaw`t67JJb*QR-kJip*el-VfZGrqN`Wd%Ma zDY%K!VJj?0baN^@Kmb{Pdf%0-)xc)4VBu%5n%N0J4dpF6X{Q~D8uaE$M$ShqS^sQN z69`jE<{wbCeIn8dXrT|JRz$7>(Xv}tAuRgdOGtpNwsWQ}zuxyaiSt;s_}&!D6h6>= zv^$qP#+KRpovJpi+FT;Z2BhCP7_CCTuyocM% z^G8ClaZ5r4Cx_c|vq`Tl)3W^gpU?~qwyWZ3go=b}nP?C&U*1GxLUN!uw0AnR-`B@5(eo+#*L+>6(Offq@BxrL^`KaZY!t3sA$t zmaR^q1RJ#HOM^{$J8lg+unz_5FMEmtdJY5*PK8ec(@eO6engrwqrBJQ^WM~k$~9FD zsTd{f>ce#Bg_8O1OmTrM*Chac9ysNSTX)@+4-}Mh?GhD|!fsO}%92jgCMog#oMsHk zU^kmQ7x> zp3gqrmv3FpskaC0Bw3&Nm_WJ#(4p|=@YYwt9K`$KeLvnNs${=KH@LMlK!s2;wDIvd zDf%v}J@v-M1qw=YfTx|ReC}xp_$Uu5w2|xjeU#c>U_DNK%ibQ$66buLXnfgKw7$O> zD=RuoYp)Ims~1`0ibLWr&zi!;fEc{vXHZ#U=(4Wl4rt)8n%xe}-B)z_hLgK)?RD&n zI;U6{Rz_V=eEmP?SoC-DmG^0d}|StfQIp;D$j3AM!KF0Jwsn-EnI5gbVgV|4 zh4+v*89t2X1>n0hbY@49&cBok>I{FaD+e+wv++ z^(6h%*bX)?9h1#ZoVetM&BTLkuR2kpF(e3tv-48%;LFHtx`^@&RrgPlbWU&oc8S0` z=u68}T5UFk9=@U6;Pb2%$jz&BEh8Y)sw;~HKrnDm3v%h(u6q&9SK7(>9qVfL zQn~iFb>y}Y9Q$$1@HKR-9ZSGExhrv@wXjS?0c&Q~;TPd3+o(4}bBARbZD%1PGAP%JmFWWqC=yOcgbM|Pl zb&ZNB6?<7evxbm)ERp8Dif?-gUW^|LjC%`}83Hvw{5Gflqs% zZ*u>{O8KdAXLo34OleJB+C}9eKa9!TgHjuywT|njJWfjXxNZ8xx}`*8n;I)(15PNe zmFm(Cj0a6v*(Ue~^?r>>7p@Jn{nR9LA)7!dR%do-B{ykC)xlx4r-ysWg5$5vuZe^E0N=8=%_(Ewc}Lz7hJ_d z!6WVmGs>KqY;5Fi(VIuYlDo@)^#$J=wLb4D4B&W2aZaj_`DX>%PxoC?rG{jS_J%ad z_O|7tmmR2SVpk*A;->oQ9Sj!9Yj#V5YJ68(#iEqm^@H2OxVN2xbFdBr2r(-gDbHW7 zuDi#l)*0T@P}sCs9x_5rcBng&$xT|?rqKfCU&&oBeNJL$jk7mT)RK6^z0OlGn^^I> zhgoNnE3G%=4}J{avpPuHPq3C-DnFPQsgq-1fw^e&`O)ze-%rIR)a0&4KBtIXns*!4 zpF_}fJ>L1mqXYYjhIQIaA<#4VWx@J3 z&e?_S1E!7FE_FvW8ttsD_FKPoSO8J$CfL>IA~P!J^>;n;+sk;GHPGevjo}PIpqv;x zRFI9y;}B+$7w(;1VA8X)nkn}MXVa4^3CBa|=CJ*A8YuR0tL#A>_Z0WHjuGaBvZnU3 zxy@A~kg>IJS}nG=L!YS>Oo-#5ca$jYpPizW9Jp)fYcvphNZv`^M&f(Yare*t&ez-3 zmXW5#tncr{Id46aLGjz#ANt}3@U9s$K-?>)Z95Tkxo+#XdOw2PRKq%Evv(C|1ulDm znF6)`n9E+m{Pv!^yxNyo#?g?w&0@;1(%uTbgpRH^d%96_y_kAVCIIQXW1Cpf;}0YZ zfQm&6s7hA*GQeo>rmNN}OK_5Eb~qXAfT?pJ!3SnKa0)?HJ0-$w*68ydG(J(Z&%lA< zfSJn|C$Cj+$my?@qHm&*NY6ABS=dWWF}Z=uczwjylDXPW{HPg>*uRqheFYXX_Iq!Ik}u~O2f$P8_~)w3ojg5V;m|#h$tAK=P0^QTH;=|p|A+#v>Q!zoOq5?6Zlkn_HRwy3p`0PCL<<#6-gRU};6vMdZ}Efg0Ge_~|q zfdVm8Q5C%)_Z~{wr!m6X(V!R62sRx?oe(CPk1Q^9I9kjF9s8%$L0tx4JPuQ}G#2*i z4lSHD!F=fVQ<~hl93l3!U+E06()qQRnic>}k$%HxO0m#_28lMegLo|M+LP3Q$MwUJ zt~I)t=Mb*FueL>-du^3<>Tl6hjHhPqL1!)6!Z!CT^{_N!+G$@hK zTFWD|zVj%cGHwRg11XN3?>jFYLB9e0A`j9wf1Mz!0V_N*qXX7ksMf==dqUF7#SVXX zc#E1%?A!v=ofHXA9P$Q@cl%(f%CNKsSb8t0eQE8>Zk<;?^S3!$HM|@qsJ(+qlJ~jd zsyIk!TY}wL6q6F>}KY5krN?9sWksTu-M;xVgCu5N)H z$)0;A)*UJ6Z@FcOHtb#%p^EG1g~g+W?OMXZFHV!MtUZ%ks+hW&0;i!zE^0~w@*`XB z;=5ZiTfaPx;}ZlPeII}MRr)-``#qTc!FQ?B>AL&p37qTHx({+uo$Cre6Hy+0*uoVP zrBRUI(|QG!3U-5&lfCNQ<@8((N`9HO;W2}(`Rg72-?2wc$YOqN0t+NARlB-ZA5IyI z&t2A8ySl{i{8+4}{A6wA)b(U+;;dhmKEa|0wuc;N@PIHk;0p71mmCCTI7Yo-sA8Md`aDil3+lZn3lb zedT_+R+WUhA9XO)-WCXPe%ClOs%S6HE%J3K#~p%bM=|M2K4_ans|CMc`s~0PyIIEj zl0MfV^=`aYcGJ(p%{l9aCxOD{-1GU(kJ1Y$Fqi30y4E5hd~b-2IE1&>Guhj$r#u&; zzD%?lfR?s`vn~zlwgtDEstfom5$2*hYYK`;FY;kes#E7|>&$~wS-%`U)X?HvZI!#6Q66O@E2hdi#z9K{P z+of@*2OnGe%FI{OrL?B1*M@1nop+MHyEk%=ASN#UbK~=F*_$2LKEItgu36jSKTPhy ze;#1titX=~)R`q()H@b(L?sr=sjOwK^zu@_26aCvGRq|*ls1R8$V04%Eb^383q4sq zy1rFBRz>3@o)L@?;YdnT^~uyt=5oA)@z--I>_S2MT2j-7@)zPijNG-gP zjTw65#QJp_@rH>;aVBR2em$W({jOOg3FkiVmSaPOo%q%*VMrK3gNV>xJKHD5nJq|U z&l}>fKh6ArYZuSAp1rXm`OOQ|h9N1j?zU&IyjVc=>HWtQocj&i+ckSiTI)R?Sod2& zGE1AuPdY^S(_{6f8S8`Kb%;z3dXq-_^StRgc`SS6>|_^x^XXyG>9Xn|P4#Thu*_R?J0BT2G*9J1%wuH>FvCaktYu%Vl8ucK2 zJ{aTMr{{Yzc)b`&WDdBt{9?rXd`f`z2yi24gG>%m^$sC1>UZ8j_O-r!Rgew}v*S%qZ*(n2Vs z4pPnmFsawz65pVwwJ!|of78?R9)b%h_9eiL+vz-vWBKgXJ>?RTfE76m@?-VJgT89P z3l5poTEQVaJ&D0c8}6s=47SpHJZ-)m!(@oo$RWPxWK?rHd{! z(O6O9ma8Oliuddy-Fus1EQsU*x3?e@qjg9IMzonM3!%j=;KthPYuUJ(K7V>hfk)5a zF;TCB2dzoy$9lnrbdPyIhYA=oupJ(VZvM75No`7%Uzq<0`py{(oyNzK*B3N?^&m!*nwKV8=%dD67pyH81o=l-)pOL4Fce_S@ zuFa8f^U{PqpP%uA&v1OT93sCBhfx8>QzW;LFdcw)er6M2?W9J#-Ws+zT}z&T-(-_N zed)iSL@LC29V$(ya_?(Ea31!xWjS%H_fry2?&Eo5PaSMybrxzPj8j$-JZm3@m%{B8^@A?SsEp&#jrOj1cg~OMxKxjKL)MSc2mK9W08-2~ zEhz!Hvt|LgH#IVUJz=BtjN0SX-wlo_w!xlHewal~JbVp%TI@Ef+B_G^#u_WV-Ff+} z3iQU$2jAjkJ10P*;WAH1(dg5A|B(J@XyOQ{*V^S;CmM!Ygxn`-HyU#ZVDJ#89ky=Hp!2w*z& zT-oAk4Z&O^Q9k>Lnms~I=f^owuwz+JvBYxf!BWuNu37SqH>b27hNNGy-AZH&+UzjB zEk3=`d@vGp=-}(`9JsT)+p==HzU?}>$+WG~;?Pr(dwG_V(NE-E#Cx*sa z#!5G^t;A#Iha$I;Jw0MJq=3eN`>R=z8=-0q9R6$Wee-)dxz(J{t&`#G=(-lW!veuh zE!bN%rUXt$Va#VYgyT&XvRIa;-0sf7#J;~aL6?p{+O_~Ufn2wDE=v0-5vt&uowhd? zb1bI3f+CJoFEO3j_bEgPtcEZ1u6xlq_Zy0-mT+?e3n}m_DjeqP<8!N^-b|1w#8=_B zL1f*YUxweb&*o?Gdah}5w^w1g>?)fRBxi}~84y@q2#Q`>LyZomcF26k@^o~$LPnT} zB#e~2aBmi3?siX6D!q*nYnO@ctCTr1hYmbY7H-tPgSl}exWn_wC~u-UqFl`BNQc)X zNKu4w&&HVRLVs0?p)doQ!tpw0ywCf!Et_`rk^-OOe&xdI4UZL6_Wp=#%Zy3cL=u}* z{Zd)CNSpp5P2zwdu-r>|GEy%t(xq1%-7FndUehx>%vvW6jD*pFYHm%>RH_FBnhfnX ztO)k}fYmw|Al+$G(I`!1|Le>B)h~RfXbY8;j=!DyghX8EIL0I+LU&3%6DkE*`Fj%R z89dq)Nn(J{sKu6W8qd|3lO_hF2PO$)4C& zcbtxGyVJ34b!^*C$LZKMPH?aw!4Y49U_UI&rARCx;t~<4f_<=@fiB6I*ydbzwn)a#dY)7IbJ{;93zVxce?sUU zI$_$BhWwNj7S)=zfM#gZzBa$tj(v$=mtVERP~YP#8i}-h^=KkbhMg3fH!M z7JWNOX}a*;=1tv&AZq79)^$wP>Mo7U9I%txSt|PK z#g-Xs6V04gZ6^^iJU{>?%fV0C%j(j#FwEEQJQsT$U9O!ufb!>`C&nIa!bK^OMOc}Ab*iIYlbZKHVAe}I9HEQ&Jp+*Tj@H9h8Z#$~l zRb*GqGCivG$_4CYqVXJZ*)ILy9oDJ>XhCVMR@f)C~01MhK$}S7ln7^unDcfhFe#c1vQ(x~rOCCOr7QU8JWjp7t zvjjT z)pFO=W&G@MX6r5*Z=PTQ&xmpsf7u;rwhILGl)o-yG1q)a>^FpeCnO(~>xzAiw%o;B zZAH_Eb%~{)-t&0~U6FOr-2A6_FHp(ih2NdOpQL5N-F~79K2s72p=1-LV`R{>pG7o@ z={}ytE4Wa}&2&01a3D*W={a^B#o68zDezl>bbHR}OXC38y}mPg&CK3;C~D4R{}mvh zNzqC;xi$HuW6yG4E8G;`80`3@PPCy4{y1O+u3K1id7L&l?C<8JxpvP<&B3r#HEEZ6 z#tR@nuWYv^(293&h!ezQf!-7yo&x)JF4$>ZTfMXYYya|+;8*hdbug*u$5((O!M}6! z#mmp@CdF30*_G{Cak8_5y2H`3xD2mqB)C(eaUY41yE3;WmDz9Q$1@1#6tpc+;byu2Jg=5Me zER;kN*~YWiafm*KD0h2rC)ResK#}TV?Ppkwv1Xq=PR5itNFae?TeAi^r2gv2z9!6W z3m+LZMEte#?C08tpEE8Ff;Kk`yPfBe9D{R(^htyno>kdas~&KKpH%dczT zci^HpzSbxIlq1)Vqj5UUlCFmm85ifja4-%WmP;3EEfq~hieQXuKc?!ed?cLcxqprzO)DT&+GY{wifoq-w%;tn^EWhQ z0XyV5u!@~am0thiwDWB|XE&925RS!8t3D2_9B{I;J>i}Y@?hkBv`A$NKuFf1GRXLF zjA_xSTjlS%Tu*UTOT~IXCC<3e1gB*z?qa$mw~5A9FDT(!&NFAr_76#QN=L^~!&rTqU!?Yx14Zq?>G|seT?9)Lylxv?|@_5O2W0 z2W8;nt5&c>Q6s0kPhvUI^Hzmvt9q2J#491t(KA44dv0KPaE3Xama7oLSbVgf8iQMG zfQXLo^}FK(+;$247S1GYE}kiM~fyiAL}0qS2rl%!bQeFHe;9L_NXNov4Y&lf@iSjP7Lva zU@La*BBfD0xaOa8ofixKE48yr4xXJmbCRdG1)FP_r%h+xI_(+iZ$H#*S_QF@OJ5ry zSaO(WEV?Md;$(f23EFwLs$QED0$DnMeu_tK{U)&;WCC~lpJ@k&F#lOK(;a}Z)V4An zKudJ_A8R*J&EVzH52sF7*j&AO6)MM9FnWE?vo}`WubSV_fxpVJ_8dcWzfTp(r^NOo z()-}r&3U2zfG$Mig!*8MMpc$A2*l3xASiAwCJ^y?pp_p%Bd^Oy*vqA z5B5BYC!0KO50;vRtIUdRG9S(#?qib8&L8T$t2`qETlr%A_8c6Zu_mviAKZCfjtX`! zH}0$1y4qS@XllyJwYLgeb)vtZdyv8rYSeGr&7_u}B6)MMN6oToP7COorqVp8M4Ker zH0yH?sGjkleNAbxdv3^%5T6|{TYPTdu(#h=Geb7>hUUuoKBYVS;Oux>k`>^WIG?44NK@&n!3)tLR>I5oJW+vF0+l?l8(| z8{@UOQ6km3Af^{o5oWYs9<7+Rio<{Fl`n1t=TecM13tdM(_E>SGN;AhlBZh1|19vC z_R0U^vJ(KqTV?mAMPGa|w|pIet;VCD?=tgSCu@`DTza9Hdm?DK`oJ zGtdefX{KwCOKX$ySZ{aYDV%*$l{RCH86@&kqgj;mEB$9&J!#b!RAHwuDr18PqfU)D zb10QDC_2q@uV2NDXPK1rS{ddk7|UDyMs+T}G0}OhIV-<!pq*d zGM-`Nyqg=rU0w3UvQumx3-qT|UMqw2TzQl25o-G8)6b{j;dnYA`HxvyUYzo0%1SY= zb)zW{9vN3bo{lyS529h}grhQ);H6_qqqJe6$mXwev^nT@LxqC34; z*h}sF_+5KZp#G54_v2nSd7W^xeSd|GA`7AnlgZPX1?ot)Xhtu4v%dQLB-T!KlKTk$ zJz#MAB4M(b3(Bm`8zcMIS1JHC)dB3C!sNfBWxN49s~ugiucIF^#jZsp7{040WlZJd8bD4vVYVSGKo)gVN z)sO6Z`N z=L(j3zvyR5$1R|yvUKLtqpWYQ8xlG+Q#hD}ibfMv5?&&iy{gqp2dl63q`Er70}BVD zwfWS~C04_T*ry;>?|vRnNZ8T&t^xH?RvR#NpHn% zhm%~#h0BB&f7J7R)}KhZwflDY)PiPffm#&bJyO^820=F)Qhp*DotNuaBQ2O#b+{2A z_IMKd3LQU}#iiwCoeqo^ABI)X7D7&uFtMRtK=JKBC;$5$`H!LW#A3WKr z0o?!)WW@C)$%3+~i!{mkSa@TyKhF6S*LRisrJ$I))6Zs?ZT7u|Pq?{VPVn;I3JvWs znaA;JVVG@r47ZQ66kJ{D0csqmO}Noj(AAuQh;mT5%S7Fl*#42&8ngaJOkcC~&{8<7 zl9nmG6B{K}Q_Yd{wVHu;f>aniuKpFs=BPD!9NS6;_L?Vz;GmZysk6i&`9|KHcG|x! z&)d=deG`jXAOQTB8&$a+6}U0p`zEj+NmnGdM-6)Wj;qN{CVR_UM=F zlu27HL00~@MWSccErshmtE>3N@WtWAjUnB7X?HDC@^c752dWzn10egZkq#%_boCvU z+t_d~LjRBN%=@C>aJ`r_3YQ@>jVYlMdZNal(?(ftyvS#Nx@Y%9F`<=04gH->JLL9H z=3a&C#^v%G@L-6cuH`7ce*SrWK6HrC=X?(Dbz>zDSDbbNopjlO=u}rD%lW4mILfx{ z!^jfDvQp^(u^bs&u}ak9BhhQ;`()~ME1ALsqoh8N;kU?g2)ma=QFfr_^B7Oiq0Ij` z*S-2+BGV}B(y4U4?I?g`R1%{QUxGW%k$AuR$wBC}g6)5gR9v|x)*2&@t`_PDzWO`1 z$=XpVHMyt)4TuLTP$A=+PJT4Zd0kine2m!BS_-4nEWW455rl!r<)cvNCg+yp+yv1#r6I zaGStig+OA|rFAFTrmG&bYS65db|IQ-aFZ9f)2Y1I!~F3c6HC&^jia-d`*#B;n&*zX zDh+&vuc0D?zNvG54|mvfmU3BjiU~@m#UZ+5-^Q-?m8gAk^V`$(#5+P#Te~u8Bb=Nr%#JMNlcYks%DFE3H$xcN= zvFART0VQj)tMIAiVj;G_{aVlj(N~n@NClRbT?aoM2em7Hhj7VzE626OpwX zj}1@miV9n8;Ve{PFyXXV##Ct8dK8=rg_$VZ4GTT7FB0IN%T)xMNw70_ms_4z6&YN5 zZtdrd2h8(5w&31j#5zoZSQPFud0a$`Ytox$Sk2V&Bkap_Eh!#}V138MQ0KA&!yxk%i;dv>P6zv&$5`pN;1E8C)rOGy#~_ z4EkSFRE?}4M(&vx5Wm~1l|hSU?#f?MOAEDI$F0YNY--(atMk-NoA+>oS=P#C6IVnM z#`z3_8XFErlOOAa0y=+;mY%(dk*eq>FF$tI7dEhb$ChyaP4az4(c9?QwoR;#cP-tK z%6_lW6r}p4Y#tp+x62KNkI_w=qn(~mH|6|7tDgg|p>1UULboq85|9Y7>JLHf-++{w zZkqO=8j}u#fWUb|M}@|KF5e|}E8iqIYbmK9n+epN3CD z8G5QlYRb!{0}7B5`*`?&U@-J^`TRgL;R!*Gi+r;|8qFTnP~$< zGY?UYX{xSQ~!ILfYL5B+tY(HE^Cluyw9^WBv%U2pO2?a&p`Y+k%Q zYD?7x+7mknfyVo7-D{JR4j{dv#Zs%($=z`#Y_|XBs?P+hhdl$>aIuo_0@0etT{8)p z_;aX;ABu*q-6HROD@?G4_o8{7hnH7`BWcoNwq$jfGROMza|`Btst@^ABLIv>7=!?g ziaM(wi3$wfDQYT$B>^Kxhhbt44COt$B3-Mky;)p%;O;JH?{2<7H&1qXMGhz;DA7W} zHD!4m&i83F+!f<}f19-#o;mzA5VxKF`TXac&oA5OCFk?sakSj!KM@#UAwL-gud&o( zXYU(B6Yk&@3j6Z4SJ%wh07>K$S-`CnAIXt2uDY^4MJHqTy!YI9C)g?$;{@(i=opF_ zfgI4Ph(FCYK`n%!pT0HeV4!OG&$t#Iwt}j z;jACW`)g7@kj7xCEh6@)LKfsasx!d>67kKads)_&@0eBt%WnqT*(Q&g%1#K#t9fND ztMDlDy(-ZG|1wFYEN$0ycwI{tA&L87Jcs^;xDGS~sRPuwHyCHDxu@sgf6Xsgs58Dc z1Zj-4>A;63pIGGAh7)R`v_ZN$uxlu!TU@bq|M;HKZLpcqdI7PObO_{e_d@NV3wltU zPIveVT$j|3%4=G)%7S`|S};-5Qrltws45JAvW06F9iN{7glo!dJNnOCZsK;+*+?`F~fAA3Hwk0!iLXNFcH0101Y&Md6Gz zeq^yDgm8MNTc4+9T?G(GE2>b;Sn&*%9>Qm;*+PJd;Lxt;ZQ5b7V3f}xl8$eLGSiKk zRbJv+^n3jRyc+YT=k@MvkbyRI^9*wEvxT`5SSKQ9`>C$q<*}}WQ1d7$-!EUP*lz7q zUSjVZBO*LBcPxFoKEVZY99?6#_v=_&y`yW)d`HYcgF~E&OVqN5@uhem*G#cohUvJh zxwbWlOcu}h1V75)`Hb2$<9*?+s}jsH0^w;o!wd&42__bpzvoo?vFNVJJnQH=|D|8b z`*Ek>eFyVZep&5w_4D%NnIEuaV1oaV@0FvCKrXYlIzGu!rA|w@I2$cD@|_m`D~-8Z z>fP|X(_II>F`3FedvFP=Hvx-<2j5sZva<2Vr;*`B->EMT^)Lx855(OI4#RQ}oo5sN(phS$G1%CuRPa>bXS9n-I4jefl5zIP zwCicSE)Mj#Pt^E_-Q2IM{L(O&qzEaSraUjb>7BG)T$YEV=fUeSE<)rmxj*IYBRXP0 zNq`=F-hh=`f-9`7+WDJRwYmYvdY_8JF3xdlNVj_cL?GC``ru}dWY#(S8Kv1;1~fYh zO!Um~t=aSn`iC;aq<&={|DsI-SS9E*7f@O1Q?w4-0Aa4S1)}Nk!TywW!3VFo6A3;@ zvLSF}xrAb(W3i3!7i8}DFl>HgUT+k*f)x~OQ^hksH=4L@)DeUhvT4W(wXRgkpB zEKtE_3L+7fcB**4j`w=Y+V);^zKni|;p||2GFR7pS=6B^Igj!fFTvfOVMpX@5nLC=<=C9IwcZoXeW#pi+UzaC zb*@71{iG_{?QVKd2}Xz-6?>ZK6m@djWFJThG9nxYdmc>ZDl>@Xzb(yjUV+nw0>1ql z3A^byNY7b@8zeMBnyeB+fM8dSamiN{bSVWe!)g|eb7(%)AZU0)m28&H*B+2)~DhPc* zL97^4q8NS!#pZk3TowB8Y#MM9LmyeLs5Y#FHkYBAgXfvnCv(Ti8A?_rX*H6!@b>W5 ztf`0*lj*Af*IT{{qiR|zU6W2L>$Mv>k6l%yfP76MI!?`G3c_>LL-MTm*TV9efZJd5 z1?P?)FW=3sb$3MguH@+GHR{)} zt2}w0C<>|^k-KO0z{{uxQT*vG22IV?!Qy=lu+wGem&&HnL;w3;7veAZ;u|!|i~Of? z`p-p=N`?@I71D4RZv7jHy^L>!gjN&r-2B~89}QiC3c`@5&(?zlZDb4va>XX!g?}cZ z@0(C16~+LfnEgV|B1)NgQJVg=!kRZeG((G`wOY6UH6 zaMruXHr9Z{)~^P6exbK^F!Lx~ct#Ea#omzLTqr)ktPmZ_t-m$Yeco>Vc5*dil6Mgo zuq1{{2(!oiX_I0wv25r8%6FvKRofcc?bi-Qd=Le)km~Px5P!lH6tuOC+P0eH`5fN> zmpm>zmmWOt16;SR5zg#3Ue&zS-ZS1m8nr9)41*S#)By@b(SFaTR^scX(~Ihbcf2CH16SwrfQqV zf&^)l((a=gdw7v^D==pD0rDXw_hyps*7~zYj5zr~#;s0nbK3Y|r3ySnM;rd*1krw9 z2!l`G{nhT374Kkv+)pE1ld?EyuYjdpr_~EuKoU*5IHy{d4uJ5rUgSH{!iW@s)z}#p(=H zD*5?S3Ryo6GzoBkul_LfCni$NSy>kknc)iQ4Ld*Hz~Dr`n}qj9k3kc_VvwLa4=dGm z1c%Ud>cYbsqmO``av|Y<Y;l;gE3&P}CvbCpHM zE8o-cu6pz*xxnE+M-w7`c23hg8J_sL1?BI!c8U4v1Wsej+Vq#rM)I%#Y!<&^Sr@=d zKhw|BznzY|+tc1h9=|`YK2VmlTvhOGp87ic>VSGKMJ^;uWo30N$08yOi)$vD{&XzPSTeLbVV-~*q#yte%vxYt*F*HXW2N86P)W?39# z&)&~3MxyZ%qMLA<#(*gvnz-!|E629h^UcP^?yN4RNOz$jf3(;>!=Mmf}2k-_Oilt z#ehi2Q|q5;LCgJbL{^G1z#IV78^sd_ou3(PmMZVaWxu%g!>00$Oo()556lH?&5wA+ zw)wW+<+KsPU)3;k069XY`kaQ?N;$!XSs<8;sK14Cz%KSS4*|JJ*L8KCy|S?7;5IGv zhY$G8F$Vy+A-=_WjjW?shIp^J+B`w%X}#A5zTx>Oi|Edx>LGAeU0u>OGf^W9;A;80~(wE(Ph_j zS@AWwGI|yvl*`3Xz=S$WlSHUW7-m&91p}v;A$3?2hjJXq>IS0J@J?~SN?azl3-O`Q z9_>g~vEZyzge(yU1Z=1V_>+L6ky(yFN(3J~J)j@*ip6zvJa z65U16vLNK%_IbOS;y26SyU1%3)+)&%na-ZLZ!;VdMxosH2UZu>&^ELW!cQuFiSgA5 zcQxt8%l6pGSLZcDKZdJ*rIm;GJ&N_rN&hXsDOyNnpPEkL{+b6a(*z@6EFF0fpJo@L z#Ks}ag>U|(*M{&TmP`f=pBr64!fQ`4y(z=Z9Nvn8v|V^Q<|$yO_4_9;xR$w6s5p2f zE6>(-o-wySrIuWld)UuckB0%kc%Iuxgk?))D?7J*2}?MPGK}l9+xN6Ab~+e zO8$F6kfovTvP~msR%&!fvqn5Len#T-pY;vesf?P_JRA|^W;Fd=9j(zuaYUc-oZnLi z?m`QYvg4c9feo}vmTczPwdrW+spvOTnY3deG1ng*;=a{v3(KNP6v5#9j{fRULMRrQ zG@rVpX@8-rZr$4PI&o(TwPFL7sK8kk~iH6#H6lQkgU$OO9<;kkh$i%ZZd__M@7T@ zdYF-)^-#Z2+b}j%yg7*KW%({}KlBmlFqhYfOIf80{133YAQu7_q&r{=@8!P~OanxG zd&Q>9cS~Yo2J2lBxa{6QXlQ*`X|BV7Ph356Aw-!~Kj56$Cf zGx#sI?*@^Hf^Sbi+b?`@fTo)Jw@6oEO}fpHX@G$u!=cb1G1gogL@z_znWZv?JQnUj zy8OHrfZ3u_{r)`<0sHFo#faH5p`OiAhgQ6OPa)haElY9&jt}7)JUt@y_wZvZfFjM7 zoIX`|C$fC0C&udKpHHAG`Y-=$b%-f;49Wvq^=g$diXK@BDr^%pyHQAtQAh=O;^Yjp z8L&*3q$Zu&eqjB>Y|fi=Lc5q3Da>t`(PMA@1pnsB5@Aha363(?3d$8JZ4%T;iOs?2 znZoxTb_XdTnGll#dQX*0*>t|;hYc?~!G~ox{nf}*ewVIEfjb2JUN3E)M_QTve&WBI zr7Q;W-|6#jR$TFa<5a%4AY1i0bL2&Ak&+^}ff>}smUNY{%!Thn*Cib1x-Ogwxo=2x zi3^TIuz{FX_1X;@qS2Qu$QF_Q9a`Itg44=V8y5Eq-E^k+Ommn9Cz2*mq%kJ#_3Lhh zm*!jX7-ouLfD*I<%gQG8W+searj4n!)Fz!0F@b2E)3_{tg%fzq7^N^%%;~+*?e$>3 zP!kbt<#`h%rHEqr6d3;XgjT&R(*aj4ahN)@riZ~Su`xu7i ztm8z8m55uazAVM-YgTdzU0pv+XUiLfq%DxDHe+x#=DkOzCZUW&JkVBB5%kR`78d1e zl;wCy&8y2ue;U0pOf^qln~-jX5V8sO4@+Zwv%uMK6mjQ>n9Q*4nnvcnQn17G(Knk; zo?R=;f+Kjsc>)sgeM|VrtXnVRlXPA7!O`x%s6<(FyQGqm)0g}&b^QxrCL3fzqDptINE=Bx2IT~e9qcs+)8dA~ z)*p_Mh%x~aOws2rc9kKspiP-oydi-*Uh~IL*u#ausN|%fgsB67GOw@u6*U<~`HIQ; z(v7p0E2ZmgL5xX&Habr&WkLCc~;k+->f`pf7{ z`{g*DXKl)sss<)AI46yfn^C$GyQvAlD_z$d2A2|EUw|vJ;%psvQKBhLc;`Ryk{wu* z4L*|lDjE8aJv#7?PEi`T4Ki{V8ssGRkq#l)P@9kshMZA}PL4E90$l9h zVykkn<)s$jVA+#vrn76ghlQOnsd6{KD@V*llUjeal@dnTGSVv-c1VzJIt^d>sMv|= z1&*WNsr~<50N;N<3m=5yTKX3}8S@)xB6P#&ra?%|l?`8r-&&GBl2ACKnT?q~N0a@I zzLkEaG8<=pK_pqTDot9OT>AASAk7EXsDw|rVXdEGC_e?ySZqHh40MggA7{;1O)%2* z?{dY5WJ3OU2k?Sbd#2?;Wm`Rpb5G+u31ZJ~*WL;fV|R>Eaz|H1B%d#_5~?Co<~Y*e zX_+He`>Wi61xUQ)^@xLBf;uVFntDTj6wZ2&r!Lp{7RcrZ^u=ggjYuuuQSqc~C==a2 zHvPhaOV`dAj!?N0`KX4ZI^_k9p@`TDlyd7r1oRy$BPk+txb^okS()wjF+tTd_HVKM z576!o24HsM3hEVe|EI~lLf;j-&tD3Wr}u?xRa?RjzG>j-4P3?%c;s$-+x!@x?f53B zf`LP#F-FR+j{Pa@9!Ir>;6}fd6enUJTg+{aji{Q#?R3axz7J0OU3KXIc--3C*=hZQ z=!*aaxf4ykU$+J}N0?`dN{t!)rV#o$aTxiOE$N9~(WArkWn>!rq$ClV??va&_3U3xpT_te|%9X0LiH%Ncj`BzNW zt)|GzOQI$6Wsycw!(!O3EJGl`qYFKfMB8YLbp0ujjMw^oP&y=bIYa;Q_|E%85nZ$d z=|pxQC10jRVj`}Cl+|JiL^}a!HxoOF;+Z>KXj{{|dsDyGgD&u6Ptl;es!tb39IqQ+cM8XXPCmB{o!1Yy4_Y~#Y_;QE{GDBGr#}pA)-4a6VH_pmY6o`F zf))eh{==aQM$oy6m(82v76yui8?%}qb5`(%;jFP7?jzIia1hnG=SYv>!B}=hC7h?%7Q!Au#IYCmRrRH7J%ULQn_PwYuG!5M zf-j^Hjk6RoTC-vyKq$@|??B04BlNOx#wjb=fF<=`fU7I`M~DQe-!J4}BpSTAqFF@& z>>8=;2vsasZ9+VlBr1}#KR^0v4n$@Y6J^lvT`LWsVJ3D@KgA9t6zG+LKb!x^;uJIS zFXzj~QDDc%?Kn%Uc4uhX4GEY<8TJ^4EmI0SOY$D?B`l-aEBlG&+5F`F_q%<(xy+X$ zU?Zr>Y%6h4s7c75^zCA+#2OHWfRq>p(6Xe}lZWw?Lf zAjqdum=wtNa{au2tk_6&Xgc5|w+_UpaH|H7^`etUwMh%fn&7gArcQDG*M;#bRRP=s zF9N^m6E_w|eiQ-ULnO=v%!?S|@6sqy`&x7xO$x0{#CxF{>)$a6DsiN_j3-5=zoq}E zRFvHtiUk4T%`c51n`i7IK5+({yF|~3wGt^GakyZcl{THCHO!}N zrhSNFYJ0>LfLVu=P3m6*ogZSG&}3Isq*#>E2+=|CvYHn@uKtI;O>D^X(A6ZOB2UU4 zyXo3wO2NqJyyiun#kG5kr`(JX8v9GSDh6rYw5=Idel5@hlEw@}an8{^K7u^<`*#); zOk+EgtEX~49lDQ^@vrZSOdmXW1QX^*nW2^s{3s|u256siVl-@9YUS$loA+M*Z zv?Cuz_>dTNfICM2QBQZ*V4h--E80dxwiS;6j_!POR#*($Cjf38EXn+{PS3!XJl|>=iA9Z>gfHkX6D;{M|~JW$$X0CLH0ws(LbRb76q$ z|NYoHHrtI=Wo`U!RItWJCt(y_6A> zEmnyS|GFCdeBX3^)pc7gE6G}b(fh|S!%fIsa$*)S+p(mIt?*BHlxihtMa49`$W~^Z z2kjxFmHzSD#azyLWAW=!rT-n2D@4M=ujJFOXp(tj%+m|(1UL}Ao7T14=_(?>Szolv zYACM(l7z(u(}e{NtCTcH#t6<4anr~Oz-*r__s+-r5dk zVq*xkD~645{k6!yLm&0m+~H_7J$rfl<_iR|{@4wk{0Y^Li)cwG`~28D?JKB}ap-Tx zqb<4b)_bXnWJAou6RsV#lJ;^u!4av8XcG9g0}JHeNt{ysF1-=(U43TB0ecn)s_|hb zvIZx*r*6zmlI&JE=hNV2JoT+pBk(|d`kWZ)K2Ew3&}>HpKk4~3N!iQC$hvHgr0>In zI%$xaEv+oG2pO$@SR_Qr4?%o4jPgrbDE|QRa!qO?7RNT`2qM*ueMrSD+oaT5O<;IR ztD)7tl)!0i6p<~KLJdq`qrrRvi%Ntdh&!h9^4AE38=Jg?P|p8}s>S$IiP`^q{DuV+ zXfQD{A99iROA79Io_MS@Voi>*Wvn}JEi3g_mc(BQR4;dkAFTZej`l5hO*cIl!TNlv z5GM?_p~Vx10Fp{l8U6tY7y8DM_-MP>EQ#};4nP!v3X8rX=JCpSyG7{HUCJkrh~JMc zA*AC$-%Bo#=$V}NuRisTDkkV0x7@kbA^7p+yYFOl^RbO6BP<_UTW`Zf zkuXV5S7BqfzVde_;;;kNhX4wzW~Yv%)vFNISV2a(lEm5BDRaE9ij2(@Gb$v@rcMw< zJiV$>0jT_?&dPI15;rRyqljVIE})}wHE8-FgtCG6J6j~DhzqdO8je&1rjt1|5ep~#RQ-o)wV8OYgIR+Dw(r&@KEk+2aMGlwB{FnH*YcQZrt9f$QybBv}T9r0CC^gXB z-Zgrrdp@_AiRN#GWIrFqT>MemnOb@dspF!A00N(10OxZ*%B>4;HrbZl{WB;p zXeK`>(_=f1ao?w1GxqelqN6AM9}cgIY@K6QoI>L^>sj)j=2CqEOsxk}|C^QKSa~yU z;gZ&VL!2)&OqzIqE+hP~F3XrgC8T=_Zu982yf}rds4v*yj;)4amg_otmjr!|%Fd>N zaIXrg0XQ+%Y%`!QTF)sih_>sX6Zb7H@dpALwbJ(Es&FYCKn;u))53U|jaIm=2;uM? zPkT}Gw3ULksz2Bs4%Z|)e5DG%Jjbdx4o$$il?U2wrK1x}SxA-4(vaGZK#xNx7&cfR zeX$^}^fu}{tMyL*A5Sg@VNvQSg;SNiS!}T8%rRB;&@8 zy>>PMUr04oCVlJk)<67A6tXvkzLf^<_OkfmbmDWPq2TAScoi3yL=yJNSM2f->I)_`Af^%SqklgvEhBe2M{@5h$ z{!dYSxw`HA1XsWM7dfF~qm?SRMA0>XJgM(krM>kJ2zXSuk>epxoD!tZhn}?*mfE8k)5=Ra8k~+sOj`f~fm6zvV ze7by?T?P4nvZzfznC$!i9Tn}nLu@47f{9^?6Q9AgiL{X+LPF_FybZH|k%$qiwO0#B z{|#q%W^KoPBS0$HsO3PS$E#8=HV8(aXp{!`q(M=YL!4h^mNPrl-)q|>rTZJ;7~hzr z&+85)^sj@61q?ELByV1+uU^YnEd@x&t;vW}{}49g)Y$IP;R5VcvC;+ZFXXe-#zREs z{5sIS5e#;fadJ{-r}kOIs%ty4J40 zAL7!e-5tQ$jtS?*gUP3tg6}hNx$S}m$o(aFT~GvLfc7crw`4HhWd(Y`ItS1BUFwJ@OliNt8 zd2* zeL(GvcNTZIypBM!^y&+~-1UiHwL{22;Q^79Q@Yh~NwV7{zaTp)J}7>6=zmO7jQ=p7 z%x`I?3I8==77L*@Bt?91;5wPC!XQ4 zCx&GhVw|$?9T-4L)y~b&-NR=%gZpw)^1BrXs`82}4z1o>CE8P67V2{Y6$ zi<>~0?@4c%qQh=D_<2AI*rAh>eOoqn$lP)=u6AYWfq(zuBbD7G+2>$q(lAnbIHqq_0ziLZg-=+9(sqyp0u~CFATu1q7pvqJ zgBt@ZZGGa?P>=@(tH5-Eiil*_3MCWH*bcg%vPe-C!~yky?VeN}T7(a7RPrnM#|RGuaxa|;3{Jj%S^ z$0L$$EA}Z*ZCxSefV+wnMK8Kwgz;{l5BI>;$F5i1k|G}2&4$@Iw?)4^KC)lvDlk4= z-T7P=lFo@&vwHn1m4ls~$g;7gsByM&LQ+2oP$|TZ$}d*#Z#L^a+)s`vt13z`1gRa3 z^@sIkFy!Cx<)?ac@-ct)LgDCJ>wnCoSpU1(C*)j-os|<@e^|E@^wZ_L<*_BNA6l#; z`+hfFMD$)dp3UzyWmZmp_Mo8Kng7C8?Hqm8wAXTYR#uW-SCXS;9EnX|XNJRXBQID# zq@@i~)`eBqzh+&v*&!R{n=;5k0coxNhajY#`FCsbxIs{1LiL8bNn@R8gd_y;d*B>mt;isbDm zlU4fOfed=3YOt$%;${}%7&UpNk*fG6fsF;;wTla-i%9)cefQn)^LKwT&&tOye}nF> z@mApc&*1*z<`Kx^f4Smv?c}1BvO?@SJH^Wvv*l#WF@1m=`wiPh%K>7~V9Sjw7-W-$YJ! z*Wn>+Bn30@j|>z$;jULUCHIj$cb3~m##z8C(H-bm{C~$z82^K)-p^?V$^V6@e<0|r z?;|T2W5|=tpT}slRtrw$go%@XHst1>b_Jv2T<5EThlIhO>xox8nMdq-UYCd@#j%EB zEmUb*HDG`dOF?BSNjDE^F$Q{=qW=`ex=hq$NBWZHYxj*HJwkufh`PjORP^ZT+Faig zx_-7DqPTrcKxOS6kbfu9+uH|6wUf-<3G*T&dzYGQ>7|_qDkvN2gJrfIwcql+V`PDl!+wotO|MOMiMxatmhq>(9 z?DYDF)%mLB#7f~L65LzQwP?5gb@Q4uUqz}Gbk87HVA~G%!8q#NIrJ0Wrr-6j*6%%s zYLw1UTOI|IC088*75At_-g+%m_#|5Bq0ID1qUw!q`dPe;xtW~SQj&)#?>o@w@Z`@H!S*n-k!h!bt^--{0CO}w(n zP&Tg%i_Sr`d1l9#w5)*}NR$j60N!0Bvn4Zucg@p_0dD>On}gNiM(vawWFKX#|8D?o zXXDz6H1v(1Us=Xktkk`Su-O-1=`yEy3e0YmFj&kN2>q~v)PrnT6B|1#^+N@K+=+O; z-XWjisP5x3X94F9%)+mH99oPAZAO1OYo&*&hlG{51;t_x;o} zf0l>Pc2HaerTKT;EjvmagtY-)LfCYs7ChjGlOPx?4L59}FY{O|^b9-k+e2Is$d3%C zEs<7o5y%lDzY`v(H=q&t5_Z$u4acoxLOxZ4#&kG2cPD2hZws!_hPJ4|SwQa2Y8r#U zy&15xHETq@u&HW+y9p1L`t@w6kGU{|d!-rA%TA&}R2~+CpMXd8jNP7FrFnu7p?}S= zrfKHAzlX_xNSni^`u!9!4WJf)&SHKDOP2h6G+1|8hhn-R#eso`u4w#7!P)=`v;AicQVsBzgAK9kwaU(h zR7yPA2ER$$)2j4P+taT3y6vL1g1~jj5Sin-J+GyJCFhs#Fn{bgAs1tdip1f-F4=@KNQ zyF*%9a%rR+>F)0C6p&m(y1N^eh7Wz-_kF(q_TKB-o%_tpZ|0mi6PT4^0n!LT@yHox zp*$o-U)>RrYf#P;?rkdjKf;yU4#Xez)APS!kN6Q&bD?%C6os0Ik8+*FYgE;G6!XJ> z(4SrVf40vHUZXvS{GZb~EuvT_95OAsj;+iW$sO|hf&F$gj9-eVYwg#9#2}T;S4$|x zxx~KK@9?e+MDh4VnZA~$X{<1}oQgeNHhUO!qWrj~!*ceb)de`ez>nP?PBtlrJnYxU zT?VFU!_uI$o^4OdhimZ5raW6FVLOYRSWidcnyW9nVn7sFfwEGpJiMG7|G_E$wh~dlG=V~p%w|fY<{mggY-$uL=O?6v+En6M{Js_hwJi6P@d^Q$M{!$p-ZDR)kQb1^jA zv|z8eno1C_vag0qM{(O-kxB5mHfVE#jwE(FsW{uX5~@6;$geA37a=rPoF@l3Fu;bJ z{*7{8v%uwe^>(T=f~jP$H@uG{hH~4sfmp)7TR_i0i5u7F?8EQ>=vh1x zqT3i@tvOLl2TmV?OVAf2Uo6a5I%}_HvG6xeA3r+9$%UtryHLttJ?H7#XbeJ!;*9!A z5B$*w`PyDt&mYD~7gVMppQ&fxntKbh%-zHM3AJ$Iki{R~e*aF3Ac*qQ!IH0BnvS4x zRH0vCTDL=0=>e3e9L6}5-dx?fxq*6E6W==0=D3!B0Q2=UULN%54FA>Eh2BrJa?3}_ zs6QK=3+oWMY9!kv_Nt3-V4jc!hsPVbsCzX2Fga$1rD@* zg1ZvTy|2OJ_^@)P+RNbYo~Dyvpcp6pv%K;8t!W|RNzn+0<(mQ7IsXkftq9Z>ED&Xf zgy)(|%Ns}eG8d|Xg5?+)J+;x1NY4V(TimnwNi5@Xq@vWN(QalFJ;_a)tdH%UUCceZ zGN?5bpHMRj)&_xmtsV=Z!IefAePj2TJhlVunI7Gn@yqicwCn6r@8$9K|hxMi|0(+GUbElm` zahzjI{W!gqh3nX_5j+~Ib3#j9J#rs5#8tzB>c(11>Ov0*mPwBiB6j=k7EKE7XhO$td1w>#*iW>;0(63tCPFk9FVA#|B?NSntjX3VkdjMcmmrBu-mSK@*Hl zenH_zPH(U*o?Bp8i7aG^a91mFr>D{yYb;ww@kYrA@8O8S$$6INw0_Ah zca>3;$Gt_ke1(yg@f611LUG3`^(Mzp2~@E6ZLye}pKxs6Ob?MyR6FgH7Y;Uj$-0{# zz6%@?#g_yjvV^LG!C53vN>Q5JEO#-WErAYjg5dei*0*5(4i&r5QP1$j>c7C-!$YDrM;@wv3j`9 z*G$z`+t_#TE5-By(srKjj}@NUGE+U;B}5dgYfWT=&$H7$dP!N*C>~Qd9)7GT*_fAW&K@92!Y5i#fWW}E+uYDq9tvU9 zC-+P**c5m>#c26qIYh5{{v4nVc%|+Cq>`>s4ZxL}MM zax>(t?|~T_s5~Vw@9(Z!p%LCC#dvhQgjhSOizc5Wcbq`4f6Q?{2yWX@))?C(ZC3-V;)kz1NLhRop}{^$p&I(W%2 zEVaHyHopgIw|bQiJTs!Mj06g+_rkPa84ZdS%pX7*>$D$&fPR5UUEh$=$U(9d}Z`M3|_|Eqoz` ze7*wmn3ZQU)LVDPZL7@2r$2fxHmr@5;$7V}d-NSCUd_D{C)yprH>yEm1qitP8X1|V z$PBA8rvY@a25hjNerDXcKhK*8k8^=+7V8*cT^JN>S#N|~ar0An3hM@0k5aWTUo1z! zBsFxgC~}PoFwZAvn>})&;0$HqKzu<8(D#6zHKfsD6mRPtaCj;JQpz)-&mmDdX>9(U z8G_-%%{o3yaKNfl*zY^cA3&vFg2)`qN4#mMc1^OiKnZ{um50wTe64cnsF>Av(Xu_L0NK4kLXxY7En3_5YSyBl@| zTKTc0?ECk)_#9DjTqdvz@#q(5Pd-~gCM>-X(AfBy&YieeK`DH?eikW%ixzSk1t)106%znDokC zw`z`9&63K6uN)2>oY@{p!wD?ITT{@wcqsQTYS}F5j)G7xm+6Kq>04VoJ;}x98GjYb z4CO*pK!_XmFvL^~HxKZ0a2aq3b8qV*KGcJB$|JF;%*(B8FUUhfrpU#f^H~th zK@sVF$K8?59_C&P_%fD!1;dTRux$K3w{EIBk!PqzO5hQBx@^4lZZ6Bs%-n2g>Uw+1 zY>wBd+8*kuh@$thH-Vk$pRKpyiXe(!n77Mr@gFzS@)Jx(;3Z;=q#+uR8vU&t!SaKa zWI=_5nbx~e$p*T2OiW$t4xsWFX;gFkEO!awxV5w8OsYB=jSUEx$!q^*?C@UF)rDwH z=-V%tzwCaD1`5haWB#nFMVeN8wK4Oe?d?9FSFtFfFtGwPqR|cmjyY&`e)-Xn)GK#d zsZYaOt#nZZz(AidE0=1B!=RM^JZBD%XU8aDPMrTl2eJdjKr8;O&gNKA?tah8vz{|(!4eJQC5SoaC0 zdf-`hyWD~Q=3P|0?kmO$C^Ji-h@2fmGN!IY>CNIf{>|#(l2Pb z|GZ>OaPiy2h;pqSkJon##>jP;ua+kaFBvY~FICOr8tMqHjNV?Ot;FsfxNDmTmOQ{_ zm#4}}NuFY!q7vcZ$k1&Vi#0mv!BC^{{Ex9}8sxA^SjIy53AF!RH zYEuE|S6u?L!h{|?#VrDw$=WJ9#_9bBX3)1kTG}`g(2Z?ZNWAD1G4}M(4bo_b$`EF7 zehm|W4%G!IoeD-$$n}JHaemQRk~F~s6h<5i6HS_b9}T?~X_feq9;|vPQB#{ze6Dr; zWemu;uVW&}GHk+1dTxtCme*hReG3;mAhyOE;asr|9jZ6v$1><$3VOqOz?&eLZ%VES z&ChM@;fHx&T|4>hwY2*77HCY(H?pcJnY@5f=O{suC)eG7h_2hPC2A`|KddV`<>+i7 zeh2c>SJGQnCfoXZ_E0p>!)zQoK51AEr8b3MJU~64>L1oT6AkM{8a5cM>-eq~Cg6%Y z1ctf1oq*J>VfBK29(RWpi0$`AuwUH~R^%Vwq&|n^{^rv>-yT1sBgW9|_Mae$C^}iq zwaOxEY_!|DPfZQ3kJbu6SbE=pgIy8d zcT)dk;m*)nr(x8p{g89w$Y(7TP*M?sBS^q+yg}Hekoy>45H{ZB%5#$8d+48RCGumR zvw3STeTL6zQQu;!q)0M^G*!5ixC$!dI6`YO+hhGcKDs2nK&1_o)ZyDahg%uU=R`g;zEcDaNWV>$T$IPr^f~h7QLHb!5$H zdIQj;BKr9G7+9xyDdH?o=Bu)xzfn!+$uRsUe3&4}#$nHyeSnNigX&xe?9RB}=mJqa zQ|9|96i6u4^CHti#4liv=2o##aLUbpWwXFqPR;oR{X-HP`^d0#MLYDs0(&%C-OFEz z&sxTZ(%_n#tnH?s(Kn{)vY@=;$A;EQ$1Eqj6@X~{l~h|f&?eUjj%DLDF=lIM_tgQY z!_v#aGW2=cI9FxwT^hXFXjv+-_B@~c3!ACwsvn^qijGOYZzDY$Tp2uPKU~Y!5t?2M zdmfs-sP{SgQnA`z@^B`yXj9hE3pf>a-RCYBs5{ZC#1CFk`^q|R(|>gm(XL24Yx>(= zF6BO*)YrM~Vr^dgfNl(NUhgoXd$OJlf5aT#yM%upUw7A#wKPxBa(ciuBYMM{Lo|HH zT0V`Vm0>w>Y1(dvl6mNw$m2R@x*wItkWrg#csBBKTDP6?*Bf>yp~r*8-LG6yA5vGM z>n&tld57W;r(emKq1}lP6g_a?e{<79QUC1Cv}O{FqyGlCqu|F`X{#%G2heHSkuFoH z4w^6{lz!$iyXL;c#jkB!nnX0CB9e5TQHZpW_xpUUFQrQ-&D1iAK9QZm<^7#!pNoTZ9=r(+W5JoQLP z{m@%!We_G(O&8j`K`VX#MoINNK`$etjz%;Md^T3>G4lR7$r`CGyUED~{n@+{?M3(Q ziv67L@g6V*9-Hz9%i{-_Q@`|_i=8o3hp@+~k;(=Zp|Gauwi-c3DV0(k%jez~ zKhBB$az@MHFyDTqGxSC#Fss=m>0}F8U;nDvFEf8^+I;cyxUT$ZZ{V{Tf!s)t<9Bz4 zbFL2jS{1?b0oLb=a{KmLnnAdz(Ims)rV9l!?1z^%#Uzty229k`Uylp#2V5EpSvvd_h69@{g$;hkax3FzEvafo`SDw#&3 zSXhy{XV_z#$3NOfjb4h$=r$Z+!#dnOiC#+e9uiN+t)hTqb#jnS12dYOHN_uY4(c8n zcDl}gCUuw$Tsm%v-~>4=QJED3yXiZbV)9OIWb)SQm!5Zsoa|pUfyH+1NAc5h;sUVD zq6EQ$2&r0I<>vuqE%b7VLes!~{yXM$(mITRqJ#0l|6NvohrfON^lt&O54@2V2KZu9 z9*9Ou-Y^(509P_#poMyhr1P>quyefc1LKLd+8J(}T~3A<)2_s(T#Ew5Yn!=mL8T^| z7;V&uKcmTL;8^HO>CLpBdo6Vf1>kMLks*hC+kAaopLUlgOX{`)$Au7dBasoetLKBQ z4Ti-=V){<|y58yLK6;#SzaTfAtJ$razvnw#A-<|j%^RuJsL6ku;==<_8{_vxL=S@=o44lIg@|=C+h_3mN{HeEM;MZl*Fn16)ZBW~~QnN@t6a;2a1@r)~{IQSP&Y75*$LS|ZSvAy+&TMQj z_2imsr~s;oaZH2O2X*&Jj)RP5^%&CJ(6XiNLC3LsMa!pt$jm~Q^gLC4HgOcVW68>7 zjw6wI&M2|H+6*1~8&F+R&*2!rK@~Da0BrFQlP@I6Y|9W4jCRbKPk%Uttu1lv7Tu!B zccWxpop?~yin^YPM@9`CtwhQ)$La#elHtPGPWm}!l`Z|1f2v>=ej7MXJB(ELB=wQw zNEzxXn9`UiQRgIfiBrQ}w+O&DO6phDd*K;say@k;xi|<$ z$vfM@c%CsH&h(3G8n=J3u5%F3@-0Ey2#JhR&pa*_$MFUgQ1%W>Z@1Rw=tk?^n@?n6 zbh&*l8i1CBzN!x%@e<$AFGotYIKgH#sT~%HPdBw&TnSM~qEkeH%uQJ@;s&CUBDXYS zJ3oxy)5$H*1aXibSAA0E9!JV~9D8c+Dri$lF+2f-lU7C4PwFA*T|o&>O!tSd zi8h6vbcj{Z!%b(vt@8?5sTwDl=;KX-GN~LX`B1|9ZXL*Y5WGTu{r_TJ8t5mrk^e?= zUm}8tF0yE25Y!??5L1Jo*KhRlUaw#Mp)IxgU}}RPG!rv?Hur=u^$FSSy&cU4lu7fe=Tp$t z3`VF)}!*aSKVfV)_Th&2tsWfd)(TS|oq#lhSw~0V^Dq+Io^~ zQ=jy}L~{z`Y7j&tlS0Jy73A~Rq(?}8ez|JTwr{$1%jyfB{R{gR^v-&GOY+sU15gWC zEkAXZ+m&&7X4opuImET9`;GPTPDfv{leV6C9TA#wAHT<kt1;r9h2HxY{o z&sE^c43V#>_ib(Xd1|t6BOVJv1rZi$Md^ME{Eo=M$gS%bK=;V@^EWnLQ7|PX4Ke)k ziD%)_z%I<4@B9@a>nZCbSGfI$`#67Wo8pP}^Hff8On6!@dPcS0VD^#)L_9LLu7=3| z45HFO(w2^5K}JJTMKvy5P=_SZhTZoxQi=kq`{CbfPZ$6x>dHAYmB3(WbfIcM^s2z7 z1caWav3KBy+%jDO!_KNML(3)XsrvZggwS9Ul?2p=G6cKvy2;hR9(+EU$b*hdubsax zyYSN6jP>9PB2p<2$SqA?Rmi-5+*QpAqm;U>D|6IzUjOV4t()$tZEqPt2VZRJXx)#5 zYnS2{mNyldZT=?!+(s0cp(wnb6S_XD z1A;A$Q1H;MR>L2@P7IOo6=@UKvdJ(Fg1GOWk&!k4v=}SIP`K1_RL52NXs!J)RU40V z&(Cvi#h~s2PK&!SW2`iyOzGeW~V0oJhKO~+U1h_ zu7ZB+da<{ng08s+7Z`Sb`K?Odj13ex_0yOvTHSmrD+CKkwn7~nK}Vjie);~d9I~c zKUrc~pQOwfr#ok5**>dh@njLZIk&^Z2exo&S=1ou4Gc?Vk{VyIqgnA{J+Q$4zL#Y= zv|wTpEufZP3siQ-IH^Ook;srI`{71K9FrKX65VnK_;9Vev+L6(hO_f#;Qebve~4vy6m!j-9v zu_Z@4E@h7OVm<~sYGT(;IHS8M2i@*(C-){`)DI-&)e`@lBQ2svZHZ2-nUHf)?09%> z8eCo`jJQwP&-Jyjw9HGjW&j-^0g(3rS0}&=e?#&Tb3Upknv-RvkMYM9&Ek**nuTN0 zm>eg%rXl|vzxOd#>bhUc^ETBpx?Uv@$jkFp=Z)vouLC$EbmRv0!XbMVG9;;iZ{UAB zPpo7GmfUm5hr{myw9>eG9xvimX9YYTMRasZrcqr~TD5&g_r=rCA@A0Re9J&t)`Mh^ zsh*FGzId5!Go-h>dl7>f?he>no5Tdvp0W23siyt681~QKQqJWgK$}ZS>1-f7IpeSX6&yd1R(fozT6VJ=Z2_Ld~beODJZKPVl z1&HVQcnS5gS!^~TtmFi>B)``H&WtmCx4SN}v#~bB9{bi$jnF(sQpx;Qz#sZ>NfHXn zTs!i-5Q03+kJOmp3+z*SeNbV|E>G}c3lH^GM;ZpGA8C;QiaYAgT)b@(cu|H1gdunu zY}#^^dJ%0@!!&08ADnv}WKHtj_tr__bH~}dl`lT0@oe?9USp%Lfxbk^2o?_^JMg89 zPE8rd>pnV2Q>YKYvRZ&|s=AhRosVEwb7T}ss^3*jaET1>!*won9@FQ4S zw^Y%B|1=vWgPoVy`g$9=fewf_VCf`l{IX);a4Hm*%$`o?D*GH*EXg{h3@IhbgCN4| z9EK2RswA1=t|3&h+bi0!+kN0bG1Jm4AD>`%4gNrf{V8Yh2xm*LjSGLcSR#XRTr|2- zQ4!)@!(I0l8ZoKq=EvA6AaGvvyTUw4dZl zqEN%nA`ED3aDi)ZNuS-0fC%;+{MXn)nU6`GG2JuH^4jUj7vC}7#?O{E3aqw=+X1pz zFNe~(*|aW2|Ky7{^j=oS40PJC(Z#Dmxt zsHhFv1AwINey0Yn&kxY=8lo}bByu^Iov!8iow?`Q<&J?q6D;lT9o0bHE=6F6^z9qF zMf(@RIu|AV@a`8^F-P0LWy` zh?SP?~nxX{<+n9^ER;QE0Ce6uVCU*t0TqlQE?x(z+guNj3ZMg$?2 zfz&Y+OH;+F32hn^aA3N{4>(KeCeos7e#on6F{*GzBroOuBAU{UOx|wYm9UzY(GqyM zABDS0fE?p@I4zu06_KSVQ;LIXAsya=-e+;W;V)iezS<7`oZ|+z!Y{}ZJYEa>K!&oe z?(jN2L+8wI>3D{V=V@@D)=SK81bqi2gia>WEvcbAUKPC+3t&7%c^AfDrX_JMY3w_9 zA-I)Z7KJdXG*$N9iW6z)=PdDrBG--m`O2Ki1q~ce+2$wDFJE_DD(Ov2jW!bcJJ|+k z_yUU?SZ^tF9IdqN7HdANn-92rtow8^sH?SasNA{?h7XJ4jLqNQ!`xL(DXS&a z|MzbDfC#BLvU2;!)_*V%PlO24lZg8v5tOVau>_BV`9Tg8`L3ET(-*$P0$$}6UQ3j` z#)+g?fzEX=f~|v=v~DX|xa}mFinDmg4w(!Lnd<#%0aQLR2=&{db@EAAx%==EEUvvW z+_A_{Kbf= zZtSQP9S}X%jK)l~krSKXERN&tOPJs;=T-Y})$0#hH8r(!`OHrx#O|lau>EE27f({;koIK@NMB)B=$gIA@2M|Lp~ESOqz1=#~Lr ze)!(3X({{wLM#Vq^*1)1MfyKyN+Xtlbd&*1li(bBbxlQ70GTcO;QED1- z)SQn8%+xo0!}oH^ZBYaAm=`;>G%Cr(0BotzFd0V^^?QbzTu||nXa=$a5MWln&GNdL zu(U9jH_BKAB!a1zxv9RA1YzB8h~rckG0yV0#}RX|2T*(kUcj>#3B2vmv4FQxmrXK0 zi#&eb-FvG7M~FJsB$H&Cjf_`FJbX|y8f?W?L%D4m922hatvjReCez!F9kjo5OSRLA zSwxAw90N&}kdz7%U`RSy^7`zZZ*IKWBV6f9$S=TLfz)aM*ia$+fx#{Q{V$a?Ab zY4;jV)m>ec$z%3gcI#E5?7aW?m#;))+~m#r1cv~==^wDL7@gF>W;$?ojrNZ0)kL&- zK^ORDI>;^2q>PDps4WU9j|-ylrz^X3o3~q_(C1OYx1chQ7no59Ed!bERG(SA&Dozv z;&lwe>Yv=&7~MT=HxHkif3p!zjylDX4j}`p3aZ%IFCTv5?3rDR3G@ZKtYhcNq#ER> z!dywEeBI*wYL_`jcU>f(a4b$ZStrnsEP5CLHcX5#u|vgXsLf z&_8%-oBh8{&YEC~Q(uh4t=&J_aXQgNdPYe&p6; zb77t*Mw9ufO{vuJLd8564X)D=JzUt=D^Vh8=lfj2hp~n+Ci4*%qRx7@-YH-i`?(|P zu`w&_(;E-W@4id1@6PKY`&UQ+M%Z$zW5R`mEHWbtA}E()!COd4iXJ>g5szW`rkZbb zlZ>%kF7q>@LF_>^!Fw0YEF`?0uLa^d9tMBVw6aSUfMRiva@=zbO|HS&Rr?vY1sd!r zK<2gN`MrC!y9vimk>l#)(raW5$HOw(L1&n;8stAo@~cm zr)9(R+oOO|c*J$)xeR8wB+2`N7nMG`4DPa>h+Bkk>bK~H{Jq68Ch6{RlU0cyhaeSh zTu^-O^nzDgK`le3(hn2~QF%)_y=VK9!m2j3^cN=6wGx}qmY>}L<)+WO z1{Hzwws3&*rLeA)5%F_>akHXy)huy`Xd*(miVEt8+;`0tpD+ki65o1HM3jk%SW^43kAn!?kpa&6?RK2UGI>PI}R3plEC2;1kP zcfZ{z?3Cx5d∈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 literal 0 HcmV?d00001 diff --git a/Software/src/lib/ayushsharma82-ElegantOTA/docs/logo.svg b/Software/src/lib/ayushsharma82-ElegantOTA/docs/logo.svg new file mode 100644 index 00000000..ec7b94c0 --- /dev/null +++ b/Software/src/lib/ayushsharma82-ElegantOTA/docs/logo.svg @@ -0,0 +1,31 @@ + + + + + + + + + + + diff --git a/Software/src/lib/ayushsharma82-ElegantOTA/docs/pro-preview.jpg b/Software/src/lib/ayushsharma82-ElegantOTA/docs/pro-preview.jpg new file mode 100644 index 0000000000000000000000000000000000000000..42a233bdca750e29587a415f01ff13ad50b65245 GIT binary patch literal 81326 zcmeFZ2|QG9+c&J62pu%hS`2c-)H;%KJV}Uf8O`=eV_mH`G4NSnR7YrbMEW9?(4qR`ySR9Ynn~o z80B>h04ywk{Qv;)0z7Ox0S*XagMI)uDS+!Y3;04Lj6E6M#N}?a+CH zUF7f2#(M#re|a_>x^5k&&RyLNW&CVJF zY!C(P{#X3{ue0v}0Hklw4I7h_yY1{9cJs^w+kW>C^>W2E(Eo&$)!E-Y|K+*`|NWqh z{N@EPsJ8X4zu*6-AU-$uKv#&Fyin^PSN|J95WK}@h0q}XEw})JMQ=bzL2%_3?C}TO zwFO`O1OEEE%>^4Hs0|5%1w&jtpl7!R6FBJW=H&~)2O-$->OZvc_y_n89JZPRQbt#< zdtJTpo3UH$F!HwC z4;?&o7y!1$;*TDGTL0!T+pdp)zvov706M<_faCt(?_GTa05x|2Kw|vw_Y?~NKimiz^R*!b60(DfhSKY023e~=^>jRL@hFaS9F2>>4D z0DuxS`-GeTz)AqRuM4nIxc+wj<#ntH;5O9r*1-<_a{q11edWwUC3;N~b<>vj{{eK!@O+vDLmh~PG=H(=C)^f1P1MI?V9Kvj@ zHa3W*Y+Qd}_!pc32v1HfZXVuk+xd0?>}(ty?3^52T%3?fV2jwA+ML2%JNIaw;1;pI z!XqCbdMG;W39rJ*H_c);{UpW1S8v2@+rCR&LQ-n4lCsLa{aQz~kLu{^8J#jdZDMM6 z=KO_=mu#V-a&>dR=Hcn(9T*fG5{kNcEB5xCxcIyG64EmsWM*YQe3VmI^tAX{$@3R4 z-&RysRoB$k)wi^^wRd!Ob$=Kb92y=O9s4pqO_-VeHaGu$;Rkv3=h`pII(1_c(l39I z1AYEM(Lc~54AH~R$;rXVvqcXZd*~Li!kk=tG`V-4u;#fEAR>P#npgB>+LJfU+Y}Dl zki@Ru=-<9eQEPfHd5fgq6#a7q#r&5j`Wr!iqlYyP@N=+11I8f?zyYS(_re4~<$un9 zng^`D|KZtxR$f^B|HHHYG|vY9hiCt3o(=vF&;HXq8~WGqY~LXs(JBT93ux8?@sqHL z^AwsC*p@2Y%mTKzPFH={xL5Y0Z>6E}xC#B1ov#@}Ax$y=!YL1*H`1OQB+J%FNwRWM z)uJUI%E+>AI9PvP*wMkhZLn7>zVN9hpQd5dwWeN12^{|jQPa7EoEFe02od*^Y8*%% zu`hRf9+7l4E3X*!?Iou>Bfs-fMpeS2i?w1Xw^r4kmv$pTnFj6Z~%R1=@&jI7)- zqWh4G^0pt=84T)`-PN;?#VH=Ig7JSZtc-I0CT%1X7TWG77%NS_5B1= zLURe%DhMkAUTEPGxBA59)%44D2^D4{xQV!EUk>D{6rCxYE`ubK`VB`IZ9&V13sN&) z(G{qVe8jS_)3of0rka>JzOI=ZL&;Mky^0#K9j+mWTfonHmBOg)f9ARGkV;npS7Cw* z@Gm+!Si}GQqG`Q=D1^PXrSHU1Iv^QHLM@NB!YWqol<4hyU=l$vpY_xV+hIsf58v^T z$Fxvr&r(kM9=P{K z^HVj!otp)#$_gKJIHMvoAOW3%9=!ox#f@zb1CwB4AHvU(e`0ge~z+JG`tr!L4YO`+@ujo&;H?0e?s zG$m(vvC7cC!(doJY(qJC8bejiSv7Wbh=qqJ%Dz%iMMtLhuOn0#@2^-w!GGrYdhf^BGI=#v4DBkVQcuyf0`? zfp1kkKeovnhC2Xs1rm%djAd@evH-3k@-Uhx3jyZjvX$0ee$$n`aj|N33C!`adExN| ztm381c%efx>q`fnokmwm?inh9%`hxJ3e5w)zAS~f6Kv#_@yx3~*`#f==VZZhhVmz5 z=W^qUY<))52OUfsZu~G)a5tk8jxT@-D={8`_#_q}bc8F{ikp{i94g~_K26f!S?r<1 zLO;KZrPix6_&IK|HN=ty3*c^{8l5Ab!d8NGvBZv@;kM+9xJ~!DEZ=geuHN;en(TBv z%Mg=@7Ddh-%&UDot((1cQDr6{9HNCp&MzW)P^3vqXuc*P=Pu+gfvd{eU0Ig5{i?lh zbKm6E)gDo}c|ImxzQXp$(WMorvk9SqBS3!5&t3x$Lh z(y!bOE4dS1mkHzPs-n%P&YixA`GAN6N#-nodH_Zjx9reEbl|A_<`Y&7W$3zZANQ7g ze>-3%ZKilEEw46`O z?z&(7umjZpcy&+J_V5KlifrP%ndqrZWr=1??>i6UVY>dyubvLSURB#x-;gMY3DWEq z!Eo81+n)B_7{q8S%|n);Ss%nFW7&Seg;9Eg=A_ffNTEk%)KZ5>(pC)}2bJsnCF6S@ z)Z9IArQ%zgWD1zPLOozh+@Ku1^D&6@YHIdOhnt;2gh28~y^mz0ih#Ir zt^|9vzJNJz$&|f{8`h5x0?adi*vP0uAt`IXWY6hu<)cio(Ns(Lm@SSfq|5?DOz5g; zITp~joyG##W?2BilOwUKxO|W))|(3d&K1D|q6R?nk&g(k`jpHY*Q?BLsy(yXmU2Pm zz1-s+`c_=~Rf(|MSkgJf#NbSCD-D)_6{r|Y9-J>fY~p%W4KYQ%=t?(UE87kRaRiP_cHm_%XF^2d~H7@ z0x}IBun~r=jRDbr_Ou;BZ)X8ldM7MrQZjh%HVM$>$>@a2(y}HCX4(^%DTjksFTnJ4 zk}kWOeqQpA5V#udz_`x>ydh$9Zg}Hl3?--)&D9^DG=2&-ZWzq)az7quV5(Uc!|*?* z!ZGg+*%}e~qy!>-+8MRZjQW3MWs!V?CG`>$8nOat_A}YLSwI^ky4z7qTJd`jr9Ax2f@)0t)$L!TN_o}l~0&3Q1iLj%Fh;ez(b!10CE&q&sl;-n)LBPuz`R})0 z%sCL>!vcPRmDvo4hqP==&x#DB84d

K~fn9y2UpDVsEL@eTD>{q^xC%;kQ&16fyy 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 literal 0 HcmV?d00001 diff --git a/Software/src/lib/ayushsharma82-ElegantOTA/examples/AsyncDemo/.picow_rp2040.test.skip b/Software/src/lib/ayushsharma82-ElegantOTA/examples/AsyncDemo/.picow_rp2040.test.skip new file mode 100644 index 00000000..e69de29b diff --git a/Software/src/lib/ayushsharma82-ElegantOTA/examples/AsyncDemo/AsyncDemo.ino b/Software/src/lib/ayushsharma82-ElegantOTA/examples/AsyncDemo/AsyncDemo.ino new file mode 100644 index 00000000..45d14dc9 --- /dev/null +++ b/Software/src/lib/ayushsharma82-ElegantOTA/examples/AsyncDemo/AsyncDemo.ino @@ -0,0 +1,100 @@ +/* + ----------------------- + ElegantOTA - Async Demo Example + ----------------------- + + NOTE: Make sure you have enabled Async Mode in ElegantOTA before compiling this example! + Guide: https://docs.elegantota.pro/async-mode/ + + Skill Level: Beginner + + This example provides with a bare minimal app with ElegantOTA functionality which works + with AsyncWebServer. + + Github: https://github.com/ayushsharma82/ElegantOTA + WiKi: https://docs.elegantota.pro + + Works with both ESP8266 & ESP32 + + ------------------------------- + + Upgrade to ElegantOTA Pro: https://elegantota.pro + +*/ + +#if defined(ESP8266) + #include + #include +#elif defined(ESP32) + #include + #include +#endif + +#include +#include + +const char* ssid = "........"; +const char* password = "........"; + +AsyncWebServer server(80); + +unsigned long ota_progress_millis = 0; + +void onOTAStart() { + // Log when OTA has started + Serial.println("OTA update started!"); + // +} + +void onOTAProgress(size_t current, size_t final) { + // Log every 1 second + if (millis() - ota_progress_millis > 1000) { + ota_progress_millis = millis(); + Serial.printf("OTA Progress Current: %u bytes, Final: %u bytes\n", current, final); + } +} + +void onOTAEnd(bool success) { + // Log when OTA has finished + if (success) { + Serial.println("OTA update finished successfully!"); + } else { + Serial.println("There was an error during OTA update!"); + } + // +} + +void setup(void) { + Serial.begin(115200); + WiFi.mode(WIFI_STA); + WiFi.begin(ssid, password); + Serial.println(""); + + // Wait for connection + while (WiFi.status() != WL_CONNECTED) { + delay(500); + Serial.print("."); + } + Serial.println(""); + Serial.print("Connected to "); + Serial.println(ssid); + Serial.print("IP address: "); + Serial.println(WiFi.localIP()); + + server.on("/", HTTP_GET, [](AsyncWebServerRequest *request) { + request->send(200, "text/plain", "Hi! This is ElegantOTA AsyncDemo."); + }); + + ElegantOTA.begin(&server); // Start ElegantOTA + // ElegantOTA callbacks + ElegantOTA.onStart(onOTAStart); + ElegantOTA.onProgress(onOTAProgress); + ElegantOTA.onEnd(onOTAEnd); + + server.begin(); + Serial.println("HTTP server started"); +} + +void loop(void) { + ElegantOTA.loop(); +} diff --git a/Software/src/lib/ayushsharma82-ElegantOTA/examples/Demo/Demo.ino b/Software/src/lib/ayushsharma82-ElegantOTA/examples/Demo/Demo.ino new file mode 100644 index 00000000..fcf1d785 --- /dev/null +++ b/Software/src/lib/ayushsharma82-ElegantOTA/examples/Demo/Demo.ino @@ -0,0 +1,117 @@ +/* + ----------------------- + ElegantOTA - Demo Example + ----------------------- + + Skill Level: Beginner + + This example provides with a bare minimal app with ElegantOTA functionality. + + Github: https://github.com/ayushsharma82/ElegantOTA + WiKi: https://docs.elegantota.pro + + Works with following hardware: + - ESP8266 + - ESP32 + - RP2040 (with WiFi) (Example: Raspberry Pi Pico W) + + + Important note for RP2040 users: + - RP2040 requires LittleFS partition for the OTA updates to work. Without LittleFS partition, OTA updates will fail. + Make sure to select Tools > Flash Size > "2MB (Sketch 1MB, FS 1MB)" option. + - If using bare RP2040, it requires WiFi module like Pico W for ElegantOTA to work. + + ------------------------------- + + Upgrade to ElegantOTA Pro: https://elegantota.pro + +*/ + + +#if defined(ESP8266) + #include + #include + #include +#elif defined(ESP32) + #include + #include + #include +#elif defined(TARGET_RP2040) + #include + #include +#endif + +#include + +const char* ssid = ""; +const char* password = ""; + +#if defined(ESP8266) + ESP8266WebServer server(80); +#elif defined(ESP32) + WebServer server(80); +#elif defined(TARGET_RP2040) + WebServer server(80); +#endif + +unsigned long ota_progress_millis = 0; + +void onOTAStart() { + // Log when OTA has started + Serial.println("OTA update started!"); + // +} + +void onOTAProgress(size_t current, size_t final) { + // Log every 1 second + if (millis() - ota_progress_millis > 1000) { + ota_progress_millis = millis(); + Serial.printf("OTA Progress Current: %u bytes, Final: %u bytes\n", current, final); + } +} + +void onOTAEnd(bool success) { + // Log when OTA has finished + if (success) { + Serial.println("OTA update finished successfully!"); + } else { + Serial.println("There was an error during OTA update!"); + } + // +} + +void setup(void) { + Serial.begin(115200); + WiFi.mode(WIFI_STA); + WiFi.begin(ssid, password); + Serial.println(""); + + // Wait for connection + while (WiFi.status() != WL_CONNECTED) { + delay(500); + Serial.print("."); + } + Serial.println(""); + Serial.print("Connected to "); + Serial.println(ssid); + Serial.print("IP address: "); + Serial.println(WiFi.localIP()); + + server.on("/", []() { + server.send(200, "text/plain", "Hi! This is ElegantOTA Demo."); + }); + + ElegantOTA.begin(&server); // Start ElegantOTA + // ElegantOTA callbacks + ElegantOTA.onStart(onOTAStart); + ElegantOTA.onProgress(onOTAProgress); + ElegantOTA.onEnd(onOTAEnd); + + server.begin(); + Serial.println("HTTP server started"); +} + +void loop(void) { + server.handleClient(); + ElegantOTA.loop(); +} diff --git a/Software/src/lib/ayushsharma82-ElegantOTA/keywords.txt b/Software/src/lib/ayushsharma82-ElegantOTA/keywords.txt new file mode 100644 index 00000000..d9eeee7e --- /dev/null +++ b/Software/src/lib/ayushsharma82-ElegantOTA/keywords.txt @@ -0,0 +1,9 @@ +ElegantOTA KEYWORD1 +begin KEYWORD2 +loop KEYWORD2 +setAuth KEYWORD2 +clearAuth KEYWORD2 +setAutoReboot KEYWORD2 +onStart KEYWORD2 +onEnd KEYWORD2 +onProgress KEYWORD2 diff --git a/Software/src/lib/ayushsharma82-ElegantOTA/library.json b/Software/src/lib/ayushsharma82-ElegantOTA/library.json new file mode 100644 index 00000000..de4e8c14 --- /dev/null +++ b/Software/src/lib/ayushsharma82-ElegantOTA/library.json @@ -0,0 +1,21 @@ +{ + "name": "ElegantOTA", + "keywords": "ElegantOTA, OTA, Update, ESP8266, ESP32, over, the, air, firmware, filesystem, littlefs, spiffs", + "description": "OTA updates made slick and simple for everyone!", + "repository": + { + "type": "git", + "url": "https://github.com/ayushsharma82/ElegantOTA.git" + }, + "authors": + [ + { + "name": "Ayush Sharma", + "email": "asrocks5@gmail.com", + "maintainer": true + } + ], + "version": "3.1.0", + "frameworks": "arduino", + "platforms": ["espressif8266", "espressif32", "raspberrypi"] +} diff --git a/Software/src/lib/ayushsharma82-ElegantOTA/library.properties b/Software/src/lib/ayushsharma82-ElegantOTA/library.properties new file mode 100644 index 00000000..61160ce3 --- /dev/null +++ b/Software/src/lib/ayushsharma82-ElegantOTA/library.properties @@ -0,0 +1,9 @@ +name=ElegantOTA +version=3.1.0 +author=Ayush Sharma +category=Communication +maintainer=Ayush Sharma +sentence=OTA updates made slick and simple for everyone! +paragraph=A OTA library which provides an interactive portal for your over-the-air updates for wireless microcontrollers. +url=https://github.com/ayushsharma82/ElegantOTA +architectures=esp8266,esp32,rp2040 diff --git a/Software/src/lib/ayushsharma82-ElegantOTA/platformio_upload.py b/Software/src/lib/ayushsharma82-ElegantOTA/platformio_upload.py new file mode 100644 index 00000000..b22e8d5d --- /dev/null +++ b/Software/src/lib/ayushsharma82-ElegantOTA/platformio_upload.py @@ -0,0 +1,103 @@ +# Allows PlatformIO to upload directly to ElegantOTA +# +# To use: +# - copy this script into the same folder as your platformio.ini +# - set the following for your project in platformio.ini: +# +# extra_scripts = platformio_upload.py +# upload_protocol = custom +# upload_url = +# +# An example of an upload URL: +# upload_url = http://192.168.1.123/update +# also possible: upload_url = http://domainname/update + +import requests +import hashlib +from urllib.parse import urlparse +import time +Import("env") + +try: + from requests_toolbelt import MultipartEncoder, MultipartEncoderMonitor + from tqdm import tqdm +except ImportError: + env.Execute("$PYTHONEXE -m pip install requests_toolbelt") + env.Execute("$PYTHONEXE -m pip install tqdm") + from requests_toolbelt import MultipartEncoder, MultipartEncoderMonitor + from tqdm import tqdm + +def on_upload(source, target, env): + firmware_path = str(source[0]) + upload_url_compatibility = env.GetProjectOption('upload_url') + upload_url = upload_url_compatibility.replace("/update", "") + + with open(firmware_path, 'rb') as firmware: + md5 = hashlib.md5(firmware.read()).hexdigest() + + parsed_url = urlparse(upload_url) + host_ip = parsed_url.netloc + + # Führe die GET-Anfrage aus + start_url = f"{upload_url}/ota/start?mode=fr&hash={md5}" + + start_headers = { + 'Host': host_ip, + 'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/118.0', + 'Accept': '*/*', + 'Accept-Language': 'de,en-US;q=0.7,en;q=0.3', + 'Accept-Encoding': 'gzip, deflate', + 'Referer': f'{upload_url}/update', + 'Connection': 'keep-alive' + } + + start_response = requests.get(start_url, headers=start_headers) + + if start_response.status_code != 200: + print("start-request faild " + str(start_response.status_code)) + return + + firmware.seek(0) + encoder = MultipartEncoder(fields={ + 'MD5': md5, + 'firmware': ('firmware', firmware, 'application/octet-stream')} + ) + + bar = tqdm(desc='Upload Progress', + total=encoder.len, + dynamic_ncols=True, + unit='B', + unit_scale=True, + unit_divisor=1024 + ) + + monitor = MultipartEncoderMonitor(encoder, lambda monitor: bar.update(monitor.bytes_read - bar.n)) + + post_headers = { + 'Host': host_ip, + 'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/118.0', + 'Accept': '*/*', + 'Accept-Language': 'de,en-US;q=0.7,en;q=0.3', + 'Accept-Encoding': 'gzip, deflate', + 'Referer': f'{upload_url}/update', + 'Connection': 'keep-alive', + 'Content-Type': monitor.content_type, + 'Content-Length': str(monitor.len), + 'Origin': f'{upload_url}' + } + + + response = requests.post(f"{upload_url}/ota/upload", data=monitor, headers=post_headers) + + bar.close() + time.sleep(0.1) + + if response.status_code != 200: + message = "\nUpload faild.\nServer response: " + response.text + tqdm.write(message) + else: + message = "\nUpload successful.\nServer response: " + response.text + tqdm.write(message) + + +env.Replace(UPLOADCMD=on_upload) diff --git a/Software/src/lib/ayushsharma82-ElegantOTA/src/ElegantOTA.cpp b/Software/src/lib/ayushsharma82-ElegantOTA/src/ElegantOTA.cpp new file mode 100644 index 00000000..4bf7bfad --- /dev/null +++ b/Software/src/lib/ayushsharma82-ElegantOTA/src/ElegantOTA.cpp @@ -0,0 +1,348 @@ +#include "ElegantOTA.h" + +ElegantOTAClass::ElegantOTAClass(){} + +void ElegantOTAClass::begin(ELEGANTOTA_WEBSERVER *server, const char * username, const char * password){ + _server = server; + + setAuth(username, password); + + #if defined(TARGET_RP2040) + if (!__isPicoW) { + ELEGANTOTA_DEBUG_MSG("RP2040: Not a Pico W, skipping OTA setup\n"); + return; + } + #endif + + #if ELEGANTOTA_USE_ASYNC_WEBSERVER == 1 + _server->on("/update", HTTP_GET, [&](AsyncWebServerRequest *request){ + if(_authenticate && !request->authenticate(_username, _password)){ + return request->requestAuthentication(); + } + AsyncWebServerResponse *response = request->beginResponse_P(200, "text/html", ELEGANT_HTML, sizeof(ELEGANT_HTML)); + response->addHeader("Content-Encoding", "gzip"); + request->send(response); + }); + #else + _server->on("/update", HTTP_GET, [&](){ + if (_authenticate && !_server->authenticate(_username, _password)) { + return _server->requestAuthentication(); + } + _server->sendHeader("Content-Encoding", "gzip"); + _server->send_P(200, "text/html", (const char*)ELEGANT_HTML, sizeof(ELEGANT_HTML)); + }); + #endif + + #if ELEGANTOTA_USE_ASYNC_WEBSERVER == 1 + _server->on("/ota/start", HTTP_GET, [&](AsyncWebServerRequest *request) { + if (_authenticate && !request->authenticate(_username, _password)) { + return request->requestAuthentication(); + } + + // Get header x-ota-mode value, if present + OTA_Mode mode = OTA_MODE_FIRMWARE; + // Get mode from arg + if (request->hasParam("mode")) { + String argValue = request->getParam("mode")->value(); + if (argValue == "fs") { + ELEGANTOTA_DEBUG_MSG("OTA Mode: Filesystem\n"); + mode = OTA_MODE_FILESYSTEM; + } else { + ELEGANTOTA_DEBUG_MSG("OTA Mode: Firmware\n"); + mode = OTA_MODE_FIRMWARE; + } + } + + // Get file MD5 hash from arg + if (request->hasParam("hash")) { + String hash = request->getParam("hash")->value(); + ELEGANTOTA_DEBUG_MSG(String("MD5: "+hash+"\n").c_str()); + if (!Update.setMD5(hash.c_str())) { + ELEGANTOTA_DEBUG_MSG("ERROR: MD5 hash not valid\n"); + return request->send(400, "text/plain", "MD5 parameter invalid"); + } + } + + #if UPDATE_DEBUG == 1 + // Serial output must be active to see the callback serial prints + Serial.setDebugOutput(true); + #endif + + // Pre-OTA update callback + if (preUpdateCallback != NULL) preUpdateCallback(); + + // Start update process + #if defined(ESP8266) + uint32_t update_size = mode == OTA_MODE_FILESYSTEM ? ((size_t)FS_end - (size_t)FS_start) : ((ESP.getFreeSketchSpace() - 0x1000) & 0xFFFFF000); + if (mode == OTA_MODE_FILESYSTEM) { + close_all_fs(); + } + Update.runAsync(true); + if (!Update.begin(update_size, mode == OTA_MODE_FILESYSTEM ? U_FS : U_FLASH)) { + ELEGANTOTA_DEBUG_MSG("Failed to start update process\n"); + // Save error to string + StreamString str; + Update.printError(str); + _update_error_str = str.c_str(); + _update_error_str += "\n"; + ELEGANTOTA_DEBUG_MSG(_update_error_str.c_str()); + } + #elif defined(ESP32) + if (!Update.begin(UPDATE_SIZE_UNKNOWN, mode == OTA_MODE_FILESYSTEM ? U_SPIFFS : U_FLASH)) { + ELEGANTOTA_DEBUG_MSG("Failed to start update process\n"); + // Save error to string + StreamString str; + Update.printError(str); + _update_error_str = str.c_str(); + _update_error_str += "\n"; + ELEGANTOTA_DEBUG_MSG(_update_error_str.c_str()); + } + #endif + + return request->send((Update.hasError()) ? 400 : 200, "text/plain", (Update.hasError()) ? _update_error_str.c_str() : "OK"); + }); + #else + _server->on("/ota/start", HTTP_GET, [&]() { + if (_authenticate && !_server->authenticate(_username, _password)) { + return _server->requestAuthentication(); + } + + // Get header x-ota-mode value, if present + OTA_Mode mode = OTA_MODE_FIRMWARE; + // Get mode from arg + if (_server->hasArg("mode")) { + String argValue = _server->arg("mode"); + if (argValue == "fs") { + ELEGANTOTA_DEBUG_MSG("OTA Mode: Filesystem\n"); + mode = OTA_MODE_FILESYSTEM; + } else { + ELEGANTOTA_DEBUG_MSG("OTA Mode: Firmware\n"); + mode = OTA_MODE_FIRMWARE; + } + } + + // Get file MD5 hash from arg + if (_server->hasArg("hash")) { + String hash = _server->arg("hash"); + ELEGANTOTA_DEBUG_MSG(String("MD5: "+hash+"\n").c_str()); + if (!Update.setMD5(hash.c_str())) { + ELEGANTOTA_DEBUG_MSG("ERROR: MD5 hash not valid\n"); + return _server->send(400, "text/plain", "MD5 parameter invalid"); + } + } + + #if UPDATE_DEBUG == 1 + // Serial output must be active to see the callback serial prints + Serial.setDebugOutput(true); + #endif + + // Pre-OTA update callback + if (preUpdateCallback != NULL) preUpdateCallback(); + + // Start update process + #if defined(ESP8266) + uint32_t update_size = mode == OTA_MODE_FILESYSTEM ? ((size_t)FS_end - (size_t)FS_start) : ((ESP.getFreeSketchSpace() - 0x1000) & 0xFFFFF000); + if (mode == OTA_MODE_FILESYSTEM) { + close_all_fs(); + } + Update.runAsync(true); + if (!Update.begin(update_size, mode == OTA_MODE_FILESYSTEM ? U_FS : U_FLASH)) { + ELEGANTOTA_DEBUG_MSG("Failed to start update process\n"); + // Save error to string + StreamString str; + Update.printError(str); + _update_error_str = str.c_str(); + _update_error_str += "\n"; + ELEGANTOTA_DEBUG_MSG(_update_error_str.c_str()); + } + #elif defined(ESP32) + if (!Update.begin(UPDATE_SIZE_UNKNOWN, mode == OTA_MODE_FILESYSTEM ? U_SPIFFS : U_FLASH)) { + ELEGANTOTA_DEBUG_MSG("Failed to start update process\n"); + // Save error to string + StreamString str; + Update.printError(str); + _update_error_str = str.c_str(); + _update_error_str += "\n"; + ELEGANTOTA_DEBUG_MSG(_update_error_str.c_str()); + } + #elif defined(TARGET_RP2040) + uint32_t update_size = 0; + // Gather FS Size + if (mode == OTA_MODE_FILESYSTEM) { + update_size = ((size_t)&_FS_end - (size_t)&_FS_start); + LittleFS.end(); + } else { + FSInfo64 i; + LittleFS.begin(); + LittleFS.info64(i); + update_size = i.totalBytes - i.usedBytes; + } + // Start update process + if (!Update.begin(update_size, mode == OTA_MODE_FILESYSTEM ? U_FS : U_FLASH)) { + ELEGANTOTA_DEBUG_MSG("Failed to start update process because there is not enough space\n"); + _update_error_str = "Not enough space"; + return _server->send(400, "text/plain", _update_error_str.c_str()); + } + #endif + + return _server->send((Update.hasError()) ? 400 : 200, "text/plain", (Update.hasError()) ? _update_error_str.c_str() : "OK"); + }); + #endif + + #if ELEGANTOTA_USE_ASYNC_WEBSERVER == 1 + _server->on("/ota/upload", HTTP_POST, [&](AsyncWebServerRequest *request) { + if(_authenticate && !request->authenticate(_username, _password)){ + return request->requestAuthentication(); + } + // Post-OTA update callback + if (postUpdateCallback != NULL) postUpdateCallback(!Update.hasError()); + AsyncWebServerResponse *response = request->beginResponse((Update.hasError()) ? 400 : 200, "text/plain", (Update.hasError()) ? _update_error_str.c_str() : "OK"); + response->addHeader("Connection", "close"); + response->addHeader("Access-Control-Allow-Origin", "*"); + request->send(response); + // Set reboot flag + if (!Update.hasError()) { + if (_auto_reboot) { + _reboot_request_millis = millis(); + _reboot = true; + } + } + }, [&](AsyncWebServerRequest *request, String filename, size_t index, uint8_t *data, size_t len, bool final) { + //Upload handler chunks in data + if(_authenticate){ + if(!request->authenticate(_username, _password)){ + return request->requestAuthentication(); + } + } + + if (!index) { + // Reset progress size on first frame + _current_progress_size = 0; + } + + // Write chunked data to the free sketch space + if(len){ + if (Update.write(data, len) != len) { + return request->send(400, "text/plain", "Failed to write chunked data to free space"); + } + _current_progress_size += len; + // Progress update callback + if (progressUpdateCallback != NULL) progressUpdateCallback(_current_progress_size, request->contentLength()); + } + + if (final) { // if the final flag is set then this is the last frame of data + if (!Update.end(true)) { //true to set the size to the current progress + // Save error to string + StreamString str; + Update.printError(str); + _update_error_str = str.c_str(); + _update_error_str += "\n"; + ELEGANTOTA_DEBUG_MSG(_update_error_str.c_str()); + } + }else{ + return; + } + }); + #else + _server->on("/ota/upload", HTTP_POST, [&](){ + if (_authenticate && !_server->authenticate(_username, _password)) { + return _server->requestAuthentication(); + } + // Post-OTA update callback + if (postUpdateCallback != NULL) postUpdateCallback(!Update.hasError()); + _server->sendHeader("Connection", "close"); + _server->send((Update.hasError()) ? 400 : 200, "text/plain", (Update.hasError()) ? _update_error_str.c_str() : "OK"); + // Set reboot flag + if (!Update.hasError()) { + if (_auto_reboot) { + _reboot_request_millis = millis(); + _reboot = true; + } + } + }, [&](){ + // Actual OTA Download + HTTPUpload& upload = _server->upload(); + if (upload.status == UPLOAD_FILE_START) { + // Check authentication + if (_authenticate && !_server->authenticate(_username, _password)) { + ELEGANTOTA_DEBUG_MSG("Authentication Failed on UPLOAD_FILE_START\n"); + return; + } + Serial.printf("Update Received: %s\n", upload.filename.c_str()); + _current_progress_size = 0; + } else if (upload.status == UPLOAD_FILE_WRITE) { + if (Update.write(upload.buf, upload.currentSize) != upload.currentSize) { + #if UPDATE_DEBUG == 1 + Update.printError(Serial); + #endif + } + + _current_progress_size += upload.currentSize; + // Progress update callback + if (progressUpdateCallback != NULL) progressUpdateCallback(_current_progress_size, upload.totalSize); + } else if (upload.status == UPLOAD_FILE_END) { + if (Update.end(true)) { + ELEGANTOTA_DEBUG_MSG(String("Update Success: "+String(upload.totalSize)+"\n").c_str()); + } else { + ELEGANTOTA_DEBUG_MSG("[!] Update Failed\n"); + // Store error to string + StreamString str; + Update.printError(str); + _update_error_str = str.c_str(); + _update_error_str += "\n"; + ELEGANTOTA_DEBUG_MSG(_update_error_str.c_str()); + } + + #if UPDATE_DEBUG == 1 + Serial.setDebugOutput(false); + #endif + } else { + ELEGANTOTA_DEBUG_MSG(String("Update Failed Unexpectedly (likely broken connection): status="+String(upload.status)+"\n").c_str()); + } + }); + #endif +} + +void ElegantOTAClass::setAuth(const char * username, const char * password){ + if (strlen(username) > 0 && strlen(password) > 0) { + strlcpy(_username, username, sizeof(_username)); + strlcpy(_password, password, sizeof(_password)); + _authenticate = true; + } +} + +void ElegantOTAClass::clearAuth(){ + _authenticate = false; +} + +void ElegantOTAClass::setAutoReboot(bool enable){ + _auto_reboot = enable; +} + +void ElegantOTAClass::loop() { + // Check if 2 seconds have passed since _reboot_request_millis was set + if (_reboot && millis() - _reboot_request_millis > 2000) { + ELEGANTOTA_DEBUG_MSG("Rebooting...\n"); + #if defined(ESP8266) || defined(ESP32) + ESP.restart(); + #elif defined(TARGET_RP2040) + rp2040.reboot(); + #endif + _reboot = false; + } +} + +void ElegantOTAClass::onStart(std::function callable){ + preUpdateCallback = callable; +} + +void ElegantOTAClass::onProgress(std::function callable){ + progressUpdateCallback= callable; +} + +void ElegantOTAClass::onEnd(std::function callable){ + postUpdateCallback = callable; +} + + +ElegantOTAClass ElegantOTA; diff --git a/Software/src/lib/ayushsharma82-ElegantOTA/src/ElegantOTA.h b/Software/src/lib/ayushsharma82-ElegantOTA/src/ElegantOTA.h new file mode 100644 index 00000000..eb961cbf --- /dev/null +++ b/Software/src/lib/ayushsharma82-ElegantOTA/src/ElegantOTA.h @@ -0,0 +1,138 @@ +/** +_____ _ _ ___ _____ _ +| ____| | ___ __ _ __ _ _ __ | |_ / _ \_ _|/ \ +| _| | |/ _ \/ _` |/ _` | '_ \| __| | | || | / _ \ +| |___| | __/ (_| | (_| | | | | |_| |_| || |/ ___ \ +|_____|_|\___|\__, |\__,_|_| |_|\__|\___/ |_/_/ \_\ + |___/ +*/ + +/** + * + * @name ElegantOTA + * @author Ayush Sharma (ayush@softt.io) + * @brief + * @version 3.0.0 + * @date 2023-08-30 + */ + +#ifndef ElegantOTA_h +#define ElegantOTA_h + +#include "Arduino.h" +#include "stdlib_noniso.h" +#include "elop.h" + +#ifndef ELEGANTOTA_USE_ASYNC_WEBSERVER + #define ELEGANTOTA_USE_ASYNC_WEBSERVER 0 +#endif + +#ifndef ELEGANTOTA_DEBUG + #define ELEGANTOTA_DEBUG 0 +#endif + +#ifndef UPDATE_DEBUG + #define UPDATE_DEBUG 0 +#endif + +#if ELEGANTOTA_DEBUG + #define ELEGANTOTA_DEBUG_MSG(x) Serial.printf("%s %s", "[ElegantOTA] ", x) +#else + #define ELEGANTOTA_DEBUG_MSG(x) +#endif + +#if defined(ESP8266) + #include + #include "FS.h" + #include "LittleFS.h" + #include "Updater.h" + #include "StreamString.h" + #if ELEGANTOTA_USE_ASYNC_WEBSERVER == 1 + #include "ESPAsyncTCP.h" + #include "ESPAsyncWebServer.h" + #define ELEGANTOTA_WEBSERVER AsyncWebServer + #else + #include "ESP8266WiFi.h" + #include "WiFiClient.h" + #include "ESP8266WebServer.h" + #define ELEGANTOTA_WEBSERVER ESP8266WebServer + #endif + #define HARDWARE "ESP8266" +#elif defined(ESP32) + #include + #include "FS.h" + #include "Update.h" + #include "StreamString.h" + #if ELEGANTOTA_USE_ASYNC_WEBSERVER == 1 + #include "AsyncTCP.h" + #include "ESPAsyncWebServer.h" + #define ELEGANTOTA_WEBSERVER AsyncWebServer + #else + #include "WiFi.h" + #include "WiFiClient.h" + #include "WebServer.h" + #define ELEGANTOTA_WEBSERVER WebServer + #endif + #define HARDWARE "ESP32" +#elif defined(TARGET_RP2040) + #include + #include "Arduino.h" + #include "FS.h" + #include "LittleFS.h" + #include "WiFiClient.h" + #include "WiFiServer.h" + #include "WebServer.h" + #include "WiFiUdp.h" + #include "StreamString.h" + #include "Updater.h" + #define HARDWARE "RP2040" + #define ELEGANTOTA_WEBSERVER WebServer + // Throw an error if async mode is enabled + #if ELEGANTOTA_USE_ASYNC_WEBSERVER == 1 + #error "Async mode is not supported on RP2040. Please set ELEGANTOTA_USE_ASYNC_WEBSERVER to 0." + #endif + extern uint8_t _FS_start; + extern uint8_t _FS_end; +#endif + +enum OTA_Mode { + OTA_MODE_FIRMWARE = 0, + OTA_MODE_FILESYSTEM = 1 +}; + +class ElegantOTAClass{ + public: + ElegantOTAClass(); + + void begin(ELEGANTOTA_WEBSERVER *server, const char * username = "", const char * password = ""); + + void setAuth(const char * username, const char * password); + void clearAuth(); + void setAutoReboot(bool enable); + void loop(); + + void onStart(std::function callable); + void onProgress(std::function callable); + void onEnd(std::function callable); + + private: + ELEGANTOTA_WEBSERVER *_server; + + bool _authenticate; + char _username[64]; + char _password[64]; + + bool _auto_reboot = true; + bool _reboot = false; + unsigned long _reboot_request_millis = 0; + + String _update_error_str = ""; + unsigned long _current_progress_size; + + std::function preUpdateCallback = NULL; + std::function progressUpdateCallback = NULL; + std::function postUpdateCallback = NULL; +}; + +extern ElegantOTAClass ElegantOTA; +#endif diff --git a/Software/src/lib/ayushsharma82-ElegantOTA/src/elop.cpp b/Software/src/lib/ayushsharma82-ElegantOTA/src/elop.cpp new file mode 100644 index 00000000..687fca73 --- /dev/null +++ b/Software/src/lib/ayushsharma82-ElegantOTA/src/elop.cpp @@ -0,0 +1,324 @@ +#include "elop.h" + +const uint8_t ELEGANT_HTML[9590] PROGMEM = { +31,139,8,0,0,0,0,0,2,3,164,87,215,118,227,56,18,125,159,175,160,120,206,112,8,11,162,37,89,150, +213,146,224,206,189,157,28,38,7,175,183,15,12,130,34,218,16,192,1,64,135,149,245,239,91,32,21,219,158,224, +157,23,34,85,221,91,9,129,227,70,170,153,187,45,120,144,187,169,60,28,251,111,32,169,154,144,144,171,16,198, +156,166,135,227,41,119,52,96,57,53,150,59,18,254,248,195,155,214,32,92,204,42,58,229,36,188,18,252,186,208, +198,133,1,211,202,113,5,82,215,34,117,57,73,249,149,96,188,85,13,176,80,194,9,42,91,150,81,201,73,7, +32,156,112,146,31,190,150,124,66,149,59,249,225,121,240,81,56,62,222,173,167,199,150,25,81,184,0,204,3,138, +169,78,75,201,129,192,104,107,181,17,19,161,14,191,138,179,82,49,39,180,138,209,12,152,173,11,50,2,14,149, +83,48,33,97,134,83,199,1,220,143,226,80,10,117,25,162,196,112,249,81,88,55,18,89,156,69,81,150,216,178, +240,150,219,205,126,188,96,43,64,88,211,52,68,200,112,87,26,53,202,180,137,107,30,26,232,44,88,81,253,94, +114,115,251,61,151,156,57,109,158,75,25,127,227,217,206,64,157,124,1,117,254,13,66,105,76,209,72,241,235,224, +168,116,212,91,127,114,97,185,185,226,38,166,228,112,182,230,96,158,131,34,176,148,37,85,16,8,9,89,46,100, +234,29,8,209,90,80,120,65,150,208,52,229,233,177,78,185,69,34,113,116,114,76,167,149,206,199,119,199,31,194, +40,18,222,119,24,111,91,4,11,105,44,208,28,37,186,182,34,94,122,133,103,43,178,97,163,141,109,121,225,12, +231,208,157,163,209,50,238,129,141,233,50,244,140,204,230,163,58,80,1,77,132,114,124,98,132,187,141,162,152,173, +71,100,99,5,97,10,38,101,220,24,110,78,181,20,172,150,221,158,34,95,202,120,173,170,8,78,170,34,240,14, +149,150,183,152,225,41,87,190,190,108,248,148,37,27,67,18,10,197,100,153,242,112,120,79,147,42,173,110,167,186, +188,175,163,167,194,133,195,47,38,45,68,180,85,23,95,136,217,124,21,133,212,71,1,242,68,19,94,44,107,197, +247,73,163,61,90,6,199,71,106,148,113,199,114,16,203,193,39,204,208,124,142,98,52,146,154,81,249,189,211,134, +78,120,226,114,94,103,45,165,230,50,188,187,107,196,97,53,5,78,4,155,130,40,138,174,133,74,245,117,50,165, +128,121,196,83,65,227,48,46,170,96,217,22,211,82,27,216,105,94,117,24,120,44,20,162,90,148,219,167,241,170, +114,151,157,197,54,73,152,164,214,250,148,251,106,138,107,35,16,94,137,79,248,82,242,197,237,187,197,250,145,78, +249,203,156,179,203,11,125,3,28,204,119,121,10,174,163,225,223,225,49,124,170,175,248,63,163,234,160,209,99,244, +192,181,215,87,32,224,249,185,226,38,14,25,84,214,101,136,55,142,147,255,195,142,71,135,245,129,196,215,75,143, +139,220,159,160,73,49,201,93,136,54,119,236,243,88,162,217,98,155,202,40,146,201,167,79,220,30,85,71,66,20, +157,92,124,230,204,37,133,209,78,251,35,39,201,169,61,185,86,167,70,23,220,184,219,4,24,100,44,113,152,242, +140,150,18,144,159,202,100,209,31,202,249,21,53,193,71,50,227,55,213,41,58,156,205,231,248,102,107,56,218,60, +176,189,180,36,225,243,23,47,95,189,126,243,175,183,239,222,127,248,120,116,124,114,250,237,119,223,255,240,227,79, +63,255,242,235,111,244,130,1,246,36,23,159,47,229,84,233,226,119,99,93,121,117,125,115,251,223,118,167,187,215, +219,239,31,12,158,52,119,33,107,100,6,246,202,225,10,219,226,116,229,162,29,143,211,59,123,120,120,184,215,109, +165,115,12,130,230,15,5,65,164,150,5,65,174,82,65,213,134,104,181,193,109,82,109,103,83,250,131,158,144,227, +114,122,193,13,90,32,100,137,55,3,64,7,40,234,244,15,58,157,39,123,251,119,171,201,110,15,69,189,238,193, +160,187,191,191,215,111,87,87,137,143,64,74,218,163,116,108,19,201,213,196,229,163,180,217,68,246,44,61,39,89, +82,91,16,251,17,26,45,141,4,15,168,74,245,244,197,173,227,118,203,186,53,224,217,249,200,30,182,71,182,213, +66,105,82,148,54,143,143,168,203,147,76,106,109,234,110,141,17,163,157,238,126,31,173,192,193,235,11,15,251,131, +254,89,155,244,143,209,49,37,109,204,192,110,186,182,155,54,155,152,53,201,0,165,103,12,2,184,127,126,71,236, +25,61,31,143,187,189,22,251,122,175,187,193,113,13,224,192,241,231,30,96,186,133,191,3,8,20,224,151,14,1, +118,197,2,31,32,160,64,16,65,92,31,240,228,45,191,249,115,142,109,31,150,248,158,192,131,247,80,226,244,247, +206,8,53,137,59,16,42,188,185,30,117,246,183,151,215,252,201,103,45,84,28,194,206,195,57,191,121,164,179,222, +211,238,210,146,194,191,186,222,41,7,165,7,55,48,148,94,76,113,23,225,206,131,121,123,65,45,239,247,30,195, +179,135,150,2,108,145,176,78,255,14,58,205,14,116,7,85,175,123,142,5,232,137,113,111,36,32,66,116,103,208, +20,59,253,49,89,229,102,240,116,97,171,76,252,35,241,185,139,125,9,244,119,226,189,150,64,81,127,15,161,225, +66,32,36,225,131,49,186,168,236,126,40,76,22,104,12,47,36,101,60,222,61,251,207,243,214,111,237,214,147,230, +191,119,207,119,197,4,131,238,232,175,10,147,145,102,147,126,221,67,172,65,218,81,180,76,159,76,132,74,249,205, +9,236,232,165,205,180,213,65,40,170,182,71,161,175,227,46,110,117,119,88,115,128,96,122,60,102,59,221,187,135, +116,16,242,158,182,96,121,35,27,243,209,77,178,56,244,72,86,221,240,222,192,183,100,53,139,223,144,89,233,178, +193,112,102,171,218,185,231,248,250,132,126,147,92,8,149,108,137,197,165,226,150,209,130,199,92,49,157,242,31,191, +123,247,82,79,11,173,184,114,160,137,208,170,28,234,202,124,8,54,229,247,52,23,152,53,225,22,64,13,58,199, +176,240,103,22,47,51,145,249,76,88,200,130,29,203,101,22,44,20,78,182,89,36,47,129,30,2,104,209,214,190, +205,238,153,254,120,252,90,51,201,140,158,190,92,16,197,242,204,158,163,53,203,186,242,192,171,119,228,205,104,119, +167,241,85,176,19,188,226,142,155,169,80,60,16,89,64,85,160,171,219,48,16,54,160,193,139,50,203,184,1,41, +47,248,140,150,46,215,38,8,130,55,220,63,40,131,231,23,186,188,204,105,42,62,243,60,24,231,206,21,118,184, +187,155,85,139,137,54,147,195,74,75,10,198,149,229,65,112,244,238,7,152,216,245,222,156,144,7,210,35,27,68, +149,18,110,231,248,8,102,239,238,78,171,111,163,1,151,181,176,181,37,104,190,190,210,143,214,170,32,179,121,69, +69,145,191,197,117,22,108,205,38,75,16,66,194,37,72,24,69,15,203,0,246,250,161,123,186,97,228,10,217,112, +154,190,145,154,186,143,175,183,1,87,18,214,123,190,189,118,20,47,166,227,54,110,67,121,221,127,25,188,197,25, +121,151,248,125,2,217,62,193,41,12,160,2,49,93,7,140,97,129,102,108,251,74,174,211,255,84,248,255,157,106, +127,192,136,0,53,168,82,115,11,207,124,146,126,177,157,24,26,50,146,221,159,244,31,16,127,110,12,189,93,191, +136,106,163,235,135,16,3,203,135,141,90,64,216,170,5,157,40,218,50,169,65,200,143,66,185,65,181,12,25,101, +132,173,47,13,180,62,192,12,145,201,230,245,11,72,184,32,108,117,200,98,69,58,7,123,221,253,65,15,222,21, +152,147,86,247,0,198,123,131,131,39,88,147,214,106,169,135,29,89,174,12,112,9,219,164,28,155,229,54,41,97, +155,152,179,242,156,196,254,235,15,120,104,235,75,116,227,201,178,88,236,246,150,171,131,173,151,139,57,43,22,55, +124,167,59,24,143,11,184,124,177,57,139,139,102,191,7,243,79,198,227,30,106,118,122,231,164,88,185,54,37,52, +249,148,101,120,226,219,201,4,231,190,205,115,124,235,91,33,238,91,73,58,253,186,10,94,18,133,191,39,28,95, +18,141,63,17,55,82,100,26,43,204,177,198,14,56,203,255,177,85,247,184,21,227,48,16,128,207,19,172,12,112, +56,252,61,204,43,23,73,183,77,154,220,126,45,41,205,139,220,143,136,15,67,194,254,71,94,35,199,21,37,149, +209,140,143,241,125,7,190,199,142,204,0,94,3,58,46,86,123,152,215,157,248,239,78,204,231,51,51,19,122,39, +114,132,4,196,11,253,49,254,189,3,243,249,140,204,0,95,67,239,17,16,51,87,39,229,99,252,101,216,98,32, +195,80,213,121,50,124,49,160,34,82,98,250,192,136,197,184,96,73,37,104,56,33,185,33,230,41,222,197,147,81, +147,129,76,17,186,33,78,70,239,54,208,94,6,51,228,233,128,108,136,169,4,79,3,176,17,232,22,19,67,232, +201,128,46,71,137,133,48,74,79,7,184,33,38,52,64,240,192,176,205,128,139,138,168,182,60,88,124,89,160,12, +167,83,123,82,62,223,41,175,225,247,144,240,236,112,200,148,124,190,73,226,53,250,14,72,180,11,130,58,37,159, +239,18,220,18,27,97,76,100,130,211,241,249,230,144,155,33,227,98,178,58,41,122,50,124,49,82,224,94,209,56, +25,144,233,96,9,66,138,15,8,95,136,43,66,44,139,244,83,97,91,97,226,206,44,171,83,209,83,225,81,102, +97,172,7,132,253,150,129,46,97,180,156,14,110,6,42,25,236,192,201,168,197,0,130,78,184,224,100,128,123,41, +102,22,5,139,60,37,186,32,14,19,102,217,201,200,197,64,210,169,101,201,147,1,221,117,160,53,66,50,105,19, +242,245,119,43,54,215,86,238,53,13,95,111,134,122,13,96,92,42,170,158,102,193,201,248,58,79,35,6,138,45, +20,15,157,142,175,119,135,221,14,142,139,78,105,247,56,21,88,10,56,165,91,37,228,148,216,146,64,83,171,73, +127,128,228,116,204,33,110,157,193,39,135,108,7,164,45,41,97,242,32,225,164,68,65,179,145,118,66,100,87,66, +47,103,170,234,9,225,134,164,170,43,58,251,132,196,114,100,136,54,170,79,68,175,58,194,132,97,86,121,34,160, +91,97,138,130,23,253,84,192,23,195,41,105,234,42,167,66,119,27,221,78,86,56,166,227,231,239,159,101,54,218, +21,148,50,155,142,159,55,199,236,92,6,160,81,13,195,98,252,156,223,176,117,233,8,186,181,248,132,252,188,65, +110,169,98,92,158,70,19,247,211,1,157,16,164,136,149,123,226,132,112,65,46,84,91,87,132,196,131,68,126,37, +226,112,229,201,192,102,168,184,181,106,118,159,144,90,142,74,18,164,247,233,128,111,8,37,128,52,59,25,241,171, +240,16,116,177,228,1,194,37,1,165,225,8,123,128,216,222,140,185,43,37,229,1,130,13,1,84,20,194,236,147, +162,139,146,168,172,84,239,19,210,187,17,26,103,239,251,66,254,103,196,12,48,24,136,129,40,122,155,72,252,160, +0,236,6,244,8,5,84,83,84,216,81,54,49,6,144,236,217,155,77,26,20,52,192,199,120,30,224,153,29,215, +90,56,151,122,27,112,107,43,186,136,119,91,226,4,207,115,149,209,240,227,129,115,255,202,63,76,89,90,7,253, +4,172,101,155,186,123,47,30,113,47,104,82,156,15,82,201,64,239,39,211,32,46,29,171,101,93,67,150,254,207, +10,6,84,108,107,170,25,102,202,172,142,105,230,182,77,48,61,251,105,32,209,127,32,123,77,185,58,126,168,53, +174,62,55,113,231,123,62,5,203,255,127,119,144,8,182,92,199,71,122,239,201,150,235,69,134,177,173,172,64,68, +18,235,120,249,241,221,111,70,192,154,117,122,158,114,111,48,154,62,170,51,243,161,60,167,82,101,199,70,156,2, +222,24,233,63,23,115,48,118,0,60,28,30,220,27,79,6,170,168,164,238,133,21,218,133,86,75,143,138,49,183, +180,86,58,240,239,73,170,70,73,143,235,185,75,187,122,254,165,44,156,12,23,244,113,238,42,224,196,109,253,172, +116,79,14,110,220,216,21,157,244,191,253,123,36,223,120,82,235,48,145,241,58,71,133,255,237,89,166,224,48,61, +83,188,175,30,60,79,175,5,135,33,59,73,101,122,249,173,153,105,25,190,33,55,188,16,121,14,37,229,88,174, +127,56,49,207,243,49,229,242,157,148,126,165,213,92,131,49,7,84,181,243,195,88,148,37,232,187,7,143,30,166, +178,101,183,222,77,11,228,244,55,18,30,124,0,225,115,224,70,149,155,148,55,83,110,86,101,230,33,61,197,21, +115,215,133,48,16,4,51,102,66,100,41,193,122,121,234,251,140,167,52,124,91,72,64,62,57,104,92,156,170,164, +146,216,104,182,132,77,158,62,167,242,27,78,7,32,175,154,90,218,144,205,130,60,164,249,167,145,240,90,247,240, +91,63,150,67,246,120,173,65,115,61,240,235,138,184,222,80,178,46,80,89,134,16,3,214,226,44,48,103,176,147, +181,27,7,216,132,20,157,165,111,245,128,178,156,202,16,104,253,9,151,53,76,172,94,57,219,76,202,151,92,88, +239,38,234,50,89,6,254,62,234,78,194,60,172,175,146,51,50,148,225,135,253,196,202,123,228,174,46,245,207,54, +50,221,54,68,112,165,64,222,233,255,155,89,251,229,130,155,5,126,153,246,159,144,170,166,91,121,172,142,55,215, +77,47,198,201,168,58,25,222,140,11,9,249,153,40,222,139,202,99,11,175,108,208,129,149,132,88,170,249,152,28, +125,80,225,8,36,24,161,129,54,235,66,165,116,113,147,91,238,60,35,28,232,151,71,15,239,90,91,61,7,172, +192,82,81,55,86,21,148,129,255,244,201,254,129,207,124,103,78,231,125,244,177,136,187,207,55,148,127,6,223,143, +42,64,58,116,222,172,210,46,97,174,234,50,15,116,76,244,144,111,235,216,34,107,121,113,119,103,39,156,188,119, +97,92,231,26,163,100,236,10,141,237,202,226,213,37,255,11,159,189,151,240,136,2,59,158,222,29,97,203,182,118, +71,230,168,114,192,79,199,218,99,168,134,23,53,37,249,106,203,167,18,62,99,163,90,180,72,149,180,162,86,198, +114,11,217,130,151,115,88,155,228,44,18,177,67,216,39,132,52,253,38,116,32,66,175,77,154,238,161,226,159,160, +183,143,6,163,226,31,66,57,86,123,160,187,190,198,24,47,103,83,103,217,120,53,131,52,224,157,83,247,27,84, +183,249,92,244,237,54,212,51,192,173,192,63,116,179,107,189,138,105,226,232,84,196,195,250,60,192,85,60,57,160, +131,203,153,246,159,49,132,29,224,110,227,218,45,188,238,224,134,220,235,66,226,81,78,28,207,251,33,68,97,203, +178,152,87,21,148,168,204,12,169,125,38,153,140,169,229,133,150,159,33,120,22,178,229,32,2,55,89,164,238,17, +218,140,106,237,84,194,248,116,61,77,92,32,17,21,251,113,117,28,209,129,56,36,188,47,239,126,249,229,86,81, +75,43,42,9,87,2,46,65,219,192,255,85,213,94,70,121,235,82,174,188,186,99,167,74,240,2,74,156,134,30, +153,224,113,234,93,177,162,128,216,15,105,31,73,228,239,59,127,58,149,99,83,73,129,92,112,32,174,84,21,132, +91,46,107,234,191,147,253,136,181,25,56,110,237,184,107,204,203,183,159,93,29,241,245,218,90,69,198,255,255,237, +152,196,248,94,89,213,22,103,224,203,15,40,220,203,176,145,113,165,129,176,110,118,133,233,0,5,196,14,47,56, +87,8,63,37,100,58,208,142,240,35,236,211,231,187,147,199,1,121,100,148,243,190,19,132,77,223,106,65,37,118, +130,197,93,239,12,242,235,7,84,121,123,80,52,61,157,244,64,13,6,236,145,128,101,122,103,114,225,194,79,219, +93,63,19,246,53,209,26,184,124,225,34,75,166,48,83,26,88,194,103,22,116,131,205,4,145,17,167,84,247,152, +42,157,131,142,16,50,233,63,221,146,73,118,134,95,199,35,49,74,138,124,0,185,150,143,228,127,240,45,124,15, +211,118,131,119,20,217,101,212,55,103,37,158,239,183,212,233,213,72,81,66,180,0,106,18,72,118,227,111,39,209, +18,166,199,194,70,116,66,147,42,16,241,252,69,109,112,16,87,220,36,42,212,105,100,249,212,141,36,223,76,34, +53,254,27,125,206,80,78,52,227,133,144,171,164,22,145,225,165,137,12,104,49,99,102,101,44,20,81,45,88,132, +11,75,66,212,1,216,117,234,151,122,196,179,125,247,123,27,233,217,62,204,21,120,135,247,216,115,53,85,86,177, +187,32,79,192,138,140,123,143,161,6,118,77,11,46,217,99,28,241,246,145,63,27,9,241,175,17,107,239,6,249, +195,187,85,168,23,194,103,254,192,110,0,156,253,239,175,138,169,146,204,39,86,231,104,122,51,128,227,196,128,104, +184,178,37,165,210,5,151,221,32,78,115,225,38,196,230,112,59,85,249,170,41,184,158,139,18,131,54,246,179,40, +23,168,165,109,23,186,233,32,56,238,66,55,140,12,241,180,170,234,163,190,91,189,106,249,116,170,147,37,34,64, +240,187,235,143,251,51,108,206,133,139,74,122,218,41,147,212,37,210,147,76,47,87,214,66,62,121,31,66,187,216, +101,139,61,182,248,154,45,190,97,139,111,217,226,187,134,236,235,226,57,168,229,32,203,243,70,240,230,188,234,155, +130,6,188,41,51,86,171,114,222,140,153,160,219,81,141,150,118,93,118,60,205,49,132,69,197,112,237,54,27,243, +167,80,165,50,21,207,128,237,223,126,132,223,209,115,152,215,146,107,246,8,74,169,24,130,120,166,216,13,119,157, +228,134,61,20,83,232,196,255,203,174,149,104,59,139,194,224,87,113,246,77,28,235,221,237,108,207,49,59,85,180, +156,31,197,1,236,114,61,190,251,0,49,82,109,255,229,1,238,222,124,95,12,4,67,76,56,70,150,114,68,175, +56,83,54,108,142,241,108,106,27,252,219,176,102,212,13,21,98,8,216,115,250,213,168,123,59,235,190,187,64,159, +30,190,90,220,202,116,219,73,205,189,163,138,9,106,248,129,109,15,76,185,32,21,132,10,94,183,249,142,106,230, +46,113,214,6,27,199,70,54,57,73,178,7,59,166,179,109,100,103,69,39,249,242,108,240,235,199,219,146,181,38, +236,245,117,116,32,40,104,167,89,142,31,198,157,79,167,49,119,73,40,150,157,169,149,236,187,88,251,183,18,99, +103,152,42,70,23,107,139,38,111,6,58,178,235,72,95,243,97,37,33,75,220,8,147,91,241,191,138,249,121,171, +116,180,44,93,6,76,209,31,112,0,86,198,40,218,234,74,170,38,111,101,59,123,252,135,127,57,18,132,191,38, +201,231,94,20,236,218,55,220,252,53,239,23,247,76,167,214,84,193,114,184,106,187,163,197,187,218,215,195,211,106, +251,145,58,170,88,107,46,73,222,208,154,193,224,185,79,135,149,44,122,237,58,250,65,246,198,185,153,211,222,200, +137,236,57,225,237,129,10,94,66,110,223,211,82,30,225,106,172,8,134,247,197,75,158,227,108,125,225,67,116,199, +91,50,57,28,56,59,232,146,195,156,226,103,49,121,207,168,42,246,55,189,119,139,90,113,38,202,237,52,123,34, +171,74,51,147,147,172,59,93,76,1,76,92,108,236,91,198,90,185,152,182,123,114,19,120,208,227,220,222,187,254, +46,104,66,82,209,125,211,80,117,30,74,174,59,65,207,185,224,218,16,110,88,51,250,227,158,255,122,105,88,92, +138,184,44,227,171,188,21,239,85,92,241,186,87,44,134,92,130,129,53,122,63,53,51,195,141,80,19,172,102,109, +57,4,64,138,184,23,113,195,218,126,112,163,251,199,45,120,120,43,82,75,78,133,172,135,0,204,187,77,49,191, +49,240,38,143,126,115,230,16,29,254,165,150,189,207,129,243,246,188,166,6,217,209,130,155,115,190,153,118,204,23, +47,5,189,163,21,154,186,109,229,83,12,224,238,81,82,204,187,103,40,122,165,173,78,39,121,107,152,26,243,146, +107,151,152,74,36,166,151,253,70,222,212,177,62,212,241,129,151,76,198,5,181,97,174,99,218,151,92,198,188,82, +180,97,49,107,118,172,140,225,21,138,249,86,250,27,184,206,145,13,47,75,193,156,73,48,55,52,244,4,79,62, +200,40,139,144,134,99,169,191,208,34,68,221,247,241,173,114,7,75,37,231,127,91,147,83,30,165,219,91,196,25, +9,200,47,130,26,6,202,43,44,232,41,105,44,48,139,250,29,59,226,21,40,206,202,240,186,187,163,55,151,242, +121,150,59,218,58,54,8,231,89,224,173,221,117,175,82,54,136,232,66,73,33,136,110,105,71,180,81,188,48,45, +211,58,119,103,46,39,222,112,115,6,181,90,209,146,51,151,212,149,108,200,252,144,138,86,236,129,211,247,147,70, +94,113,82,149,188,165,2,69,45,168,222,179,146,188,50,37,17,107,251,134,217,105,17,216,131,43,20,87,252,74, +89,209,226,114,28,229,238,10,111,53,51,11,4,114,211,20,25,81,218,157,174,57,136,240,232,139,170,170,2,137, +168,170,119,223,62,188,68,155,187,52,202,238,31,163,31,163,228,225,187,43,19,152,165,163,212,126,127,145,218,175, +160,242,30,238,195,48,140,206,202,43,122,39,122,133,254,237,148,11,113,184,151,219,185,86,87,84,155,139,251,114, +246,145,131,192,190,103,115,28,2,194,91,183,177,80,210,238,113,126,193,106,214,113,138,66,169,100,55,79,27,32, +247,148,115,48,204,107,13,134,9,174,169,48,211,53,17,166,188,102,194,220,215,20,58,177,134,49,137,173,113,244, +114,77,160,187,99,158,35,244,150,20,222,146,130,37,223,146,194,91,82,72,180,34,238,20,107,152,131,153,238,180, +20,189,97,219,185,227,198,178,195,125,156,43,59,172,254,136,67,165,157,84,37,236,98,65,77,178,45,4,239,114, +197,10,243,109,26,251,239,239,182,199,61,55,204,69,184,175,143,143,138,118,171,243,156,49,193,145,175,231,50,38, +216,85,6,14,145,49,129,102,146,164,3,124,112,166,4,171,140,5,220,63,39,186,187,227,100,255,63,0,217,4, +36,15,138,53,99,226,142,25,82,223,136,166,32,100,78,64,246,149,60,164,195,171,111,73,79,249,131,213,104,118, +100,147,78,53,52,153,134,206,188,50,112,143,43,238,30,153,108,69,132,107,238,87,204,6,8,17,46,241,30,225, +5,42,224,11,71,26,115,49,51,231,66,118,65,100,151,196,221,12,223,47,224,160,191,80,15,240,66,125,131,232, +227,2,157,180,125,165,187,172,123,199,132,183,174,201,154,81,16,199,164,18,236,52,131,78,64,77,178,96,16,243, +10,16,115,139,50,216,130,36,195,6,16,166,225,144,63,147,135,25,124,204,16,158,177,77,50,97,71,242,50,64, +84,102,1,250,243,143,236,217,38,213,63,255,66,202,73,64,220,165,151,132,147,144,200,22,68,54,17,85,47,196, +16,202,250,241,183,119,236,236,91,5,29,185,6,118,48,114,8,253,61,36,130,111,239,30,211,146,213,223,141,99, +66,91,222,88,132,120,85,16,220,126,112,98,180,209,145,91,25,170,34,222,86,188,229,110,235,64,191,66,166,70, +102,221,215,36,112,170,64,220,178,205,109,105,175,153,34,64,64,171,7,77,252,26,93,3,99,18,250,217,165,193, +128,7,123,87,224,74,134,104,32,74,30,7,255,161,228,138,193,115,208,66,19,89,72,177,38,45,212,55,237,152, +184,54,89,147,130,121,167,125,123,69,60,148,3,52,38,238,56,151,87,103,84,65,17,143,134,215,106,59,102,142, +140,181,87,122,62,165,33,59,38,53,237,200,102,176,127,115,8,29,64,50,64,2,112,7,192,83,64,238,61,2, +91,201,31,177,176,18,2,101,74,147,174,240,232,117,254,98,191,186,83,80,17,245,82,1,7,65,254,180,54,128, +99,2,58,252,207,206,117,40,183,145,195,208,95,225,117,115,78,218,97,221,98,127,200,181,84,57,154,244,222,235, +183,31,22,134,41,66,194,106,177,105,211,50,74,92,200,7,60,114,69,2,32,64,153,25,97,63,106,166,150,91, +24,189,188,103,89,246,139,182,2,185,242,223,149,95,124,239,7,127,243,202,85,22,83,22,119,228,121,230,110,12, +49,66,50,33,155,48,6,24,144,74,59,17,196,172,101,12,27,183,137,155,126,1,131,239,90,227,187,193,248,62, +105,72,208,17,175,131,115,250,41,132,193,132,232,225,127,86,17,80,11,112,200,20,77,56,128,198,41,104,60,128, +166,41,104,2,232,237,49,94,217,174,219,50,187,219,108,102,44,217,71,179,139,157,25,134,131,185,221,102,243,186, +77,15,109,129,90,122,104,58,197,121,129,222,4,122,179,131,255,254,168,94,12,64,244,90,115,54,244,127,90,235, +184,141,41,32,42,219,234,201,155,209,247,82,43,186,107,242,190,103,212,70,174,58,52,5,31,56,92,66,239,192, +137,131,253,33,214,95,66,243,30,180,9,130,102,108,37,129,118,95,64,196,19,252,237,218,23,56,198,6,76,123, +137,109,194,14,238,24,62,52,18,62,236,212,7,6,23,209,59,112,228,224,78,68,119,4,127,70,143,70,120,10, +152,92,39,143,128,63,163,231,32,103,64,221,207,31,86,149,144,166,71,173,44,177,207,181,189,121,94,195,5,52, +66,17,242,112,11,38,250,33,43,13,101,7,161,230,75,240,140,207,206,33,33,190,159,252,47,29,196,181,121,0, +139,249,98,145,227,239,213,50,223,173,109,103,224,85,173,106,6,181,150,84,225,62,236,156,155,211,150,179,105,179, +233,189,78,225,48,175,208,119,38,36,19,7,133,66,240,184,235,60,175,49,38,227,135,206,12,105,86,37,28,68, +53,10,3,140,174,237,225,223,172,194,183,219,7,112,46,90,167,121,157,104,195,92,50,193,43,149,234,6,154,208, +21,206,15,148,121,19,14,34,95,114,137,104,93,73,164,55,45,72,143,139,17,143,100,107,228,125,254,190,106,121, +66,31,151,63,197,174,213,190,169,93,213,174,117,181,87,50,165,86,168,158,60,192,154,233,253,237,89,165,25,46, +110,140,219,151,238,38,192,14,125,185,129,84,201,102,251,14,10,156,39,77,90,185,85,19,86,222,214,34,183,94, +82,45,182,241,249,249,199,6,243,227,87,202,25,147,242,229,151,97,93,121,90,212,96,207,132,83,41,169,192,211, +38,156,15,198,88,127,86,13,154,86,128,22,105,48,88,106,97,192,50,217,59,235,52,43,195,204,12,201,189,86, +200,97,72,200,197,234,184,116,86,94,142,91,73,211,69,167,86,7,13,133,203,151,208,45,58,55,171,72,29,218, +185,193,4,31,225,255,112,52,180,43,227,160,192,66,49,128,175,24,120,16,121,181,182,111,42,222,16,105,95,130, +220,55,217,85,68,58,6,240,127,192,235,234,196,229,155,179,201,209,194,201,28,178,74,160,105,47,218,237,221,41, +118,76,196,188,125,145,171,98,84,146,248,170,145,42,150,187,203,232,48,200,206,192,132,205,234,131,4,75,183,138, +139,141,145,81,105,26,143,214,196,68,77,163,81,48,120,7,202,212,245,122,94,203,30,65,69,23,38,108,19,105, +153,202,242,210,152,88,206,217,26,135,47,234,18,146,207,86,238,195,105,87,25,101,13,9,164,71,207,79,18,204, +237,207,99,124,251,132,196,84,221,52,144,132,169,207,174,120,231,126,43,53,172,118,249,105,203,31,162,244,222,67, +7,91,103,243,201,118,162,227,162,150,83,209,130,94,72,37,44,105,53,87,92,206,37,154,80,129,235,201,22,236, +63,253,189,160,79,248,219,154,126,187,114,250,21,143,173,122,74,138,39,151,112,134,96,124,27,77,151,62,143,147, +108,101,85,86,83,121,86,161,24,135,183,3,118,199,130,210,119,66,194,12,110,87,66,43,12,214,80,170,177,244, +94,252,14,29,99,201,142,154,75,61,143,154,255,225,237,168,7,171,26,127,83,199,174,196,119,217,243,207,126,143, +246,65,145,97,212,59,92,149,199,151,29,46,151,44,3,196,205,64,195,19,172,242,114,123,44,171,45,6,122,169, +105,254,97,154,197,231,201,108,117,116,110,129,57,243,169,195,211,99,200,113,214,156,201,180,100,89,150,242,198,100, +198,115,166,239,194,17,222,211,187,207,79,154,241,207,158,25,252,122,229,180,74,156,134,20,114,104,175,92,181,234, +120,36,182,38,118,38,246,194,70,208,81,198,155,113,19,207,151,80,230,222,228,193,180,238,179,41,183,105,219,110, +55,75,40,67,232,77,136,142,124,197,114,86,244,140,173,115,122,198,46,155,62,155,97,88,76,199,178,199,83,132, +77,16,100,111,179,236,188,213,187,52,41,61,127,124,197,221,102,171,77,71,197,87,155,158,170,164,165,180,52,44, +65,165,167,169,172,182,125,127,236,78,236,161,52,166,49,234,194,133,149,179,52,179,5,11,158,167,145,137,164,45, +32,19,201,43,95,79,132,94,119,142,65,240,166,122,134,93,130,73,164,105,218,3,185,234,118,39,109,203,228,156, +21,174,142,162,186,26,44,191,15,185,197,120,206,119,108,240,130,156,181,234,177,124,239,97,80,215,218,59,187,203, +211,249,67,220,241,227,245,148,169,233,167,21,221,102,30,128,212,232,119,41,249,1,253,46,61,118,2,183,95,251, +8,46,179,147,123,103,243,38,126,173,163,23,102,78,24,37,187,48,243,229,7,80,29,119,21,227,208,56,228,0, +171,119,110,201,48,162,51,109,162,213,254,53,70,65,241,214,162,97,208,97,206,121,147,143,133,91,248,225,53,252, +208,218,255,108,92,85,118,196,48,16,187,138,158,255,61,134,160,203,237,49,10,63,101,88,230,221,211,119,20,42, +134,147,129,48,217,146,78,92,171,8,78,122,19,26,193,128,86,177,150,247,193,77,247,222,189,67,95,60,8,154, +218,167,220,77,247,184,190,3,107,220,204,217,201,227,219,166,79,64,40,3,122,96,3,190,35,24,208,64,119,64, +92,17,99,20,112,14,189,189,150,90,238,118,106,130,68,131,221,120,52,209,12,20,220,59,114,110,187,221,202,54, +163,222,158,163,210,150,83,127,3,106,147,95,77,119,167,198,195,163,206,61,63,107,13,58,6,106,140,222,160,45, +42,62,53,165,55,253,38,253,179,225,186,254,153,178,166,193,146,121,187,80,181,220,83,67,150,225,244,241,209,52, +203,78,141,98,76,248,110,108,56,100,134,26,3,227,224,37,67,17,36,141,44,39,109,33,105,83,149,15,30,65, +42,120,73,200,36,71,212,62,151,56,170,36,233,184,60,140,67,146,2,33,104,76,148,104,75,198,164,17,167,81, +13,70,249,105,150,208,57,72,248,235,82,209,33,31,50,148,18,108,157,75,254,96,131,20,214,75,178,153,100,205, +56,151,26,126,100,75,126,158,72,133,38,64,243,163,76,116,74,162,193,182,224,194,92,23,140,130,167,73,34,205, +245,39,157,229,142,43,189,13,67,225,173,4,233,53,25,145,122,216,69,86,115,83,56,192,164,117,113,87,159,239, +3,141,63,184,69,138,49,143,40,138,62,124,201,227,246,106,170,96,148,112,56,136,138,229,248,97,182,52,155,154, +29,63,205,230,167,39,228,135,70,83,163,209,122,182,253,154,152,44,88,245,124,29,21,197,90,236,65,47,191,30, +246,230,175,5,17,43,201,227,221,246,250,254,253,143,170,214,255,86,38,38,169,242,30,184,91,7,93,45,73,2, +120,190,230,149,239,87,191,133,39,106,177,56,47,44,66,235,171,205,14,58,8,226,251,159,236,84,24,39,71,112, +144,77,156,0,161,29,135,60,231,171,127,89,248,97,210,26,9,176,46,217,4,7,170,55,75,104,224,29,64,244, +232,57,153,4,213,199,107,83,32,236,6,126,38,70,27,169,145,160,45,251,199,234,78,92,47,193,217,76,244,101, +126,121,99,111,111,44,125,115,250,196,193,208,158,119,86,242,227,196,68,138,133,250,208,159,138,144,200,46,196,214, +41,69,216,72,41,223,165,155,133,56,147,236,70,226,68,235,88,58,34,37,17,56,67,189,190,164,223,33,163,79, +234,228,41,29,63,168,123,94,95,195,247,71,33,30,243,110,131,68,92,141,202,175,27,175,228,193,206,33,232,217, +182,47,153,48,124,192,148,246,50,127,97,88,162,216,175,45,237,105,223,244,82,44,233,21,170,196,27,82,183,241, +181,115,138,198,29,48,70,255,164,203,248,166,196,122,161,85,25,236,13,182,193,81,122,145,80,237,214,120,91,170, +167,30,225,16,21,224,33,187,13,13,8,215,242,191,141,229,38,107,252,155,124,129,15,149,27,235,249,44,53,46, +68,175,217,54,100,18,150,39,70,148,192,71,103,46,11,237,114,73,205,89,216,190,237,48,193,22,145,157,169,196, +1,129,92,125,18,107,171,54,89,252,118,179,203,148,7,115,214,204,224,151,193,178,185,236,134,142,175,128,82,33, +235,98,218,135,204,60,4,34,213,28,253,116,154,195,150,175,81,4,235,49,233,235,146,243,37,67,81,112,66,73, +121,209,144,19,108,61,163,244,182,76,109,44,253,9,112,100,250,226,196,46,225,196,62,115,50,8,164,238,173,98, +74,242,149,83,77,243,110,21,111,94,147,141,223,71,186,141,6,191,195,49,129,193,193,118,212,80,90,121,17,215, +210,60,43,86,108,60,110,28,205,97,240,94,82,46,91,151,85,120,113,35,253,29,119,6,93,11,183,113,183,52, +193,54,132,179,202,47,216,106,54,74,33,233,185,139,8,9,185,62,110,27,220,174,199,213,36,8,93,193,101,203, +109,188,89,107,55,111,148,48,183,105,67,70,72,162,80,94,70,127,247,9,234,239,59,96,134,157,241,84,175,144, +109,31,12,243,143,74,52,13,78,39,236,110,189,190,10,222,24,205,33,182,57,6,134,202,172,28,215,1,100,125, +204,76,18,175,171,43,50,96,72,93,242,248,45,195,6,122,138,5,81,157,68,114,70,36,39,39,80,133,189,94, +192,29,148,28,57,171,231,195,150,172,45,145,129,64,64,133,223,5,129,238,156,66,239,53,201,118,226,141,233,140, +88,145,161,147,241,200,8,45,192,114,154,74,213,250,195,190,97,159,77,5,143,146,216,27,46,199,181,87,162,246, +211,58,141,60,158,47,129,17,175,77,26,186,48,6,104,165,61,64,45,5,52,146,241,149,142,225,253,180,116,230, +252,114,92,118,195,169,130,123,69,5,135,88,79,47,15,39,52,187,181,55,189,209,22,219,31,103,63,120,23,57, +6,186,181,141,52,236,22,103,203,198,177,32,105,167,160,216,119,158,240,77,179,122,107,156,106,199,45,226,180,13, +158,211,42,217,129,252,108,229,243,215,175,210,5,106,238,40,213,190,237,10,53,174,126,253,66,91,145,94,148,218, +51,158,203,27,147,80,44,215,157,206,18,6,211,246,193,96,98,24,74,120,195,74,122,166,143,42,75,105,114,52, +249,85,103,119,37,103,151,148,188,177,56,167,52,203,220,134,160,105,245,117,244,180,110,40,89,75,57,159,91,78, +25,188,194,57,143,107,58,165,190,181,129,200,19,144,193,112,180,28,44,111,89,8,46,137,52,37,142,197,146,64, +206,231,127,90,103,197,85,36,3,249,113,144,173,116,190,31,105,247,58,52,93,78,200,96,39,105,133,231,11,237, +164,69,209,246,176,1,58,204,26,49,139,94,130,91,185,53,108,174,120,247,42,224,168,62,87,208,170,229,242,145, +133,150,145,215,173,54,252,120,44,27,226,219,63,69,254,39,174,63,223,127,255,245,231,191,237,29,133,118,228,56, +236,87,116,62,6,239,214,30,15,29,44,51,51,83,202,220,121,229,246,235,79,178,28,71,114,210,247,182,112,124, +133,128,162,152,37,89,182,164,232,200,84,221,211,113,105,47,44,39,228,1,231,195,180,235,114,225,87,118,29,165, +244,116,92,143,246,92,154,149,130,198,218,17,88,225,76,39,251,54,173,29,189,135,150,173,39,68,189,90,238,110, +131,50,215,130,168,7,169,77,137,4,226,13,5,121,147,83,144,118,29,64,150,131,64,38,117,64,14,6,208,52, +2,197,185,138,182,203,90,51,105,180,30,94,2,124,207,144,92,206,183,73,55,78,112,145,127,241,132,235,218,64, +89,207,249,28,205,38,233,48,66,133,161,107,173,240,248,128,127,181,130,66,205,98,128,173,138,202,73,49,67,109, +74,19,69,95,6,81,139,98,104,248,223,76,108,47,5,166,56,234,9,158,187,123,117,103,6,157,120,129,79,181, +23,120,173,60,225,24,185,239,162,52,184,53,168,60,120,222,85,177,120,181,235,4,0,240,106,209,121,9,176,254, +5,242,145,123,252,50,207,239,55,86,15,168,16,16,141,250,49,103,23,16,29,15,35,240,40,218,16,69,228,137, +15,252,238,64,194,144,151,131,67,93,131,126,161,151,105,3,126,197,37,206,245,11,252,49,167,24,29,14,225,8, +193,199,60,208,17,131,92,175,211,119,169,56,46,16,13,126,17,170,166,110,138,20,66,15,42,12,5,53,193,222, +137,241,203,233,112,110,225,208,192,198,122,10,113,101,68,244,152,239,98,36,157,239,13,102,199,212,117,30,105,53, +19,172,12,36,116,44,146,13,16,253,118,128,75,68,189,65,201,233,208,125,57,53,97,13,74,175,121,72,246,159, +74,157,79,164,74,5,157,104,109,94,82,142,166,153,104,240,15,123,150,125,74,222,27,245,30,59,136,192,244,81, +4,186,72,220,181,77,118,70,52,142,136,23,85,167,42,246,212,57,5,149,40,13,230,3,210,228,147,55,214,215, +134,27,156,143,186,149,56,114,153,106,37,106,20,115,97,234,107,106,2,126,67,119,151,14,2,214,221,91,93,45, +196,76,150,251,234,216,236,32,248,134,29,4,127,54,236,192,159,148,25,104,139,85,201,5,112,62,217,71,185,62, +240,85,128,16,73,60,42,66,35,139,135,33,100,24,73,55,186,212,72,124,104,96,83,140,150,1,156,136,70,178, +136,210,151,41,217,142,236,88,141,24,188,81,140,98,12,206,3,253,6,27,26,25,58,185,240,124,50,91,161,60, +123,202,157,140,227,137,198,65,18,135,68,221,20,114,234,55,147,163,64,125,247,189,73,60,99,250,47,16,144,201, +40,251,216,130,178,135,239,10,43,237,150,208,12,36,52,61,11,77,28,183,93,146,211,255,93,37,167,11,13,169, +184,240,23,147,138,150,155,213,38,182,94,116,72,48,82,100,145,186,111,135,118,8,248,175,5,28,13,210,91,253, +70,140,221,220,128,43,184,227,144,165,150,230,76,28,125,238,120,124,201,255,219,248,82,50,123,151,13,236,81,255, +32,69,192,142,172,11,98,130,130,202,72,92,26,29,129,11,151,51,24,2,120,183,168,38,46,244,190,237,189,41, +39,31,227,221,80,130,220,112,241,220,148,19,252,164,233,23,45,142,137,170,204,133,231,235,24,18,24,167,36,115, +179,28,113,149,120,13,191,35,99,225,202,10,18,185,119,139,236,71,171,136,60,7,24,49,22,170,133,106,105,253, +127,190,101,195,255,124,235,31,193,183,82,244,177,99,79,128,167,204,209,147,212,2,191,205,249,28,100,143,163,60, +30,133,3,49,213,180,69,19,98,208,183,124,69,204,133,167,169,26,68,121,71,213,144,77,250,186,171,216,76,20, +7,176,103,217,21,251,253,231,84,49,121,236,118,204,58,169,22,23,40,0,51,69,149,142,229,226,42,82,161,114, +176,233,58,241,232,207,14,133,223,51,81,148,67,218,18,26,131,114,129,210,92,161,61,205,95,93,16,44,132,9, +90,239,245,50,172,220,251,62,138,48,19,154,134,118,218,43,64,201,201,74,2,214,89,117,150,2,155,111,99,66, +125,12,49,28,55,182,255,166,73,131,100,110,246,194,141,165,205,181,189,106,19,219,149,145,90,200,56,38,240,219, +199,200,246,111,60,133,243,240,244,209,237,27,55,158,54,200,231,57,33,30,42,167,239,229,107,88,11,120,126,59, +118,242,106,53,61,183,90,167,86,71,151,0,17,106,64,39,162,221,234,205,5,165,11,207,212,159,68,165,49,211, +254,80,106,157,75,10,190,1,180,129,93,234,128,99,88,180,125,165,4,18,150,109,115,127,134,75,17,160,32,210, +236,145,123,173,243,233,168,181,12,52,39,56,125,22,66,210,46,151,77,112,91,230,203,93,56,210,114,23,24,84, +123,136,188,253,246,219,247,12,202,142,85,233,150,28,163,200,47,170,126,76,188,84,2,168,96,34,197,210,39,72, +65,211,141,170,33,131,22,109,72,87,123,249,74,59,214,164,86,208,198,127,186,150,66,185,110,20,231,56,160,234, +187,197,77,201,24,133,149,14,52,102,79,103,192,182,110,85,155,179,68,94,112,251,26,13,234,227,138,211,145,16, +167,163,191,88,156,106,87,71,106,28,10,241,208,89,84,103,0,11,217,51,112,192,55,155,120,231,241,132,183,94, +9,217,33,56,247,98,88,245,161,159,180,92,135,167,93,161,203,158,9,91,201,76,14,94,176,141,198,137,187,226, +255,174,40,23,147,142,51,205,169,128,190,46,254,155,249,210,116,247,38,45,101,51,89,75,113,203,212,174,76,64, +219,211,119,41,169,203,200,13,80,11,15,243,175,233,244,160,149,67,231,33,110,42,225,25,247,233,92,47,171,125, +14,161,126,216,135,120,188,71,182,8,171,17,1,34,114,131,6,18,205,33,216,173,70,12,27,177,75,60,203,120, +222,81,122,140,194,185,151,249,218,156,96,161,120,246,161,87,234,157,100,89,95,192,122,208,95,44,176,200,246,127, +81,174,117,21,139,158,64,193,153,128,34,10,160,98,58,161,232,112,56,49,222,160,175,139,128,133,155,115,219,80, +197,37,49,130,77,227,120,138,145,241,241,4,107,24,243,236,139,147,176,5,47,70,200,95,189,118,144,229,117,10, +167,5,49,104,150,218,225,32,131,165,221,129,232,39,188,186,213,151,247,214,191,24,53,247,128,247,139,131,238,77, +13,236,68,240,142,15,99,66,137,143,247,29,62,154,66,174,227,177,38,14,249,14,221,7,60,227,125,79,112,147, +170,224,40,100,184,135,39,138,254,126,225,119,53,191,13,116,253,131,0,0 +}; diff --git a/Software/src/lib/ayushsharma82-ElegantOTA/src/elop.h b/Software/src/lib/ayushsharma82-ElegantOTA/src/elop.h new file mode 100644 index 00000000..2cd98538 --- /dev/null +++ b/Software/src/lib/ayushsharma82-ElegantOTA/src/elop.h @@ -0,0 +1,8 @@ +#ifndef elop_h +#define elop_h + +#include + +extern const uint8_t ELEGANT_HTML[9590]; + +#endif From 16d38fd4814621f783500a6b23511332c5c12690 Mon Sep 17 00:00:00 2001 From: lenvm Date: Wed, 22 Nov 2023 22:53:27 +0100 Subject: [PATCH 08/12] modify ElegantOTA library such that it works correctly in this repository --- Software/src/lib/ayushsharma82-ElegantOTA/src/ElegantOTA.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Software/src/lib/ayushsharma82-ElegantOTA/src/ElegantOTA.h b/Software/src/lib/ayushsharma82-ElegantOTA/src/ElegantOTA.h index eb961cbf..5509c9d1 100644 --- a/Software/src/lib/ayushsharma82-ElegantOTA/src/ElegantOTA.h +++ b/Software/src/lib/ayushsharma82-ElegantOTA/src/ElegantOTA.h @@ -64,8 +64,8 @@ _____ _ _ ___ _____ _ #include "Update.h" #include "StreamString.h" #if ELEGANTOTA_USE_ASYNC_WEBSERVER == 1 - #include "AsyncTCP.h" - #include "ESPAsyncWebServer.h" + #include "../../me-no-dev-AsyncTCP/src/AsyncTCP.h" + #include "../../me-no-dev-ESPAsyncWebServer/src/ESPAsyncWebServer.h" #define ELEGANTOTA_WEBSERVER AsyncWebServer #else #include "WiFi.h" From e5586e93395528414feeb2b61ec7a2feacf9f727 Mon Sep 17 00:00:00 2001 From: lenvm Date: Wed, 22 Nov 2023 22:44:52 +0100 Subject: [PATCH 09/12] define ELEGANTOTA_USE_ASYNC_WEBSERVER as 1 to enable Async Mode --- Software/src/lib/ayushsharma82-ElegantOTA/src/ElegantOTA.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Software/src/lib/ayushsharma82-ElegantOTA/src/ElegantOTA.h b/Software/src/lib/ayushsharma82-ElegantOTA/src/ElegantOTA.h index 5509c9d1..fca52519 100644 --- a/Software/src/lib/ayushsharma82-ElegantOTA/src/ElegantOTA.h +++ b/Software/src/lib/ayushsharma82-ElegantOTA/src/ElegantOTA.h @@ -24,7 +24,7 @@ _____ _ _ ___ _____ _ #include "elop.h" #ifndef ELEGANTOTA_USE_ASYNC_WEBSERVER - #define ELEGANTOTA_USE_ASYNC_WEBSERVER 0 + #define ELEGANTOTA_USE_ASYNC_WEBSERVER 1 #endif #ifndef ELEGANTOTA_DEBUG From ce47ffd4524799814a98304154c159c1dd307029 Mon Sep 17 00:00:00 2001 From: lenvm Date: Wed, 22 Nov 2023 23:12:38 +0100 Subject: [PATCH 10/12] add ElegantOTA to webserver --- Software/Software.ino | 3 ++ Software/src/devboard/webserver/webserver.cpp | 41 ++++++++++++++++++- Software/src/devboard/webserver/webserver.h | 40 +++++++++++++++++- 3 files changed, 82 insertions(+), 2 deletions(-) diff --git a/Software/Software.ino b/Software/Software.ino index 13182646..510a5aad 100644 --- a/Software/Software.ino +++ b/Software/Software.ino @@ -127,6 +127,9 @@ void setup() { // Perform main program functions void loop() { + // Over-the-air updates by ElegantOTA + ElegantOTA.loop(); + // Input receive_can(); // Receive CAN messages. Runs as fast as possible #ifdef DUAL_CAN diff --git a/Software/src/devboard/webserver/webserver.cpp b/Software/src/devboard/webserver/webserver.cpp index 207f29aa..3573aee2 100644 --- a/Software/src/devboard/webserver/webserver.cpp +++ b/Software/src/devboard/webserver/webserver.cpp @@ -3,6 +3,9 @@ // Create AsyncWebServer object on port 80 AsyncWebServer server(80); +// Measure OTA progress +unsigned long ota_progress_millis = 0; + const char index_html[] PROGMEM = R"rawliteral( @@ -49,7 +52,11 @@ void init_webserver() { [](AsyncWebServerRequest* request) { request->send_P(200, "text/html", index_html, processor); }); // Send a GET request to /update - server.on("/update", HTTP_GET, [](AsyncWebServerRequest* request) { request->send(200, "text/plain", "OK"); }); + server.on("/debug", HTTP_GET, + [](AsyncWebServerRequest* request) { request->send(200, "text/plain", "Debug: all OK."); }); + + // Initialize ElegantOTA + init_ElegantOTA(); // Start server server.begin(); @@ -102,6 +109,14 @@ void init_WiFi_STA(const char* ssid, const char* password) { } } +void init_ElegantOTA() { + ElegantOTA.begin(&server); // Start ElegantOTA + // ElegantOTA callbacks + ElegantOTA.onStart(onOTAStart); + ElegantOTA.onProgress(onOTAProgress); + ElegantOTA.onEnd(onOTAEnd); +} + String processor(const String& var) { if (var == "PLACEHOLDER") { String content = ""; @@ -136,3 +151,27 @@ String processor(const String& var) { } return String(); } + +void onOTAStart() { + // Log when OTA has started + Serial.println("OTA update started!"); + // +} + +void onOTAProgress(size_t current, size_t final) { + // Log every 1 second + if (millis() - ota_progress_millis > 1000) { + ota_progress_millis = millis(); + Serial.printf("OTA Progress Current: %u bytes, Final: %u bytes\n", current, final); + } +} + +void onOTAEnd(bool success) { + // Log when OTA has finished + if (success) { + Serial.println("OTA update finished successfully!"); + } else { + Serial.println("There was an error during OTA update!"); + } + // +} diff --git a/Software/src/devboard/webserver/webserver.h b/Software/src/devboard/webserver/webserver.h index 36ccb023..f599cea9 100644 --- a/Software/src/devboard/webserver/webserver.h +++ b/Software/src/devboard/webserver/webserver.h @@ -4,6 +4,7 @@ // Load Wi-Fi library #include #include "../../../USER_SETTINGS.h" // Needed for WiFi ssid and password +#include "../../lib/ayushsharma82-ElegantOTA/src/ElegantOTA.h" #include "../../lib/me-no-dev-AsyncTCP/src/AsyncTCP.h" #include "../../lib/me-no-dev-ESPAsyncWebServer/src/ESPAsyncWebServer.h" #include "../config.h" // Needed for LED defines @@ -43,12 +44,49 @@ void init_WiFi_AP(); void init_WiFi_STA(const char* ssid, const char* password); /** - * @brief Replaces placeholder with content section in web page + * @brief Initialization function for ElegantOTA. + * + * @param[in] void * + * @return void + */ +void init_ElegantOTA(); + +/** + * @brief Replaces placeholder with content section in web page + * * @param[in] var * * @return String */ String processor(const String& var); +/** + * @brief Executes on OTA start + * + * @param[in] void + * + * @return void + */ +void onOTAStart(); + +/** + * @brief Executes on OTA progress + * + * @param[in] current Current bytes + * @param[in] final Final bytes + * + * @return void + */ +void onOTAProgress(size_t current, size_t final); + +/** + * @brief Executes on OTA end + * + * @param[in] void + * + * @return bool success: success = true, failed = false + */ +void onOTAEnd(bool success); + #endif From e7b1958ff57d9fbb5f6455ffa26f1225f299a374 Mon Sep 17 00:00:00 2001 From: lenvm Date: Sun, 26 Nov 2023 14:52:39 +0100 Subject: [PATCH 11/12] add WEBSERVER macro to enable or disable webserver functionality --- Software/Software.ino | 9 ++++++++- Software/USER_SETTINGS.cpp | 2 ++ Software/USER_SETTINGS.h | 1 + 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/Software/Software.ino b/Software/Software.ino index 510a5aad..240618b2 100644 --- a/Software/Software.ino +++ b/Software/Software.ino @@ -6,7 +6,6 @@ #include "USER_SETTINGS.h" #include "src/battery/BATTERIES.h" #include "src/devboard/config.h" -#include "src/devboard/webserver/webserver.h" #include "src/inverter/INVERTERS.h" #include "src/lib/adafruit-Adafruit_NeoPixel/Adafruit_NeoPixel.h" #include "src/lib/eModbus-eModbus/Logging.h" @@ -15,6 +14,10 @@ #include "src/lib/miwagner-ESP32-Arduino-CAN/CAN_config.h" #include "src/lib/miwagner-ESP32-Arduino-CAN/ESP32CAN.h" +#ifdef WEBSERVER +#include "src/devboard/webserver/webserver.h" +#endif + // Interval settings int intervalUpdateValues = 4800; // Interval at which to update inverter values / Modbus registers const int interval10 = 10; // Interval for 10ms tasks @@ -110,7 +113,9 @@ bool inverterAllowsContactorClosing = true; void setup() { init_serial(); +#ifdef WEBSERVER init_webserver(); +#endif init_CAN(); @@ -127,8 +132,10 @@ void setup() { // Perform main program functions void loop() { +#ifdef WEBSERVER // Over-the-air updates by ElegantOTA ElegantOTA.loop(); +#endif // Input receive_can(); // Receive CAN messages. Runs as fast as possible diff --git a/Software/USER_SETTINGS.cpp b/Software/USER_SETTINGS.cpp index be47298a..5f760710 100644 --- a/Software/USER_SETTINGS.cpp +++ b/Software/USER_SETTINGS.cpp @@ -1,6 +1,8 @@ #include "USER_SETTINGS.h" +#ifdef WEBSERVER const char* ssid = "REPLACE_WITH_YOUR_SSID"; // maximum of 63 characters; const char* password = "REPLACE_WITH_YOUR_PASSWORD"; // minimum of 8 characters; const char* ssidAP = "Battery Emulator"; // maximum of 63 characters; const char* passwordAP = "123456789"; // minimum of 8 characters; set to NULL if you want the access point to be open +#endif diff --git a/Software/USER_SETTINGS.h b/Software/USER_SETTINGS.h index c05068c6..98dd45ae 100644 --- a/Software/USER_SETTINGS.h +++ b/Software/USER_SETTINGS.h @@ -42,5 +42,6 @@ //#define CONTACTOR_CONTROL //Enable this line to have pins 25,32,33 handle automatic precharge/contactor+/contactor- closing sequence //#define PWM_CONTACTOR_CONTROL //Enable this line to use PWM logic for contactors, which lower power consumption and heat generation //#define DUAL_CAN //Enable this line to activate an isolated secondary CAN Bus using add-on MCP2515 controller (Needed for FoxESS inverters) +#define WEBSERVER //Enable this line to enable WiFi, and to run the webserver #endif From e37b8f7e1b9ec6d2084cc8b2e7eb23fb3d578b62 Mon Sep 17 00:00:00 2001 From: lenvm Date: Wed, 22 Nov 2023 22:27:38 +0100 Subject: [PATCH 12/12] reduce Luna2000 register allocation from 50k to 30k --- Software/Software.ino | 2 +- Software/src/inverter/LUNA2000-MODBUS.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Software/Software.ino b/Software/Software.ino index 240618b2..ba138693 100644 --- a/Software/Software.ino +++ b/Software/Software.ino @@ -40,7 +40,7 @@ static ACAN2515_Buffer16 gBuffer; #define MB_RTU_NUM_VALUES 30000 #endif #if defined(LUNA2000_MODBUS) -#define MB_RTU_NUM_VALUES 50000 +#define MB_RTU_NUM_VALUES 30000 #endif #if defined(BYD_MODBUS) || defined(LUNA2000_MODBUS) uint16_t mbPV[MB_RTU_NUM_VALUES]; // Process variable memory diff --git a/Software/src/inverter/LUNA2000-MODBUS.h b/Software/src/inverter/LUNA2000-MODBUS.h index b3766b0e..b85df960 100644 --- a/Software/src/inverter/LUNA2000-MODBUS.h +++ b/Software/src/inverter/LUNA2000-MODBUS.h @@ -2,7 +2,7 @@ #define LUNA2000_MODBUS_H #include -#define MB_RTU_NUM_VALUES 50000 +#define MB_RTU_NUM_VALUES 30000 // Definitions for BMS status #define STANDBY 0 #define INACTIVE 1

S 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

Learn more about Installation & Usage: Click Here