Frage zu JSON unter IPS V1 (für SMA WebBox)

Hallo,

ich habe ein kleines Problem. Ich würde gerne meiner SMA WebBox Daten entlocken. Das würde sehr einfach mit RPC-JSON Befehlen gehen. Jetzt zu meinem Problem. Die IPS nutzt PHP 5.1.6.6. Hier war die JSON Lib noch nicht inbegriffen. Wohl ab PHP 5.2 wäre diese „an Board“ - aber das nutzt mit leider nichts. Daher bin ich auf der Suche nach der „php_json.dll“ passend für die PHP Version der IPS. Dazu benötigt man auch noch eine passende Curl Bibliothek. Wenn jemand mir einen guten Tip geben kann, wo ich diese Dateien noch finden kann, wäre ich sehr dankbar (oder wenn jemand diese zur Verfügung stellen kann). Meine bisherigen Suchen war aller ziemlich erfolglos - oder die gefundene dll hat zu Problemen mit der von IPS verwendeten PHP Version geführt.

Danke.

Hallo,

versuch mal die Pear Json libray. PEPr :: Details :: Services_JSON

Gruß
Attain

Hallo Attain,

Danke für den Tip. Die Seite hatte ich heute auch schon gefunden. Aber damit will es nicht laufen … Allerdings will ich mich damit nochmals in Ruhe befassen. Evtl. habe ich auch die Klasse nicht richtig eingebunden etc. Aber auf den ersten Blick konnte ich keinen Fehler erkennen und bekomme einen Aufruffehler in der Memberfunktion encode von JSON.

Trotzdem Dank.

Hallo ,

Du mußt einfach die json.php ind dein script Verzeichnis kopieren und dann per „include“ einbinden. Das sollte reichen.

Gruß

Hallo Attain,

die PHP Lib geht. Ich habe zwar die JSON.php includiert, aber den new Verweis ($json = new Services_JSON()) schlauer weise vor der Funktion gemacht (und nicht übergeben). Konnte ja dann nicht gehen. Gut Danke erst mal für den Tip. Jetzt suche ich weiter nach der CURL Lib.

Gruß und einen schönen Abend,
Christof

Hallo,

also als kurzes Fazit: Curl läßt sich auch nutzen. Dazu habe ich die php.curl.dll in das IP-SYMCON Verzeichnis kopiert, die zwei notwendigen dlls ssleay32.dll und libeay32.dll in das windows\system32 Verzeichnis kopiert und die php.ini wie folgt ergänzt: extension=php_curl.dll.

Jetzt bekomme zwar leider beim starten der IPS eine Access Violation (at address 00000000. Read of address 00000000), aber Curl läßt sich so nutzen.

Wenn jemand eine Idee hat, wie ich die Fehlermeldung beim starten in den Griff bekomme, wäre ich sehr dankbar.

Gruß Christof

Hallo Christof,

bei mir sind die beiden von Dir genannten Dateien im IPS Verzeichnis.

Hallo Rainer,

das ist jetzt die große Frage. Ich habe es so und so versucht. Aktuell liegen Sie „nur“ im Windows System32 Verzeichnis. Die Curl Befehlen laufen problemlos. Aber ich bekomme die Access Violation beim Start der IPS. Egal ob die File im IPS Ordner liegen oder nicht. Vielleicht habe ich heute die originalen Files ssleay32.dll und libeay32.dll von der IPS überschrieben. Ich werde mal eine Backup durchsuchen und das Ergbnis hier posten.

Danke.

Grüße Christof

Hallo,

also bei mir im IPS Verzeichnis waren die dlls ssleay32.dll und libeay32.dll nach der Installation nicht vorhanden. Und egal ob die dlls jetzt im IPS Ordner liegen oder nicht - es kommt zur Access Violation. Vielleicht hat jemand die passenden Versionen der genannten Dlls für die IPS. Technisch klappen die Zugriffe mit Curl im php Code problemlos.

DANKE

Hallo,

ich habe die Dateien die bei mir im IPS Ordner waren hier mal hochgeladen:
kostenlos Dateien hochladen bei File Upload X

Gruß

Hallo Attain,

vielen Dank für die Files - ich werde diese morgen testen und hier berichten.

Danke für die Hilfe.

Schönen Abend, Grüße Christof

Hallo,

also jetzt ist alles perfekt. CURL Abfragen laufen und es gibt keine Fehlermeldung mehr beim hochfahren der IPS. Die Files liegen im Windows\System32 Verzeichnis und in der IPS. Das zur Info. Falls noch jemand dieses Problem hat oder CURL nutzen möchte.

Danke. Gruß Christof