GeCoS-W-Sens Modul Hilfestellung

Wir wollen das ganze ja für den Normalanwender "einfach " halten. Und bei 98% sollte das mit dns klappen. Klar ist es möglich das auch anders zu gestalten aber wir wollen es ja nicht verkomplizierten…

ich hab die beiden externen Sensoren gelöscht.
Fehler wie oben, Im Logfile diese Meldung:

09.04.2018 22:00:23 | FlowHandler | Kann Daten nicht zur Instanz #52674 weiterleiten: TransactionID stimmt nicht überein.

jetzt kann ich aber Änderungen ohne Fehlermeldung wegspeichern.
Vorher hatte ich nach jedem Poll diese Meldung im Log:

09.04.2018 21:58:02 | TimerPool | GeCoS_WSens (Timer_1): <br />
<b>Warning</b>:  Variabletyp stimmt nicht überein in <b>/mnt/data/symcon/modules/GeCoS-Modules/GeCoS_WSens/module.php</b> on line <b>307</b><br />

Ich habe übrigens Symcon 4.4 auf der Symbox am laufen.

Loerdy

@Loerdy: Da muss ich mir noch mal etwas überlegen…
Die externen Werte (die dann für die Berechnung der Werte herangezogen werden - also für alles was nicht direkt aus dem W-Sense kommt) könnten offensichtlich Integer oder Float sein…
Vorher hatte ich beide Integer, da gab es einen Fehler, jetzt hatte ich beide (Temperatur/Luftfeuchtigkeit) aufFloat geändert - auch wieder falsch…
Muss mal schauen was passiert, wenn ich nur „GetValue“ nehme…:confused:

Joachim

Ich habe jetzt die Instanz, das Gateway und den Socket gelöscht und alles neu angelegt.
Folgendes Resultat:

Dann den Wert für Höhenmeter angepasst:

Bildschirmfoto vom 2018-04-09 22-21-52.png

und wieder:

Bildschirmfoto vom 2018-04-09 22-22-35.png

Die Änderung wurde aber übernommen.
Wenigstens wird dasEventlog nicht mehr geflutet :slight_smile:

Gute Nacht,
Loerdy

IPS liefert Infos über den Typ seiner Variablen :wink:
Oder einfach GetValue :smiley:

Warum hat RequestData keinen Rückgabewert?
Wenn man statt Timer das per Script ausführen will, bekommt man kein true/false zurück.
Warum ist GetData Public?
Create wird auch beim IPS Neustart ausgeführt. Somit ist IPS_SetHidden verboten, da es Usereinstellungen überschreibt.
Und die Logging Umsetzung ist extrem mangelhaft.
Es wird knallhart nach z.b. einen Neustart das Logging der Variablen deaktiviert wenn die Haken im Modul nicht gesetzt sind!

Hier wird der User wieder gezwungen das Logging in deiner Instanz zu konfigurieren, anstatt in der Variable selber zu bestimmen.

Das de/aktivieren des Logging z.b. im Actions-Bereich der Form wäre viel sinnvoller.
Michael

Hallo Michael,

Rückgabewert im RequestData: werde ich korrigieren…
GetData Public: Überbleibsel aus der Entwicklung, reicht auch private, wird korrigiert…

Wo sollte das „IPS_SetHidden“ denn korrekterweise hin?

Joachim

Weg.
(Oder nur wenn die Variable neu erstellt wurde.)
Michael

Zum Thema Hostnamen & DNS:
Je nach OS wird heute gerne IPv6 gegenüber IPv4 bevorzugt.

Habe mir die Daten des Gerätes nicht weiter angesehen; aber eventuell liegt dort das Problem.
Wenn der Name auf eine IPv6 zeigt weil der Netzwerkchip / Stack es kann, aber der ModBus und HttpServer nur auf der IPv4 lauschen wird das nix.
Ist kein Symcon oder gar PHP Problem.

Erklärt aber nicht das Phänomen das es mit statischer IP funktioniert und dynamischer nicht.
Michael

@Loerdy: Der Fehler mit der TransactionID entsteht m.E. wenn zu viele Abfragen erfolgen, ggf. muss ich einen minimalen Abfragezyklus definieren und/oder über eine Semaphore nachdenken…

