Ein Leser meines Facebook-API-Tutorials für C# hat sich eine Commandline-Version gewünscht, mit der man auf der eigenen Pinnwand Nachrichten veröffentlichen kann und deren Sytanx ungefähr so aussehen soll:
FacebookCommandlineTutorial.exe [Nachricht] [AccessToken]
So geht’s: Punkte 1-6 sind bereits hier beschrieben.
7. Als nächstes erstellt man ein neues „Konsolenanwendungs-Projekt“ in C# Visual Studio.
8. So sieht der Code aus:
namespace FacebookCommandlineTutorial
{
class Program
{
static void Main(string[] args)
{
if (args.Length<2)
{
Console.WriteLine("\nSyntax: FacebookCommandlineTutorial.exe "
+ "[Nachricht] [AccessToken] ");
Console.WriteLine("\nBeispiel: " +
"FacebookCommandlineTutorial.exe \"Hallo Simon\" "
+ "AAACZC1mk0vXABAB0T00b4dhZB");
Console.ReadLine();
return;
}
Console.Write("\nSende Nachricht '" + args[0] + "'"
+ " ... ");
byte[] Nachricht = null;
byte[] Antwort = null;
string AccessToken = args[1];
//postet die Nachricht auf der Wall des Users
//der das AccessToken generiert hat:
string GraphURL = "https://graph.facebook.com/me/feed";
//WebClient anlegen
System.Net.WebClient myWebClient = new System.Net.WebClient();
//Except100 ausschalten, sonst gibt es u. U. Fehlermeldungen
System.Net.ServicePointManager.Expect100Continue = false;
Nachricht = Encoding.UTF8.GetBytes("message=" + args[0]
+ "&access_token=" + AccessToken);
try
{
Antwort = myWebClient.UploadData(GraphURL, Nachricht);
//Erfolgsmeldung (ID des Posts) in JSON
//Console.WriteLine("JSON-Response: "
//+ System.Text.Encoding.ASCII.GetString(Antwort));
Console.WriteLine("erfolgreich gepostet!");
}
catch (Exception ex)
{
Console.WriteLine("Fehler: \n\n" + ex.Message + "\n\n");
}
Console.ReadLine();
}
}
}
P.S.
Probleme? Fragen? Anregungen? Ich helfe jederzeit und gerne – einfach einen Kommentar oder Mail schreiben, die Antwort kommt schnellstmöglich. Unternehmen, die Unterstützung, Beratung oder Schulung bei der API- oder Webprogrammierung, der Social-Media-Entwicklung oder dem Social-Media-Management benötigen finden zudem entsprechende Angebote meiner Firma auf der Website www.Frank-IT-Beratung.de


fb.com/mySocialWebDevBlog
@Simon_A_Frank
Spannende Idee. Was mich interessieren würde: kann man auch ein Tool entwickeln, welches von der Command Line auf (eigene) Seiten und in Gruppen postet?
vielen Dank für das Feedback. Klar, einfach die Zeile GraphURL=“…“ wie gewünscht anpassen, z. B. auf https://www.facebook.com/mySocialWebDevBlog um auf die Facebook-Seite dieses Blogs zu posten!