wechat-handler 0.1 → 0.1.1

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: 4f58d3fada36dad1133f0882822070b16de16e6e
4
- data.tar.gz: eab5f5defb50d796139a000bde5e0253648e157b
3
+ metadata.gz: 40924815f5ce2a04783e1dc07d38029c5e8c2f24
4
+ data.tar.gz: b682066dbc4b3d50f1cd1a04eac5e5e71dace983
5
5
  SHA512:
6
- metadata.gz: e241748b05535822352f4c27fce061d73b321abdbf1e0c13ce6aa47b53176015b2029da6fbdd61f1797290d147bd6f64fd050ed34cccbeccc6fd884817190bab
7
- data.tar.gz: ca08de2459ac04634d100f2e6b3417f3ec9598a4e2aaeca0fae19f193d7887c8859358a4c277535db3aa80291bd81a732a30700e77cfff00831d37b4c1002ef2
6
+ metadata.gz: 020d1584e552b658c372692250c3d3e0becb60983771e81e91bdde775bed5d4c832e7114196880dc1eee3ebf45dbef51cc6e6a7541bd41a2092b96b36530858c
7
+ data.tar.gz: bb26f6032ffe83cd628c7202e8e17f67f2536c550c58db7cb3331a6b4b2f0955ea0f73cc68950c82c93bc382823c2072b21f2b23aa982468a9c47d0e95dfe28b
data/README.md CHANGED
@@ -5,14 +5,24 @@
5
5
 
6
6
  The Wechat Handler engine handles the Wechat event & message notifications. 微信回调处理引擎处理微信服务器发出的事件通知和消息通知。
7
7
 
8
+
9
+
10
+ ## Recent Update
11
+ Check out the [Road Map](ROADMAP.md) to find out what's the next.
12
+ Check out the [Change Log](CHANGELOG.md) to find out what's new.
13
+
14
+
15
+
8
16
  ## Usage in Gemfile
9
17
  ```ruby
10
18
  gem 'wechat-handler'
11
19
  ```
12
20
 
21
+
22
+
13
23
  ## Include the controller concern
14
24
  ```ruby
15
- include ::Wechat::Handler::Concerns::Dispatcher
25
+ include Wechat::Handler::Concerns::Dispatcher
16
26
 
17
27
  def on_event(pairs)
18
28
  { 'MsgType' => 'text', 'Content' => 'Aloha!' }
@@ -10,4 +10,4 @@
10
10
  // Read Sprockets README (https://github.com/rails/sprockets#sprockets-directives) for details
11
11
  // about supported directives.
12
12
  //
13
- //= require_tree .
13
+ //= require_self
@@ -10,6 +10,5 @@
10
10
  * defined in the other CSS/SCSS files in this directory. It is generally better to create a new
11
11
  * file per style scope.
12
12
  *
13
- *= require_tree .
14
13
  *= require_self
15
14
  */
@@ -28,21 +28,21 @@ module Wechat::Handler::Concerns::Dispatcher
28
28
 
29
29
  replying_encryption = 'aes'
30
30
 
31
- render text: 'sign_error' and return unless check_signature(signature, nonce, timestamp)
32
- encoded_message = ::Wechat::Callback::XmlDocument.load(request_body)['Encrypt']
31
+ render status: :bad_request, text: 'sign_error' and return unless check_signature(signature, nonce, timestamp)
32
+ encoded_message = Wechat::Callback::XmlDocument.load(request_body)['Encrypt']
33
33
  Rails.logger.info "The encoded_message is #{encoded_message.inspect}."
34
- render text: 'msg_sign_error' and return unless check_message_signature(message_signature, encoded_message, nonce, timestamp)
34
+ render status: :bad_request, text: 'msg_sign_error' and return unless check_message_signature(message_signature, encoded_message, nonce, timestamp)
35
35
 
36
36
  message = ::Wechat::Callback::MessageDecryption.create encoded_message, Rails.application.secrets.wechat_encoding_aes_keys
37
37
  random_bytes, xml_size, xml_text, app_id, padding_bytes = ::Wechat::Callback::SecureMessage.load message
38
38
  Rails.logger.warn " >> Wechat Callback >> Message Controller >> App ID of the Secure Message = #{app_id}."
39
39
  Rails.logger.warn ' >> Wechat Callback >> Message Controller >> XML Text of the Secure Message ='
40
40
  Rails.logger.warn xml_text
41
- render text: 'app_id_error' and return unless check_app_id(app_id)
41
+ render status: :bad_request, text: 'app_id_error' and return unless check_app_id(app_id)
42
42
 
43
43
  else
44
44
 
45
- render text: "Encrypt type #{encrypt_type} is not suppored"
45
+ render status: :bad_request, text: "Encrypt type #{encrypt_type} is not suppored"
46
46
  return
47
47
 
48
48
  end
@@ -57,13 +57,6 @@ module Wechat::Handler::Concerns::Dispatcher
57
57
  Rails.logger.warn "The #{includer} does not have the #on_event method."
58
58
  end
59
59
 
60
- #replying_pairs = {
61
- # 'ToUserName' => pairs['FromUserName'],
62
- # 'FromUserName' => pairs['ToUserName'],
63
- # 'CreateTime' => Time.now.to_i,
64
- # 'MsgType' => 'text',
65
- # 'Content' => '是紫色的。'
66
- # }
67
60
  replying_xml_text = ::Wechat::Callback::XmlDocument.create replying_pairs
68
61
 
69
62
  if 'aes'==replying_encryption
@@ -96,7 +89,7 @@ module Wechat::Handler::Concerns::Dispatcher
96
89
  Rails.logger.warn ' >> The Replying XML Text is as the following:'
97
90
  Rails.logger.warn replying_xml_text
98
91
 
99
- render status: 200, xml: replying_xml_text
92
+ render status: :created, xml: replying_xml_text
100
93
 
101
94
  end
102
95
 
@@ -3,12 +3,13 @@
3
3
  <head>
4
4
  <title>Wechat Handler</title>
5
5
  <%= stylesheet_link_tag "handler/application", media: "all" %>
6
- <%= javascript_include_tag "handler/application" %>
7
6
  <%= csrf_meta_tags %>
8
7
  </head>
9
8
  <body>
10
9
 
11
10
  <%= yield %>
12
11
 
12
+ <%= javascript_include_tag 'handler/application' %>
13
+
13
14
  </body>
14
15
  </html>
@@ -1,5 +1,5 @@
1
1
  module Wechat
2
2
  module Handler
3
- VERSION = '0.1'.freeze
3
+ VERSION = '0.1.1'.freeze
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,69 +1,69 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wechat-handler
3
3
  version: !ruby/object:Gem::Version
4
- version: '0.1'
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Topbit Du
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-02-29 00:00:00.000000000 Z
11
+ date: 2016-07-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: '4.2'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '4.2'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: wechat-validation
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
33
  version: '0.2'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0.2'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: wechat-validator
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: '0.2'
47
+ version: '0.3'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: '0.2'
54
+ version: '0.3'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: wechat-callback
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - "~>"
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0.3'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - "~>"
66
+ - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0.3'
69
69
  description: Wechat Handler engine handles the Wechat event & message notifications.
@@ -108,7 +108,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
108
108
  version: '0'
109
109
  requirements: []
110
110
  rubyforge_project:
111
- rubygems_version: 2.4.5.1
111
+ rubygems_version: 2.6.4
112
112
  signing_key:
113
113
  specification_version: 4
114
114
  summary: Wechat Handler Engine 微信回调处理引擎