Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   помогите с php ботом (https://forum.antichat.xyz/showthread.php?t=53457)

Ridikh 12.11.2007 21:17

помогите с php ботом
 
есть скрипт php icq бота, хочу добавить функцию отправки sms через него

sms надо отправлять через сайт http://sms.smssender.org

и надо сделать автозаполнения форм на сайте, чтобы можно было боту написать:
!sms +79201031775 Привет кроссавчег!
и он прислал sms на номер +79201031775 с текстом "Привет кроссавчег!"

бот на webicqpro classe
кусок бота
Код:

case '!stop':                                  if($msg['from'] == ADMINUIN)                                  {                                          $icq->sendMessage(ADMIN, " ICQ BOT stoped");                                          $icq->disconnect();                                          exit();
как то таг

bopoh13 12.11.2007 21:32

Чет этот сервис не робит никуя!

mr.The 12.11.2007 21:48

сервис действительно неробит =\\
а вов торых - в чём сопсна проблемма? отурываеш сокет - посылаш запос - выводиш результат

MegaDeth 12.11.2007 21:51

Ridikh, что за бот то?
вообще смысл создания темы? что тебе можно посоветовать если ты ни кусок кода ни код полностью не выложил.
Как сделать - добавить в список комманд эту комманду и определить для нее соотв. функцию.
есть сервис чтото наподобие [номер_телефорна]@smsmsg.ru
отправляеш как на мыло и приходит смс. актуально для мегафона, для других ОпСосов другие гейты какието...
можно просто на пхп mail()...

Ridikh 12.11.2007 21:53

отправил себе смс все ок
на мегафоне работает

sw04 12.11.2007 22:24

на мтс работает
вводить надо в междунар. формате.
зы россия +7

MegaDeth 12.11.2007 22:49

Ridikh, пиши запрос, окрывай сокет и пихай запрос когда придет комманда !sms. Конструкцию case ты думаю знаешь как юзать. незнаешь - гугли. про запрос - учи протокол http. функции для работы с сокетами, здесь необходимые - Fscockopen(), fputs(),fclose(). Rread(), если хочешь получить подтверждение от сервера (анализируй ответы от него)
да, и параметры идущие с коммандой получай как по примеру (разделяешь по " ")
ps запрос можеш перехватить прогой InetCrack...

n3m0 12.11.2007 22:57

Открываеш сокет, и отправляеш ему:
Код:

POST http://sms.smssender.org/index.php HTTP/1.0
User-Agent: Opera/9.23 (Windows NT 5.1; U; ru)
Host: sms.smssender.org
Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1
Accept-Language: uk-UA,uk;q=0.9,en;q=0.8
Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1
Accept-Encoding: deflate, gzip, x-gzip, identity, *;q=0
Referer: http://sms.smssender.org/
Proxy-Connection: close
Content-Length: 100
Content-Type: application/x-www-form-urlencoded

act=send&sms_phone=+xxxxxxxxxxxx&sms_mess=TEXT&sms_trans=on&sms_break=on&sms_user=USER&sms_password=PASSWORD

USER,PASSWORD - логин и пароль твоего пользователя на сайте

xxxxxxxxxxxxx - телефонный номер получателя

TEXT - текст сообщения

Ridikh 13.11.2007 23:06

Цитата:

Сообщение от n3m0
Открываеш сокет, и отправляеш ему:
Код:

POST http://sms.smssender.org/index.php HTTP/1.0
User-Agent: Opera/9.23 (Windows NT 5.1; U; ru)
Host: sms.smssender.org
Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1
Accept-Language: uk-UA,uk;q=0.9,en;q=0.8
Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1
Accept-Encoding: deflate, gzip, x-gzip, identity, *;q=0
Referer: http://sms.smssender.org/
Proxy-Connection: close
Content-Length: 100
Content-Type: application/x-www-form-urlencoded

act=send&sms_phone=+xxxxxxxxxxxx&sms_mess=TEXT&sms_trans=on&sms_break=on&sms_user=USER&sms_password=PASSWORD

USER,PASSWORD - логин и пароль твоего пользователя на сайте

xxxxxxxxxxxxx - телефонный номер получателя

TEXT - текст сообщения

а не подскажешь готовый код?

-Hormold- 13.11.2007 23:38

PHP код:

<?
$al
="act=send&sms_phone=+xxxxxxxxxxxx&sms_mess=TEXT&sms_trans=on&sms_break=on&sms_user=USER&sms_password=PASSWORD";
httpSocketConnection('sms.smssender.org''POST''http://sms.smssender.org/index.php'$al); 
function 
httpSocketConnection($host$method$path$data
   { 
       
$method strtoupper($method);        
            
       
$filePointer = @fsockopen($host80$errorNumber$errorString); 
       
       if (!
$filePointer
       { 
           exit(
'Failed opening http socket connection: '.$errorString.' ('.$errorNumber.')<br/>\n'); 
           return 
false
       } 

       
$requestHeader $method." ".$path."  HTTP/1.1\r\n"
       
$requestHeader.= "Host: ".$host."\r\n"
       
$requestHeader.= "User-Agent:      ".$browsers[rand(0,4)]."\r\n"
       
$requestHeader.= "Content-Type: application/x-www-form-urlencoded\r\n"

       if (
$method == "POST"
       { 
           
$requestHeader.= "Content-Length: ".strlen($data)."\r\n"
       } 
       
       
$requestHeader.= "Connection: close\r\n\r\n"
       
       if (
$method == "POST"
       { 
           
$requestHeader.= $data
       }            

       
fwrite($filePointer$requestHeader); 
       
       
$responseHeader ''
       
$responseContent ''

       do 
       { 
           
$responseHeader.= fread($filePointer1); 
       } 
       while (!
preg_match('/\\r\\n\\r\\n$/'$responseHeader)); 
       
       
       if (!
strstr($responseHeader"Transfer-Encoding: chunked")) 
       { 
           while (!
feof($filePointer)) 
           { 
               
$responseContent.= fgets($filePointer128); 
                
preg_match_all'/<td></td>(.*)<td><\/td>/iUs' $responseContent$responseContent); 
           } 
       } 
       else 
       { 

           while (
$chunk_length hexdec(fgets($filePointer))) 
           { 
               
$responseContentChunk ''
           
               
//logEventToTextFile('debug', $chunk_length); 
               
$read_length 0
               
               while (
$read_length $chunk_length
               { 
                   
$responseContentChunk .= fread($filePointer$chunk_length $read_length); 
                   
$read_length strlen($responseContentChunk); 
               } 

               
$responseContent.= $responseContentChunk
               
               
fgets($filePointer); 
               
preg_match_all'/<td></td>(.*)<td><\/td>/iUs' $filePointer$filePointer); 
               
               
           } 
           
       } 

       
//logEventToTextFile('debug', $responseContent); 
       
       
       
return chop($responseContent); 
   }



Время: 21:44