cURL nutzen?

Hallo,

kann mir jemand sagen, wie ich curl funkctionen in IPS nutzen kann?

Auf der PHP Website steht etwas von compile mit Option „–with-curl[=DIR]“ und, wenn ich das richtig verstanden habe, braucht’s noch zusätzlich libeay32 und ssleay32 - oder ist das „alternativ“?

Danke
jwka

nur die Extension ins ext-Verzeichnis und gut ist.

Die beiden Librarys sollten bereits im IP-Symcon-Hauptverzeichnis sein.

Danke für die Info …

Für den Fall, dass noch andere über dieses Thema stolpern:

Man braucht, wie bei allen anderen extensions, die richtige Version.

Am sinnvollsten ist es daher, sich (bei jedem Update ggf. erneut) einmal die ZIP Datei mit dem „core“ PHP downzuloaden.

Da das meist nicht die aktuelle Version ist, geht man auf der seite

windows.php.net/download

links in den Bereich „archives“. Dort sucht man sich dann die Version heraus, welche IPS gerade nutzt.

Welche das ist, findet man mittels der Mini-Script-Programmzeile

phpinfo()

heraus. Wichtig ist, dass es (bisher) die MSVC6 Version ist, was sich bei den ZIP Dateien im Namensteil „VC6“ wiederspiegelt, also benötigt man die Datei „php-n.n.n-WIN32-VC6-x86.zip“ für ein typisches Windows System.

Evtl. wären diese Zeilen ja auch was für den „how To“ Teil der Doku oder für’s Wiki?

jwka

Evtl. wären diese Zeilen ja auch was für den „how To“ Teil der Doku oder für’s Wiki?

Nicht wirklich. Ist seit V2.5 anderst.

Nicht wirklich. Ist seit V2.5 anderst.

damit ich mir in wenigen Tagen Gesuche erspare: Wie isses dann ab v2.5?

Neu: PHP Extensions werden per LiveUpdate aktualisiert (nur offizielle von PHP. Kein PECL!)

aus dem offiziellen Changelog

Migration (V2.4->V2.5): IP-Symcon :: Automatisierungssoftware

Frage:

ALLE, die normalerweise zum „PHP-Basic“ gehören oder nur die, die „IPS core“ braucht?

Denn bisher waren ja auch nie alle dlls mit installiert worden.

Ist z.B. bei der 2.5 php_ldap oder php_exif oder eben das oben genannte php_curl mit installiert?

jwka

Werden alle installiert. Was Du nicht brauchst, schmeisst Du raus.

ok. prima, das erleichtert einiges.

jwka

Hallo jwrk,

hier mein Skriptbeispiel:

// Datum & Uhrzeit merken
$time = time();
$datum = strftime('%Y%m%d', $time);
$uhrzeit = strftime('%H:%M', $time);

// Daten für PVOutput vorbereiten
$out = "";
$out .= "http://pvoutput.org/service/r2/addstatus.jsp";
// hier eigenen Key und ID einsetzen
$out .= "?key=a29e**********************************32";
$out .= "&sid=9***";
// Datum und Uhrzeit dazu
$out .= "&d=" . $datum . "&t=" . $uhrzeit;
// PV-Daten
$out .= "&v1=" . 1000 * GetValueFloat(43871); // Tagesenergie
$out .= "&v2=" . GetValueFloat(42623);  // aktuelle AC-Leistung
$out .= "&v5=" . GetValueFloat(25438); // Temperatur

// neuen cURL-Handle erzeugen
$ch = curl_init($out);
// cURL-Optionen setzen
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// Aktion ausführen / Daten senden
$ret = curl_exec($ch);
// Rückmeldung mit Uhrzeit in IPS speichern
SetValueString(19952, $uhrzeit . " Uhr: " . $ret);
// cURL-Handle schließen und Systemressourcen wieder freigeben
curl_close($ch);

Ich sende damit die Daten aus meinem Wechselrichter alle 5 Minuten an ein Solar-Portal.

Viele Grüße aus dem Unterallgäu

Harry