qqbot 0.1.4 → 0.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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