qqbot 0.1.4 → 0.1.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 69a4f2e3253445c00a18189021bf1dfa15e4ad28
4
- data.tar.gz: 3a7deb70021127a9a28abf29e20c1c78fee1f30b
3
+ metadata.gz: fc4be48d8011645a38f44ce1056624619b16294c
4
+ data.tar.gz: 7bf2fbd4124cc06e692f79ff707254db4f7f3258
5
5
  SHA512:
6
- metadata.gz: 70e394857f4eb1b160bdbb7bad205743d49b604d79cba7381eeff9e51e26ee35e2bad3382d365e1c33ff084468adb65d97cb131e28b6419573d9251cd937edbe
7
- data.tar.gz: 05d3af56835a3849214bce437d80eeb5df8aee6b3c445404c61de39602b86cff4449b99dbda7fe31888c2ff6485821400558baa92f5c8bdc95bdef4b05ef9c0c
6
+ metadata.gz: 6b61d633683f6123f5648a7294e5aea8d872ac8c66209affb8fa1f8c344085884cb2912a74a160ac8e6e6b9946d85e3f829e027175ea4f777491f8cec30e59e4
7
+ data.tar.gz: 8c507e50bead3f036f1cdb81ba5e973ce62ad17347f5ba15028085c894d4b7aee6fbdb39fa8da05e26df6d476bb9d80b2e304d57d430125ea03a917942f52ee8
data/README.md CHANGED
@@ -59,7 +59,7 @@ end
59
59
  - [x] 发送群消息
60
60
  - [x] 发送讨论组消息
61
61
  - [x] 发送临时消息
62
- - [ ] 好友详细信息
62
+ - [x] 好友详细信息
63
63
  - [x] 群详细信息
64
64
  - [x] 讨论组详细信息
65
65
  - [x] 获取在线好友
@@ -75,6 +75,7 @@ end
75
75
  - [x] 登录时通过网页查看二维码
76
76
  - [ ] 登录时发送二维码到指定邮箱
77
77
  - [ ] 登录时将二维码打印到控制台
78
+ - [x] 掉线时尝试重新登录
78
79
  - [ ] 登录失效后邮件推送信息
79
80
 
80
81
 
data/lib/qqbot/bot.rb CHANGED
@@ -10,10 +10,14 @@ module QQBot
10
10
  def self.check_response_json(code, body)
11
11
  if code == '200'
12
12
  json = JSON.parse body
13
- if json['retcode'] == 0
13
+ retcode = json['retcode']
14
+ if retcode == 0
14
15
  return json['result']
16
+ elsif retcode == 100012
17
+ QQBot::LOGGER.info '因为掉线此次请求失败,尝试重新登录'
18
+ @api.auth_options = relogin
15
19
  else
16
- QQBot::LOGGER.info "请求失败,JSON返回码 #{json['retcode']}"
20
+ QQBot::LOGGER.info "请求失败,JSON返回码 #{retcode}"
17
21
  end
18
22
  else
19
23
  QQBot::LOGGER.info "请求失败,HTTP返回码 #{code}"
@@ -77,7 +81,6 @@ module QQBot
77
81
  end
78
82
  else
79
83
  QQBot::LOGGER.info "请求失败,返回码#{code}"
80
- return
81
84
  end
82
85
  end
83
86
  end
@@ -127,7 +130,7 @@ module QQBot
127
130
  close_qrcode_server
128
131
 
129
132
  QQBot::LOGGER.info '开始获取ptwebqq'
130
- ptwebqq = get_ptwebqq url
133
+ @ptwebqq = get_ptwebqq url
131
134
  raise QQBot::Error::LoginFailed unless ptwebqq
132
135
 
133
136
  QQBot::LOGGER.info '开始获取vfwebqq'
@@ -139,7 +142,24 @@ module QQBot
139
142
  raise QQBot::Error::LoginFailed unless uin && psessionid
140
143
 
141
144
  {
142
- ptwebqq: ptwebqq,
145
+ ptwebqq: @ptwebqq,
146
+ vfwebqq: vfwebqq,
147
+ psessionid: psessionid,
148
+ uin: uin
149
+ }
150
+ end
151
+
152
+ def relogin
153
+ QQBot::LOGGER.info '开始获取vfwebqq'
154
+ vfwebqq = get_vfwebqq ptwebqq
155
+ raise QQBot::Error::LoginFailed unless vfwebqq
156
+
157
+ QQBot::LOGGER.info '开始获取psessionid和uin'
158
+ psessionid, uin = get_psessionid_and_uin ptwebqq
159
+ raise QQBot::Error::LoginFailed unless uin && psessionid
160
+
161
+ {
162
+ ptwebqq: @ptwebqq,
143
163
  vfwebqq: vfwebqq,
144
164
  psessionid: psessionid,
145
165
  uin: uin
data/lib/qqbot/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module QQBot
2
- VERSION = "0.1.4"
2
+ VERSION = "0.1.5"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: qqbot
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - ScienJus
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-01-04 00:00:00.000000000 Z
11
+ date: 2016-01-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler