Generic Internet of Things platform for data collection. Devices can be registered with custom fields. Supports triggers and visualization through charts.
Charts are powered by Chart.js.
ESP8266 module was used for this project.
Home page.
List of devices.
Device fields are used as keys for sending data to the platform.
Basic device configuration and settings.
Triggers via email and webhook.
Browse device data.
Create charts.
Edit chart and add fields to display on it.
Example of single field chart.
Examples of multi field charts.
Example request
localhost:8000/data?api_key=SYKzfAmDjFjbGonBbIHWrucslNFN8nD1mnABYXfhDztjY
&temperature=50
&humidity=55
&pressure=101325
It is also possible to use additional parameters: datetime
and mac_address
.
Example response
{
status: "success",
read_time: 15,
added: [
"temperature",
"humidity"
],
not_added: [
"pressure"
],
triggers_activated: [
{
field: "temperature",
min_value: "10.00",
max_value: "40.00",
email: "[email protected]",
webhook_url: null
}
]
}
- Missing api key.
- No values.
- Non existing api key.
- Non-numeric value for field name.
- Install Apache, PHP7, MySQL and Composer
- Run
composer install
in root directory - Create database using
iotplatform.sql
- Configure
.env
file - Run
php artisan serve
in root directory