From 19c02af5e3ed462dbe4fb35458bd5bd31f3b45d6 Mon Sep 17 00:00:00 2001 From: Vsevolod Romashov <7@7vn.ru> Date: Sun, 14 Jul 2013 19:28:34 +0400 Subject: [PATCH] release 1.2 --- CHANGELOG.md | 6 ++++++ README.md | 6 +++++- lib/vkontakte_api/resolver.rb | 2 ++ 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index efcd411..446a272 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,9 @@ +## 1.2 (14.07.2013) + +* Повтор запроса при определенных ошибках +* Корректная работа метода `messages.send` +* Поддержка параметров `captcha_sid` и `captcha_img` при ошибке 14 + ## 1.1 (18.12.2012) * Передача `redirect_uri` при получении токена diff --git a/README.md b/README.md index 75b1995..adb61fd 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ ``` ruby # Gemfile -gem 'vkontakte_api', '~> 1.1' +gem 'vkontakte_api', '~> 1.2' ``` или просто @@ -181,6 +181,8 @@ vk.friends.get(uid: 1, fields: [:first_name, :last_name, :photo]) # VkontakteApi::Error: VKontakte returned an error 7: 'Permission to perform this action is denied' after calling method 'friends.get' with parameters {"uid"=>"1", "fields"=>"first_name,last_name,photo"}. ``` +Особый случай ошибки - 14: необходимо ввести код с captcha. В этом случае можно получить параметры капчи методами `VkontakteApi::Error#captcha_sid` и `VkontakteApi::Error#captcha_img` - например, [так](https://github.com/7even/vkontakte_api/issues/10#issuecomment-11666091). + ### Логгирование `vkontakte_api` логгирует служебную информацию о запросах при вызове методов. По умолчанию все пишется в `STDOUT`, но в настройке можно указать любой другой совместимый логгер, например `Rails.logger`. @@ -228,6 +230,8 @@ VkontakteApi.configure do |config| password: 'bar' } } + # максимальное количество повторов запроса при ошибках + config.max_retries = 2 # логгер config.logger = Rails.logger diff --git a/lib/vkontakte_api/resolver.rb b/lib/vkontakte_api/resolver.rb index 8ecda55..a8b991c 100644 --- a/lib/vkontakte_api/resolver.rb +++ b/lib/vkontakte_api/resolver.rb @@ -36,6 +36,8 @@ def namespaces @namespaces end + # When this module is included, it undefines the `:send` instance method in the `base_class` + # so it can be resolved via `method_missing`. def included(base_class) base_class.class_eval do undef_method :send