FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: pula am 23 Dezember 2017, 18:13:25

Titel: [Gelöst] userReading maximale Länge oder webcall maximale Länge
Beitrag von: pula am 23 Dezember 2017, 18:13:25
Hallo,

ich arbeite grad an einer Sache, bei der ich einen ziemlich langen JSON-String per webcall in ein Reading schreiben möchte (Kanalinformationen inkl. laufender Sendung aus Kodi für ein widget in ftui).
Ich mache das mittels eines kleinen Skripts, das dann die FHEM-Url entsprechend feuert.
Leider wird der übermittelte String bei genau 15251 Zeichen abgeschnitten. Gibt es hier ein Limit? Und lässt es sich eventuell umgehen?

Danke im voraus und Cheers,

Pula
Titel: Antw:userReadin maximale Länge oder webcall maximale Länge
Beitrag von: betateilchen am 23 Dezember 2017, 19:16:57
ich geh mal Popcorn holen...
Titel: Antw:userReadin maximale Länge oder webcall maximale Länge
Beitrag von: pula am 23 Dezember 2017, 19:20:25
Popcorn? :-)
Eine Alternative wäre, für jeden Kanal ein Reading zu erzeugen, aber das wären dann ziemlich viele Readings...
Titel: Antw:userReadin maximale Länge oder webcall maximale Länge
Beitrag von: betateilchen am 23 Dezember 2017, 19:41:39
Mit erschließt sich der Sinn nicht, in einem reading einen so langen String abzulegen. Dafür sind readings eigentlich nicht gedacht.


Titel: Antw:userReadin maximale Länge oder webcall maximale Länge
Beitrag von: pula am 23 Dezember 2017, 19:51:07
Verstehe ich.
Der Sinn dahinter ist eigentlich ganz einfach erklärt:
Die Abfrage von den Kanal-Informationen von Kodi dauert je nach verwendeter Hardware einige Sekunden (weil für jeden einzelnen Kanal ein rpc-Call gemacht werden muss), was sich in einem Frontend wie ftui meiner Meinung nach nicht gerade gut macht, vor allem, weil ftui ja eher auf schwachbrüstigerer Hardware wie Tablets läuft und vor allem für menschliche Interaktion gemacht ist (und als Mensch ist Geduld nicht grad meine Stärke, wenn ich auf ein Tablet warten muss).
Die Idee ist, die benötigten Infos auf eher stärkerer Hardware (bei mir ein Linux-Server, auf dem fhem läuft) periodisch abzufragen und dann in ftui nur noch die Daten auszuwerten.
Ich fände es schön, wenn ich dann auf dem Tablet, auf dem ftui angezeigt wird, per Dropdown einen Kanal aussuchen kann und auch die Info habe, was gerade wo läuft....
Hast Du alternative Ideen? Wie gesagt, wenn ich zb 100 Kanäle in je einem Reading speichere, geht das auch, aber irgendwie erscheint mir das nicht so prickelnd...
Wenn ich die aktuellen Programm-Infos in dem Dropdown nicht ausgebe, geht es sich mit der Länge des Readings aus, aber komfortabler wäre natürlich, wenn diese Info auch angezeigt werden würde...




Titel: Antw:userReadin maximale Länge oder webcall maximale Länge
Beitrag von: herrmannj am 23 Dezember 2017, 23:45:06
es gibt für die Länge der URL inkl der Parameter (dein JSON) keine harte Grenze. In der Regel begrenzen sowohl Server als auch der Client. Mit knapp 16k bist Du schon sehr weit vorn, es gibt Clients die kappen bei 2k. In FHEMWEB konnte ich auf die Schnelle kein Limit sehen, es ist wohl Dein Client (der Sender).

Unabhängig von Sinn oder Unsinn das in ein Reading zu packen, solltest Du das als POST absenden, nicht als GET.

Titel: Antw:userReadin maximale Länge oder webcall maximale Länge
Beitrag von: pula am 29 Dezember 2017, 18:51:34
Hallo,

danke für die Antworten!
Bin jetzt auf die Ursache für das Problem gestossen. Hatte nichts mit der Länge zu tun, sondern damit, daß sich in dem String, der ins Reading sollte ein "&" versteckt hatte. Hab das jetzt entsprechend kodiert, jetzt funktioniert alles wunderbar :-)

Sorry für die blöde/falsche Frage...

Cheers,

Pula
Titel: Antw:userReadin maximale Länge oder webcall maximale Länge
Beitrag von: KernSani am 29 Dezember 2017, 19:31:33
Setzt du dann noch auf [gelöst]?

Danke,

Oli
Titel: Antw:[Gelöst] userReadin maximale Länge oder webcall maximale Länge
Beitrag von: pula am 29 Dezember 2017, 23:58:28
Klar... danke für den Hinweis :-)