Momentan muß, wenn ein Anwender ein neues Protokoll testen soll, vom Anwender die Protokoll Hash Datei editiert oder ersetzt und fhem neu gestartet werden.
Mit dem neuen Attribut "userprotocol" kann ein neues Protokoll hinzugefügt werden ohne die Protokoll Hash Datei editieren oder ersetzen.
In das neue Attribut "userprotocol" wird die neue Protokolldefinition als json String eingetragen.
Z.B. bei der ID 95 sieht der json String so aus:
{"name":"Techmar", "id":"95", "one":[1,-0.6], "zero":[1,-1.2], "start":[1,-1.8], "clockabs":"550", "format":"twostate", "preamble":"P95#", "clientmodule":"SD_UT", "length_min":"50", "length_max":"50"}
Mit dem neuen Get Menüeintrag "protocolIdToJson" kann eine vorhandene Protokoll ID als json String ausgegeben werden.
Unter dem json String wird die Protokolldefinition besser lesbar dargestellt.

Der json String kann dann bei Bedarf z.B. in einem Texteditor editiert werden und dann in das Attribut "userprotocol" eingetragen werden.
Als array können auch mehrere json String eingetragen werden:
[{"name":"Techmar"...},{"name":"weather (v1)"...}]
Damit es keine Konflikte mit vorhandenen Protokoll IDs geben kann, ist zu empfehlen für die ID eine Nummer ab 900 zu verwenden.
Momentan muß, wenn ein Anwender ein neues Protokoll testen soll, vom Anwender die Protokoll Hash Datei editiert oder ersetzt und fhem neu gestartet werden.
Mit dem neuen Attribut "userprotocol" kann ein neues Protokoll hinzugefügt werden ohne die Protokoll Hash Datei editieren oder ersetzen.
In das neue Attribut "userprotocol" wird die neue Protokolldefinition als json String eingetragen.
Z.B. bei der ID 95 sieht der json String so aus:
{"name":"Techmar", "id":"95", "one":[1,-0.6], "zero":[1,-1.2], "start":[1,-1.8], "clockabs":"550", "format":"twostate", "preamble":"P95#", "clientmodule":"SD_UT", "length_min":"50", "length_max":"50"}Mit dem neuen Get Menüeintrag "protocolIdToJson" kann eine vorhandene Protokoll ID als json String ausgegeben werden.

Unter dem json String wird die Protokolldefinition besser lesbar dargestellt.
Der json String kann dann bei Bedarf z.B. in einem Texteditor editiert werden und dann in das Attribut "userprotocol" eingetragen werden.
Als array können auch mehrere json String eingetragen werden:
[{"name":"Techmar"...},{"name":"weather (v1)"...}]Damit es keine Konflikte mit vorhandenen Protokoll IDs geben kann, ist zu empfehlen für die ID eine Nummer ab 900 zu verwenden.