![]() |
Посылать ICQ посредством PHP
Существует в сети такой сайт: http://911.ru
Он позволяет общаться по аське через самого себя, не устанавливая на компе клиента ICQ. Поискал в сети информацию, наткнулся на скрипт Дмитрия Бородина, но он не работает в настоящее время (везде об этом написано). Никто не может подсказать, как все-таки такое можно организовать? Нужно только отправка сообщений на ICQ, остальные возможности не интересуют. |
Вот лови...
Хотя если бы ты минуту удилил бы яндексу, тебе бы не пришлось сюда писать :) <? /***************************** Jik All rights reserved. This is a standard copyright header for all source code appearing at Jik. This application/class/script may be redistributed, as long as the above copyright remains intact. Comments to jik@mail.ru ******************************* check new to <a href="http://jiks.chat.ru" target="_blank">http://jiks.chat.ru</a> */ /** * @title Sock Sender * @author Jik * @version 0.1 - first version. Supported only POST method */ /* it's class allow send any POST http query to any server and get answer. Use for send from script (and cron) any posts to any servers: icq, sms, boards, and other. Open html source code from server, mark a "input" tags, values, write $data array and send it! */ class socksender { var $User_Agent="Mozilla/4.0 (compatible; MSIE 5.01; Windows NT)"; var $Accept_Encoding="gzip, deflate"; var $method="POST"; var $protocol="HTTP/1.0"; var $send2port=80; function send($host, $send2url, $referer, $data) { $http_query=""; while (list($name,$value)=each($data)) { $tmp_data[]=urlencode($name)."=".urlencode($value); } $enc_data=implode("&", $tmp_data); $len_data=strlen($enc_data); if ($this->method=="POST") { $http_query= $this->method." ".$send2url." HTTP/1.0\r\n". "Referer: ".$referer."\r\n". "Content-Type: application/x-www-form-urlencoded"."\r\n". "Content-Length: ".$len_data."\r\n". "Host: ".$host."\r\n". "Accept: */*\r\n". "Accept-Encoding: ".$this->Accept_Encoding."\r\n". "Connection: Keep-Alive"."\r\n". "User-Agent: ".$this->User_Agent."\r\n"."\r\n". $enc_data; flush(); $fs = fsockopen($host, $this->send2port, &$errno, &$errstr, 30); if (!$fs) { die ("unable open socket: $errstr ($errno)");} fputs ($fs, $http_query); while($r=fgets ($fs, 20048)) $rt.=$r; fclose($fs); flush(); } return $rt; } } $post=new socksender(); $data['to']="#нужный UIN"; $data['from']="Имя Юзера"; $data['fromemail']="info@домен.ру"; $data['body']="TEST MESSAGE"; echo "<pre>".$post->send("web.icq.com", "/whitepages/page_me/1,,,00.html", "http://web.icq.com/wwp?Uin=#нужный UIN", $data)."</pre>"; ?> Все взято от сюда _http://phpclub.ru/talk/showthread.php?threadid=16161&perpage=20&pagenumber=1 Вот еще посмотри сдесь :) _http://helper10.narod.ru/icq0.htm Вот еще как вариант <? flush(); // поля надо заполнить $from='Dmitry Borodin'; $fromemail='ваше_мыло@php.spb.ru'; $subject='сабж'; $to='00000000'; // <-- номер. (Уверен, что кто-нить не догадается :-) $body='само сообщение'; $submit='Send Message'; // don't edit $ref="http://wwp.icq.com/148546"; // don't edit // формирование заголовка $PostData= "from=".urlencode($from)."&". "fromemail=".urlencode($frommail)."&". "subject=".urlencode($subject)."&". "body=".urlencode($body)."&". "to=".urlencode($to)."&". "submit=".urlencode($submit); $len=strlen($PostData); $nn="\r\n"; $zapros= "POST /scripts/WWPMsg.dll HTTP/1.0".$nn. "Referer: $ref".$nn. "Content-Type: application/x-www-form-urlencoded".$nn. "Content-Length: $len".$nn. "Host: wwp.icq.com".$nn. "Accept: */*".$nn. "Accept-Encoding: gzip, deflate".$nn. "Connection: Keep-Alive".$nn. "User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Windows NT)".$nn. "".$nn. "$PostData"; echo $zapros."\n\n-------------\n\n\n"; flush(); // открываем сокет и шлем заголовок $fp = fsockopen("wwp.icq.com", 80, &$errno, &$errstr, 30); if(!$fp) { print "$errstr ($errno)\n"; exit; } // для наглядности выводим заголовок ответа и страницу на экран fputs($fp,$zapros); print fgets($fp,20048); fclose($fp); ?> |
Цитата:
Начну с конца: последний скрипт НЕ работает! И это легко обнаруживается опять с помощью того же Яндекса. Первый скрипт отбрасывает на несуществующую страницу ICQ... Официальный протокол читал... Спасибо. У меня даже были исходники от Миранды, но не помогли. |
Думаю гораздо проще будет это все организовать через открытый протокол Джаббера (кстати недавно сертифициорванный и стандартизованный), ну а соответственно через него и шлюзы, на ICQ.
|
недавно искал по етой теме, вот нашол:
http://sourceforge.net/projects/phpurple но плин както странно работает, говорят что под апачем не работает ... кто нибудь уже нюхал? |
| Часовой пояс GMT +4, время: 07:41. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.