Fixed problem with false positives in error 6: Too many requests per second
This commit is contained in:
parent
c8927e0b60
commit
4491a600f3
@ -13,7 +13,7 @@ import webbrowser
|
||||
import logging
|
||||
import longpoolthread
|
||||
import selector
|
||||
from vk.exceptions import VkAuthError
|
||||
from vk.exceptions import VkAuthError, VkAPIMethodError
|
||||
from pubsub import pub
|
||||
from mysc.repeating_timer import RepeatingTimer
|
||||
from mysc.thread_utils import call_threaded
|
||||
@ -369,7 +369,14 @@ class Controller(object):
|
||||
log.error("Error in setting online for the current user")
|
||||
|
||||
def create_unread_messages(self):
|
||||
msgs = self.session.vk.client.messages.getDialogs(count=50, unread=1)
|
||||
try:
|
||||
log.debug("Getting possible unread messages.")
|
||||
msgs = self.session.vk.client.messages.getDialogs(count=200, unread=1)
|
||||
except VkAPIMethodError as ex:
|
||||
if ex.code == 6:
|
||||
log.exception("Something went wrong when getting messages. Waiting a second to retry")
|
||||
time.sleep(2)
|
||||
return self.create_unread_messages()
|
||||
for i in msgs["items"]:
|
||||
wx.CallAfter(self.chat_from_id, i["message"]["user_id"], setfocus=False)
|
||||
|
||||
@ -384,7 +391,14 @@ class Controller(object):
|
||||
response = self.session.vk.client.messages.markAsRead(message_ids=ids)
|
||||
|
||||
def get_audio_albums(self, user_id=None):
|
||||
albums = self.session.vk.client.audio.getAlbums(owner_id=user_id)
|
||||
try:
|
||||
log.debug("Create audio albums...")
|
||||
albums = self.session.vk.client.audio.getAlbums(owner_id=user_id)
|
||||
except VkAPIMethodError as ex:
|
||||
if ex.code == 6:
|
||||
log.exception("Something went wrong when getting albums. Waiting a second to retry")
|
||||
time.sleep(2)
|
||||
return self.get_audio_albums(user_id=user_id)
|
||||
self.session.audio_albums = albums["items"]
|
||||
for i in albums["items"]:
|
||||
buffer = buffers.audioAlbum(parent=self.window.tb, name="{0}_audio_album".format(i["id"],), composefunc="compose_audio", session=self.session, endpoint="get", parent_endpoint="audio", full_list=True, count=self.session.settings["buffers"]["count_for_audio_buffers"], user_id=user_id, album_id=i["id"])
|
||||
|
Loading…
Reference in New Issue
Block a user