[Facebook SDK .NET] Publicar en el muro (y VIII)

En esta última entrega vamos a ver como hacer una publicación en el muro. Para ello necesitamos el token de acceso y vamos a usar la librería Facebook SDK .NET con Graph API.

Vamos a recordar la hoja de ruta de esta serie de artículos

1. Crear aplicación Facebook.

2. Obtener Token de acceso.

3. Graph API

4. Obtener información básica de una cuenta facebook.

5. Obtener la lista de amigos

6. Buscar Amigos

7. Obtener las publicaciones del muro

8. Publicar una nueva entrada en el muro (actual)

En la clase smpFacebookApi, tenemos el método PublicarMuroAsync, el cual creará una nueva entrada en el muro de usuario.

        public async Task<string> PublicarMuroAsync(string nombre, string titulo, string contenido,string url, string urlImagen,string nombreUsuario="me")
        {
            if (string.IsNullOrEmpty(contenido))
                throw new ArgumentException("contenido");
            if (string.IsNullOrEmpty(this.TokenAcceso))
                throw new Exception("No ha ha definido smpFaceBookApi.TokenAcceso");

            Facebook.FacebookClient clienteFB = new Facebook.FacebookClient(this.TokenAcceso);

            var parametosPOST = new
            {
                name = nombre,
                caption = titulo,
                description = contenido,
                link = url,
                picture = urlImagen
            };

            dynamic resultado = await clienteFB.PostTaskAsync(string.Format(@"\{0}\feed",nombreUsuario), parametosPOST);
            if (resultado != null)
            {
                return resultado.id ?? string.Empty;
            }
            else
            {
                return string.Empty;
            }

        }

A diferencia de las entregas anteriores, en este caso hemos usado el método PostTaskAsync, ya que la publicación es una acción de inserción y por tanto el verbo http asociado es POST. (GET para leer, PUT para actualizar y DELETE para borrar). Én este caso la llamada a PostTaskAsync requiere 2 parámetros:

– petición: sigue el patrón \<usuario>\feed

– parámetros: en este caso hemos creado una instancia de un tipo anónimo con los siguientes campos: name, caption, description, link y picture.

En la siguiente imagen se puede ver el ejemplo completo para WPF

faceboook_client_parte8_wpf

Las funciones incluidas hasta ahora en nuestra clase smpFacebookApi, son una mínima parte de todo lo que ofrece Graph API, pero poco a poco iremos ampliado su funcionalidad.

En el siguiente enlace podéis descargar el código de ejemplo.