Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Features
Now you can execute CLI commands using a simple web interface.
You can connect to the AP and got to
deauther.tools/webconsole.html
to start using the web console.There is no hyperlink for
webconsole.html
in theindex.html
or any other web interface files as that can be confusing for beginners. But if you want, you can always go to the page by manually typing the address<ip_of_the_deauther>/webconsole.html
.This feature was requested in Issue #1610
How this works
This
webconsole.html
file makes use of/run
endpoint to execute CLI commands. And saves the CLI output (basically saves the parametersprnt
andprntln
functions were called with) in a local String variable. This variable has been limited to use not more than 4kB of memory. (check functions.h for better understanding). And if the local variable exceeds the 4kB memory usage limit, the variable's value is set to an empty string. This step is important so that the 80kB RAM of esp8266 doesn't get filled up with console outputs.And after running a CLI command the webconsole reads that local String variable and shows it on the webconsole interface.
The webconsole also updates its CLI output every 5 seconds.
Testing
This feature is tested on NodeMCU and it works like a charm.