SolarManager unter Versionsverwaltung
Erster Stand der Hintergrundprozesse, die auf der Synology unter /volume1/homes/wagner/SolarManager laufen: der Manager selbst, die Sammler je Geraet, die MQTT-Bruecke, der Wecker und - neu hinzugezogen - der AutoAction-Runner, der als Hintergrundprozess hierher gehoert und nicht ins Web-Verzeichnis. Zugangsdaten stehen nicht mehr im Quelltext, sondern in config.ini, die nicht mit eingecheckt wird. Vorlage ist config.ini.example, gelesen wird sie von konfig.py. Betroffen waren solarManager.py (Datenbank und Wattpilot), zeit.py, gatherWaterData.py, wecker.py und skoda_testdaten.py, das sich das Passwort bisher aus dem Quelltext eines anderen Moduls herausgesucht hat. Die Kia-Anbindung ist mit dem Fahrzeug entfallen: kiaTest.py, gatherCarData.py und hyundai_kia_connect_api sind nicht mehr dabei, ebenso gatherInverterData.py, auf das nur noch eine auskommentierte Zeile zeigte. Die mitgelieferten Bibliotheken bleiben im Repository - die NAS hat kein pip, sie muessen neben den Skripten liegen. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,763 @@
|
||||
{
|
||||
"group": {
|
||||
"desc": "Security model for PKI",
|
||||
"groups": [
|
||||
{
|
||||
"count": 0,
|
||||
"name": "repeating",
|
||||
"points": [
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Cert",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
}
|
||||
],
|
||||
"type": "group"
|
||||
}
|
||||
],
|
||||
"label": "Set Operator Security Certificate",
|
||||
"name": "model_9",
|
||||
"points": [
|
||||
{
|
||||
"desc": "Model identifier",
|
||||
"label": "Model ID",
|
||||
"mandatory": "M",
|
||||
"name": "ID",
|
||||
"size": 1,
|
||||
"static": "S",
|
||||
"type": "uint16",
|
||||
"value": 9
|
||||
},
|
||||
{
|
||||
"desc": "Model length",
|
||||
"label": "Model Length",
|
||||
"mandatory": "M",
|
||||
"name": "L",
|
||||
"size": 1,
|
||||
"static": "S",
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"desc": "User ID for this certificate",
|
||||
"label": "Cert_UID",
|
||||
"mandatory": "M",
|
||||
"name": "CertUID",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"desc": "Role for this certificate",
|
||||
"label": "Cert_Role",
|
||||
"mandatory": "M",
|
||||
"name": "CertRole",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"desc": "Format of this certificate",
|
||||
"label": "Format",
|
||||
"mandatory": "M",
|
||||
"name": "Fmt",
|
||||
"size": 1,
|
||||
"symbols": [
|
||||
{
|
||||
"name": "NONE",
|
||||
"value": 0
|
||||
},
|
||||
{
|
||||
"name": "X509_PEM",
|
||||
"value": 1
|
||||
},
|
||||
{
|
||||
"name": "X509_DER",
|
||||
"value": 2
|
||||
}
|
||||
],
|
||||
"type": "enum16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"desc": "Type of this certificate",
|
||||
"label": "Type",
|
||||
"mandatory": "M",
|
||||
"name": "Typ",
|
||||
"size": 1,
|
||||
"symbols": [
|
||||
{
|
||||
"name": "DEV_KEY_PAIR",
|
||||
"value": 0
|
||||
},
|
||||
{
|
||||
"name": "DEV_SHARED_KEY",
|
||||
"value": 1
|
||||
},
|
||||
{
|
||||
"name": "OPERATOR_PUB",
|
||||
"value": 2
|
||||
},
|
||||
{
|
||||
"name": "OPERATOR_SHARED",
|
||||
"value": 3
|
||||
},
|
||||
{
|
||||
"name": "CA_PUB",
|
||||
"value": 4
|
||||
}
|
||||
],
|
||||
"type": "enum16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"desc": "Total Length of the Certificate",
|
||||
"label": "Total Length",
|
||||
"mandatory": "M",
|
||||
"name": "TotLn",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"desc": "Length of this fragment",
|
||||
"label": "Fragment length",
|
||||
"mandatory": "M",
|
||||
"name": "FrgLn",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"desc": "First word of this fragment",
|
||||
"label": "Frag1",
|
||||
"mandatory": "M",
|
||||
"name": "Frg1",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg2",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg3",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg4",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg5",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg6",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg7",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg8",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg9",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg10",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg11",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg12",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg13",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg14",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg15",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg16",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg17",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg18",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg19",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg20",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg21",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg22",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg23",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg24",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg25",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg26",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg27",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg28",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg29",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg30",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg31",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg32",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg33",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg34",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg35",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg36",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg37",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg38",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg39",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg40",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg41",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg42",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg43",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg44",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg45",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg46",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg47",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg48",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg49",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg50",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg51",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg52",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg53",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg54",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg55",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg56",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg57",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg58",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg59",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg60",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg61",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg62",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg63",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg64",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg65",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg66",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg67",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg68",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg69",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg70",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg71",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg72",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg73",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg74",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg75",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg78",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"mandatory": "M",
|
||||
"name": "Frg79",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"desc": "Last word of this fragment",
|
||||
"label": "Frag80",
|
||||
"mandatory": "M",
|
||||
"name": "Frg80",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"desc": "Timestamp value is the number of seconds since January 1, 2000",
|
||||
"label": "Timestamp",
|
||||
"mandatory": "M",
|
||||
"name": "Ts",
|
||||
"size": 2,
|
||||
"type": "uint32"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"desc": "Millisecond counter 0-999",
|
||||
"label": "Milliseconds",
|
||||
"mandatory": "M",
|
||||
"name": "Ms",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"desc": "Sequence number of request",
|
||||
"label": "Sequence",
|
||||
"mandatory": "M",
|
||||
"name": "Seq",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"desc": "User ID for the request signature",
|
||||
"label": "UID",
|
||||
"mandatory": "M",
|
||||
"name": "UID",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"desc": "Signing key used 0-5",
|
||||
"label": "Role",
|
||||
"mandatory": "M",
|
||||
"name": "Role",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"desc": "Algorithm used to compute the digital signature",
|
||||
"label": "Algorithm",
|
||||
"mandatory": "M",
|
||||
"name": "Alg",
|
||||
"size": 1,
|
||||
"symbols": [
|
||||
{
|
||||
"name": "NONE",
|
||||
"value": 0
|
||||
},
|
||||
{
|
||||
"name": "AES-GMAC-64",
|
||||
"value": 1
|
||||
},
|
||||
{
|
||||
"name": "ECC-256",
|
||||
"value": 2
|
||||
}
|
||||
],
|
||||
"type": "enum16"
|
||||
},
|
||||
{
|
||||
"access": "RW",
|
||||
"desc": "Number of registers to follow for the certificate",
|
||||
"label": "N",
|
||||
"mandatory": "M",
|
||||
"name": "N",
|
||||
"size": 1,
|
||||
"type": "uint16"
|
||||
}
|
||||
],
|
||||
"type": "group"
|
||||
},
|
||||
"id": 9
|
||||
}
|
||||
Reference in New Issue
Block a user