Facebook Webanwendung erstellen

Hallo, ich würde gerne ein kleines Programm für Facebook schreiben, welches regelmäßig Daten der Freunde einer Person abfragt und entsprechend dieser Daten Aktionen ausführt. Das Ganze soll relativ automatisch ablaufen ohne dass der Benutzer etwas machen muss (außer einer initialen Konfiguration natürlich). Sobald er der Anwendung die Erlaubnis gegeben hat, soll sie im Hintergrund arbeiten und etwa ein Mal täglich auf die Wand eines Freundes posten.

Jetzt hab ich mich eine Stunde durch die Doku gelesen, komme aber nicht wirklich auf einen grünen Zweig. Wie benutze ich denn jetzt die API? Muss ich meinen Code irgendwo hosten und dann über eine Canvas Page HTML Inhalt einblenden? Ich weiß nicht genau, wo und wie ich denn jetzt anfangen soll. Beim Anlegen einer Anwendung werde ich auch nach URLs gefragt, mit denen ich aktuell nichts anfangen kann.

Kann mir da jemand Durchblick verschaffen?
 

Harrier

Erfahrenes Mitglied
Also ich kenn mich mit der Facebook API nicht so sonderlich gut aus, und bin mir auch nicht so ganz sicher was du jetzt eigentlich machen willst. Aber nehmen wir mal an, du willst irgendeine Information über deine Freunde abfragen (z.B. ob sich der Status geändert hat) und dementsprechend einen Wall-Post hinterlassen. (Wer dafür welche Rechte freigeben muss ist mir jetzt nicht bekannt, aber lässt sich leicht heraus finden).

Wenn du dafür nichts tun willst, und auch keiner deiner Freunde etwas tun soll (App starten oder sowas) DENKE ich ohne weiteres über die Facebook API zu wissen, dass du eine Stand-Alone Anwendung schreiben müssen wirst. Die kannst du dann entweder bei dir auf'm Rechner laufen lassen oder auf einem Server. Wenn du sie bei dir laufen lässt, kann sie natürlich nur arbeiten, wenn dein Rechner an ist.

Dann kannst du die Befehle der Facebook API verwenden. Ein Beispiel, wie du an die Facebook Wall eines Nutzers schreiben kannst findest du z.B. unter https://developers.facebook.com/docs/reference/api/ unter der Überschrift "Publishing". curl -F ist dabei der Linux Befehl um einen HTTP POST Request zu schicken. Für weitere infos zu curl google "man curl". Wenn du nicht auf Linux arbeitest, oder selbst etwas mehr Kontrolle haben willst: Für so ziemlich jede nennenswerte Programmiersprache gibt es eine HTTP Client Bibliothek. Alles was hinter dem curl -F steht muss dann sozusagen in deinen HTTP POST Request. (Ein POST Request ist normalerweise das, was passiert wenn du ein Formular im Web ausgefüllt hast - er übermittelt Informationen über bestimmte Werte an den Server). Wie so ein Request gemacht wird steht dann in der Dokumentation von der HTTP Client Bibliothek (hoffentlich).
Das Abfragen eines Status geht sicherlich sehr ähnlich.

Das ist jetzt lediglich, wie die Facebook API Befehle an Facebook gesendet werden können. Es könnte sein, dass du eine App-Id oder sowas brauchst. Das müsste auch bei FB irgendwo beschrieben sein, müsstest du mal suchen.

Hoffe ich konnte dir ein bißchen helfen.
Viele Grüße
 
Jein, ist inzwischen wenig Neues dabei, was ich noch nicht wusste, aber dennoch danke =)

Ich dachte anfangs, Facebook sei ähnlich wie Github, also Code hochladen, Demopage anlegen und das dann als Facebook Anwendung laufen lassen, aber so ist es halt nicht. Die Aussage "Wie benutze ich denn die API?" war schlecht formuliert, natürlich weiß ich, wie ich auf die API zugreife. Es ging mehr drum, wo der Code gehostet sein muss, weil ich eben anfangs dachte, dass das direkt bei Facebook gehen würde.