Wenn dies dein erster Besuch hier ist, lies bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Du musst dich vermutlich registrieren, bevor du Beiträge verfassen kannst. Klicke oben auf 'Registrieren', um den Registrierungsprozess zu starten. Du kannst auch jetzt schon Beiträge lesen. Suche dir einfach das Forum aus, das dich am meisten interessiert.
Vielleicht bilde ich mir das nur ein aber ich hatte mal mit EXIT in einem LBS "gearbeitet" und Edomi ständig rebootet bis ich das EXIT rausnahn ... hmmmm, werde es nochmal versuchen - DANKE.
Ach ja, ich habe das curl_close($ch) auskommentiert ... Wäre es so und an dieser Stelle richitg (vor "catch") ?
Ja... wenn man mehrere Sachen parallel macht (oder machen will)
exit ist vllt wirklich keine gute Idee (zumindest wenn es nicht im EXEC-Teil ist), dann vllt stattdessen return oder so.
Was curl angeht, damit arbeite ich fuer gewoehnlich nicht, hab die Syntax nicht im Kopf. Aber aus dem Bauch raus wuerde ich sagen, das kommt unkommentiert vor das "if (!$re)..."
Ja... wenn man mehrere Sachen parallel macht (oder machen will)
exit ist vllt wirklich keine gute Idee (zumindest wenn es nicht im EXEC-Teil ist), dann vllt stattdessen return oder so.
OK, dass heißt, wenn ich den den cURL, get_header() und file_get_contents() in den EXEC-Teil verbanne, dann ist exit() kein Problem ?
„return“ werde ich auf php.net nachlesen (deren PROSA ist aber schrecklich ;-)
Was curl angeht, damit arbeite ich fuer gewoehnlich nicht, hab die Syntax nicht im Kopf. Aber aus dem Bauch raus wuerde ich sagen, das kommt unkommentiert vor das "if (!$re)..."
Gäbe es eine „bessere“ Lösung als cURL um den WebServer abzufragen ob dieser überhaupt online ist ?
exit() ist in der Tat keine gute Idee im LBS-Abschnitt - dann wird der gesamte Logik-Prozess beendet Das prüft EDOMI natürlich und startet dann neu…
Hättest du einen Vorschlag wie es das besser zu lösen wäre oder ist das eh unwichtig wenn ich den Teil des Codes in den EXEXC-Teil verschieben sollte (weil eleganter) ?
OK, dass heißt, wenn ich den den cURL, get_header() und file_get_contents() in den EXEC-Teil verbanne, dann ist exit() kein Problem ?
„return“ werde ich auf php.net nachlesen (deren PROSA ist aber schrecklich ;-)
exit() beendet das laufende Programm, für den EXEC-Teil bedeutet das, dass der LBS beendet wird (der ist in dem Fall ja ein eigenstaendiger Prozess). Im LBS-Teil bedeutet das, dass die Logik-Engine beendet wird, da der LBS-Teil eine Funktion der Logik-Engine ist.
return() beendet eine Funktion, also sollte damit im LBS-Teil ebenfalls der Baustein beendet werden.
Gäbe es eine „bessere“ Lösung als cURL um den WebServer abzufragen ob dieser überhaupt online ist ?
Bestimmt... gibt ja 1000 moegliche Loesungen
Ich glaube André hatte mal was gepostet... ich selber benutze kein cURL weil es nicht auf allen Installationen vorhanden ist. Ich mache sowas nach Moeglichkeit immer gernen mit den minimalsten Voraussetzungen - was aber nicht immer komfortabel ist. Drum ist meine Loesung auch sicher nicht so rund wie die von André (falls das André war, ich bin nicht sicher).
Hättest du einen Vorschlag wie es das besser zu lösen wäre oder ist das eh unwichtig wenn ich den Teil des Codes in den EXEXC-Teil verschieben sollte (weil eleganter) ?
exit() im EXEC-Teil beendet den LBS... tut also was es soll
Richtig... curl & Co. sind böse im LBS-Abschnitt Die Logik-Engine funktioniert in Etwa wie eine SPS, d.h. alles zeitkritische muss ausgelagert werden. Natürlich ist im Grunde alles irgendwie zeitkritisch - aber Netzwerkkram ist natürlich um Größenordnungen zeitkritischer, als z.B. ein paar IFs Vor allem wenn noch "Unzulänglichkeiten" hinzukommen (Server nicht erreichbar, oder er antwortet nicht sofort...).
EDOMI - Intelligente Steuerung und Visualisierung KNX-basierter Elektro-Installationen (http://www.edomi.de)
OT: Übrigens gibt's im nächsten Update einen LBS, der KO-Werte in einem String "interpretiert":
Aus "IP-Adresse ist {3} - und das um {5} Uhr!" wird dann "IP-Adresse ist 1.2.3.4 - und das um 12:00:59 Uhr!". Das Ganze funktioniert wie an anderer Stelle üblich mit {KO-ID} bzw. mit der Angabe einer GA {x/y/z}
EDOMI - Intelligente Steuerung und Visualisierung KNX-basierter Elektro-Installationen (http://www.edomi.de)
gibt es eine Möglichkeit im EXEC Abschnitt zu springen in Abhängigkeit von einem Eingang?? Also sagen wir E3=1 ---> Teil1 im Exec abarbeiten, E3=2--->Teil2 im Exec abarbeiten.
kurze Frage zum EXEC Teil eines LBS. Wenn man einen neuen LBS mit Vorlage "LBS mit EXEC-Script" erstellt, findet sich im EXEC Teil folgendes Code Template:
//bei Bedarf kann hier die maximale Ausführungszeit des Scripts angepasst werden (Default: 30 Sekunden) //Beispiele: //set_time_limit(0); //Script soll unendlich laufen (kein Timeout) //set_time_limit(60); //Script soll maximal 60 Sekunden laufen
sql_connect();
//eigener Code...
sql_disconnect(); ?> ###[/EXEC]###
Sind sql_connect(); und sql_disconnect(); zwingend notwendig? Wenn ja warum? Oder kann ich den Teil rausnehmen wenn ich keine eigenen Daten in die Datenbank schreiben / lesen möchte?
Wir verarbeiten personenbezogene Daten über die Nutzer unserer Website mithilfe von Cookies und anderen Technologien, um unsere Dienste bereitzustellen. Weitere Informationen findest Du in unserer Datenschutzerklärung.
Indem Du unten auf "ICH stimme zu" klickst, stimmst Du unserer Datenschutzerklärung und unseren persönlichen Datenverarbeitungs- und Cookie-Praktiken zu, wie darin beschrieben. Du erkennst außerdem an, dass dieses Forum möglicherweise außerhalb Deines Landes gehostet wird und bist damit einverstanden, dass Deine Daten in dem Land, in dem dieses Forum gehostet wird, gesammelt, gespeichert und verarbeitet werden.
Kommentar