@Michael: Wie prüfe ich denn, ob diese Variable gerade erstellt wurde?:confused:

Joachim

Zuerst:
Da weder Registervariable noch MaintainVariable einen Parameter für Sichtbarkeit enthalten, ist es nicht die Aufgabe eines Moduls die Sichtbarkeit zu beeinflussen! (Gilt sinngemäß auf für das Logging von Variablen.)

Und wenn es dennoch umsetzen willst, prüf doch einfach ob der Ident schon existiert.
Alternativ gibt es auch SetSummary um Infos wie Firmware in die Info-Spalte zu schreiben.
Michael

Guten Morgen Alle miteinander :D,

habe jetzt ebenfalls mal externe Quellen für Luftfeuchte (Integer) und Temperatur (Float) einfügen wollen. Dabei kommt es zu folgender Fehlermeldung:

zeitüberschreitung.PNG

Was auffällt, der Zeitüberschreitungsfehler bleibt, auch wenn man die externen Sensoren wieder entfernt hat. Dann kommt zwar keine Meldung mit der falschen Variable, aber wie gesagt, die Zeitüberschreitung bleibt. Kann aber auch daran liegen, dass der Variablen-Fehler nicht mehr auftritt, weil ich zwischendurch noch nen Modul-Update gemacht hatte. Könnte es also möglich sein, dass die Variablen, auch wenn ich sie im Modul entferne, im Script erhalten bleiben?

Viele Grüße,

Burkhard

P.S.: Bin leider gezwungen (beruflich) jetzt auf die Autobahn zu düsen. Bin ab Donnerstag Abend wieder dabei.

Kannst Du nicht einfach mit relativen Pfadangaben arbeiten anstatt die Vollständige URL zu nutzen?
https://wiki.selfhtml.org/wiki/HTML/Regeln/Referenzieren_in_HTML

Remoteeinwahl via VPN ist auch ein Beispiel.Da greift meist mein lokaler DNS Server und nicht der von der Gegenseite.

Loerdy

@loerdy:
Du meinst für die Unterseiten? Ja da denken wir drüber nach. danke.:slight_smile:
Gruß
Thomas

Hallo Michael,
danke für deine Info.
Wir können wahrscheinlich ausschließen das es an IPV6 liegt. Zumal der Sensor zur Zeit kein IPV6 kann.
Die überlegung mit der Namensauflösung kam hier her:
Keine Namensauflösung in IPS nach aktuellem PI Update - Seite 8


<?
$result = dns_get_record("www.google.de");
print_r($result);
echo phpversion()."
";
?>

liefert bei mir:
Warning: dns_get_record(): A temporary server error occurred. in /var/lib/symcon/scripts/33356.ips.php on line 2
5.6.30

Das sollte eig nicht so sein… :confused:
Läuft auf einem Pi mit Jessie und Symcon 4.3

Teste Mal mit:
PHP: gethostbyname - Manual
Michael

Moin,
hatte ich eben auch schon.
Damit löst er auf. zumindest nach draußen.
Meinen Sensor löst er damit in :

<?
$result = gethostbyname("GeCoS-W-Sens-9fe9dc");
print_r($result);
//echo phpversion()."
";
?

62.138.238.45 passt irgendwie nicht…

Also unter jessie mit IPS4.3 läuft es nicht.
Unter Stretch mit IPS4.4. läuft es:
für mich folglich ein IPS oder Raspbian problem…

Ich möchte nur kurz berichten, dass in der Provinz heute auch das Päckchen ankam.

Morgen werde ich dann auch mal testen.

Gesendet von iPad mit Tapatalk

Wie aussagekräftig ist der Luftgütesensor, bzw was steckt hinter den Werten?
Ich hab den ganzen Tag schlechte Luft :smiley:

Bildschirmfoto vom 2018-04-10 19-03-49.png

Gegen 17 Uhr hab ich einmal durchgelüftet, 15 Minuten Fenster weit auf.
Wie mir scheint hat das der Sensor nicht wirklich registriert.

Der Netatmo Fühler zeigt die ganze Zeit grün.

Loerdy