Publicación en Twitter con ASP.NET


Publicación en Twitter con ASP.NET

En un post anterior habia descrito la forma de publicar post mediante programación, pero Twitter cambio la forma de hacerlo. Ahora vamos a hacerlo mediante la libreria TwitterVB.




Primero debemos descargar la dll llamada TwitterVB.dll desde TwitterVB y agregarla a nuestro proyecto en la carpeta bin.




Luego accedemos a Twitter y luego al link https://dev.twitter.com/apps para registrar nuestra nueva aplicación que se actualizará desde código. Una vez registremos la aplicación vamos a obtener dos datos que vamos a necesitar. El primero es el Customer key y el segundo es el Customer Secret.







Ya desde programación realizamos lo siguiente:
TwitterVB2.TwitterAPI tw = new TwitterVB2.TwitterAPI();
string url = tw.GetAuthorizationLink(sCustomerKey, sCustomerSecret);





La url que obtenemos desde programación la invocamos en nuestro navegador... esto nos mostrará una ventana de validación de permisos de Twitter. Hacemos clic en permitir acceso y esto nos mostrará un PIN de validación:









El numero de validación nos servirá para obtener el Token y el TokenSecret. Estos los necesitamos guardar ya que son los que nos permitiran publicar Twitts. Actualmente estos datos son persistentes por lo cual podemos almacenarlos, pero si Twitter llegara a cambiar la autenticación probablemente deberiamos actualizarlos. Yo llevo varios meses funcionando asi y todavia no han cambiado.




Para obtener el Token y el TokenSecret se debe ejecutar:
bool isValidPIN = tw.ValidatePIN("4444444");

if (isValidPIN) {
string OAuthToken = tw.OAuth_Token();
string OAuthTokenSecret = tw.OAuth_TokenSecret();
}


Una vez ya tenga el token y el tokenSecret puede publicar los mensajes por medio de:
tw.AuthenticateWith(ConsumerKey, ConsumerKeySecret, OAuthToken, OAuthTokenSecret);
tw.Update("Mi primer mensaje");


Y ya... Como comentaba tanto el Token como el TokenSecret hasta el momento son persistentes por lo cual podria guardarlos en un archivo de configuración, base de datos o llamarlos directamente.






fuente: http://www.blogdeprogramacion.com/