Initial commit
This commit is contained in:
commit
94d8e201f5
10 changed files with 909 additions and 0 deletions
69
README.md
Normal file
69
README.md
Normal file
|
|
@ -0,0 +1,69 @@
|
|||
# Hostapd Web UI
|
||||
|
||||
A Flask-based web application that provides a REST API interface to manage WiFi stations via hostapd.
|
||||
|
||||
## Features
|
||||
|
||||
- List connected WiFi stations (MAC addresses)
|
||||
- Get detailed information about specific stations
|
||||
- RESTful API with proper error handling
|
||||
- JSON responses for easy integration
|
||||
|
||||
## API Endpoints
|
||||
|
||||
### `GET /api/v1/sta/list`
|
||||
Returns a JSON array of connected station MAC addresses.
|
||||
|
||||
**Response:**
|
||||
```json
|
||||
[
|
||||
"aa:bb:cc:dd:ee:ff",
|
||||
"11:22:33:44:55:66"
|
||||
]
|
||||
```
|
||||
|
||||
### `GET /api/v1/sta/details/<mac>`
|
||||
Returns detailed information about a specific station.
|
||||
|
||||
**Response:**
|
||||
```json
|
||||
{
|
||||
"rx_packets": "1234",
|
||||
"tx_packets": "5678",
|
||||
"signal": "-65",
|
||||
"connected_time": "3600"
|
||||
}
|
||||
```
|
||||
|
||||
### `GET /health`
|
||||
Health check endpoint.
|
||||
|
||||
**Response:**
|
||||
```json
|
||||
{
|
||||
"status": "healthy",
|
||||
"service": "hostapd-webui"
|
||||
}
|
||||
```
|
||||
|
||||
## Requirements
|
||||
|
||||
- Python 3.7+
|
||||
- Flask
|
||||
- hostapd with hostapd_cli installed and configured
|
||||
|
||||
## Error Handling
|
||||
|
||||
The API returns appropriate HTTP status codes:
|
||||
- 200: Success
|
||||
- 400: Bad request (invalid MAC address format)
|
||||
- 404: Station not found
|
||||
- 500: Internal server error
|
||||
|
||||
## Logging
|
||||
|
||||
The application logs information and errors to the console. Set the `LOG_LEVEL` environment variable to control verbosity.
|
||||
|
||||
## Development
|
||||
|
||||
To run in debug mode, set `debug=True` in the `app.run()` call in `app.py`.
|
||||
Loading…
Add table
Add a link
Reference in a new issue