sms_ctrl 0.1.0 → 0.1.1

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: b206d958f801d49703d63ca1792cfc8ee61070a2
4
- data.tar.gz: a1f8b2d3b9d783c75ac69d02cb20f14a861165af
3
+ metadata.gz: 7015a9855c16a7687996793accbe7940b016e327
4
+ data.tar.gz: 7d6ade045f42129539669634a412e9a73bafe42c
5
5
  SHA512:
6
- metadata.gz: 7ae3d537666693570917ec8ce336c33ba66941a04cd4170f101192655bb4d6a88217c188a00835d2c770a9c0e425593ed6d936a5c8185b3563979555ad7f6bc7
7
- data.tar.gz: 7ff016e1427398088cb8ad42328ba1f4f6698733e454f89fc3f0ed061d6fa8cadd8d1b66b648bb7336c66b111108f14a9e61e7e67e8c139b03bb760d8e43d323
6
+ metadata.gz: 2af2c912a9ab56c4fb2f4a2770ca9c5c25e3033803ddd64431e38f69117127002c4986639cf15d1d5681280e8954056f7309407f2271d1bbc2c050a194cf3481
7
+ data.tar.gz: 83fc4a4f7bccf6e4430b66f71ce85f63f32d024f7113f0496c76c8ec14fbe07adc5188dbf51bc89177b0d687dee00bbd2136d121e845a52df3058f82ecf97a40
data/README.md CHANGED
@@ -24,14 +24,26 @@ Or install it yourself as:
24
24
  # confing/initializes/sms_ctrl.rb
25
25
 
26
26
  # 设置debug模式,所有验证码都是123456,不会走sender
27
-
28
27
  SmsCtrl.debug = true
29
28
 
30
29
  # 设置cache,需要支持 read(key), write(key, expires_in: 10)
31
- # SmsCtrl.cache = Rails.cache
32
-
33
- # 注册一个控制模块
34
-
30
+ SmsCtrl.cache = Rails.cache
31
+
32
+ # 设置默认配置,可以在case配置中覆盖
33
+ SmsCtrl.default_options = {
34
+ retry_limit: 55,
35
+ expires_in: 30 * 60,
36
+ mobile_regexp: /^1[3|4|5|7|8]\d{9}$/,
37
+ sender: -> (mobile, code, params) { warn "No message sender set for case #{@name}" },
38
+ }
39
+
40
+ # 设置默认错误,可以在case配置中覆盖
41
+ SmsCtrl.default_errors = {
42
+ illegal_mobile: '请输入正确的手机号码',
43
+ retry_limit: '操作太频繁,请稍后再试'
44
+ }
45
+
46
+ # 注册控制模块
35
47
  SmsCtrl.register( "register_user", {
36
48
  # retry_limit: 55,
37
49
  # expires: 30 * 60,
@@ -49,16 +61,17 @@ SmsCtrl.register( "user_reset_password", {
49
61
  })
50
62
 
51
63
  # 发送验证码
52
-
53
- SmsCtrl.send_sms(mobile, code, params)
64
+ SmsCtrl["register_user"].send_sms(mobile, code, params)
65
+ SmsCtrl["user_reset_password"].send_sms(mobile, code, params)
54
66
 
55
67
  # 检查验证码是否匹配
56
-
57
68
  SmsCtrl["register_user"].check_code "13000000000", '231232'
58
69
  SmsCtrl["user_reset_password"].check_code "13000000000", '231232'
59
70
 
60
- # SmsCtrl.set_default("register_user")
61
- # SmsCtrl.check_code "13000000000", '231232'
71
+ # 设置默认
72
+ SmsCtrl.set_default("register_user")
73
+ SmsCtrl.send_sms(mobile, code, params)
74
+ SmsCtrl.check_code "13000000000", '231232'
62
75
 
63
76
  ```
64
77
 
data/lib/sms_ctrl/case.rb CHANGED
@@ -1,28 +1,11 @@
1
1
  module SmsCtrl
2
2
  class Case
3
3
  attr_accessor :retry_limit, :expires_in,
4
- :mobile_regexp, :sender,
5
- :errors
6
-
7
- def default_options
8
- {
9
- retry_limit: 55,
10
- expires_in: 30 * 60,
11
- mobile_regexp: /^1[3|4|5|7|8]\d{9}$/,
12
- sender: -> (mobile, code, params) { warn "No message sender set for case #{@name}" },
13
- }
14
- end
15
-
16
- def default_errors
17
- {
18
- illegal_mobile: '请输入正确的手机号码',
19
- retry_limit: '操作太频繁,请稍后再试'
20
- }
21
- end
4
+ :mobile_regexp, :sender, :errors
22
5
 
23
6
  def initialize name, options = {}
24
7
  @name = name
25
- options = default_options.merge(options)
8
+ options = SmsCtrl.default_options.merge(options)
26
9
 
27
10
  self.retry_limit = options[:retry_limit]
28
11
  self.expires_in = options[:expires_in]
@@ -30,9 +13,9 @@ module SmsCtrl
30
13
  self.sender = options[:sender]
31
14
 
32
15
  if options[:errors]
33
- self.errors = default_errors.merge(options[:errors])
16
+ self.errors = SmsCtrl.default_errors.merge(options[:errors])
34
17
  else
35
- self.errors = default_errors
18
+ self.errors = SmsCtrl.default_errors
36
19
  end
37
20
  end
38
21
 
@@ -1,3 +1,3 @@
1
1
  module SmsCtrl
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
data/lib/sms_ctrl.rb CHANGED
@@ -6,7 +6,7 @@ module SmsCtrl
6
6
  @cases = {}
7
7
 
8
8
  class << self
9
- attr_accessor :debug, :cache
9
+ attr_accessor :debug, :cache, :default_options, :default_errors
10
10
 
11
11
  # 非线程安全,只应该用在单线程环境中配置,例如rails加载
12
12
  def register name, options
@@ -18,6 +18,22 @@ module SmsCtrl
18
18
  @default_case = new_case if @cases.size == 1
19
19
  end
20
20
 
21
+ def default_options
22
+ @default_options ||= {
23
+ retry_limit: 55,
24
+ expires_in: 30 * 60,
25
+ mobile_regexp: /^1[3|4|5|7|8]\d{9}$/,
26
+ sender: -> (mobile, code, params) { warn "No message sender set for case #{@name}" },
27
+ }
28
+ end
29
+
30
+ def default_errors
31
+ @default_errors ||= {
32
+ illegal_mobile: '请输入正确的手机号码',
33
+ retry_limit: '操作太频繁,请稍后再试'
34
+ }
35
+ end
36
+
21
37
  def clear
22
38
  @cases = {}
23
39
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sms_ctrl
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - david
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-08-05 00:00:00.000000000 Z
11
+ date: 2016-08-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler