mirror of https://github.com/arendst/Tasmota.git
Created JSON Status Responses (markdown)
parent
48a20e63cc
commit
f689cf9848
|
@ -0,0 +1,401 @@
|
|||
## Default
|
||||
|
||||
{
|
||||
"Status": {
|
||||
"Module": 1,
|
||||
"FriendlyName": "XXX",
|
||||
"Topic": "sonoff",
|
||||
"ButtonTopic": "0",
|
||||
"Power": 0,
|
||||
"PowerOnState": 0,
|
||||
"LedState": 1,
|
||||
"SaveData": 0,
|
||||
"SaveState": 1,
|
||||
"ButtonRetain": 0,
|
||||
"PowerRetain": 0
|
||||
},
|
||||
"StatusPRM": {
|
||||
"Baudrate": 115200,
|
||||
"GroupTopic": "sonoffs",
|
||||
"OtaUrl": "XXX",
|
||||
"Uptime": "1 02:33:26",
|
||||
"Sleep": 150,
|
||||
"BootCount": 32,
|
||||
"SaveCount": 72,
|
||||
"SaveAddress": "FB000"
|
||||
},
|
||||
"StatusFWR": {
|
||||
"Version": "5.12.0a",
|
||||
"BuildDateTime": "2018.02.11 16:15:40",
|
||||
"Boot": 31,
|
||||
"Core": "2_4_0",
|
||||
"SDK": "2.1.0(deb1901)"
|
||||
},
|
||||
"StatusLOG": {
|
||||
"SerialLog": 0,
|
||||
"WebLog": 4,
|
||||
"SysLog": 0,
|
||||
"LogHost": "domus1",
|
||||
"LogPort": 514,
|
||||
"SSId1": "XXX",
|
||||
"SSId2": "XXX",
|
||||
"TelePeriod": 300,
|
||||
"SetOption": "00000001"
|
||||
},
|
||||
"StatusMEM": {
|
||||
"ProgramSize": 457,
|
||||
"Free": 544,
|
||||
"Heap": 23,
|
||||
"ProgramFlashSize": 1024,
|
||||
"FlashSize": 1024,
|
||||
"FlashMode": 3
|
||||
},
|
||||
"StatusNET": {
|
||||
"Hostname": "XXX",
|
||||
"IPAddress": "192.168.178.XX",
|
||||
"Gateway": "192.168.178.XX",
|
||||
"Subnetmask": "255.255.255.XX",
|
||||
"DNSServer": "192.168.178.XX",
|
||||
"Mac": "2C:3A:E8:XX:XX:XX",
|
||||
"Webserver": 2,
|
||||
"WifiConfig": 4
|
||||
},
|
||||
"StatusTIM": {
|
||||
"UTC": "Thu Feb 15 00:00:50 2018",
|
||||
"Local": "Thu Feb 15 01:00:50 2018",
|
||||
"StartDST": "Sun Mar 25 02:00:00 2018",
|
||||
"EndDST": "Sun Oct 28 03:00:00 2018",
|
||||
"Timezone": 1
|
||||
},
|
||||
"StatusSNS": {
|
||||
"Time": "2018.02.15 01:00:50",
|
||||
"Switch1": "OFF"
|
||||
},
|
||||
"StatusSTS": {
|
||||
"Time": "2018.02.15 01:00:50",
|
||||
"Uptime": "1 02:33:26",
|
||||
"Vcc": 3.504,
|
||||
"POWER": "OFF",
|
||||
"Wifi": {
|
||||
"AP": 1,
|
||||
"SSId": "XXX",
|
||||
"RSSI": 100,
|
||||
"APMac": "34:31:C4:XX:XX:XX"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
## MQTT
|
||||
|
||||
After StatusNET
|
||||
|
||||
"StatusMQT": {
|
||||
"MqttHost": "192.168.XXX.XX",
|
||||
"MqttPort": 1883,
|
||||
"MqttClientMask": "DVES_%06X",
|
||||
"MqttClient": "DVES_4AXXXX",
|
||||
"MqttUser": "admin",
|
||||
"MAX_PACKET_SIZE": 1000,
|
||||
"KEEPALIVE": 15
|
||||
},
|
||||
|
||||
## Domoticz
|
||||
idx, nvalue, svalue without array
|
||||
|
||||
..."StatusTIM": {
|
||||
"UTC": "Thu Feb 01 20:29:40 2018",
|
||||
"Local": "Thu Feb 01 21:29:40 2018",
|
||||
"StartDST": "Sun Mar 25 02:00:00 2018",
|
||||
"EndDST": "Sun Oct 28 03:00:00 2018",
|
||||
"Timezone": 1
|
||||
},
|
||||
"idx": 286,
|
||||
"nvalue": 0,
|
||||
"svalue": "19.7",
|
||||
"StatusSNS": {
|
||||
"Time": "2018.02.01 21:29:40",
|
||||
"DS18B20": {
|
||||
"Temperature": 19.7
|
||||
},
|
||||
"TempUnit": "C"
|
||||
},
|
||||
"StatusSTS": { ...
|
||||
|
||||
|
||||
## POW
|
||||
|
||||
After StatusTIM
|
||||
|
||||
"StatusPTH": {
|
||||
"PowerLow": 0,
|
||||
"PowerHigh": 0,
|
||||
"VoltageLow": 0,
|
||||
"VoltageHigh": 0,
|
||||
"CurrentLow": 0,
|
||||
"CurrentHigh": 0
|
||||
},
|
||||
"StatusSNS": {
|
||||
"Time": "2018.02.04 23:17:01",
|
||||
"ENERGY": {
|
||||
"Total": 3.185,
|
||||
"Yesterday": 3.058,
|
||||
"Today": 0.127,
|
||||
"Power": 0,
|
||||
"Factor": 0.00,
|
||||
"Voltage": 221,
|
||||
"Current": 0.000
|
||||
}
|
||||
},
|
||||
|
||||
## Sensors
|
||||
|
||||
### AM2301
|
||||
|
||||
"StatusSNS": {
|
||||
"Time": "2018.02.01 22:52:09",
|
||||
"AM2301": {
|
||||
"Temperature": 15.5,
|
||||
"Humidity": 50.6
|
||||
},
|
||||
"TempUnit": "C"
|
||||
},
|
||||
|
||||
### BMP280
|
||||
|
||||
{
|
||||
"StatusSNS": {
|
||||
"Time": "2018-02-10T22:46:34",
|
||||
"BMP280": {
|
||||
"Temperature": 80.9,
|
||||
"Pressure": 984.4
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
### DHT11
|
||||
|
||||
"StatusSNS": {
|
||||
"Time": "2018.02.01 22:48:39",
|
||||
"DHT11": {
|
||||
"Temperature": 12.0,
|
||||
"Humidity": 42.0
|
||||
},
|
||||
"TempUnit": "C"
|
||||
},
|
||||
|
||||
### DS18B20
|
||||
|
||||
"StatusSNS": {
|
||||
"Time": "2018.02.01 21:29:40",
|
||||
"DS18B20": {
|
||||
"Temperature": 19.7
|
||||
},
|
||||
"TempUnit": "C"
|
||||
},
|
||||
|
||||
### SHT3X (and DHT11, multiple Sensor example)
|
||||
|
||||
{
|
||||
"StatusSNS": {
|
||||
"Time": "2018-02-07T20:16:19",
|
||||
"DHT11": {
|
||||
"Temperature": 78.8,
|
||||
"Humidity": 27.0
|
||||
},
|
||||
"SHT3X": {
|
||||
"Temperature": 74.8,
|
||||
"Humidity": 18.9
|
||||
},
|
||||
"TempUnit": "F"
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
## Bugged JSON in <= 5.10.0 (invalid JSON)
|
||||
|
||||
Also, before 5.10.0j JSON was translated! (< 5.10.0j)
|
||||
|
||||
STATUS = {
|
||||
"Status": {
|
||||
"Module": 4,
|
||||
"FriendlyName": "XXX",
|
||||
"Topic": "sonoff",
|
||||
"ButtonTopic": "0",
|
||||
"Power": 0,
|
||||
"PowerOnState": 0,
|
||||
"LedState": 0,
|
||||
"SaveData": 1,
|
||||
"SaveState": 1,
|
||||
"ButtonRetain": 0,
|
||||
"PowerRetain": 0
|
||||
}
|
||||
}
|
||||
STATUS1 = {
|
||||
"StatusPRM": {
|
||||
"Baudrate": 115200,
|
||||
"GroupTopic": "sonoffs",
|
||||
"OtaUrl": "X",
|
||||
"Laufzeit": 8,
|
||||
"Sleep": 0,
|
||||
"BootZähler": 50,
|
||||
"SaveCount": 121,
|
||||
"SaveAddress": "F8000"
|
||||
}
|
||||
}
|
||||
STATUS2 = {
|
||||
"StatusFWR": {
|
||||
"Version": "5.10.0",
|
||||
"BuildDatumUhrzeit": "2018.01.12 17:48:45",
|
||||
"Boot": 6,
|
||||
"Core": "2_4_0",
|
||||
"SDK": "2.1.0(deb1901)"
|
||||
}
|
||||
}
|
||||
STATUS3 = {
|
||||
"StatusLOG": {
|
||||
"SerialLog": 2,
|
||||
"WebLog": 2,
|
||||
"SysLog": 0,
|
||||
"LogHost": "XXX",
|
||||
"LogPort": 514,
|
||||
"SSId1": "YYYY",
|
||||
"SSId2": "XXX",
|
||||
"TelePeriod": 300,
|
||||
"SetOption": "00000009"
|
||||
}
|
||||
}
|
||||
STATUS4 = {
|
||||
"StatusMEM": {
|
||||
"ProgramSize": 508,
|
||||
"frei": 492,
|
||||
"Heap-Größe": 19,
|
||||
"ProgramFlashSize": 1024,
|
||||
"FlashSize": 1024,
|
||||
"FlashMode": 3
|
||||
}
|
||||
}
|
||||
STATUS5 = {
|
||||
"StatusNET": {
|
||||
"Hostname": "XXX",
|
||||
"IPAddress": "192.168.178.111",
|
||||
"Gateway": "192.168.178.1",
|
||||
"Subnetmaske": "255.255.255.0",
|
||||
"DNSServer": "192.168.178.1",
|
||||
"MAC": "XX:XX:XX:XX:XX:XX",
|
||||
"Webserver": 2,
|
||||
"WifiConfig": 0
|
||||
}
|
||||
}
|
||||
STATUS6 = {
|
||||
"StatusMQT": {
|
||||
"MqttHost": "192.168.178.111",
|
||||
"MqttPort": 1883,
|
||||
"MqttClientMaske": "XXXX",
|
||||
"MqttClient": "XXXX",
|
||||
"MqttUser": "XXXX",
|
||||
"MAX_PACKET_SIZE": 512,
|
||||
"KEEPALIVE": 15
|
||||
}
|
||||
}
|
||||
STATUS7 = {
|
||||
"StatusTIM": {
|
||||
"UTC": "Mon Jan 22 19:05:14 2018",
|
||||
"lokale Zeit": "Mon Jan 22 20:05:14 2018",
|
||||
"StartDST": "Sun Mar 25 02:00:00 2018",
|
||||
"EndDST": "Sun Oct 28 03:00:00 2018",
|
||||
"Timezone": 1
|
||||
}
|
||||
}
|
||||
in = {
|
||||
"idx": 13,
|
||||
"nvalue": 0,
|
||||
"svalue": "1.5;99.9;3"
|
||||
}
|
||||
STATUS10 = {
|
||||
"StatusSNS": {
|
||||
"Zeit": "2018.01.22 20:05:14",
|
||||
"AM2301": {
|
||||
"Temperatur": 1.5,
|
||||
"Feuchtigkeit": 99.9
|
||||
},
|
||||
"TempUnit": "C"
|
||||
}
|
||||
}
|
||||
STATUS11 = {
|
||||
"StatusSTS": {
|
||||
"Zeit": "2018.01.22 20:05:14",
|
||||
"Laufzeit": 8,
|
||||
"VCC": 3.476,
|
||||
"POWER": "OFF",
|
||||
"WLAN": {
|
||||
"AP": 1,
|
||||
"SSID": "XXXX",
|
||||
"RSSI": 18,
|
||||
"APMac": "XX:XX:XX:XX:XX:XX"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
### PHP Fix for invalid JSON <= 5.10.0
|
||||
|
||||
private function fixJsonFormatV5100( $string ) {
|
||||
|
||||
$string = substr( $string, strpos( $string, "STATUS = " ) );
|
||||
if ( strpos( $string, "POWER = " ) !== FALSE ) {
|
||||
$string = substr( $string, strpos( $string, "{" ) );
|
||||
$string = substr( $string, 0, strrpos( $string, "}" ) + 1 );
|
||||
}
|
||||
if ( strpos( $string, "ERGEBNIS = " ) !== FALSE ) {
|
||||
$string = substr( $string, strpos( $string, "{" ) );
|
||||
$string = substr( $string, 0, strrpos( $string, "}" ) + 1 );
|
||||
}
|
||||
if ( strpos( $string, "RESULT = " ) !== FALSE ) {
|
||||
$string = substr( $string, strpos( $string, "{" ) );
|
||||
$string = substr( $string, 0, strrpos( $string, "}" ) + 1 );
|
||||
}
|
||||
|
||||
$remove = [
|
||||
PHP_EOL,
|
||||
"\n",
|
||||
"STATUS = ",
|
||||
"}STATUS1 = {",
|
||||
"}STATUS2 = {",
|
||||
"}STATUS3 = {",
|
||||
"}STATUS4 = {",
|
||||
"}STATUS5 = {",
|
||||
"}STATUS6 = {",
|
||||
"}STATUS7 = {",
|
||||
"}in = {",
|
||||
"}STATUS8 = {",
|
||||
"}STATUS9 = {",
|
||||
"}STATUS10 = {",
|
||||
"}STATUS11 = {",
|
||||
"STATUS2 = ",
|
||||
];
|
||||
$replace = [
|
||||
"",
|
||||
"",
|
||||
"",
|
||||
",",
|
||||
",",
|
||||
",",
|
||||
",",
|
||||
",",
|
||||
",",
|
||||
",",
|
||||
",",
|
||||
",",
|
||||
",",
|
||||
",",
|
||||
",",
|
||||
"",
|
||||
];
|
||||
|
||||
$string = str_replace( $remove, $replace, $string );
|
||||
|
||||
return $string;
|
||||
}
|
||||
|
Loading…
Reference in New Issue