MsnPlus: Poner un feed/Rss en el mensaje personal de Msn

domingo, 8 de marzo de 2009

//variables
var rssUrl = "http://anbu2k.blogspot.com/feeds/posts/default?alt=rss"; //esto se debe cambiar por el feed que queremos mostrar
var selectedTitle = 1;
var minutos = 3; //Minutos para que se recargue el mensaje

//Al cargar
function OnEvent_Initialize(MessengerStart)
{
getMensaje();
MsgPlus.AddTimer("RefreshPSM",minutos*60000);
}

//Timer
function OnEvent_Timer(sTimerId){
if (sTimerId == "RefreshPSM"){
getMensaje();
MsgPlus.AddTimer("RefreshPSM",minutos*60000);
}
}

//Obtiene la info
function getMensaje(){
rssObj = getRSS(rssUrl);
Messenger.MyPersonalMessage = readTitle(rssObj,selectedTitle) + " | " + readLink(rssObj,selectedTitle);
}

//Crea el objeto xml
function getRSS(url) {
var xmlDoc, xmlObj;
xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async="false";
xmlDoc.load(url);
xmlObj=xmlDoc.documentElement;
return xmlObj;
}

//Lee el titulos del post del feed
function readTitle(source, index) {
var retValue;
var temp;
try
{
retValue = source.childNodes(0).getElementsByTagName("title")[index].childNodes(0).text;
temp = source.childNodes(0).getElementsByTagName("title")[index+1].childNodes(0).text;
}catch(err)
{
endFlag = 1;
}
return retValue;
}

//Lee el enlace del post
function readLink(source, index) {
var retValue;
var temp;
retValue = source.childNodes(0).getElementsByTagName("link")[index].childNodes(0).text;
temp = source.childNodes(0).getElementsByTagName("link")[index+1].childNodes(0).text;
var strURL = retValue;
//Set URL to post to
var PostToUrl = 'http://tinyurl.com/api-create.php?url=' + strURL;

//Initialise the HTTP request object
var xmlhttp2 = new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp2.open("GET", PostToUrl, true);

//Handle data returned from HTTP query
xmlhttp2.onreadystatechange = function()
{
if(xmlhttp2.readyState == 4) {
resp = xmlhttp2.responseText;
}
}
//Send HTTP query
xmlhttp2.send();
return resp;
}

//Menu para actualizar
function OnGetScriptMenu(Location) {
var Script_Menu = "";
Script_Menu+= "Update";
Script_Menu+= "
";
return Script_Menu;
}

//Funcion del menu
function OnEvent_MenuClicked(MenuItemId, Location, OriginWnd) {
//If the menu item was HELP
if (MenuItemId == "update") {
getMensaje();
}
}

0 comentarios: