Twitter Plugin aktualisiert nicht...

Hier können Probleme und alles andere in Deutscher Sprache gelöst werden.
kho
Regular
Posts: 342
Joined: Fri Mar 04, 2005 8:34 pm

Twitter Plugin aktualisiert nicht...

Post by kho »

Guten Morgen,

ich habe eine Frage bzw. ein Problem mit dem Twitter-Plugin (setze s9y 1.5.4 und PHP 5.2.12 ein)

Hab das Plugin auf php gestellt. Leider aktualisiert das plugin die Timeline nicht, egal, was ich einstelle. Erst, wenn ich das plugin im admin aufrufe und speichere, stellt es die aktuellen Einträge ein.

Hat jemand vielleicht einen Tip? Habe ich da bei den Einstellungen was übersehen?

Vielen Dank im Voraus!

Liebe Grüsse, kho

kho: Bilder, Geschichten, Begegnungen...
www.k-ho.de/blog
yellowled
Regular
Posts: 7111
Joined: Fri Jan 13, 2006 11:46 am
Location: Eutin, Germany
Contact:

Re: Twitter Plugin aktualisiert nicht...

Post by yellowled »

kho wrote:Hat jemand vielleicht einen Tip?
Das ist nicht zufällig noch die steinalte Version des Plugins, die OAuth nicht kann? Funktioniert die Ausgabe mit Javascript?

YL
kho
Regular
Posts: 342
Joined: Fri Mar 04, 2005 8:34 pm

Re: Twitter Plugin aktualisiert nicht...

Post by kho »

Ho yellowled,

Danke für Deine Rückmeldung!

Also, laut Plugin-Info ist das die Version 1.27. Die Ausgabe selbst funktioniert und wird auch sauber im blog angezeigt.

Nur die Aktualisierung funktioniert nicht bzw. nur, wenn ich das Plugin im admin sichere...

Und mit Java-script habe ich noch nicht probiert, ob die Aktualisierung funktioniert... Java sieht mir auch "zu wirr" aus in der Darstellung auf dem blog:-)

Update: habe gerade java ausprobiert, damit funktioniert die Aktualisierung...

Liebe Grüsse, kho

kho: Bilder, Geschichten, Begegnungen...
http://www.k-ho.de/blog
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Re: Twitter Plugin aktualisiert nicht...

Post by garvinhicking »

Hi!

Wie sind denn die Einstellungen des Plugins bei Dir? Mir scheint als würde die Cache-Abfrage schlicht nicht funktionieren, evtl ist die Datei nicht korrekt schreibbar...?!

Grü0ße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
kho
Regular
Posts: 342
Joined: Fri Mar 04, 2005 8:34 pm

Re: Twitter Plugin aktualisiert nicht...

Post by kho »

Hi Garvin,

Danke für Deine Rückmeldung!!

Die Einstellungen im plugin

Keine Antowrten: ja
Keine User Tweets: ja
Follow me Link: ja
Dienst: twitter.com
Benutze vergangene Zeit: ja
Wie lang sollen Daten zwischengespeichert werden: 100 (habe da aber auch schon mit verschiedenen Werten experimentiert)
Sicherungskopie anlegen: nein

Und wie schon geschrieben, im Moment steht das Ausgabeformat auf Java, die Aktualisierung funktioniert... ich würde es aber gern auf php einstellen, weil die Darstellung einfach übersichtlicher ist.

Liebe Grüsse, kho

kho: Bilder, Geschichten, Begegnungen...
www.k-ho.de/blog
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Re: Twitter Plugin aktualisiert nicht...

Post by garvinhicking »

Hi!

Hm, es kann evtl daran liegen dass wenn Du auch das Twitter Eventplugin installiert hast, der Cache sich nicht korrekt aktualisiert. Das Plugin unterscheid ob Eventplugin vorhanden ist oder nicht, und nutzt dann unterschiedliche Routinen. Ist das Eventplugin bei Dir aktiv?

Ansonsten müsstest Du nächste Woche mal wieder auf PHP umstellen; dann kann ich die HTML Ausgabe prüfen und in Zusammenarbeit mit Dir mal das Datum der Cachedateien testen. Am WE werde ich hier nicht aktiv sein, daher können wir das dann erst ab Montag lösen.

Viele GRüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
kho
Regular
Posts: 342
Joined: Fri Mar 04, 2005 8:34 pm

Re: Twitter Plugin aktualisiert nicht...

Post by kho »

Hallo Garvin,

Danke für Deine Rückmeldung!

Das Eventplugin Twitter habe ich installiert, aber es nicht aktiv. Wenn ich es entferne, bekomme ich im Twitter Plugin immer die Meldung, ich solle es doch aktivieren..:-)

Ich habe das Plugin jetzt schon mal wieder auf php umgestellt... wenn Du Zeit findest:-)

Vielen Dank an Dich und Liebe Grüsse, kho

kho: Bilder, Geschichten, Begegnungen...
www.k-ho.de/blog
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Re: Twitter Plugin aktualisiert nicht...

Post by garvinhicking »

Hi!

Heute ist leider für mich doch einiges zu tun. Ich würde es versuchen morgen einzuschieben :)

Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Re: Twitter Plugin aktualisiert nicht...

Post by garvinhicking »

Hi!

In Zeile 226 vom serendipity_plugin_twitter.php findest du folgende zeile:

Code: Select all

            $cachefile = $serendipity['serendipityPath'] . PATH_SMARTY_COMPILE . "/twitterresult.$cache_user.json";
bitte eretze die mal durch:

Code: Select all

            $cachefile = $serendipity['serendipityPath'] . PATH_SMARTY_COMPILE . "/twitterresult.$cache_user.json";
            echo "<!-- cachefile: $cachefile " . date('d.m.Y H:i', filemtime($cachefile)) . " / " . decoct(fileperms($cachefile)) . "  -->";
Desweiteren müsstest Du auch noch ab Zeile 1768 bis 1821 die funktion "updateTwittertimelineCache" in der serendipity_event_twitter.php ersetzen durch folgende:

Code: Select all

    function updateTwitterTimelineCache($parts){
        global $serendipity;
        require_once S9Y_PEAR_PATH . 'HTTP/Request.php';
        
header('X-Part-Count: 1');
        if (count($parts)<5) return time()*2; // Dont load that rubbish again!
header('X-Part-Count: 2');

        $cachetime      = (int)$parts[4];
         
        $service        = $parts[1];
        $username       = $parts[2];
        $cache_user = md5($service) . md5($username);
        $cachefile = $serendipity['serendipityPath'] . PATH_SMARTY_COMPILE . "/twitterresult.$cache_user.json";
        $nextcheck = time() + (int)$cachetime;

header('X-Part-Next: ' . $nextcheck);

        if (file_exists($cachefile)) {
header('X-Part-Newfile: true');
            $nextcheck = filemtime($cachefile) + $cachetime;
header('X-Part-Nextfile: ' . $nextcheck);
        }

        if (!file_exists($cachefile) || filemtime($cachefile) < (time()-$cachetime)) {
header('X-Part-Cache: rebuild');

            $number         = str_replace("!","_",$parts[3]);
            
            if ($service == 'identi.ca')
            {
                $followme_url = 'http://identi.ca/' . $username;
                $service_url = 'http://identi.ca/api';
                $status_url = 'http://identi.ca/notice/';
                $JSONcallback = 'identicaCallback2';
            }
            else
            {
                $followme_url = 'http://twitter.com/' . $username;
                $service_url = 'http://twitter.com';
                $status_url = 'http://twitter.com/' . $username . '/statuses/';
                $JSONcallback = 'twitterCallback2';
            }
    
            $search_twitter_uri = $service_url . '/statuses/user_timeline/' . $username . '.json?count=' . $number;
            serendipity_request_start();
            $req = new HTTP_Request($search_twitter_uri);
            $req->sendRequest();
            $response = trim($req->getResponseBody());
            $error = $req->getResponseCode();
            serendipity_request_end();

            if ($error==200 && !empty($response)) {
header('X-Part-Cache: rebuild-success');

                $fp = fopen($cachefile, 'w');
                fwrite($fp, serialize($response));
                fflush($fp);
                fclose($fp);
                $nextcheck = time() + (int)$cachetime;
            }
header('X-Part-Cache-Result: done');

        }
header('X-Part-Cache-Result: not needed');

        return $nextcheck;
    }
und dann kann ich mir die ausgaben nochmal genauer ansehen und versuchen das ganze genauer zu verstehen ob irgendwo der Cache nicht korrekt aktualisiert wird.

Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
kho
Regular
Posts: 342
Joined: Fri Mar 04, 2005 8:34 pm

Re: Twitter Plugin aktualisiert nicht...

Post by kho »

Hallo Garvin,

Danke für die Rückmeldung!! Ich habe die beiden Dateien wie von Dir beschrieben geändert...

Bin gespannt:-)

Danke und Liebe Grüsse, kho
kho: Bilder, Geschichten Begegnungen...

http://www.k-ho.de/blog
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Re: Twitter Plugin aktualisiert nicht...

Post by garvinhicking »

Hi!

Super.

Wir kommen dem ganzen auf die Spur.

Bitte nochmal eine Änderung, und zwar von diesem Code:

Code: Select all

if ($error==200 && !empty($response)) {
header('X-Part-Cache: rebuild-success');

                $fp = fopen($cachefile, 'w');
                fwrite($fp, serialize($response));
                fflush($fp);
                fclose($fp);
                $nextcheck = time() + (int)$cachetime;
            }
header('X-Part-Cache-Result: done');

        }
header('X-Part-Cache-Result: not needed');
in das hier:

Code: Select all

header('X-Parth-Cacheto: ' . $cachefile);
if ($error==200 && !empty($response)) {
header('X-Part-Cache: rebuild-success');

                $fp = fopen($cachefile, 'w');
                fwrite($fp, serialize($response));
                fflush($fp);
                fclose($fp);
                $nextcheck = time() + (int)$cachetime;
            } else {
header('X-Path-Cache-Fail: true');
print_r($response);
print_r($error);
            }
        }
So wie es aussieht, schlägt der Aufruf der Twitter-URL fehl, mit der deine Timeline ausgelesen und aktualsiert werden würde...

(Wenn Du magst, kann ich die Änderungen auch gerne via FTP machen, dann müsstgest Du mir eine PM mit den Daten schicken. FTP alleine müsste ausreichen, zugang zum Blog wäre sonst nicht notwendig)

Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
kho
Regular
Posts: 342
Joined: Fri Mar 04, 2005 8:34 pm

Re: Twitter Plugin aktualisiert nicht...

Post by kho »

Hi Garvin,

hab Dir die Daten per PM geschickt.

Vielen Dank an Dich und Liebe Grüsse, kho
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Re: Twitter Plugin aktualisiert nicht...

Post by garvinhicking »

Hi!

Bug gefunden und behoben. Es lag am "_" in deinem Twitternamen. Weil das für die URL ein Sonderzeichen ist wird es umbenannt, aber beim Abruf nicht korrekt zurück benannt, daher wurde der Cache nie aktualsiiert.

Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
kho
Regular
Posts: 342
Joined: Fri Mar 04, 2005 8:34 pm

Re: Twitter Plugin aktualisiert nicht...

Post by kho »

Hi Garvin,

hey, das ist cool:-)!!

Vielen Dank für die Hilfe und die schnelle Lösung!!

Liebe Grüsse, kho

kho: Bilder, Geschichten, Begegnungen...
www.k-ho.de/blog
kho
Regular
Posts: 342
Joined: Fri Mar 04, 2005 8:34 pm

Re: Twitter Plugin aktualisiert nicht...

Post by kho »

Hallo Forum,

leider muss ich den Beitrag noch mal "hochholen".

Denn lief das Plugin fehlerfrei nach der Korrektur durch Garvin, funktioniert die Aktualisierung jetzt wieder nicht mehr.

Es gab zu dem Plugin gestern eine Aktualisierung, die ich eingespielt habe. Kann es sein, dass ich mir dadurch das Problem wieder eingefangen habe?

Vielen Dank für die Hilfe und Liebe Grüsse, kho

kho: Bilder, Geschichten, Begegnungen...
www.k-ho.de/blog
Post Reply