mini_program 0.4.0 → 0.8.0

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
  SHA256:
3
- metadata.gz: f69d45e06ad7c832fbfb1ffd9b431a1c369bfbfb019373dfbeaf47be0f13a6f8
4
- data.tar.gz: 316ec5e86d10a7424a143450dae9e6d72f0fc4c29c9cdcf977eed15ba78be696
3
+ metadata.gz: 05df7b4f084319a75fc963019972756115c411396b79802018ee99b83acbaa94
4
+ data.tar.gz: dfe7902f53cfbdb97221590333547446c60c8c4435fd2e2151097808f6b8e975
5
5
  SHA512:
6
- metadata.gz: e4393a89b4d73ae7b42b4e53605a431f77da004db46769ee89fae65751c1839085f3e192f413a200219cf56414ea3224492bd94d5fedac3b2a0012b3dd3fb6cd
7
- data.tar.gz: fefc5be45b00fbca7a4327ffb33e5b36bc66f0bd5c6008263db45a902f9aedec6a6227eaf9abac47e89841e01291d617b2db6b7096f6544ff6d65522ddfa02ab
6
+ metadata.gz: d5bc5b20e832b7307ff6131844de01274d4020c9dde92d96d1a410248b18dd142c210181ac916715194500e1ab933ba78562f40ee1200e21efa02a6526fce1d3
7
+ data.tar.gz: 2336e3a632dab9dd4e6fab8d7e8febd5206f04f91fd4aad15c758f2c02f2d3a92ee627f4d9ba17d7eda93114a28919b2a7aa1235158bb51698752794c0e945b8
@@ -52,13 +52,13 @@ module MiniProgram
52
52
 
53
53
  result = JSON.parse(response)
54
54
 
55
- if result["errcode"].present?
55
+ if result["errcode"].to_s != "0"
56
56
  logger.error <<~ERROR
57
57
  Get access token failed.
58
58
  api: #{api}
59
59
  error: #{result}
60
60
  ERROR
61
- return MiniProgram::ServiceResult.new(success: false, data: result, message: result["errmsg"])
61
+ return MiniProgram::ServiceResult.new(success: false, errors: result, message: result["errmsg"])
62
62
  end
63
63
 
64
64
  MiniProgram::ServiceResult.new(success: true, data: result)
@@ -80,7 +80,7 @@ module MiniProgram
80
80
 
81
81
  result = JSON.parse(response)
82
82
 
83
- if result["errcode"]
83
+ if result["errcode"].to_s != "0"
84
84
  logger.error <<~ERROR
85
85
  Get session key failed.
86
86
  api: #{api}
@@ -109,10 +109,44 @@ module MiniProgram
109
109
  api = "https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token=#{get_token_result["access_token"]}"
110
110
  result = post(api, payload)
111
111
 
112
+ if result["errcode"].to_s != "0"
113
+ msg_logger.error {"{params: #{payload}, response: #{result}}"}
114
+ return MiniProgram::ServiceResult.new(success: false, errors: result["errmsg"])
115
+ end
116
+
112
117
  msg_logger.info {"{params: #{payload}, response: #{result}}"}
113
118
  MiniProgram::ServiceResult.new(success: true, data: result)
114
119
  end
115
120
 
121
+ # 「发送统一服务消息」
122
+ # 统一服务消息原本是可以从调用小程序的 api ,通过用户小程序的 openid 发送模板消息到小程序和公众号那里去,
123
+ # 现在小程序的模板消息功能关闭了,就只剩下发送模板消息到公众号这个功能了
124
+ #
125
+ def send_uniform_msg(msg, to: )
126
+ open_id = to.try(:open_id) || to
127
+
128
+ payload = msg.as_json
129
+
130
+ get_token_result = get_access_token
131
+ if get_access_token.failure?
132
+ return get_token_result
133
+ end
134
+
135
+ api = "https://api.weixin.qq.com/cgi-bin/message/wxopen/template/uniform_send?access_token=#{get_token_result["access_token"]}"
136
+ result = post(api, {
137
+ touser: open_id,
138
+ mp_template_msg: payload
139
+ })
140
+
141
+ if result["errcode"].to_s != "0"
142
+ msg_logger.error {"{params: #{payload}, response: #{result}}"}
143
+ return MiniProgram::ServiceResult.new(success: false, errors: result["errmsg"])
144
+ end
145
+
146
+ msg_logger.info { "{params: #{payload}, response: #{result}}"}
147
+ MiniProgram::ServiceResult.new(success: true, data: result)
148
+ end
149
+
116
150
  # 获取用户手机号
117
151
  def get_phone_num(code:, encrypted_data:, iv:)
118
152
  login_result = login(code)
@@ -1,3 +1,3 @@
1
1
  module MiniProgram
2
- VERSION = '0.4.0'
2
+ VERSION = '0.8.0'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mini_program
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - ian
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-10-19 00:00:00.000000000 Z
11
+ date: 2021-11-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails