G
GenoTIP
Гость
Ошибка, что выше, появляется когда отправляешь больше 20 сообщений пользователям не из списка друзей.
Добавлено:
Доработал отправку сообщений и добавил ввод капчи.
Добавлено:
Сообщение автоматически объединено:
Доработал отправку сообщений и добавил ввод капчи.
Код:
#include <file.au3>
Func _VK_messages_send($uid,$message,$title= "")
Local $sResponse
$message = _Encoding_URIEncode($message)
$title= _Encoding_URIEncode($title)
$sResponse = BinaryToString(InetRead("https://api.vkontakte.ru/method/messages.send.xml?uid="& $uid & "&chat_id="& $uid &"&message="& $message &"&title="& $title &"&access_token=" & $_sAccessToken), 4)
If _VK_CheckForError($sResponse) Then
_FileWriteLog(@ScriptDir & "\spam.log","----------------------------Start------------------------------"&@CRLF)
_FileWriteLog(@ScriptDir & "\spam.log", "(!!!)-[MS] Сообщение не отправлено. Ошибка: "&_VK_CheckForError($sResponse)&@CRLF)
If _VK_CheckForError($sResponse) = "Error: 14 - Captcha needed" Then
$_captcha_sid = _CreateArray($sResponse, "captcha_sid")
Global $_captcha_img = _CreateArray($sResponse, "captcha_img")
$check_cap= _VK_identify_Human($_captcha_img[0])
If $check_cap <> "Капча не введена" Then
$sResponse = BinaryToString(InetRead("https://api.vkontakte.ru/method/messages.send.xml?uid="& $uid & "&chat_id="& $uid &"&message="& $message &"&title="& $title &"&captcha_sid="& $_captcha_sid[0] &"&captcha_key="& $check_cap &"&access_token="& $_sAccessToken), 4)
_FileWriteLog(@ScriptDir & "\spam.log","\/-После ввода капчи---------------------------------"&@CRLF)
If _VK_CheckForError($sResponse) = 0 Then
$id_msg = _CreateArray($sResponse, "response")
If IsArray($id_msg) Then
_FileWriteLog(@ScriptDir & "\spam.log", "(~)-[MS] Сообщение "& $id_msg[0] &" успешно отправлено."&@CRLF)
Else
_FileWriteLog(@ScriptDir & "\spam.log", "(!!!)-[MS] Сообщение не отправлено. Ошибка: "&_VK_CheckForError($sResponse)&@CRLF)
EndIf
Else
_FileWriteLog(@ScriptDir & "\spam.log", "(!!!)-[MS] Сообщение не отправлено. Ошибка: "&_VK_CheckForError($sResponse)&@CRLF)
EndIf
_FileWriteLog(@ScriptDir & "\spam.log","/\---------------------------------------------------------------"&@CRLF)
EndIf
EndIf
EndIf
EndFunc ;==>_VK_messages_send
Func _VK_identify_Human($cap_img, $hParent = 0)
InetGet($cap_img, @ScriptDir & "\cap.jpg" )
Local $iGOEM_Opt, $return = ""
$iGOEM_Opt = Opt("GUIOnEventMode", 0)
$_VK_identify_Human = GUICreate("VK Identify Human", 206, 106, -1, -1)
$Group1 = GUICtrlCreateGroup("Group1", 6, 2, 193, 97)
$Pic1 = GUICtrlCreatePic(@ScriptDir & "\cap.jpg", 16, 16, 130, 50)
$Input1 = GUICtrlCreateInput("", 16, 72, 129, 21)
$Button1 = GUICtrlCreateButton("Ok", 152, 72, 37, 21)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
_FileWriteLog(@ScriptDir & "\spam.log", "(!!!)-[MS] Закрыто окно ввода капчи"&@CRLF)
_FileWriteLog(@ScriptDir & "\spam.log","/\---------------------------------------------------------------"&@CRLF)
Exit
Case $Button1
$_captcha_key = GUICtrlRead($Input1)
$return = $_captcha_key
If StringLen(GUICtrlRead($Input1))>0 Then
_FileWriteLog(@ScriptDir & "\spam.log", "(~)-[MS] Введена капча: "&GUICtrlRead($Input1)&@CRLF)
Else
_FileWriteLog(@ScriptDir & "\spam.log", "(!!!)-[MS] Ошибка ввода капчи. Пустое поле ввода. "&@CRLF)
$return = "Капча не введена"
EndIf
ExitLoop
EndSwitch
WEnd
Opt("GUIOnEventMode", $iGOEM_Opt)
GUISetState(@SW_ENABLE, $hParent)
GUIDelete($_VK_identify_Human)
Return $return
EndFunc