PHP + Twitter: Cómo enviar tweets desde PHP

PHP + Twitter: Cómo enviar tweets desde PHP
portada2

Hola a todos, debido a la gran acogida que ha tenido el post Cómo usar la API de twitter en PHP he decidido hacer una serie de tutoriales sobre la API de twitter. En un principio no voy a numerar los tutoriales, porque no tengo un plan establecido, escribiré los tutoriales según se me ocurran.

En este tutorial vamos a aprender cómo enviar tweets desde PHP de una manera fácil. Para realizar esta tarea vamos a usar la librería  TwitterAPIExchange. Esta librería contiene todas las funciones necesarias para conectar la API con los credenciales del usuario. y obtener de una manera fácil los datos que queramos.

Antes de entrar en detalle hay que indicar que si queremos enviar tweets desde nuestra aplicación. Tenemos que indicar en la configuración de la aplicación que creamos en twitter que nuestra aplicación tiene acceso de escritura y lectura. Para ello cambiamos los permisos de escritura desde el siguiente enlace Twitter APPs.

Una vez que le hemos dado permisos de escritura a nuestra aplicación vamos a comenzar con el contenido del tutorial. Vamos a crear una función en PHP que tenga como argumento de entrada el mensaje que queremos enviar desde nuestra cuenta personal de twitter, es decir desde la cuenta que ha creado la aplicación de twitter.

<?php function sendTweet($mensaje){ ini_set('display_errors', 1); require_once('TwitterAPIExchange.php'); /** Set access tokens here - see: https://dev.twitter.com/apps/ **/ $settings = array( 'oauth_access_token' => "", 'oauth_access_token_secret' => "", 'consumer_key' => "", 'consumer_secret' => "" ); $url = 'https://api.twitter.com/1.1/statuses/update.json'; $requestMethod = 'POST'; /** POST fields required by the URL above. See relevant docs as above **/ $postfields = array( 'status' => $mensaje, ); /** Perform a POST request and echo the response **/ $twitter = new TwitterAPIExchange($settings); return $twitter->buildOauth($url, $requestMethod)->setPostfields($postfields)->performRequest(); } $mensaje = "Tutorial realizado con éxito en @GeekyTheory. #PHP + #Twitter: Cómo enviar tweets desde PHP |  http://geekytheory.com/php-twitter-como-enviar-tweets-desde-php" $respuesta = sendTweet($mensaje); $json = json_decode($respuesta); echo '<meta charset="utf-8">'; echo "Tweet Enviado por: ".$json->user->name." (@".$json->user->screen_name.")"; echo "<br>"; echo "Tweet: ".$json->text; echo "<br>"; echo "Tweet ID: ".$json->id_str; echo "<br>"; echo "Fecha Envio: ".$json->created_at; ?>

Tenemos que tener en cuenta de que para que funcione este tutorial tenemos que insertar los credenciales de la API que obtuvimos en el tutorial anterior. La función senTweet($mensaje) tiene como objetivo el envío de un tweet. para esto enviamos una respuesta POST a la dirección https://api.twitter.com/1.1/statuses/update.json con el tweet que queremos enviar.

Si todo ha salido bien, esta función devuelve un JSON con el estado del tweet que se acabamos de enviar. Por lo tanto, vamos a usar esta información y mostrarla en pantalla.

Captura2

Finalmente, indicar que el uso de la API de twitter tiene unas cuantas limitaciones respecto al envío de tweets.

Prueba del envío de tweets desde #PHP con la API de Twitter para el próximo tutorial en @GeekyTheory
— Alejandro Esquiva (@Alex_Esquiva) Mayo 25, 2014

PODÉIS DESCARGAR EL CÓDIGO EN EL SIGUIENTE REPOSITORIO DE GITHUB.

github-logo

Y esto es todo, espero que os haya gustado el tutorial. Saludos @alex_esquiva.