2009-11-11 4 views
1

Je suis en train d'utiliser pour publier des messages de l'utilisateur de mon applicationn .NET Developer Toolkit Facebook (http://facebooktoolkit.codeplex.com/).Facebook Developer Toolkit - Publication d'un message

J'ai un ID utilisateur pour un utilisateur de facebook. Ma question est, comment puis-je publier un message sur le flux Facebook de cet utilisateur? À l'heure actuelle, j'écrit avoir le code suivant:

ConnectSession session = new ConnectSession(ApplicationKey, SecretKey); 
if (session.IsConnected()) 
{ 
    Api facebook = new Api(session); 
    Facebook.Schema.user user = facebook.Users.GetInfo(userID); 

    facebook.Stream.Publish("Hello"); 
} 

Du mieux que je peux dire, ce code ne Publish un message à l'utilisateur actuellement connecté. Mais je ne pense pas qu'il publie un message sur l'utilisateur avec le flux du userID. Comment puis-je publier un message sur un utilisateur Facebook avec un flux d'identifiant d'utilisateur spécifique?

Merci!

Répondre

0

Vous pouvez transmettre l'ID utilisateur de l'utilisateur dont flux que vous souhaitez publier:

facebook.Stream.Publish("Hello", null, null, null, userID); 

L'utilisateur doit avoir accordé votre demande la permission avant de publish_stream étendu main bien sûr.

+0

Désolé, je ne peux pas obtenir y notre réponse au travail. Je reçois un FacebookException, « doit être spécifiée Une clé de session lorsque la demande est signée avec un secret de session ». Des indices? –

1

essayer la première connexion ...

try 
     { 
      servicio.ApplicationKey = "xxxxxxxxxxxxxxxxxxxxxxxxxx"; 
      servicio.ConnectToFacebook(new List<Enums.ExtendedPermissions>() { Enums.ExtendedPermissions.read_stream, Enums.ExtendedPermissions.publish_stream }); 
      label2.Text = "Conectado:"; 
      label1.Text = servicio.Users.GetInfo().first_name + " " + servicio.Users.GetInfo().last_name; 
      pictureBox1.Image = servicio.Users.GetInfo().picture_small; 
      button2.Text = "Sesión Iniciada"; 
      button2.Enabled = false; 
      checkBox1.Enabled = true; 
      numericUpDown1.Enabled = true; 
      groupBox3.Enabled = true; 
      groupBox4.Enabled = true; 
     }catch (FacebookException fe) 
     { 

      listBox1.Items.Add(fe.Message); 
     } 

alors vous pouvez publier .... comme ça ..

try 
     { 
      var cancion = "lalalalala"; 
      String cosa = servicio.Stream.Publish(cancion, null, new List<action_link>() 
      { 
       new action_link() 
       { 
       text="Visita SQLeros", 
       href="http://sqleros.com.ar/wps" 

       } 
      }, null, 0); 
      servicio.Stream.AddLike(cosa); //to add like (Y) 
      listBox1.Items.Add(cosa); 

     } 
     catch (FacebookException fe) 
     { 

      listBox1.Items.Add(fe.Message); 
     } 

ou ce .. n_n

try 
     { 
      String namePub = servicio.Users.GetInfo().first_name + "ha actualizado su estado"; 
      String cosa = servicio.Stream.Publish(richTextBox1.Text, 
      new attachment() 
      { 
       name = namePub, 
       href = "http://www.facebook.com/apps/application.php?id=136818146334647", 
       caption = "Tú tambien puedes usar Escuchando ahora, es facil y rapido", 
       properties = null, 
       media = new List<attachment_media>() 
       { 
        new attachment_media_image() 
        { 
         src="http://www.rammsdio.com.ar/images/img14781001.gif", 
         href = "http://www.facebook.com/apps/application.php?id=136818146334647" 
        } 
       } 
      }, 
      new List<action_link>() 
      { 
       new action_link() 
       { 
        text="Visita SQLeros", 
        href="http://www.sqleros.com.ar/wps" 
       } 
      },null,0); 
      listBox1.Items.Add("Has actualizado tu estado..."); 
      richTextBox1.Clear(); 
      if (checkBox2.Checked) 
       servicio.Stream.AddLike(cosa); 
     } 
     catch (FacebookException fb) 
     { 

      listBox1.Items.Add(fb.Message); 
     } 

grettings i Espérons que cela son utile pour you..ñ_ñ

Questions connexes