Читаем все сообщения ВКонтакте

Если вы участвуете в нескольких беседах или просто давно не заходили в ВК у вас скорее всего накопилась уйма непрочитанных сообщений. Вы конечно можете читать их вручную, чтобы счётчик слева вас не раздражал, но зачем, весть есть великая сила — автоматизация. Сегодня я хочу выложить короткий и простой скрипт который помечает все сообщения как прочитанные.

Код:
<?
/*
        Чтобы получить токен -- перейдите по ссылке, разрешите доступ и из адресной строки скопируйте значение access_token
http://oauth.vk.com/authorize?response_type=token&client_id=3227993&scope=offline,messages
*/
$token = '';
 
addlog('Start!');
$allMid = array();
addlog('Get msg...');
while (true) {
	$getMsg  = api('messages.get', 'access_token='.$token.'&filters=1&count=100&offset='.$s);
	if (count($getMsg['response']) == 1) 
    break;
	for ($i = 1; $i < count($getMsg['response']); $i++) { 
    $allMid[] = $getMsg['response'][$i]['mid'];
	}
	$s += 100;
}
$allMid = implode(',', $allMid);
addlog('Marking msg...');
api('messages.markAsRead','access_token='.$token.'&mids='.$allMid);
addlog('Marked completed!');
function api($method, $parametrs) {
	$getApi = curl('https://api.vk.com/method/'.$method.'?'.$parametrs);
	return json_decode($getApi, true);
}
function addlog($text){
        echo date('H:i:s: ').$text.PHP_EOL;
}   
function curl($url) {
	$ch = curl_init($url);
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
	curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
	curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
	$response = curl_exec ($ch);
	curl_close($ch);
	return $response;
}
?>