Ir para conteúdo
Fórum Script Brasil
  • 0

Status Msn !


Thiago Gema

Pergunta

Pessoal já pesquisei aqui e não achei nada sobre Status do MSN.

A unica coisa que encontrei pela net foi esse codigo, mas é .PHP, tem como fazer isso em asp ?

<?$MSN[Host] = "207.46.106.175"; //MSN server
$MSN[Port] = 1863; // MSN port
$MSN[user] = "secondaccount@domain.com";  // Second MSN screenname
$MSN[Pass] = "secondaccountpasswordr";  // password
$pic[offline] = "../images/msnoff.gif"; // Relative path to msnoff.png
$pic[online] = "../images/msnon.gif"; // Relative path to msnon.png

// Verander hier onder niet dan blijft hij werken 
if (!$get){?>
<html>
<head>
</head>
<body>
<img src="<? echo $pic[offline]; ?>" border="0" name="MSN">
</body>
</html>
<? 
exit;
}

msn_connect();
function msn_connect() {
  global $debug, $MSN, $nr, $fp;	$nr = 0;
  	if($debug) { 
    echo "<p><b>Connecting to MSN $MSN[Host]:$MSN[Port]</b><br>";
     }
  	if($fp = fsockopen ($MSN[Host], $MSN[Port], $errno, $errstr, 30))
  	{msn_send("VER $nr MSNP7 CVRO",$fp);
           while (!feof($fp)) {
                	usleep(1);
                    if (msn_get(ereg_replace("\r\n", "", fgets($fp,128))) == "1") { 
                    	die(blieb);
                      };
                          }} 
                    else { 
                    	die("cannot connect to MSN server");
                      }}
                      
          function msn_send($text, $conn) {
          	global $debug;
          	if ($debug) { 
            echo "<font color=\"red\">$text</font><br>\n";
             }
          	fputs ($conn, "$text\r\n");
          	global $nr;$nr++;  }
          function msn_get($msg) {
          	global $fp, $nr, $MSN, $debug, $fp2;
          	if ($debug) { 
            echo "<font color=\"blue\">$msg</font><br>\n";
             }	
          	$msg = explode(" ", $msg);
          	if (strtolower($msg[0]) == "ver") {
          	msn_send("INF $nr", $fp);
          	} 
          	elseif(strtolower($msg[0]) == "inf") {
            msn_send("USR $nr MD5 I $MSN[user]", $fp);
            } 
          	elseif (strtolower($msg[0]) == "usr" AND strtolower($msg[2]) == "md5") {
            msn_send("USR $nr MD5 S ".MD5(trim($msg[4].$MSN[Pass])), $fp);
            } 
          	elseif (strtolower($msg[0]) == "usr" AND strtolower($msg[2]) == "ok") {
            msn_send("CHG $nr BSY", $fp);
            msn_send("XFR $nr SB", $fp);
            } 
          	elseif (strtolower($msg[0]) == "xfr" AND strtolower($msg[2]) == "ns") {
            $tmp = explode(":", $msg[3]);
            $MSN[Host] = $tmp[0];
            $MSN[Port] = $tmp[1];
            	fclose($fp);
            	msn_connect();
            	} 
            elseif (strtolower($msg[0]) == "xfr" AND strtolower($msg[2]) == "sb") {
            	$tmp = explode(":", $msg[3]);
            	$MSN[sb_host] = $tmp[0];
            	$MSN[sb_port] = $tmp[1];
              $MSN[sb_cki] = $msg[5];
              	fclose($fp);
            if($debug) { 
            	echo "<p><b>Connecting to sb $MSN[sb_host]:$MSN[sb_port]</b><br>";
              }  
            if($fp2 = fsockopen ($MSN[sb_host], $MSN[sb_port], $errno, $errstr, 30)){  	
            	$start = time()+5;
            	msn_send("USR $nr $MSN[user] $MSN[sb_cki]",$fp2);
            	while (!feof($fp2)) {
              if (time() >= $start) { 
              	showstatus(0); 
              	exit; 
              }        
            usleep(1);          	
            msn_sb_get(ereg_replace("\r\n", "", fgets($fp2,128)));
                  }  } 
               else { die("cannot connect to sb"); }
               }}
               
          	function msn_sb_get($msg) {
            global $fp2, $nr, $MSN, $debug, $get;
            if ($debug) { 
            	echo "<font color=\"green\">$msg</font><br>\n"; 
            	}	
            $msg = explode(" ", $msg);
            if (strtolower($msg[0]) == "usr" AND strtolower($msg[2]) == "ok") {
            	msn_send("CAL $nr $get",$fp2);
            	} 
            elseif (strtolower($msg[0]) == "217") {
            	showstatus(0);
            	fclose($fp2);
            	exit;
            	} 
            elseif (strtolower($msg[0]) == "joi") {
            	showstatus(1);
            	fclose($fp2);
            	exit;	
            	}  }
          	function showstatus($status) {
            global $pic;
            if ($status) {
            	@header("Location: $pic[online]");
            	} 
            	else { 
            	@header("Location: $pic[offline]"); 
            	}}?>

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0
Guest --Jonathan --

Cara eu quero um script que de para eu colocar duuas cores..!

no caso seria preto e rosa..!

vocês teriam como me passar o script..?

desde já muito grado..!

Link para o comentário
Compartilhar em outros sites

  • 0
Cara eu quero um script que de para eu colocar duuas cores..!

