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,113 @@
|
||||
import enum
|
||||
|
||||
|
||||
class MQTTErrorCode(enum.IntEnum):
|
||||
MQTT_ERR_AGAIN = -1
|
||||
MQTT_ERR_SUCCESS = 0
|
||||
MQTT_ERR_NOMEM = 1
|
||||
MQTT_ERR_PROTOCOL = 2
|
||||
MQTT_ERR_INVAL = 3
|
||||
MQTT_ERR_NO_CONN = 4
|
||||
MQTT_ERR_CONN_REFUSED = 5
|
||||
MQTT_ERR_NOT_FOUND = 6
|
||||
MQTT_ERR_CONN_LOST = 7
|
||||
MQTT_ERR_TLS = 8
|
||||
MQTT_ERR_PAYLOAD_SIZE = 9
|
||||
MQTT_ERR_NOT_SUPPORTED = 10
|
||||
MQTT_ERR_AUTH = 11
|
||||
MQTT_ERR_ACL_DENIED = 12
|
||||
MQTT_ERR_UNKNOWN = 13
|
||||
MQTT_ERR_ERRNO = 14
|
||||
MQTT_ERR_QUEUE_SIZE = 15
|
||||
MQTT_ERR_KEEPALIVE = 16
|
||||
|
||||
|
||||
class MQTTProtocolVersion(enum.IntEnum):
|
||||
MQTTv31 = 3
|
||||
MQTTv311 = 4
|
||||
MQTTv5 = 5
|
||||
|
||||
|
||||
class CallbackAPIVersion(enum.Enum):
|
||||
"""Defined the arguments passed to all user-callback.
|
||||
|
||||
See each callbacks for details: `on_connect`, `on_connect_fail`, `on_disconnect`, `on_message`, `on_publish`,
|
||||
`on_subscribe`, `on_unsubscribe`, `on_log`, `on_socket_open`, `on_socket_close`,
|
||||
`on_socket_register_write`, `on_socket_unregister_write`
|
||||
"""
|
||||
VERSION1 = 1
|
||||
"""The version used with paho-mqtt 1.x before introducing CallbackAPIVersion.
|
||||
|
||||
This version had different arguments depending if MQTTv5 or MQTTv3 was used. `Properties` & `ReasonCode` were missing
|
||||
on some callback (apply only to MQTTv5).
|
||||
|
||||
This version is deprecated and will be removed in version 3.0.
|
||||
"""
|
||||
VERSION2 = 2
|
||||
""" This version fix some of the shortcoming of previous version.
|
||||
|
||||
Callback have the same signature if using MQTTv5 or MQTTv3. `ReasonCode` are used in MQTTv3.
|
||||
"""
|
||||
|
||||
|
||||
class MessageType(enum.IntEnum):
|
||||
CONNECT = 0x10
|
||||
CONNACK = 0x20
|
||||
PUBLISH = 0x30
|
||||
PUBACK = 0x40
|
||||
PUBREC = 0x50
|
||||
PUBREL = 0x60
|
||||
PUBCOMP = 0x70
|
||||
SUBSCRIBE = 0x80
|
||||
SUBACK = 0x90
|
||||
UNSUBSCRIBE = 0xA0
|
||||
UNSUBACK = 0xB0
|
||||
PINGREQ = 0xC0
|
||||
PINGRESP = 0xD0
|
||||
DISCONNECT = 0xE0
|
||||
AUTH = 0xF0
|
||||
|
||||
|
||||
class LogLevel(enum.IntEnum):
|
||||
MQTT_LOG_INFO = 0x01
|
||||
MQTT_LOG_NOTICE = 0x02
|
||||
MQTT_LOG_WARNING = 0x04
|
||||
MQTT_LOG_ERR = 0x08
|
||||
MQTT_LOG_DEBUG = 0x10
|
||||
|
||||
|
||||
class ConnackCode(enum.IntEnum):
|
||||
CONNACK_ACCEPTED = 0
|
||||
CONNACK_REFUSED_PROTOCOL_VERSION = 1
|
||||
CONNACK_REFUSED_IDENTIFIER_REJECTED = 2
|
||||
CONNACK_REFUSED_SERVER_UNAVAILABLE = 3
|
||||
CONNACK_REFUSED_BAD_USERNAME_PASSWORD = 4
|
||||
CONNACK_REFUSED_NOT_AUTHORIZED = 5
|
||||
|
||||
|
||||
class _ConnectionState(enum.Enum):
|
||||
MQTT_CS_NEW = enum.auto()
|
||||
MQTT_CS_CONNECT_ASYNC = enum.auto()
|
||||
MQTT_CS_CONNECTING = enum.auto()
|
||||
MQTT_CS_CONNECTED = enum.auto()
|
||||
MQTT_CS_CONNECTION_LOST = enum.auto()
|
||||
MQTT_CS_DISCONNECTING = enum.auto()
|
||||
MQTT_CS_DISCONNECTED = enum.auto()
|
||||
|
||||
|
||||
class MessageState(enum.IntEnum):
|
||||
MQTT_MS_INVALID = 0
|
||||
MQTT_MS_PUBLISH = 1
|
||||
MQTT_MS_WAIT_FOR_PUBACK = 2
|
||||
MQTT_MS_WAIT_FOR_PUBREC = 3
|
||||
MQTT_MS_RESEND_PUBREL = 4
|
||||
MQTT_MS_WAIT_FOR_PUBREL = 5
|
||||
MQTT_MS_RESEND_PUBCOMP = 6
|
||||
MQTT_MS_WAIT_FOR_PUBCOMP = 7
|
||||
MQTT_MS_SEND_PUBREC = 8
|
||||
MQTT_MS_QUEUED = 9
|
||||
|
||||
|
||||
class PahoClientMode(enum.IntEnum):
|
||||
MQTT_CLIENT = 0
|
||||
MQTT_BRIDGE = 1
|
||||
Reference in New Issue
Block a user