wechat-core 0.2 → 0.3
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 +4 -4
- data/CHANGELOG.md +4 -2
- data/ROADMAP.md +0 -4
- data/lib/wechat/core/common.rb +4 -0
- data/lib/wechat/core/follower.rb +24 -0
- data/lib/wechat/core/follower_profile.rb +59 -0
- data/lib/wechat/core/version.rb +1 -1
- data/lib/wechat/core.rb +3 -0
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: dde46a50dfef58b299554191cf4a607aed80bcf7
|
4
|
+
data.tar.gz: ec2cfe74547816c0e6e7267eb48d79760774f78a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 07882b7649b6426dd7aed494fdec8c4af1e7cd17cd0123abe5163768abe7271dc581bc37b0924d63724d6c4a5c4fe8595d55d6db8c6aaedbf6a863e7d150715c
|
7
|
+
data.tar.gz: c6da796538707a5947821e16a2d9233b8855a23134f56a881fd56204e6f7e135366cb10d9d1262bdb2f66b948c321b3130fe80e2ed3b8ffb00710894ddd22081
|
data/CHANGELOG.md
CHANGED
@@ -1,11 +1,13 @@
|
|
1
1
|
# Wechat Core Change Log 微信核心库变更日志
|
2
2
|
|
3
3
|
## v0.1
|
4
|
-
|
5
4
|
1. Common module
|
6
5
|
2. Access Token wrapper class
|
7
6
|
|
8
7
|
## v0.2
|
9
|
-
|
10
8
|
1. Server Address wrapper class
|
11
9
|
2. Tiny Link wrapper class
|
10
|
+
|
11
|
+
## v0.3
|
12
|
+
1. Follower wrapper class
|
13
|
+
2. Follower Profile wrapper class
|
data/ROADMAP.md
CHANGED
@@ -1,20 +1,16 @@
|
|
1
1
|
# Wechat Core Road Map 微信核心库线路图
|
2
2
|
|
3
3
|
## v0.1
|
4
|
-
|
5
4
|
1. Common module
|
6
5
|
2. Access Token wrapper class
|
7
6
|
|
8
7
|
## v0.2
|
9
|
-
|
10
8
|
1. Server Address wrapper class
|
11
9
|
2. Tiny Link wrapper class
|
12
10
|
|
13
11
|
## v0.3
|
14
|
-
|
15
12
|
1. Follower wrapper class
|
16
13
|
2. Follower Profile wrapper class
|
17
14
|
|
18
15
|
# v0.4
|
19
|
-
|
20
16
|
1. Logo wrapper class
|
data/lib/wechat/core/common.rb
CHANGED
@@ -1,5 +1,9 @@
|
|
1
1
|
module Wechat::Core::Common
|
2
2
|
|
3
|
+
LANGUAGE_SIMPLIFIED_CHINESE = 'zh_CN'.freeze
|
4
|
+
LANGUAGE_TRANDITIONAL_CHINESE = 'zh_TW'.freeze
|
5
|
+
LANGUAGE_ENGLISH = 'en'.freeze
|
6
|
+
|
3
7
|
# http://mp.weixin.qq.com/wiki/17/fa4e1434e57290788bde25603fa2fcbd.html
|
4
8
|
# $('table#ec-t').find('tr').each(function(index, line)
|
5
9
|
# {
|
@@ -0,0 +1,24 @@
|
|
1
|
+
require 'jsonclient'
|
2
|
+
|
3
|
+
class Wechat::Core::Follower
|
4
|
+
|
5
|
+
# 获取关注者列表
|
6
|
+
# http://mp.weixin.qq.com/wiki/0/d0e07720fc711c02a3eab6ec33054804.html
|
7
|
+
#
|
8
|
+
# Return hash format if success:
|
9
|
+
# {
|
10
|
+
# total: <TOTAL>,
|
11
|
+
# count: <COUNT>,
|
12
|
+
# data: { openid: [ <OPEN_ID_1>, <OPEN_ID_2>, ... ] },
|
13
|
+
# next_openid: <NEXT_OPEN_ID>
|
14
|
+
# }
|
15
|
+
def self.index(access_token, next_open_id = nil)
|
16
|
+
|
17
|
+
options = { access_token: access_token }
|
18
|
+
options[:next_openid] = next_open_id if next_open_id.present?
|
19
|
+
|
20
|
+
message = ::JSONClient.new.get 'https://api.weixin.qq.com/cgi-bin/user/get', options
|
21
|
+
message.body
|
22
|
+
end
|
23
|
+
|
24
|
+
end
|
@@ -0,0 +1,59 @@
|
|
1
|
+
require 'jsonclient'
|
2
|
+
|
3
|
+
class Wechat::Core::FollowerProfile
|
4
|
+
|
5
|
+
# 批量获取用户基本信息
|
6
|
+
# http://mp.weixin.qq.com/wiki/14/bb5031008f1494a59c6f71fa0f319c66.html
|
7
|
+
# 最多支持一次拉取100条。
|
8
|
+
#
|
9
|
+
# Return hash format if success:
|
10
|
+
# {
|
11
|
+
# subscribe: 1,
|
12
|
+
# openid: <OPEN_ID>,
|
13
|
+
# nickname: <NICK_NAME>,
|
14
|
+
# sex: <GENDER_CODE>,
|
15
|
+
# language: <LANGUAGE_CODE>,
|
16
|
+
# city: <CITY_NAME>,
|
17
|
+
# province: <PROVINCE_NAME>,
|
18
|
+
# country: <COUNTRY_NAME>,
|
19
|
+
# headimgurl: <HEAD_IMAGE_LINK>,
|
20
|
+
# subscribe_time: <SUBSCRIBE_TIME>,
|
21
|
+
# remark: <REMARK>,
|
22
|
+
# groupid: <GROUP_ID>
|
23
|
+
# }
|
24
|
+
def self.index(access_token, open_ids, language = 'zh_CN')
|
25
|
+
followers = open_ids.map { |open_id| { openid: open_id, lang: language } }
|
26
|
+
message = ::JSONClient.new.post "https://api.weixin.qq.com/cgi-bin/user/info/batchget?access_token=#{access_token}", { user_list: followers }
|
27
|
+
message.body
|
28
|
+
end
|
29
|
+
|
30
|
+
# 获取用户基本信息(UnionID机制)
|
31
|
+
# http://mp.weixin.qq.com/wiki/14/bb5031008f1494a59c6f71fa0f319c66.html
|
32
|
+
# 一次拉取调用最多拉取10000个关注者的OpenID,可以通过多次拉取的方式来满足需求。
|
33
|
+
#
|
34
|
+
# Return hash format if success:
|
35
|
+
# {
|
36
|
+
# subscribe: 1,
|
37
|
+
# openid: <OPEN_ID>,
|
38
|
+
# nickname: <NICK_NAME>,
|
39
|
+
# sex: <GENDER_CODE>,
|
40
|
+
# language: <LANGUAGE_CODE>,
|
41
|
+
# city: <CITY_NAME>,
|
42
|
+
# province: <PROVINCE_NAME>,
|
43
|
+
# country: <COUNTRY_NAME>,
|
44
|
+
# headimgurl: <HEAD_IMAGE_LINK>,
|
45
|
+
# subscribe_time: <SUBSCRIBE_TIME>,
|
46
|
+
# remark: <REMARK>,
|
47
|
+
# groupid: <GROUP_ID>
|
48
|
+
# }
|
49
|
+
def self.load(access_token, open_id, language = 'zh_CN')
|
50
|
+
message = ::JSONClient.new.get 'https://api.weixin.qq.com/cgi-bin/user/info',
|
51
|
+
{
|
52
|
+
access_token: access_token,
|
53
|
+
openid: open_id,
|
54
|
+
lang: language
|
55
|
+
}
|
56
|
+
message.body
|
57
|
+
end
|
58
|
+
|
59
|
+
end
|
data/lib/wechat/core/version.rb
CHANGED
data/lib/wechat/core.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: wechat-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: '0.
|
4
|
+
version: '0.3'
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Topbit Du
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-02-
|
11
|
+
date: 2016-02-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -89,6 +89,8 @@ files:
|
|
89
89
|
- lib/wechat/core.rb
|
90
90
|
- lib/wechat/core/access_token.rb
|
91
91
|
- lib/wechat/core/common.rb
|
92
|
+
- lib/wechat/core/follower.rb
|
93
|
+
- lib/wechat/core/follower_profile.rb
|
92
94
|
- lib/wechat/core/server_address.rb
|
93
95
|
- lib/wechat/core/tiny_link.rb
|
94
96
|
- lib/wechat/core/version.rb
|