Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Mata Hary

Enviar e-mail a partir de lista de contatos do MSN

Recommended Posts

Alguém poderia me ajudar?Estou precisando de um sistema que extrai a lista de contatos de um e-mail e envia convite para paricipar de comunidade. Tipo aqueles que o Gazzag usa para enviar convites. Funciona assim: a pessoa digita o e-mail e a senha do hotmail ou yahoo e o sistema puxa a lista de contatos e envia convites para todos os contatos.Alguém sabe como fazer isso? Ou conhece algum programa que faça?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Achei o Script!!!!

 

Só que acho que não to sabendo usar.

 

1- Ele trava

2- Se estou com MSN conectado ele desconecta e avisa que estou entrando de outro computador (uso o Windows Live Messenger 8.1).

 

Aqui está o Script!!

Alguém pode me ajudar a colocar isso pra funcionar?

 

Script para convidar amigos do MSN

 

Página Index.php

<?phpif(isset($_GET['mod']) == 'request'){	//pega dados postados		$login = $_POST['txtmail'];		$senha = $_POST['txtsenha'];	//altera o safe mode		ini_set(SAFE_MODE,1);	//inclusão da classe		include('msnlistgrab.php');	//conexao e request de dados		$gm = new msnlistgrab();		$gm->user = $login;		$gm->password = $senha;		$gm->GetRecords();	//lista resultado		foreach ($gm->res as $val){			echo $val .'<BR>';		}	//mostra a quantidade de registros		echo '<hr/>'.$gm->total.' registros identificados de cadastrados no seu MSN.';}else{?><html><body><form action="<?=$_SERVER['PHP_SELF']?>?mod=request" method="post">e-mail do msn :<br/><input type="text" name="txtmail"/><br/>senha do msn :<br/><input type="password" name="txtsenha"/><br/><input type="submit" value="envia"/> <input type="reset" value="limpar campos"/></form></body></html><?}?>
------------------------------------------------------------------------------------------------------------------------------------------------

 

Página msnlistgrab.php

<?php /**************************************************************************************** *								   MSN CONTACT LIST GRAB CLASS						 * *			 ©2005 Ghulam Mustafa, mustafa.pk@gmail.com, Pakistan					* *							   ver 1.0 (04.02.2005)									* ****************************************************************************************/	class msnlistgrab {	var $user;	var $password;	var $server ='messenger.hotmail.com';	var $port = 1863;	var $version = 'MSNMSGR 6.2';	var $buffer;	var $socket;	var $startcom;	var $error = "";	function msnlistgrab() {	}	function GetRecords(){		if ($this->msn_connect($this->server, $this->port)){			return $this->res;		}		else{			return $this->error;		}	}	function getData() {		$this->buffer="";		while (!feof($this->socket)) {			$this->buffer .= fread($this->socket,1024);			if (preg_match("/\r/",$this->buffer)) {				break;			}		}		$this->checkData($this->buffer);	}	function getData2() {;	//$container="";	$buffer="";	while (!feof($this->socket)) {		if ($this->i>1) {			if ($this->i==$this->total) {				fclose($this->socket);				$this->res;				break;			}		}		$buffer = fread($this->socket,8192);		$this->check_buffer($buffer);	}	}	function check_buffer($buffer) {		if (eregi("^SYN",$buffer)) {			list($junk, $junk, $junk, $this->total) = explode(" ", $buffer);			//	echo '<h1>Number of Records: '.$this->total.'</h1>';		}		$this->grabber($buffer);	}	function grabber ($buffer)	{		$g = preg_split("/[\n]+/", $buffer);		for ($n=0;$n<count($g);$n++) {			if (strstr($g[$n], 'LST')) {				$this->i++;				//echo $i.',';				list($junk, $email) = explode(" ", $g[$n]);				$this->res[] = $email;			}		}	}	function checkData($buffer) {		//			  echo $buffer;		if (preg_match("/lc\=(.+?)/Ui",$buffer,$matches)) {			$this->challenge = "lc=" . $matches[1];		}		if (preg_match("/(XFR 3 NS )([0-9\.\:]+?) (.*) ([0-9\.\:]+?)/is",$buffer,$matches)) {			$split = explode(":",$matches[2]);			$this->startcom = 1;			$this->msn_connect($split[0],$split[1]);		}		if (preg_match("/tpf\=([a-zA-Z0-9]+?)/Ui",$buffer,$matches)) {			$this->nexus_connect($matches[1]);		}		/*		$split = explode("\n",$buffer);		for ($i=0;$i<count($split);$i++) {		$detail = explode(" ",$split[$i]);		if ($detail[0] == "LST") {		//echo "<div  OnMouseOver=\"style.cursor='hand';showTooltip('show','$detail[1]-$detail[3]')\" OnMouseMove=\"followTooltip('show')\" OnMouseOut=\"showTooltip('hide')\">" . urldecode($detail[2]) . "</div>";		}		}		*/	}	function msn_connect($server, $port) {		if (IsSet($this->socket)) {			fclose($this->socket);		}		$this->socket = fsockopen($server,$port);	   //stream_set_timeout($GLOBALS["socket"], 20000);		if (!$this->socket) {			return "Falha na conexão com o servidor.";		} else {			$this->startcom++;			$this->send_command("VER " . $this->startcom . " MSNP8 CVR0",1);			$this->send_command("CVR " . $this->startcom . " 0x0409 win 4.10 i386 ". $this->version ." MSMSGS " . $this->user,1);			$this->send_command("USR " . $this->startcom . " TWN I " . $this->user,1);		}	}	function send_command($command)	{		$this->startcom++;		//	  echo "<font color=blue> >> $command<br>";		fwrite($this->socket,$command . "\r\n");		$this->getData();	}	function nexus_connect($tpf)	{		$arr[] = "GET /rdr/pprdr.asp HTTP/1.0\r\n\r\n";		$curl = curl_init();		curl_setopt($curl, CURLOPT_URL, "https://nexus.passport.com:443/rdr/pprdr.asp");		curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);		curl_setopt($curl, CURLOPT_VERBOSE, 0);		curl_setopt($curl, CURLOPT_HEADER,1);		curl_setopt($curl, CURLOPT_HTTPHEADER, $arr);		curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);		$data = curl_exec($curl);		curl_close($curl);		preg_match("/DALogin=(.+?),/",$data,$matches);		//$data = str_replace("\n","<br>",$data);		//			  echo $data;		//echo "<br><br>";		$split = explode("/",$matches[1]);				$headers[0] = "GET /$split[1] HTTP/1.1\r\n";		$headers[1] = "Authorization: Passport1.4 OrgVerb=GET,OrgURL=http%3A%2F%2Fmessenger%2Emsn%2Ecom,sign-in=" . str_replace("@","%40",$this->user) . ",pwd=" . $this->password . ", " . trim($this->challenge) . "\r\n";		$curl = curl_init();		curl_setopt($curl, CURLOPT_URL, "https://" . $split[0] . ":443/". $split[1]);		curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);		curl_setopt($curl, CURLOPT_VERBOSE, 0);		curl_setopt($curl, CURLOPT_FOLLOWLOCATION,1);		curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);		curl_setopt($curl, CURLOPT_HEADER,1);		curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);		$data = curl_exec($curl);		//$data = str_replace("\n","<br>\n",$data);		//			  echo $data;		curl_close($curl);		//echo "</font>";		preg_match("/t=(.+?)'/",$data,$matches);		$this->send_command("USR " . $this->startcom . " TWN S t=" . trim($matches[1]) . "",2);		$this->send_command("SYN " . $this->startcom . " 0",2);		$this->getData2();	}}//end of the file?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.