В общем, уже неделю пытаюсь отправить сообщение в чат, но увы - никак.
Авторизуюсь, все хорошо, но дальше - никак.
Только для тех, кому самому интересно и есть время.. (просто кажется сама затея не из легких)
Мои наработки:
Авторизуюсь, все хорошо, но дальше - никак.
Только для тех, кому самому интересно и есть время.. (просто кажется сама затея не из легких)
Мои наработки:
Код:
#include <ie.au3>
#include <file.au3>
#include <timers.au3>
#include <GUIConstantsEx.au3>
#include <GUIEdit.au3>
#include <WindowsConstants.au3>
GUICreate("bizarre", 600, 400)
$edit = GUICtrlCreateEdit("", 0, 0, 600, 400, BitOR($ES_AUTOVSCROLL, $ES_READONLY))
$hEdit = GUICtrlGetHandle(-1)
GUISetState()
$sDomain = 'bizarre.kiev.ua' ;домен или ip-адрес
$iPort = 80 ;порт
$sParameters = 'name=aabbcc&pass=112233&color=0&sx=m&room=1-&room_I=I%2B&room_U=U%2B' ;Параметры
;Запрос, который будет отправлен серверу
$sRequest = 'POST /cgi-bin/ch/cht.pl HTTP/1.1' & @CRLF
$sRequest &= 'User-Agent: Opera/9.80 (Windows NT 6.1; U; ru) Presto/2.10.289 Version/12.02' & @CRLF
$sRequest &= 'Host: bizarre.kiev.ua' & @CRLF
$sRequest &= 'Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/webp, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1' & @CRLF
$sRequest &= 'Accept-Language: uk-UA,uk;q=0.9,en;q=0.8' & @CRLF
$sRequest &= 'Accept-Encoding: gzip, deflate' & @CRLF
$sRequest &= 'Referer: http://bizarre.kiev.ua/ch/login.html' & @CRLF
$sRequest &= 'Content-Length: ' & StringLen($sParameters) & @CRLF
$sRequest &= 'Content-Type: application/x-www-form-urlencoded' & @CRLF & @CRLF
$sRequest &= $sParameters & @CRLF;Параметры в запросе
TCPStartup()
$sIP = TCPNameToIP($sDomain) ;получаем ip-адрес
$iSocket = TCPConnect($sIP, $iPort) ;соединяемся с сервером
TCPSend($iSocket, $sRequest) ;отправляем сообщение
$lo_ = ""
$allGet = ""
$uid = ""
$cid = ""
While 1
$sBuffer = TCPRecv($iSocket, 1024) ;получаем часть сообщения сервера
If $sBuffer <> "" Then
$iLine = _GUICtrlEdit_GetFirstVisibleLine($hEdit)
GUICtrlSetData($edit, GUICtrlRead($edit) & @CRLF & $sBuffer)
_GUICtrlEdit_LineScroll($edit, 0, $iLine)
EndIf
If $cid = "" And StringInStr($sBuffer, "Set-Cookie") Then ; получаем cid
$___ = StringSplit($sBuffer, "cid=", 1)
$______ = StringSplit($___[2], ";", 1)
$cid = $______[1]
MsgBox(16, 'cid', $cid)
EndIf
If $uid = "" And StringInStr($sBuffer, "uid='") Then ; получаем uid
$___ = StringSplit($sBuffer, "uid='", 1)
$______ = StringSplit($___[2], "';", 1)
$uid = $______[1]
MsgBox(16, 'uid', $uid)
EndIf
If $allGet <> "" And $lo_ <> "" Then
EndIf
If StringInStr($sBuffer, "<frame marginwidth=0 marginheight=0 scrolling=no src=about:blank name=inp></frameset>") Then
MsgBox(16, '', 'отправляем')
; тут якобы должны получить новые куки lo_ и потом отправить сообщение (но куки не приходят)
$sRequest &= "GET /cgi-bin/ch/inp.pl?strm=y&uid=" & $uid & "&color=0&sx=m&room=1- HTTP/1.1" & @CRLF
$sRequest &= "Accept: text/html, application/xhtml+xml, */*" & @CRLF
$sRequest &= "Referer: http://bizarre.kiev.ua/cgi-bin/ch/cht.pl" & @CRLF
$sRequest &= "Accept-Language: uk-UA" & @CRLF
$sRequest &= "User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)" & @CRLF
$sRequest &= "Accept-Encoding: gzip, deflate" & @CRLF
$sRequest &= "Host: bizarre.kiev.ua" & @CRLF
$sRequest &= "Connection: Keep-Alive" & @CRLF
$sRequest &= "Cookie: cid=" & $cid & @CRLF
TCPSend($iSocket, $sRequest)
$allGet = 1
EndIf
Sleep(50)
WEnd