no caso seria preto e rosa..!

vocês teriam como me passar o script..?

desde já muito grado..!

Galera,

Não sei se ainda interessa, mas desenvolvi o plugin abaixo.

Como usar?

Habilite o status do Messenger:

1. Acesse http://settings.messenger.live.com/applica...ebSettings.aspx

2. Entre com email e senha

3. Acesse "Página Inicial" no menu da esquerda

4. Habilite a opção "Permitir que qualquer pessoa na Web veja a minha presença e me envie mensagens."

5. Clique em "Salvar"

Descobrir o seu ID:

1. Acesse http://settings.messenger.live.com/applica...CreateHtml.aspx

2. Em "Escolher qual controle deseja exibir em sua página" escolha a opção "Botão"

3. Identifique a linha id="Microsoft_Live_Messenger_PresenceButton_[>>>SEU ID<<<]" e copie apenas os seu ID (o que estiver depois do último _)

Alterar o script:

1. Altere [>>>URL<<<] para a Url do plugin no seu servidor

2. Altere [>>>SEU ID<<<] para o seu ID

<!-- INICIO MSN PRESENCE BUTTON -->

<link type="text/css" rel="stylesheet" href="[>>>URL<<<]/msnpresencebutton.css" />

&lt;script type="text/javascript" src="[>>>URL<<<]/PresenceButton.js"></script>

&lt;script type="text/javascript" src="http://settings.messenger.live.com/controls/1.0/PresenceButton.js"></script>

<div

id="Microsoft_Live_Messenger_PresenceButton_[>>>SEU ID<<<]"

msgr:pluginUrl="[>>>URL<<<]msnpresencebutton/"

msgr:conversationUrl="http://settings.messenger.live.com/Conversation/IMMe.aspx?invitee=[>>>SEU ID<<<]@apps.messenger.live.com&mkt=pt-BR"></div>

&lt;script type="text/javascript" src="http://messenger.services.live.com/users/[>>>SEU ID<<<]@apps.messenger.live.com/presence?dt=&mkt=pt-BR&cb=Microsoft_Live_Messenger_PresenceButton_onPresence"></script>

<!-- FIM MSN PRESENCE BUTTON -->

Créditos:

João Carlos

e.joao.carlos@gmail.com

Há muitas coisas que podem ser melhoradas. Fique a vontade!!!

Salve como PresenceButton.js

function Microsoft_Live_Messenger_PresenceButton_startConversation(conversationUrl)
{
    var url = conversationUrl + "&buttonhost=" + document.location.hostname;
    window.open(url, '_blank', 'height=300px,width=300px');
}

function Microsoft_Live_Messenger_PresenceButton_onStyleChange(element)
{
    if (element && element.presence)
    {
        Microsoft_Live_Messenger_PresenceButton_onPresence(element.presence);
    }
}

function Microsoft_Live_Messenger_PresenceButton_onPresence(presence)
{
    var idx = presence.id.indexOf('@');
    if (idx >= 0)
    {
        var id = presence.id.substr(0, idx);

        var element = document.getElementById('Microsoft_Live_Messenger_PresenceButton_' + id);
        if (element)
        {
            element.innerHTML = "";

            var conversationUrl = element.attributes['msgr:conversationUrl'].value;
            var pluginUrl = element.attributes['msgr:pluginUrl'].value;

            element.className = 'msnPresenceButton';

            //.outerFrame
            var outerFrame = document.createElement('div');
            outerFrame.className = 'msnPresenceButton-outerFrame';

            //.innerFrame
            var innerFrame = document.createElement('div');
            innerFrame.className = 'msnPresenceButton-innerFrame';
            
            var link = document.createElement('a');
            link.href = 'java script:Microsoft_Live_Messenger_PresenceButton_startConversation("' + conversationUrl + '");';
            link.className = 'msnPresenceButton-link';
            
            var statusIcon = document.createElement('img');
            statusIcon.alt = presence.statusText;
            statusIcon.title = presence.statusText;
            statusIcon.className = 'msnPresenceButton-statusIcon';            

            //statusIcon.src = presence.icon.url;        
            if (statusIcon.title == 'Online')
            {
                statusIcon.src = pluginUrl + 'online.gif';
            }
            else if ((statusIcon.title == 'Ocupado') || (statusIcon.title == 'Busy'))
            {
                statusIcon.src = pluginUrl + 'busy.gif';
            }
            else if ((statusIcon.title == 'Ausente') || (statusIcon.title == 'Away'))
            {
                statusIcon.src = pluginUrl + 'away.gif';
            }        
            else
            {
                statusIcon.src = pluginUrl + 'offline.gif';
            }                        
            
            innerFrame.appendChild(statusIcon);
            link.appendChild(innerFrame);
            outerFrame.appendChild(link);
            element.appendChild(outerFrame);
            
            element.presence = presence;
        }
    }
}
Salve como msnpresencebutton.css. Não é necessário, até porque está em branco, mas você pode customizar.
.msnPresenceButton {
}
.msnPresenceButton-outerFrame {
}
.msnPresenceButton-innerFrame {
}
.msnPresenceButton-statusIcon {
}
.msnPresenceButton-link {
}

Implemente no seu site.

Ahhh. Não esqueça de adicionar as imagens para cada status...

Caso queira ver em funcionamento, acesse: www.bitplanet.com.br

Espero que seja útil.

Abraço.

Editado por e.joao.carlos
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...