Scripte für den Google Kalender. (Ehemals Termine eintragen)

Muss ich fragen. In der Migration (V2.4->V2.5) steht:

Durch eine Inkompatibilität von PHP 5.4 und OpenSSL 1.0 können über die file_get_contents (u.ä.) Funktion keine Anfragen per SSL gestellt werden. Die IP-Symcon interne Funktion Sys_GetURLContent bietet dort passenden Ersatz. Falls die SSL Funktionalität zwingend notwendig ist (z.B. Exchange oder SNMP Extension), und SSL innerhalb vom WebFront nicht benötigt wird, kann die alte Verhaltensweise mit folgendem Zusatzpaket wiederherstellt werden: OpenSSL 0.9.8

Ich meine aber das Kronos auch die 2.5 nutzt.

Dienst Stop und Dienst Start hast Du aber gemacht?

hmm,

hab noch nie die php.ini vorher verändert, aber wenn ich die console schließe, die dll-datei ins entsprechende Verzeichniss kopiere, dann die der php.ini genannte Zeile hinzufüge (ist es egal an welche stelle? Habs unter die anderen extensions gesetzt) und dann stoppe und wieder starte ist die eingefügte Zeile in der php.ini wieder weg???

Die php.ini verwaltet IPS bezüglich der Extensions selbstständig. Wenn Du eine Extension in den Order …\EXT legst und die Version usw. passt sollte (!) sie also geladen werden. Schau doch mal in Dein LOG-File ob IPS bei starten eine Extension angemeckert hat.

Das ist OK.

Die dumme Sau. :smiley: :wink:

Mach mal erst Dienst Stop, dann php.ini editieren und dann Dienst Start.

OK:
LOG-file: „nicht geladen. version stimmt nicht überein: PHP: 5.4.0 EXT: 5.3.1“

scheint also doch mit dem 2.5beta zutun zu haben. wo bekomme ich die passende 5.4.xx Datei her?

PS: in diesem Zusammenhang sehe ich gerade in der log-Datei, dass auch die php_http.dll das selbe Probelm hat (ohne das ich spontan sagen kann wofür ich die doch gleich gebraucht habe).

Hol Dir mal die aktuelle Version PHP 5.4 von php.net. Da sollte eine passende mit drin sein. Das Live-Update ignoriert die Datei bei mir übrigens auch. Habe gerade festgestellt, dass meine Version noch aus PHP5.4 RC1 stammt obwohl RC2 aktuell ist. Bug?

JAAAA das script läuft …

Wo bekomme ich die php_http.dll her?

tausend Dank
Gruß hardlog

Wo bekomme ich die php_http.dll her?
Das hast Du schon mal gefragt. :confused: Die gibt es nicht mehr.

Das wusste ich auch noch nicht. Dann passt ja die Aussage:

hab noch nie die php.ini vorher verändert, aber wenn ich die console schließe, die dll-datei ins entsprechende Verzeichniss kopiere, dann die der php.ini genannte Zeile hinzufüge (ist es egal an welche stelle? Habs unter die anderen extensions gesetzt) und dann stoppe und wieder starte ist die eingefügte Zeile in der php.ini wieder weg???

Dann wird IPS die Zeile aus der PHP.ini rausschmeissen. Cool! Wieder was gelernt. :slight_smile:

=======================================================

JAAAA das script läuft …

Das freut mich. Dennoch weiss ich nicht warum es jetzt läuft.
Die php_openssl.dll (die ich eingestellt habe) verträgt sich nicht mit der PHP 5.4.
Was hast Du danach gemacht. Wie sieht jetzt dein „EXT“-Ordner aus.
Was hast Du anstelle meiner „php_openssl.dll“ genommen?

Für Antworten bin ich Dankbar.

PS: Das ist modernes engineering! Es läuft und keiner weis warum. :wink:

Wenn er auf IPS 2.5ß ist dann wird er wahrscheinlich auch die entsprechende DLL aus PHP genommen haben. Nehme ich jedenfalls an…

Das ist modernes engineering! Es läuft und keiner weis warum.

Ist so so herum auch mal ganz entspannend. :stuck_out_tongue:

Ja, aber welche?

Jaein.

Ich arbeite seit 16 Jahren in der Softwareentwicklung und Inbetriebnahme. Irgendwann holt dich sowas wieder ein.

Irgendwann holt dich sowas wieder ein.

:smiley: Kann da nur auf meine Signatur verweisen :smiley:

Als PHP-Version wird die 5.4.0 im DLL angegeben. So viel ich weiss entspricht das openSSL 1.0 und nicht mehr der 0.99.

Lasse mich aber auch gerne korrigieren.

So hab ich es jetzt eingebunden.

Bei Verwendung des Monatskalenders bekomme diese Fehlermeldung:

Warning:  include(funkTTS_Play.php) [function.include]: failed to open stream: No such file or directory in C:\IP-Symcon\scripts\14822.ips.php on line 33

Warning:  include() [function.include]: Failed opening 'funkTTS_Play.php' for inclusion (include_path='.;C:\php5\pear') in C:\IP-Symcon\scripts\14822.ips.php on line 33
Could not connect to calendar.

Jemand eine Idee?

Des weiteren muss ich meinen google calendar öffentlich machen damit mir dieser angezeigt wird?.

Ups,

da ist noch ein falscher Fehler drin. :smiley:

Ziemlich weit oben in dem Script ist das hier:


//benötigte Funktionen/Klassen
include("funkTTS_Play.php"); 

Schmeiss den ersten „include“ mal raus.

Edit:

Der „include“ ist in Zeile 35.

Bei mir ist der Kalender nicht öffentlich.

Hallo Schablone,
sorry das ich mich erst so spät zurückmelde. Ich konnte die Woche über nicht zu Hause testen.

Ich bekomme nun folgenden Fehler:

Fatal error:  Uncaught exception 'Zend_Gdata_App_HttpException' with message 'Expected response code 200, got 400
Invalid request URI' in C:\IP-Symcon\scripts\Zend\Gdata\App.php:709
Stack trace:
#0 C:\IP-Symcon\scripts\Zend\Gdata.php(219): Zend_Gdata_App->performHttpRequest('GET', 'https://www.goo...', Array, NULL, NULL, NULL)
#1 C:\IP-Symcon\scripts\Zend\Gdata\App.php(875): Zend_Gdata->performHttpRequest('GET', 'https://www.goo...', Array)
#2 C:\IP-Symcon\scripts\Zend\Gdata\App.php(763): Zend_Gdata_App->get('https://www.goo...', NULL)
#3 C:\IP-Symcon\scripts\Zend\Gdata\App.php(205): Zend_Gdata_App->importUrl('https://www.goo...', 'Zend_Gdata_Cale...', NULL)
#4 C:\IP-Symcon\scripts\Zend\Gdata.php(162): Zend_Gdata_App->getFeed('https://www.goo...', 'Zend_Gdata_Cale...')
#5 C:\IP-Symcon\scripts\Zend\Gdata\Calendar.php(107): Zend_Gdata->getFeed('https://www.goo...', 'Zend_Gdata_Cale...')
#6 C:\IP-Symcon\scripts\14822.ips.php(81): Zend_Gdata_Calendar->getCalendarEventFeed(Object(Zend_Gdata_Calendar_EventQuery))
#7 {main}
  thr in C:\IP-Symcon\scripts\Zend\Gdata\App.php on line 709

Was hast Du denn bis jetzt alles gemacht?

Hast Du den Zend-Ordner unter „IP-Symcon\scripts“?

Poste mal deine php.ini!

Edit:

Halt, Stopp. Kann es sein das dein „Magic Cookie“ nicht stimmt?
Kontrolliere den mal bitte!

Also nochmal. Der meckert bei Zeile 81. Da steht das:


// Die Suchanfrage ausführen
$event_list = $gdataCal->getCalendarEventFeed($query);

D.h. das die „$query“ nicht OK ist.
In der Query ist der Username und der Magic Cookie!

Ja ich denke daran wirds liegen. Mein Magic Cookie sieht auch komisch aus. Der beginnt so „http://www.google.com/calendar/feeds/ …“

Ich habe mal einen Screenshot angehängt wo ich auf den XML-Button gedrückt habe um an den Cookie zukommen

Bei mir beginnt der Magic Cookie mit e…

Siehe Screenshot’s

Du musst hier klicken:

Und das zwischen „private-“ und „/basic“ ist der Magic Cookie: