Laßt die Heime "twittern"...

Hallo,

wenn ich mich recht erinnere muß man sich auf der Seite bei Twitter einloggen wo man sein App registriert hat und bekommt dort die Daten.

Schöne Grüße
ThomasD

Steht in den ersten Zeilen des von dir zitierten Links:

Sign in to the Twitter and register an application from the dev.twitter.com page. Remember to never reveal your consumer secrets. Click on My Access Token link from the sidebar and retrieve your own access token. Now you have consumer key, consumer secret, access token and access token secret.

Ich weiss, was da steht und habe es so gemacht. Dabei hab ich aber nirgends besagte consumer key und consumer secret gefunden. Kann mir jemand auf die Sprünge helfen? Wahrscheinlich sehe ich nur den Wald vor lauter Bäumen nicht…

Ich weiß natürlich nicht, was du genau gemacht hast, aber hier ein paar Screenshots.

Bild 1: dev.twitter.com - Rechts: Auf „Register a new App“.
Kein Bild: Formular ausfüllen
Bild 1: dev.twitter.com - Links: Liste der registrierten Apps
Bild 2: Detailansicht der App - Hier steht ConsumerKey und ConsumerSecret
Bild 2: Rechts auf „My Access Token“
Bild 3: AccessToken und AccessTokenSecret
Bild 4: Ich schreibe die Meldung in eine Variable und lasse das Twitterscript auf „OnChange“ los

Hallo Grooooog,

vielen Dank für die Screenshots. Mann, ist das peinlich… Ich bin gerade im Urlaub und habe daher Zeit, mich etwas um mein IPS zu kümmern - und mache das von einem Netbook aus teils über VNC auf meinem Home-Server. Das hat in diesem Fall dazu geführt, daß ich bei der geringen Bildschirmauflösung die innerste der zahlreichen Scrollleisten übersehen habe… :rolleyes:
Ok, alles was im Browser passiert, mach ich dann auch ab sofort lokal.

Jetzt geht’s natürlich. Danke für die Geduld mit mir. :slight_smile:

Grüßle,
Moishe

Gern geschehen, hauptsache es läuft jetzt… :slight_smile:

keine Ahnung ob ich mich zu bloed anstelle aber ich bekomm´s nicht hin.

Fehler:
Uncaught exception ‚TwitterException‘ with message ‚PHP extension CURL is not loaded.‘

php_curl.dll ist im /ext Verzeichnis (IPS) aus PHP Version 5.3.1 (aus meinem IPS ausgelesen)
zwischenzeitlich noch eine MSVCR90.dll beschafft und ins IPS Verzeichnis kopiert (lt. Logdatei IPS, wollte er die)

nun, lt. Log alles i.o, in der php.ini hat er auch automatisch die curl eingetragen

ick schnalls nicht…

Du hast die falsche Version erwischt. VC6 brauchst du. VC9 hast du. Nimm einfach den Link aus der Doku unter Migration.

paresy

Verdammt, wer soll dann da drauf kommen? Hatte extra den Tipp mit der PHP Version noch beruecksichtigt…
Ok, funktioniert aber, bzw. bin ich einen Schritt weiter.

Wenn ich nun den Script indirekt starte bekomme ich eine Fehlermeldung:
„Could not authenticate you“ die Meldung an sich ist mir klar, kann´s mir aber nicht erklaeren.

hab mal den Script von „Grooooog“ nachgebaut

<<?
require_once 'twitter.class.php';

$twitterStringID = 12025 /*[twitterStringID]*/;

if ($IPS_VARIABLE == $twitterStringID)

{ 

	$message = GetValueString($twitterStringID);
	
	//Keys
	$consumerKey="<xxx>";
	$consumerSecret="<xxx>";
	$accessToken="<xxx>";
	$accessTokenSecret="<xxx>";
	
	//twittern
	$twitter = new Twitter($consumerKey, $consumerSecret, $accessToken, $accessTokenSecret);
	$twitter->send($message);
 }
?>

Die Keys hab ich alle noch mal ueberprueft (sind ja auch rauskopiert) oder muss ich bei meiner TwitterApp noch irgendwas konfigurieren?

Schau nochmal bei der Developer-Page rein, ob die auch eingetragen ist. Schau auch nach, was auf der Seite als „Default Access type“ eingetragen ist, ro oder rw. Und dann nochmal die Keys vergleichen, evtl Copy&Paste Fehler.

Keys sind 100% korrekt, Default Access Typ hatte ich schon beides drin. (was muss rein)

Was muss bei Application Typ rein?
Was muss bei Application Website rein?

und Nein, ich finde meine App nicht wenn ich auf der Developer Seite meine App suche, warum?

Unter Manage Domains steht: You haven’t authorized any domains.

ganz schoen komperziliert…

Wenn du angemeldet auf dev.twitter.com gehts, dann muss deine Anwendung da auftauchen.

>Default Access type
Read / Write natürlich :slight_smile:

>Was muss bei Application Typ rein?
Ich habs auf Client stehen

>Was muss bei Application Website rein?
Da „muss“ nix rein, ich habe irgendeine Domain angegeben.

Hallo,

nachdem ich erst nicht verstanden habe, warum ich mein IPS „twittern“ lassen sollte, konnte ich mich dem Spieltrieb sowas einzurichten nicht mehr entziehen :smiley:

Da ich allerdings meine Hausdaten nicht bei Twitter (auch nicht als „privat“ markiert) veröffentlichen will, habe ich mich nach einer lokalen Lösung umgesehen.

Nur falls es jemanden interessiert:

  • Status.Net(Mikro Blogging Software) runterladen (setzt auf PHP, mySQL und Pear auf)
  • Auf einem Webspace installieren (bei mir mein lokaler XAMP auf dem IPS Server)
  • IPS Benutzer anlegen und mit „curl“ die entsprechende Twitter-like API benutzen

So sieht beispiel mein Funktionsaufruf aus:

function TM_StatusUpdate($Text,$Ort)
{
	$TagDeutsch = array("Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag");

	$WochentagZahl = date("w");
	$Datum = date("d.m.Y H:i");

	$Text2 = "(" . $TagDeutsch[$WochentagZahl] . ", " . $Datum . " Uhr) - " . $Text;
	$Text2 = utf8_encode($Text2);

   $data = array("status"=>$Text2,"source"=>$Ort);
	$ch = curl_init();

	curl_setopt($ch, CURLOPT_URL, "http://<lokale IP>/status/index.php/api/statuses/update.xml");
	curl_setopt($ch, CURLOPT_USERPWD, "<user>:<passwort>");
	curl_setopt($ch, CURLOPT_POST, 1);
	curl_setopt($ch, CURLOPT_POSTFIELDS, $data);

	curl_exec($ch);
	curl_close($ch);
}

Wie es dann am Ende im Web aussieht habe ich angehängt.

Bei Rückfragen, einfach immer nachgefragt :wink:

PS: Nein, ich chatte nicht mit IPS. Das nutze ich nur als „Live“ Protokoll zum schönen Lesen. Für die bidirektionale Kommunikation bevorzuge ich echte Menschen :smiley:

Gruß
Thorsten

Hallo,

Twitter hat mal wieder was geändert, die aktuelle Twitter PHP bekommt ihr hier:
http://phpfashion.com/twitter-for-php

Schöne Grüße
Thomas