rfetion 0.3.1 → 0.3.2

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.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.3.1
1
+ 0.3.2
@@ -4,10 +4,12 @@ options = {}
4
4
 
5
5
  OptionParser.new do |opts|
6
6
  # Set a banner, displayed at the top of the help screen.
7
- opts.banner = <<EOF
8
- Usage: rfetion [options]
9
- Example: rfetion -m mobile -p password -f friend_mobile -c sms_content
10
- rfetion -m mobile -p password -a friend_mobile
7
+ opts.banner = "Usage: rfetion [options]"
8
+
9
+ opts.separator ""
10
+ opts.separator <<EOF
11
+ Example: rfetion -m mobile -p password -f friend_mobile -c sms_content
12
+ rfetion -m mobile -p password -a friend_mobile
11
13
  EOF
12
14
 
13
15
  opts.on('-m', '--mobile MOBILE', 'Fetion mobile number') do |mobile|
@@ -31,19 +33,48 @@ EOF
31
33
  options[:add_mobile] = f
32
34
  end
33
35
 
36
+ opts.separator ""
37
+ opts.separator "different mode:"
38
+
39
+ opts.on('--debug', 'debug mode') do
40
+ options[:debug] = true
41
+ end
42
+
43
+ opts.on('--silence', 'silence mode') do
44
+ options[:silence] = true
45
+ end
46
+
47
+ opts.separator ""
48
+ opts.separator "Common options:"
49
+
50
+ opts.on_tail("-h", "--help", "Show this message") do
51
+ puts opts
52
+ exit
53
+ end
54
+
34
55
  opts.parse!
35
56
  end
36
57
 
37
- if options[:add_mobile]
38
- if options[:mobile_no] and options[:password]
39
- Fetion.add_buddy(options[:mobile_no], options[:password], options[:add_mobile])
58
+ def level(options)
59
+ return Logger::DEBUG if options[:debug]
60
+ return Logger::ERROR if options[:silence]
61
+ return Logger::INFO
62
+ end
63
+
64
+ begin
65
+ if options[:add_mobile]
66
+ raise FetionException.new('You must input your mobile number and password') unless options[:mobile_no] and options[:password]
67
+ Fetion.add_buddy(options[:mobile_no], options[:password], options[:add_mobile], level(options))
68
+ exit
40
69
  end
41
- else
42
- if options[:mobile_no] and options[:password] and options[:content]
43
- if options[:friends_mobile].empty?
44
- Fetion.send_sms_to_self(options[:mobile_no], options[:password], options[:content])
45
- else
46
- Fetion.send_sms_to_friends(options[:mobile_no], options[:password], options[:friends_mobile], options[:content])
47
- end
70
+
71
+ raise FetionException.new('You must input your mobile number, password and content') unless options[:mobile_no] and options[:password] and options[:content]
72
+ if options[:friends_mobile].empty?
73
+ Fetion.send_sms_to_self(options[:mobile_no], options[:password], options[:content], level(options))
74
+ else
75
+ Fetion.send_sms_to_friends(options[:mobile_no], options[:password], options[:friends_mobile], options[:content], level(options))
48
76
  end
77
+ rescue FetionException => e
78
+ puts e.message
79
+ puts "Please use 'rfetion -h' to get more details"
49
80
  end
@@ -25,8 +25,9 @@ class Fetion
25
25
  @logger.level = level
26
26
  end
27
27
 
28
- def Fetion.send_sms_to_self(mobile_no, password, content)
28
+ def Fetion.send_sms_to_self(mobile_no, password, content, level = Logger::INFO)
29
29
  fetion = Fetion.new
30
+ fetion.logger_level = level
30
31
  fetion.mobile_no = mobile_no
31
32
  fetion.password = password
32
33
  fetion.login
@@ -35,10 +36,11 @@ class Fetion
35
36
  fetion.logout
36
37
  end
37
38
 
38
- def Fetion.send_sms_to_friends(mobile_no, password, friend_mobiles, content)
39
+ def Fetion.send_sms_to_friends(mobile_no, password, friend_mobiles, content, level = Logger::INFO)
39
40
  friend_mobiles = Array(friend_mobiles)
40
41
  friend_mobiles.collect! {|mobile| mobile.to_i}
41
42
  fetion = Fetion.new
43
+ fetion.logger_level = level
42
44
  fetion.mobile_no = mobile_no
43
45
  fetion.password = password
44
46
  fetion.login
@@ -53,8 +55,9 @@ class Fetion
53
55
  fetion.logout
54
56
  end
55
57
 
56
- def Fetion.add_buddy(mobile_no, password, friend_mobile)
58
+ def Fetion.add_buddy(mobile_no, password, friend_mobile, level = Logger::INFO)
57
59
  fetion = Fetion.new
60
+ fetion.logger_level = level
58
61
  fetion.mobile_no = mobile_no
59
62
  fetion.password = password
60
63
  fetion.login
data/rfetion.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{rfetion}
8
- s.version = "0.3.1"
8
+ s.version = "0.3.2"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Richard Huang"]
12
- s.date = %q{2009-10-11}
12
+ s.date = %q{2009-10-17}
13
13
  s.description = %q{rfetion is a ruby gem for China Mobile fetion service that you can send SMS free.}
14
14
  s.email = %q{flyerhzm@gmail.com}
15
15
  s.executables = ["rfetion", "rfetion"]
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rfetion
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Richard Huang
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-10-11 00:00:00 +08:00
12
+ date: 2009-10-17 00:00:00 +08:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency