FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: T3mplate am 20 März 2017, 00:28:59

Titel: HTTPMOD erzeugt kein "buf"
Beitrag von: T3mplate am 20 März 2017, 00:28:59
Nachdem ich mehrere Themen mittels copy and paste und dem HTTPMOD Modul realisiert habe, wollte ich mich heute am ersten eigenen versuchen und scheitere direkt am Start.

Abrufen möchte ich diese Seite:
http://stadtplan.dresden.de/(S(amwqgeycotb5opqbwdtc3fup))/project/cardo3Apps/IDU_DDStadtplan/abfall/detailpage.aspx?POS-ADR=Winterbergstraße%7C6

Bisher scheitere ich bereits an der Gerätedefinition:
define httpmod HTTPMOD http://stadtplan.dresden.de/(S(amwqgeycotb5opqbwdtc3fup))/project/cardo3Apps/IDU_DDStadtplan/abfall/detailpage.aspx?POS-ADR=Winterbergstraße%7C 60

Mir legt es zwar das Device an, aber "buf" füllt sich nicht. Im log erscheint:
2017.03.20 00:20:29 3: httpmod: Read response to update didn't match any Reading

Ich weis, dass ich noch keine Readings angelegt habe. In der commandref sind diese aber auch optional gekennzeichnet und ich deute das so, dass es auch erstmal ohne gehen müsste.
Das ich die Readings zum auslesen brauche ist mir bewusst. Erstmal soll aber überhaupt etwas im Device erscheinen.

Titel: Antw:HTTPMOD erzeugt kein "buf"
Beitrag von: viegener am 20 März 2017, 00:49:52
Nun gut, wenn Du keine Readings angelegt hast, ist die Meldung ja korrekt und heisst, dass zumindest daten von dem Url abgerufen wurden.

Mit buf meinst Du vermutlich das Internal buf, dass ein interner Puffer der HTTPUtils-Funktionen ist und nicht von HTTPMod direkt erstellt wird. Ich bin auch nicht sicher, ob sich das immer finden wird. 

Wenn Du den Inhalt der HTML-Werte sehen willst, kannst Du ein Reading für die ganze HTTP-Rückgabe angeben --> z.B: mit (.*)
Titel: Antw:HTTPMOD erzeugt kein "buf"
Beitrag von: T3mplate am 20 März 2017, 14:31:21
Ok. Ich dachte das dieser Puffer immer angelegt wird.
Wie genau kann ich diese vollständige Rückgabe absetzen?
So?
attr httpmod reading01Name test
attr httpmod reading01Regex .*


Leider funktioniert das nicht.
Titel: Antw:HTTPMOD erzeugt kein "buf"
Beitrag von: Torben80 am 20 März 2017, 15:42:36
@Viegener:
Genau das ist auch gerade mein Problem,... Deshalb hatte ich ja auch schon den Screenshot gemacht.

Ich habe ein "reading01Name" angelegt und ein "reading01Regex"...
Die einziege Sache wo etwas drin steht bei mir ist:

httpheader          HTTP/1.0 200 OK Date: Mon Mar 20 14:33:19 2017 Server: GoAhead-Webs Last-modified: Thu Nov 18 09:40:55 2010 Content-length: 6383 Content-type: text/html

Schon komisch, aber dann bin ich wenigstens nicht alleine hier ;-)

Aber das hier habe ich gerade gefunden, ist auch von Viegener...:

Folgendes anlegen:

reading01Regex ^(.*)$
reading01RegOpt s


Dann legt er ein Unnamed Reading an, da steht schon mal mehr drin als das, was ich bisher geschafft habe ;-)
Titel: Antw:HTTPMOD erzeugt kein "buf"
Beitrag von: T3mplate am 20 März 2017, 16:07:07
ZitatFolgendes anlegen:

reading01Regex ^(.*)$
Reading01RegOpt s


Dann legt er ein Unnamed Reading an, da steht schon mal mehr drin als das, was ich bisher geschafft habe ;-)

Das unnamed kann man ja leicht mit
reading01Name Test beheben.

Ich werde es dann gleich mal testen.
Titel: Antw:HTTPMOD erzeugt kein "buf"
Beitrag von: Torben80 am 20 März 2017, 16:17:51
Ja, das ist richtig...
Geht mir auch nicht um den Namen. Fakt ist: so kommt man auf jeden Fall schon mal etwas weiter...
Aber trotzdem hätte ich das gerne im buf.
Bei mir kommt leider beim Lesen des Strings mit der RegOpt s Methode eine Fehlermeldung. Wenn ich das attr reading01RegOpt s lösche, dann steht im Reading aber der String drin (html-Inhalt)...

ACHTUNG ich habe mein CODE-Schnippsel oben editiert,... da war das "reading01RegOpt s" leider groß geschrieben "Reading01RegOpt s", was ja falsch ist ;-)
Titel: Antw:HTTPMOD erzeugt kein "buf"
Beitrag von: viegener am 20 März 2017, 18:31:37
Zitat von: Torben80 am 20 März 2017, 16:17:51
Ja, das ist richtig...
Geht mir auch nicht um den Namen. Fakt ist: so kommt man auf jeden Fall schon mal etwas weiter...
Aber trotzdem hätte ich das gerne im buf.
Bei mir kommt leider beim Lesen des Strings mit der RegOpt s Methode eine Fehlermeldung. Wenn ich das attr reading01RegOpt s lösche, dann steht im Reading aber der String drin (html-Inhalt)...

ACHTUNG ich habe mein CODE-Schnippsel oben editiert,... da war das "reading01RegOpt s" leider groß geschrieben "Reading01RegOpt s", was ja falsch ist ;-)


Welche Fehlermeldung kommt den mit der Option s?
Titel: Antw:HTTPMOD erzeugt kein "buf"
Beitrag von: viegener am 20 März 2017, 18:37:03
Zitat von: T3mplate am 20 März 2017, 14:31:21
Ok. Ich dachte das dieser Puffer immer angelegt wird.
Wie genau kann ich diese vollständige Rückgabe absetzen?
So?
attr httpmod reading01Name test
attr httpmod reading01Regex .*


Leider funktioniert das nicht.

Da das hier ja so eine Art Tutorial zu werden scheint (nun ja vielleicht ein grosses Wort für die paar Hinweise), füge ich noch einen an:

grundsätzlich muss in Regex mindestens ein geklammerter Ausdruck () enthalten sein, weil nur der Teil in der Klammer in das Reading übernommen wird.

Titel: Antw:HTTPMOD erzeugt kein "buf"
Beitrag von: Torben80 am 20 März 2017, 18:39:51
Wenn ich das "attr reading01RegOpt s" setze, und meine HTTPMOD Intervallzeit abläuft (10 sek), dann kommt der Fehler aus Screenshot 1.
Schön zu sehen ist, dass er den HTML-Quellcode sauber als HTML darstellen will ;-)

Wenn ich dann OK klicke und schnell das "attr reading01RegOpt s" lösche, zeigt er danach den Quelltext und es kommt keine weitere Fehlermeldung, was ja auch klar ist.

Jetzt bin ich wieder bei der Frage, warum bekomme ich das nicht in den Buffer?

gruß Torben
Titel: Antw:HTTPMOD erzeugt kein "buf"
Beitrag von: viegener am 20 März 2017, 19:56:36
@Torben80: Die Fehlermeldung hat aber eigentlich nichts mit dem Modul HTTPMod oder dem RegOpt zu tun, denn die kommt daher, dass FHEMWeb die Readings dynamisch aktualisiert und dabei den Inhalt als HTML interpretiert. Völlig andere Baustelle...

Das RegOpt ist dafür gedacht, dass ein mehrzeiliges HTML vom Regexp als ein String behandelt wird und nicht in mehrer Readings aufgeteilt wird

Die Frage zum Buffer verstehe ich nicht - in welchen buffer möchstest Du das bekommen und warum?
Titel: Antw:HTTPMOD erzeugt kein "buf"
Beitrag von: Torben80 am 20 März 2017, 23:08:42
@Viegener:
Das mit RegOpt s hab ich verstanden. Das habe ich, ob du es glaubst oder nicht, tatsächlich alles recherchiert.
Lässt mir ja auch keine Ruhe...

Der Buffer den ich meine, ist der, der zum Beispiel beim Spritpreismonitor genutzt wird.
Warum will ich den nutzen? Damit ich sehe was an HTML-Code "rein" kommt, um diesen dann besser mittels RegEx weiter zu verarbeiten.

Bei mir ist der immer leer. (In den INTERNALS meist zwischen addr und code)

Weißt du was ich meine?


EDIT:
ICH HABS!
Ich habe gerade mal mit CURL experimentiert und nun habe ich das was ich brauche im internen buf. Nun gehts ans Testen mit RegEx :-(

Gruß Torben

Gesendet von iPhone mit Tapatalk
Titel: Antw:HTTPMOD erzeugt kein "buf"
Beitrag von: viegener am 21 März 2017, 09:15:12
@Torben80: Ich vermute Du meinst mit Buffer wiederum das Internal "buf"? Ich weiss nicht wofür der im SpritPreisMonitor genutzt wird. Es gibt bestimmte Bedingungen unter denen HTTPUtils diesen "buf" füllt unter anderen Bedingungen wird er geleert oder gar nicht verwendet. Mit anderen Worten ich kenne keine Möglichkeit das über HTTPMOD zu erzwingen.

Ich drehe mich im Kreis...

Frage: Warum reicht ein Reading in dem der gesamte Content enthalten ist nicht? Dieser sollte doch dann genau Deine Anforderung erfüllen
Titel: Antw:HTTPMOD erzeugt kein "buf"
Beitrag von: Torben80 am 21 März 2017, 09:29:09
@Viegener
Hatte gerade meine voriges Posting editiert.
Ich habe nun zwei Fliegen mit einer Klappe geschlagen.

1. Internal buf befüllt, und...
2. Es steht genau das drin, was (ACHTUNG nun gehts um mein AlarmanlagenProjekt) was ich wissen will.

z.B.
forms : { pcondform1 : { mode : "1", f_arm : "0" }, pcondform2 : { mode : "4", f_arm : "0" }
Wobei das 1 für Anlage scharf steht.

Um deine Frage zu beantworten, du hast natürlich recht! Ein Reading hätte den gleichen Inhalt.
Ich habe mich aber anfangs am SpritPreisMonitor-Tutorial festgebissen, deshalb wollte ich das immer im Internal buf haben.
Ich weiss allerdings den unterschied nicht, zwischen Internal buf und Reading. Werde mich dahingehend aber schlau machen.
Tut mir leid, dass du dich so mit mir rumquälen musst :-)
Ich hoffe du bist nicht böse und schätze es sehr, dass von dir noch Fragen und Tips kommen anstelle von "RTFM"-Aussagen. Jeder hat mal klein angefangen, nicht wahr?
Titel: Antw:HTTPMOD erzeugt kein "buf"
Beitrag von: T3mplate am 21 März 2017, 11:37:23
Zitat von: viegener am 21 März 2017, 09:15:12
@Torben80: Ich vermute Du meinst mit Buffer wiederum das Internal "buf"? Ich weiss nicht wofür der im SpritPreisMonitor genutzt wird. Es gibt bestimmte Bedingungen unter denen HTTPUtils diesen "buf" füllt unter anderen Bedingungen wird er geleert oder gar nicht verwendet. Mit anderen Worten ich kenne keine Möglichkeit das über HTTPMOD zu erzwingen.

Ich drehe mich im Kreis...

Frage: Warum reicht ein Reading in dem der gesamte Content enthalten ist nicht? Dieser sollte doch dann genau Deine Anforderung erfüllen

Mir ging es wir Torben. Ich habe mich auch an der Umsetzung des SpritPreisMonitors festgehalten.
Um deine Frage zu beantworten: Es ist vollkommen ausreichend, wenn das in einem reading erscheint.
Wenn ich aber gemäß deiner Anleitung:
attr httpmod reading03Name alles
attr httpmod reading03Regex (.*)

verwende, dann erscheint als Ergebnis nur "HTTP/1.1 200 OK". Ich deute also, dass er nicht über die erste Zeile hinausgeht.
Titel: Antw:HTTPMOD erzeugt kein "buf"
Beitrag von: T3mplate am 21 März 2017, 11:39:13
Zitat von: Torben80 am 20 März 2017, 23:08:42
EDIT:
ICH HABS!
Ich habe gerade mal mit CURL experimentiert und nun habe ich das was ich brauche im internen buf. Nun gehts ans Testen mit RegEx :-(

Kannst du auch erklären wie es geht?
Ich habe jetzt zwar meine Regex fertig, aber noch immer keinen buf :(
Titel: Antw:HTTPMOD erzeugt kein "buf"
Beitrag von: Torben80 am 21 März 2017, 11:48:26
Das galt eigentlich eher Viegener.

Ich hatte das Problem, dass ich den Zustand meiner Alarmanlage auslesen wollte und ich immer (wie du) nichts zurück bekommen habe.
Es landet immer im reading, das man dann mit RegEx verarbeiten muss.

mit CURL kann man aber Daten abfangen die vom Device kommen (wenn ich das so richtig ausdrücke).
CURL ist hierbei aber ein Linux befehl, der schon in HTTPMOD integriert ist und mittels HTTPMOD schon genutzt wird.

Das bringt dich hier also nur bedingt weiter.

Die Frage die Viegener aber gestellt hat, die Stelle ich dir jetzt auch.
Warum willst du kramphaft den "Internal buf" befüllen, wenn es doch eh per reading01Name u. reading01Regex dann im Reading steht?

mfg Torben
Titel: Antw:HTTPMOD erzeugt kein "buf"
Beitrag von: T3mplate am 21 März 2017, 12:09:08
Hier noch meine Regex, vielleicht hilft es ja jemandem:
Grundsätzlich wollte ich die Termine dieser Seite auslesen:
http://stadtplan.dresden.de/(S(amwqgeycotb5opqbwdtc3fup))/project/cardo3Apps/IDU_DDStadtplan/abfall/detailpage.aspx?POS-ADR=Winterbergstraße%7C6 (http://stadtplan.dresden.de/(S(amwqgeycotb5opqbwdtc3fup))/project/cardo3Apps/IDU_DDStadtplan/abfall/detailpage.aspx?POS-ADR=Winterbergstra%C3%9Fe%7C6)
Der Quelltext dahinter ist folgender:


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head xml:lang="de" lang="de">
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
<meta name="generator" content="" />
<meta name="keywords" content="" />
<meta http-equiv="Content-Script-Type" content="text/javascript" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<title>Themenstadtplan-Dresden - Detailauskunft</title>
<style type="text/css">
body
{
font-family:Verdana;
font-size:10pt;
margin:12px;
font-family: Arial, Helvetica, sans-serif;
}
td
{
vertical-align:top;
}
.fett
{
font-weight:bold;
}
.orange
{
color:#CDA424;
}
.headline
{
font-weight:bold;
font-size:11pt;
}
.foot
{
font-size:8pt;
color:#8D8D8D;
}
hr
{
height:3px;
color:#EBEBEB;
}
</style>
</head>
<body onload="self.focus();">
<span class="headline orange">Abfallbehälter: Standplätze und Abfuhr</span>
<div class="contentblock">
<br />
<table width="100%" cellspacing="2" cellpadding="0" style="margin:0;">
<tr>
<td id="ux_standort_details"><table style='width:100%;' cellspacing='2' cellpadding='0'>
<colgroup>
<col width = '150'></col>
<col width = '*'></col>
</ colgroup >
<tr>
<td class='headline' colspan='2'>Winterbergstraße 6</td>
</tr>
<tr>
<td colspan='2' style='font - size:8px;'>&nbsp;</td>
</tr>
<tr class='fett'>
<td>Blaue Tonne</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>Ihr Abfuhrtag:</td>
<td>dienstags alle 2 Wochen</ td>
</tr>
<tr>
<td>nächste Abfuhr:</td>
<td>Dienstag, 21.03.2017 (12. KW)</td>
</tr>
<tr>
<td>Ihr Entsorger:</td>
<td>Fehr Umwelt Ost GmbH, Kontakt: (0351) 207610</td>
</tr>
<tr>
<td colspan='2' style='font - size:8px;'>&nbsp;</td>
</tr>
<tr class='fett'>
<td>Gelbe Tonne</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>Ihr Abfuhrtag:</td>
<td>montags alle 2 Wochen</ td>
</tr>
<tr>
<td>nächste Abfuhr:</td>
<td>Montag, 27.03.2017 (13. KW)</td>
</tr>
<tr>
<td>Ihr Entsorger:</td>
<td>Stadtreinigung Dresden, Kontakt: (0351) 44 55 116</td>
</tr>
<tr>
<td colspan='2' style='font - size:8px;'>&nbsp;</td>
</tr>
<tr class='fett'>
<td>Restabfall</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>Ihr Abfuhrtag:</td>
<td>mittwochs alle 2 Wochen</ td>
</tr>
<tr>
<td>nächste Abfuhr:</td>
<td>Mittwoch, 29.03.2017 (13. KW)</td>
</tr>
<tr>
<td>Ihr Entsorger:</td>
<td>Stadtreinigung Dresden, Kontakt: (0351) 44 55 116</td>
</tr>
<tr>
<td colspan='2'><hr /></td>
</tr>
<tr>
<td colspan='2'>
Bitte beachten Sie: In Ausnahmefällen (z.B.an Feiertagen) kann es zu Terminveränderungen kommen.<br />
   Diese werden Ihnen jeweils aktuell im Abfuhrkalender angezeigt:
</td>
</tr>
<tr>
<td colspan='2'>&nbsp;</td>
</tr>
<tr>
<td colspan='2'>
<a class='orange' target='_blank' href='kalender.ashx?STANDORT=101268&DUMMY=636256937031130008'>Abfuhrkalender für 3 Monate aufrufen&nbsp;(*.pdf, ca. 100 KB)</a>
</td>
</tr>
<tr>
<td colspan='2'><hr /></td>
</tr></table></td>

</tr>
<tr>
<td class="foot">
Stand: <span id="ux_zeitstempel">21.03.2017</span><br />
Bitte beachten Sie, dass sich kurzfristige Änderungen ergeben können. Alle Angaben ohne Gewähr! (KW = Kalenderwoche)
</td>
</tr>
</table>
</div>
</body>
</html>



An die Lösung des Problems habe ich mich langsam herangetastet.
Erst einmal lernen musste ich, dass der in Klammern beschriebene Inhalt derjenige ist, der im Regex ausgegeben werden soll.
"([\d\.]+)" steht dabei für einen Zahlenwert. Vor diese Klammer sollte man die Stelle aus dem Quellcode setzen, an welcher als nächstes die (in diesem Fall) gesuchte Zahl folgt.
In meinem Fall suche ich dieses Datum:
<td>nächste Abfuhr:</td>
<td>Dienstag, 21.03.2017 (12. KW)</td>

Da ich Dienstag nicht verwenden kann (wechselt ja mit der Zeit), muss ich "nächste" oder "Abfuhr" verwenden.
Folgendes hat dann zum gewünschten Ergebnis geführt:
attr httpmod reading01Regex nächste</td>([\d\.]+)

Da ich neben der blauen Tonne aber auch noch die Gelbe Tonnne und den Restmüll brauche, brauche ich noch eine Lösung für diese.
<tr class='fett'>
<td>Gelbe Tonne</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>Ihr Abfuhrtag:</td>
<td>montags alle 2 Wochen</ td>
</tr>
<tr>
<td>nächste Abfuhr:</td>
<td>Montag, 27.03.2017 (13. KW)</td>

Um die Stelle eindeutig zu finden, muss ich nach der "Gelben Tonne" suchen.
Da ich nicht weiß, wie ich mit Leerzeichen im html zumgehen muss, habe ich es etwas einfacher gelöst:
attr httpmod reading02Regex <td>Gelb([\d\.]+).
Dadurch habe ich aber das Problem, dass die nächste Zahl nicht mein gewünschtes Datum, sondern die "2" aus "montags alle 2 Wochen" ist.
Ich musste also irgendwie die 2 überspringen. Irgendwie muss es möglich sein wie im ersten Beispiel bis zum "nächste" (nach "Gelbe Tonne") zu springen.
Das habe ich aber auch nach etlichen Versuchen nicht geschafft.

Ich habe mir deshalb folgende Lösung gebastelt:
attr httpmod reading02Regex <td>Gelb[^0-9]+[^\D]+[^0-9]+([\d\.]+)
Wenn ich alles richtig verstanden habe, dann passiert dadurch folgendes:
"[^0-9]+" -> Überspringe alles was nicht 0-9 ist (Dadurch kommt man bis zur 2)
"[^\D]+" -> Überspringe alles was kein Buchstabe ist (Dadurch kommt man hinter die 2)
"[^0-9]+" -> Überspringe alles was nicht 0-9 ist (Dadurch kommt man bis zum Datum)
([\d\.]+) -> Schreibt das Datum in meine regex

Ich hoffe das hilft irgendjemandem.
Titel: Antw:HTTPMOD erzeugt kein "buf"
Beitrag von: T3mplate am 21 März 2017, 12:15:19
Zitat von: Torben80 am 21 März 2017, 11:48:26
Das galt eigentlich eher Viegener.

Ich hatte das Problem, dass ich den Zustand meiner Alarmanlage auslesen wollte und ich immer (wie du) nichts zurück bekommen habe.
Es landet immer im reading, das man dann mit RegEx verarbeiten muss.

mit CURL kann man aber Daten abfangen die vom Device kommen (wenn ich das so richtig ausdrücke).
CURL ist hierbei aber ein Linux befehl, der schon in HTTPMOD integriert ist und mittels HTTPMOD schon genutzt wird.

Das bringt dich hier also nur bedingt weiter.

Die Frage die Viegener aber gestellt hat, die Stelle ich dir jetzt auch.
Warum willst du kramphaft den "Internal buf" befüllen, wenn es doch eh per reading01Name u. reading01Regex dann im Reading steht?

mfg Torben

Meine Frage war doch ob du erklären kannst wie du den "buf" füllen konntest.
Erstens will ich das wissen weil es das Ziel dieses Threads ist (und damit allen späteren Lesern auch die Antwort gegeben werden kann) und zweitens, weil die Lösung von Viegener zumindest bei mir nicht funktioniert. Ist es nicht auch albern in einem Forum zu schreiben "Danke bei mir geht es jetzt"? Ziel sollte es doch sein eine Lösung für alle anzubieten ;)

Ich wollte(!) deshalb krampfhaft den buf verwenden, weil ich den aus allen c&p httpmods kenne. Mein Bauchgefühl sagt mir das meiner falsch ist, so lange dieser nicht gefüllt ist.
Ich will diesen aber deshalb nach wie vor verwenden, weil das reading (wie weiter oben geschrieben) von Viegener nicht funktioniert.
Titel: Antw:HTTPMOD erzeugt kein "buf"
Beitrag von: Torben80 am 21 März 2017, 12:21:17
Zitat von: T3mplate am 21 März 2017, 12:15:19
Meine Frage war doch ob du erklären kannst wie du den "buf" füllen konntest.

Ja, sorry... Da ich jetzt eine andere URL für den HTTPMOD nutze, und zwar eine die mir schon Variablem zurück gibt (so wie JSON oder XML), bei mir ist es per POST / GET, bekomme ich den Inhalt dierekt in dern Internal buf hinein.

Ich kann es mir aber auch nicht erklären, warum unserer anderer Weg der URL-Abfrage das Ergebnis nicht in den buf sondern nur in ein Reading bringt. :-( Bin ich wohl zu doof zu ;-)

gruß Torben
Titel: Antw:HTTPMOD erzeugt kein "buf"
Beitrag von: viegener am 21 März 2017, 12:59:29
@Torben80: Fühle mich nicht gequält - schön dass es geht
Titel: Antw:HTTPMOD erzeugt kein "buf"
Beitrag von: viegener am 21 März 2017, 16:54:14
Zitat von: T3mplate am 21 März 2017, 12:15:19
Meine Frage war doch ob du erklären kannst wie du den "buf" füllen konntest.
Erstens will ich das wissen weil es das Ziel dieses Threads ist (und damit allen späteren Lesern auch die Antwort gegeben werden kann) und zweitens, weil die Lösung von Viegener zumindest bei mir nicht funktioniert. Ist es nicht auch albern in einem Forum zu schreiben "Danke bei mir geht es jetzt"? Ziel sollte es doch sein eine Lösung für alle anzubieten ;)

Ich wollte(!) deshalb krampfhaft den buf verwenden, weil ich den aus allen c&p httpmods kenne. Mein Bauchgefühl sagt mir das meiner falsch ist, so lange dieser nicht gefüllt ist.
Ich will diesen aber deshalb nach wie vor verwenden, weil das reading (wie weiter oben geschrieben) von Viegener nicht funktioniert.

Ob das Ziel ist den buf zu füllen kann ich nicht sagen, aber dazu will ich mich nicht wiederholen.

Wenn das reading nicht funktioniert, dann ist bei Dir etwas anderes falsch und geht nicht ist da wenig hilfreich
Titel: Antw:HTTPMOD erzeugt kein "buf"
Beitrag von: T3mplate am 21 März 2017, 17:59:00
Zitat von: viegener am 21 März 2017, 16:54:14
Ob das Ziel ist den buf zu füllen kann ich nicht sagen, aber dazu will ich mich nicht wiederholen.

Wenn das reading nicht funktioniert, dann ist bei Dir etwas anderes falsch und geht nicht ist da wenig hilfreich

Wie bereits geschrieben brauche ich den buf nicht.
Hier nochmal der Post:
Zitat von: T3mplate am 21 März 2017, 11:37:23
Mir ging es wir Torben. Ich habe mich auch an der Umsetzung des SpritPreisMonitors festgehalten.
Um deine Frage zu beantworten: Es ist vollkommen ausreichend, wenn das in einem reading erscheint.
Wenn ich aber gemäß deiner Anleitung:
attr httpmod reading03Name alles
attr httpmod reading03Regex (.*)

verwende, dann erscheint als Ergebnis nur "HTTP/1.1 200 OK". Ich deute also, dass er nicht über die erste Zeile hinausgeht.
Welche Infos würden denn zur Problemanalyse helfen?
Titel: Antw:HTTPMOD erzeugt kein "buf"
Beitrag von: viegener am 21 März 2017, 18:26:34
Zitat von: T3mplate am 21 März 2017, 12:15:19
Ich wollte(!) deshalb krampfhaft den buf verwenden, weil ich den aus allen c&p httpmods kenne. Mein Bauchgefühl sagt mir das meiner falsch ist, so lange dieser nicht gefüllt ist.
Ich will diesen aber deshalb nach wie vor verwenden, weil das reading (wie weiter oben geschrieben) von Viegener nicht funktioniert.

War mir nicht klar daraus, dass Du den buf jetzt doch nicht mehr haben wolltest.

Kannst Du regopt setzen wie in den anderen Posts beschrieben ?
attr reading03RegOpt s

Denn damit werden mehrere Zeilen im Ergebnis als eine behandelt.

Sorry, Ich kann leider nicht immer den ganzen Thread nochmal lesen.
Ich kann nur vermuten, dass "HTTP/1.1 200 OK" als Readingwert zurückkommt?

Titel: Antw:HTTPMOD erzeugt kein "buf"
Beitrag von: T3mplate am 21 März 2017, 20:33:06
Zitat von: viegener am 21 März 2017, 18:26:34
War mir nicht klar daraus, dass Du den buf jetzt doch nicht mehr haben wolltest.

Kannst Du regopt setzen wie in den anderen Posts beschrieben ?
attr reading03RegOpt s

Denn damit werden mehrere Zeilen im Ergebnis als eine behandelt.

Sorry, Ich kann leider nicht immer den ganzen Thread nochmal lesen.
Ich kann nur vermuten, dass "HTTP/1.1 200 OK" als Readingwert zurückkommt?

Alles gut  ;D
Ja ich hatte "HTTP/1.1 200 OK" als Readingwert zurückbekommen.
Und basierend auf deiner Erklärung brachte
attr reading03RegOpt s
Auch die erhoffte Lösung.

Allerdings wird der html Code immer nur kurzzeitig angezeigt.
Direkt danach erscheint statt dem Code ein Bild der Website:
Titel: Antw:HTTPMOD erzeugt kein "buf"
Beitrag von: Torben80 am 21 März 2017, 20:54:01
Na siehste, dann gilt es doch jetzt nur noch das Reading nicht durch das "RegOpt s" sondern druch ein Regex laufen zu lassen.

Also "attr DeinDevice reading03Name JetztGehts" und "attr DeinDevice reading03Regex hierRegulärerAusdruck".

Für die RegulärenAusdrücke kann ich nur https://danielfett.de/de/tutorials/tutorial-regulare-ausdrucke/ (https://danielfett.de/de/tutorials/tutorial-regulare-ausdrucke/) empfehlen.
Habe mir gestern ne Stunde genommen und das geleernt und heute meinen Erfolg gehabt, da ich mir den hier
no : "([0-9]*)".*?type : "([0-9a-zA-Z_ ]*)".*?name : "([0-9a-zA-Z_ ]*)".*?cond : "([a-zA-Z]*)" selber geschrieben habe... (Krasse Scheiße) ;-)

Ich würde dir auch gerne weiter helfen :-(




Titel: Antw:HTTPMOD erzeugt kein "buf"
Beitrag von: viegener am 21 März 2017, 21:10:46
Zitat von: T3mplate am 21 März 2017, 20:33:06
Alles gut  ;D
Ja ich hatte "HTTP/1.1 200 OK" als Readingwert zurückbekommen.
Und basierend auf deiner Erklärung brachte
attr reading03RegOpt s
Auch die erhoffte Lösung.

Allerdings wird der html Code immer nur kurzzeitig angezeigt.
Direkt danach erscheint statt dem Code ein Bild der Website:

Versuche dann einfach die Seite mit dem Device nochmals zu refreshen im Browser - wird dann immer noch das HTML angezeigt?