wechat-core 0.2 → 0.3
Sign up to get free protection for your applications and to get access to all the features.
- 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
|