Плагин предназначен для сбора сигналов от датчиков, подключенных например, к ESP8266 WiFi. Сигналы передаются при помощи POST-запросов.
Описание функционирования совместно с платой ESP8266 WiFi E-12 для Arduino UNO R3: Отправка данных из ESP8266WiFi на WEB-сервер с CMS MaxSite.
Для хранения информации используется 3 таблицы:
esp_shields - таблица устройств (плат);
esp_sensors - таблица сенсоров (датчиков);
esp_signals - таблица сигналов (значений сенсора платы в момент времени).
Сенсоры принадлежат устройствам, а сигналы приходят от сенсоров.
POST-запрос должен выглядеть примерно таким образом:
secret=0000&name=ESP_8266WiFi&temp=23.00&hum=63.00&gas=478&mac=F485452DE6B4&ram=960&rssi=-79
Обязательным будет наличие полей: secret и name - ключ доступа и имя платы.
Необязательные поля: ram, mac, date, rssi.
Остальные поля будут восприниматься как показания сенсоров 'sensor'=>'value'.
В приведенном выше примере поступают три сигнала от сенсоров с именами: hum, gas и temp.
Уникальным значением для устройства в таблице устройств будет поле mac-адрес.
Разрешается не передавать mac-адрес и в это поле заносится name-имя платы.
Ключевыми значениями для сенсора будет номер платы и имя сенсора.
Таблицы сенсоров и плат создаются автоматически.
Файлы.
Плагин my_esp8266 для MaxSite CMS
Скетч для отправки данных из ARDUINO esp8266wifi в MaxSite CMS
Скриншоты админпанели.
Дальнейшие работы.
1. Вывод на публичную страницу диаграммы показаний сенсоров при помощи www.chartjs.org.
Это предполагает какой-то диалог выбора - какие сенсоры выводить и за какой период.
2. Таблица типов сигналов: температура, давление, влажность и т. д.
Это позволит, например, задавать тип значений. Или выводить график по нескольким датчикам, сгруппированных по типу датчиков.
3. Редактирование атрибутов устройств и сенсоров, которые на данный момент задаются по дефолту.
4. Удаление старых значений сигналов и ненужных устройств и сенсоров.