Код: Выделить всё
//Создаём алиасы для уже знакомых ESP-шек
if ($params['idesp']=="ESP826600f5хххх")
{$params['idesp'] = "ESP8266_Outside" ;
// DebMes("espdata request: ".$_SERVER['REQUEST_URI']); // После этого в XRay во вкладке debug можно смотреть результат.
}
if ($params['idesp']=="ESP826600f5хххх") {$params['idesp'] = "ESP8266_Hall" ; }
if ($params['idesp']=="ESP826600f4хххх") {$params['idesp'] = "ESP8266_Kitchen" ; }
if ($params['idesp']=="ESP8266000aхххх") {$params['idesp'] = "ESP8266_Bathroom" ; }
if ($params['idesp']=="ESP8266000aхххх") {$params['idesp'] = "ESP8266_Server" ; }
if ($params['idesp']=="ESP82660017хххх")
{$params['idesp'] = "ESP8266_Garage" ;
// DebMes("espdata request: ".$_SERVER['REQUEST_URI']); // После этого в XRay во вкладке debug можно смотреть результат.
}
if ($params['idesp']=="") { return; } //Если ID устройства отсутствует, то перестаем отрабатывать сценарий
addClass('ESP8266'); //Создаем класс ESP8266
addClassObject('ESP8266',$params['idesp']); //Создаем в классе ESP8266 объект где в качестве имени
addClassProperty('ESP8266', 'vdd', 90); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 90 дней
addClassProperty('ESP8266', 'updated', 1); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 1 дней
addClassProperty('ESP8266', 'updatedTime', 1); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 1 дней
addClassProperty('ESP8266', 'alive', 1); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 1 дней
addClassProperty('ESP8266', 'bmpp_multiplier', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'bmpp_addition', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'bmpt_multiplier', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'bmpt_addition', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'bmep_multiplier', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'bmep_addition', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'bmet_multiplier', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'bmet_addition', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'bmeh_multiplier', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'bmeh_addition', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'amt_multiplier', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'amt_addition', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'amh_multiplier', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'amh_addition', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'dhth1_multiplier', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'dhth1_addition', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'dhth2_multiplier', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'dhth2_addition', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'dhtt1_multiplier', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'dhtt1_addition', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'dhtt2_multiplier', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'dhtt2_addition', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'dsw1_multiplier', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'dsw1_addition', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'dsw2_multiplier', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'dsw2_addition', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'dsw3_multiplier', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'dsw3_addition', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'dsw4_multiplier', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
addClassProperty('ESP8266', 'dsw4_addition', 0); //Создаёт свойство класса и указывает, что необходимо хранить историю значений 0 дней
if (gg($params['idesp'].".bmpp_multiplier")=="") { sg(($params['idesp'].".bmpp_multiplier"),1); } //Инициализация коэффициента
if (gg($params['idesp'].".bmpp_addition")=="") { sg(($params['idesp'].".bmpp_addition"),0); } //Инициализация коэффициента
if (gg($params['idesp'].".bmpt_multiplier")=="") { sg(($params['idesp'].".bmpt_multiplier"),1); } //Инициализация коэффициента
if (gg($params['idesp'].".bmpt_addition")=="") { sg(($params['idesp'].".bmpt_addition"),0); } //Инициализация коэффициента
if (gg($params['idesp'].".bmep_multiplier")=="") { sg(($params['idesp'].".bmep_multiplier"),1); } //Инициализация коэффициента
if (gg($params['idesp'].".bmep_addition")=="") { sg(($params['idesp'].".bmep_addition"),0); } //Инициализация коэффициента
if (gg($params['idesp'].".bmet_multiplier")=="") { sg(($params['idesp'].".bmet_multiplier"),1); } //Инициализация коэффициента
if (gg($params['idesp'].".bmet_addition")=="") { sg(($params['idesp'].".bmet_addition"),0); } //Инициализация коэффициента
if (gg($params['idesp'].".bmeh_multiplier")=="") { sg(($params['idesp'].".bmeh_multiplier"),1); } //Инициализация коэффициента
if (gg($params['idesp'].".bmeh_addition")=="") { sg(($params['idesp'].".bmeh_addition"),0); } //Инициализация коэффициента
if (gg($params['idesp'].".amt_multiplier")=="") { sg(($params['idesp'].".amt_multiplier"),1); } //Инициализация коэффициента
if (gg($params['idesp'].".amt_addition")=="") { sg(($params['idesp'].".amt_addition"),0); } //Инициализация коэффициента
if (gg($params['idesp'].".amh_multiplier")=="") { sg(($params['idesp'].".amh_multiplier"),1); } //Инициализация коэффициента
if (gg($params['idesp'].".amh_addition")=="") { sg(($params['idesp'].".amh_addition"),0); } //Инициализация коэффициента
if (gg($params['idesp'].".dhth1_multiplier")=="") { sg(($params['idesp'].".dhth1_multiplier"),1); } //Инициализация коэффициента
if (gg($params['idesp'].".dhth1_addition")=="") { sg(($params['idesp'].".dhth1_addition"),0); } //Инициализация коэффициента
if (gg($params['idesp'].".dhth2_multiplier")=="") { sg(($params['idesp'].".dhth2_multiplier"),1); } //Инициализация коэффициента
if (gg($params['idesp'].".dhth2_addition")=="") { sg(($params['idesp'].".dhth2_addition"),0); } //Инициализация коэффициента
if (gg($params['idesp'].".dhtt1_multiplier")=="") { sg(($params['idesp'].".dhtt1_multiplier"),1); } //Инициализация коэффициента
if (gg($params['idesp'].".dhtt1_addition")=="") { sg(($params['idesp'].".dhtt1_addition"),0); } //Инициализация коэффициента
if (gg($params['idesp'].".dhtt2_multiplier")=="") { sg(($params['idesp'].".dhtt2_multiplier"),1); } //Инициализация коэффициента
if (gg($params['idesp'].".dhtt2_addition")=="") { sg(($params['idesp'].".dhtt2_addition"),0); } //Инициализация коэффициента
if (gg($params['idesp'].".dsw1_multiplier")=="") { sg(($params['idesp'].".dsw1_multiplier"),1); } //Инициализация коэффициента
if (gg($params['idesp'].".dsw1_addition")=="") { sg(($params['idesp'].".dsw1_addition"),0); } //Инициализация коэффициента
if (gg($params['idesp'].".dsw2_multiplier")=="") { sg(($params['idesp'].".dsw2_multiplier"),1); } //Инициализация коэффициента
if (gg($params['idesp'].".dsw2_addition")=="") { sg(($params['idesp'].".dsw2_addition"),0); } //Инициализация коэффициента
if (gg($params['idesp'].".dsw3_multiplier")=="") { sg(($params['idesp'].".dsw3_multiplier"),1); } //Инициализация коэффициента
if (gg($params['idesp'].".dsw3_addition")=="") { sg(($params['idesp'].".dsw3_addition"),0); } //Инициализация коэффициента
if (gg($params['idesp'].".dsw4_multiplier")=="") { sg(($params['idesp'].".dsw4_multiplier"),1); } //Инициализация коэффициента
if (gg($params['idesp'].".dsw4_addition")=="") { sg(($params['idesp'].".dsw4_addition"),0); } //Инициализация коэффициента
//Распихиваем всё по свойствам. Если полученное значение пустое, то свойство не записываем
if ($params['bmpp']!="") { sg(($params['idesp'].".bmpp"),$params['bmpp']*gg($params['idesp'].".bmpp_multiplier")+gg($params['idesp'].".bmpp_addition")); } //Данные с датчика BMP (давление)
if ($params['bmpt']!="") { sg(($params['idesp'].".bmpt"),$params['bmpt']*gg($params['idesp'].".bmpt_multiplier")+gg($params['idesp'].".bmpt_addition")); } //Данные с датчика BMP (температура)
if (($params['bmep']!="") && ($params['bmep']!="_BMEP_")) { sg(($params['idesp'].".bme_pressure"),$params['bmep']*gg($params['idesp'].".bmep_multiplier")+gg($params['idesp'].".bmep_addition")); } //Данные с датчика BME280 (давление)
if (($params['bmet']!="") && ($params['bmet']!="_BMET_")) { sg(($params['idesp'].".bme_temper"),$params['bmet']*gg($params['idesp'].".bmet_multiplier")+gg($params['idesp'].".bmet_addition")); } //Данные с датчика BME280 (температура)
if (($params['bmeh']!="") && ($params['bmeh']!="_BMEH_")) { sg(($params['idesp'].".bme_humidity"),$params['bmeh']*gg($params['idesp'].".bmeh_multiplier")+gg($params['idesp'].".bmeh_addition")); } //Данные с датчика BME280 (влажность)
if ($params['counter']!="") { sg(($params['idesp'].".counter"),$params['counter']); } //Количество импульсов со счетчика
if (($params['amt']!="") && ($params['amt']!="255.0")) { sg(($params['idesp'].".am2320_temper"),$params['amt']*gg($params['idesp'].".amt_multiplier")+gg($params['idesp'].".amt_addition")); } //Данные с I2C датчика AM232x (температура)
if (($params['amh']!="") && ($params['amh']!="255.0")) { sg(($params['idesp'].".am2320_humidity"),$params['amh']*gg($params['idesp'].".amh_multiplier")+gg($params['idesp'].".amh_addition")); } //Данные с I2C датчика AM232x (влажность)
if ($params['dhth1']!="") { sg(($params['idesp'].".dhth1"),$params['dhth1']*gg($params['idesp'].".dhth1_multiplier")+gg($params['idesp'].".dhth1_addition")); } //Данные с первого датчика DHT (влажность)
if ($params['dhth2']!="") { sg(($params['idesp'].".dhth2"),$params['dhth2']*gg($params['idesp'].".dhth2_multiplier")+gg($params['idesp'].".dhth2_addition")); } //Данные со второго датчика DHT (влажность)
if ($params['dhtt1']!="") { sg(($params['idesp'].".dhtt1"),$params['dhtt1']*gg($params['idesp'].".dhtt1_multiplier")+gg($params['idesp'].".dhtt1_addition")); } //Данные с первого датчика DHT (температура)
if ($params['dhtt2']!="") { sg(($params['idesp'].".dhtt2"),$params['dhtt2']*gg($params['idesp'].".dhtt2_multiplier")+gg($params['idesp'].".dhtt2_addition")); } //Данные со второго датчика DHT (температура)
if (($params['dsw1']!="") && ($params['dsw1']!="255.0")) { sg(($params['idesp'].".Temper_1"),$params['dsw1']*gg($params['idesp'].".dsw1_multiplier")+gg($params['idesp'].".dsw1_addition")); } //Данные с датчика DS18B20 №1
if (($params['dsw2']!="") && ($params['dsw2']!="255.0")) { sg(($params['idesp'].".Temper_2"),$params['dsw2']*gg($params['idesp'].".dsw2_multiplier")+gg($params['idesp'].".dsw2_addition")); } //Данные с датчика DS18B20 №2
if (($params['dsw3']!="") && ($params['dsw3']!="255.0")) { sg(($params['idesp'].".Temper_3"),$params['dsw3']*gg($params['idesp'].".dsw3_multiplier")+gg($params['idesp'].".dsw3_addition")); } //Данные с датчика DS18B20 №3
if (($params['dsw4']!="") && ($params['dsw4']!="255.0")) { sg(($params['idesp'].".Temper_4"),$params['dsw4']*gg($params['idesp'].".dsw4_multiplier")+gg($params['idesp'].".dsw4_addition")); } //Данные с датчика DS18B20 №4
if (($params['dsw5']!="") && ($params['dsw5']!="255.0")) { sg(($params['idesp'].".Temper_5"),$params['dsw5']); } //Данные с датчика DS18B20 №5
if ($params['freemem']!="") { sg(($params['idesp'].".freemem"),$params['freemem']); } //Объем свободной памяти модуля
if ($params['hostname']!="") { sg(($params['idesp'].".hostname"),$params['hostname']); } //Имя модуля
if ($params['light']!="") { sg(($params['idesp'].".light"),$params['light']); } //Данные с датчика BH1750
if ($params['uptime']!="") { sg(($params['idesp'].".uptime"),$params['uptime']); } //Время непрерывной работы модуля
if ($params['vdd']!="") { sg(($params['idesp'].".vdd"),$params['vdd']); } //Напряжение на модуле
if ($params['ver']!="") { sg(($params['idesp'].".ver"),$params['ver']); } //Версия прошивки
if ($params['wanip']!="") { sg(($params['idesp'].".wanip"),$params['wanip']); } //IP-адрес
sg(($params['idesp'].".idesp"),$params['idesp']); //