hamradio 0.2.1 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
data/.travis.yml ADDED
@@ -0,0 +1,5 @@
1
+ rvm:
2
+ - 1.8.7
3
+ - 1.9.2
4
+ - jruby
5
+
data/Gemfile CHANGED
@@ -1,4 +1,6 @@
1
1
  source "http://rubygems.org"
2
+ gem 'faraday'
3
+ gem 'nestful'
2
4
 
3
5
  group :development do
4
6
  gem "log_buddy"
@@ -7,8 +9,3 @@ group :development do
7
9
  gem "jeweler", "~> 1.6.4"
8
10
  gem "rcov", ">= 0"
9
11
  end
10
-
11
- group :test do
12
- gem 'autotest-fsevent'
13
- gem 'autotest-growl'
14
- end
data/Gemfile.lock CHANGED
@@ -1,28 +1,36 @@
1
1
  GEM
2
2
  remote: http://rubygems.org/
3
3
  specs:
4
- autotest-fsevent (0.2.5)
5
- sys-uname
6
- autotest-growl (0.2.9)
4
+ activesupport (3.1.1.rc1)
5
+ multi_json (~> 1.0)
6
+ addressable (2.2.6)
7
+ faraday (0.7.4)
8
+ addressable (~> 2.2.6)
9
+ multipart-post (~> 1.1.0)
10
+ rack (>= 1.1.0, < 2)
7
11
  git (1.2.5)
8
12
  jeweler (1.6.4)
9
13
  bundler (~> 1.0)
10
14
  git (>= 1.2.5)
11
15
  rake
12
16
  log_buddy (0.6.0)
17
+ multi_json (1.0.3)
18
+ multipart-post (1.1.3)
19
+ nestful (0.0.7)
20
+ activesupport (>= 3.0.0.beta)
21
+ rack (1.3.2)
13
22
  rake (0.9.2)
14
23
  rcov (0.9.10)
15
24
  shoulda (2.11.3)
16
- sys-uname (0.8.6)
17
25
 
18
26
  PLATFORMS
19
27
  ruby
20
28
 
21
29
  DEPENDENCIES
22
- autotest-fsevent
23
- autotest-growl
24
30
  bundler (~> 1.0.0)
31
+ faraday
25
32
  jeweler (~> 1.6.4)
26
33
  log_buddy
34
+ nestful
27
35
  rcov
28
36
  shoulda
data/README.rdoc CHANGED
@@ -1,11 +1,18 @@
1
1
  = hamradio
2
2
 
3
+ {<img src="http://travis-ci.org/gmcintire/hamradio.png" />}[http://travis-ci.org/gmcintire/hamradio]
4
+
3
5
  A small collection of Amateur (Ham) radio tools put together by Graham McIntire W5ISP.
4
6
 
5
- == Current usage
6
- * To encode a gridsquare
7
+ == Usage
8
+ * To encode a gridsquare from decimal latitude/longitude
9
+ h = HamRadio.new
10
+ grid = h.grid_encode([33.113675,-96.487856])
11
+ * Callsign lookup (using callbytxt.org)
7
12
  h = HamRadio.new
8
- h.grid_encode([33.113675,-96.487856])
13
+ call = h.lookup_callsign 'w5isp'
14
+ Will return a hash such as :
15
+ {"callsign"=>"W5ISP", "city"=>"BLUE RIDGE", "country"=>nil, "created_at"=>"2011-06-19T23:19:47Z", "dob"=>nil, "effective"=>"2011-04-30", "expiration"=>"2021-04-30", "first_name"=>"GRAHAM D", "gridsquare"=>"\u0004\f13\u0012\u0005", "id"=>585745, "last_name"=>"MCINTIRE", "lat"=>"33.245919", "license_class"=>"G", "long"=>"-96.426614", "precision"=>"address", "previous_call"=>"", "previous_class"=>nil, "state"=>"TX", "street"=>"11411 CR 571", "updated_at"=>"2011-06-23T20:41:47Z", "zip"=>"75424"}
9
16
 
10
17
  == Contributing to hamradio
11
18
 
data/Rakefile CHANGED
@@ -20,7 +20,7 @@ Jeweler::Tasks.new do |gem|
20
20
  gem.summary = %Q{A collection of useful Amateur (Ham) Radio utilities by W5ISP.}
21
21
  gem.description = %Q{Includes grid square decoding/encoding & call sign lookup.}
22
22
  gem.email = "gmcintire@gmail.com"
23
- gem.authors = ["Graham McIntire"]
23
+ gem.authors = ["Graham McIntire W5ISP"]
24
24
  # dependencies defined in Gemfile
25
25
  end
26
26
  Jeweler::RubygemsDotOrgTasks.new
@@ -42,12 +42,12 @@ end
42
42
 
43
43
  task :default => :test
44
44
 
45
- require 'rdoc/task'
46
- RDoc::Task.new do |rdoc|
47
- version = File.exist?('VERSION') ? File.read('VERSION') : ""
48
-
49
- rdoc.rdoc_dir = 'rdoc'
50
- rdoc.title = "hamradio #{version}"
51
- rdoc.rdoc_files.include('README*')
52
- rdoc.rdoc_files.include('lib/**/*.rb')
53
- end
45
+ #require 'rdoc/task'
46
+ #RDoc::Task.new do |rdoc|
47
+ # version = File.exist?('VERSION') ? File.read('VERSION') : ""
48
+ #
49
+ # rdoc.rdoc_dir = 'rdoc'
50
+ # rdoc.title = "hamradio #{version}"
51
+ # rdoc.rdoc_files.include('README*')
52
+ # rdoc.rdoc_files.include('lib/**/*.rb')
53
+ #end
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.1
1
+ 0.3.0
data/hamradio.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "hamradio"
8
- s.version = "0.2.1"
8
+ s.version = "0.3.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["Graham McIntire"]
12
- s.date = "2011-09-12"
11
+ s.authors = ["Graham McIntire W5ISP"]
12
+ s.date = "2011-09-22"
13
13
  s.description = "Includes grid square decoding/encoding & call sign lookup."
14
14
  s.email = "gmcintire@gmail.com"
15
15
  s.extra_rdoc_files = [
@@ -18,6 +18,7 @@ Gem::Specification.new do |s|
18
18
  ]
19
19
  s.files = [
20
20
  ".document",
21
+ ".travis.yml",
21
22
  "Gemfile",
22
23
  "Gemfile.lock",
23
24
  "LICENSE.txt",
@@ -39,12 +40,16 @@ Gem::Specification.new do |s|
39
40
  s.specification_version = 3
40
41
 
41
42
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
43
+ s.add_runtime_dependency(%q<faraday>, [">= 0"])
44
+ s.add_runtime_dependency(%q<nestful>, [">= 0"])
42
45
  s.add_development_dependency(%q<log_buddy>, [">= 0"])
43
46
  s.add_development_dependency(%q<shoulda>, [">= 0"])
44
47
  s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
45
48
  s.add_development_dependency(%q<jeweler>, ["~> 1.6.4"])
46
49
  s.add_development_dependency(%q<rcov>, [">= 0"])
47
50
  else
51
+ s.add_dependency(%q<faraday>, [">= 0"])
52
+ s.add_dependency(%q<nestful>, [">= 0"])
48
53
  s.add_dependency(%q<log_buddy>, [">= 0"])
49
54
  s.add_dependency(%q<shoulda>, [">= 0"])
50
55
  s.add_dependency(%q<bundler>, ["~> 1.0.0"])
@@ -52,6 +57,8 @@ Gem::Specification.new do |s|
52
57
  s.add_dependency(%q<rcov>, [">= 0"])
53
58
  end
54
59
  else
60
+ s.add_dependency(%q<faraday>, [">= 0"])
61
+ s.add_dependency(%q<nestful>, [">= 0"])
55
62
  s.add_dependency(%q<log_buddy>, [">= 0"])
56
63
  s.add_dependency(%q<shoulda>, [">= 0"])
57
64
  s.add_dependency(%q<bundler>, ["~> 1.0.0"])
data/lib/hamradio.rb CHANGED
@@ -36,4 +36,15 @@ class HamRadio
36
36
 
37
37
  end
38
38
 
39
- end
39
+ def valid_gridsquare(grid)
40
+ (grid =~ /[a-z][a-z]\d\d/i) != nil
41
+ end
42
+
43
+ def lookup_callsign(call)
44
+ require 'nestful'
45
+
46
+ c = Nestful.get 'http://callbytxt.org/db/'+call+'.json', :format => :json #=> {:json_hash => 1}
47
+ c['calls']
48
+ end
49
+
50
+ end
metadata CHANGED
@@ -1,19 +1,41 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hamradio
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.3.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
8
- - Graham McIntire
8
+ - Graham McIntire W5ISP
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-09-12 00:00:00.000000000Z
12
+ date: 2011-09-22 00:00:00.000000000Z
13
13
  dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: faraday
16
+ requirement: &70226839495800 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: *70226839495800
25
+ - !ruby/object:Gem::Dependency
26
+ name: nestful
27
+ requirement: &70226839495080 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: *70226839495080
14
36
  - !ruby/object:Gem::Dependency
15
37
  name: log_buddy
16
- requirement: &70202685796340 !ruby/object:Gem::Requirement
38
+ requirement: &70226839494360 !ruby/object:Gem::Requirement
17
39
  none: false
18
40
  requirements:
19
41
  - - ! '>='
@@ -21,10 +43,10 @@ dependencies:
21
43
  version: '0'
22
44
  type: :development
23
45
  prerelease: false
24
- version_requirements: *70202685796340
46
+ version_requirements: *70226839494360
25
47
  - !ruby/object:Gem::Dependency
26
48
  name: shoulda
27
- requirement: &70202685795320 !ruby/object:Gem::Requirement
49
+ requirement: &70226839493760 !ruby/object:Gem::Requirement
28
50
  none: false
29
51
  requirements:
30
52
  - - ! '>='
@@ -32,10 +54,10 @@ dependencies:
32
54
  version: '0'
33
55
  type: :development
34
56
  prerelease: false
35
- version_requirements: *70202685795320
57
+ version_requirements: *70226839493760
36
58
  - !ruby/object:Gem::Dependency
37
59
  name: bundler
38
- requirement: &70202685794620 !ruby/object:Gem::Requirement
60
+ requirement: &70226839493080 !ruby/object:Gem::Requirement
39
61
  none: false
40
62
  requirements:
41
63
  - - ~>
@@ -43,10 +65,10 @@ dependencies:
43
65
  version: 1.0.0
44
66
  type: :development
45
67
  prerelease: false
46
- version_requirements: *70202685794620
68
+ version_requirements: *70226839493080
47
69
  - !ruby/object:Gem::Dependency
48
70
  name: jeweler
49
- requirement: &70202685793800 !ruby/object:Gem::Requirement
71
+ requirement: &70226839492380 !ruby/object:Gem::Requirement
50
72
  none: false
51
73
  requirements:
52
74
  - - ~>
@@ -54,10 +76,10 @@ dependencies:
54
76
  version: 1.6.4
55
77
  type: :development
56
78
  prerelease: false
57
- version_requirements: *70202685793800
79
+ version_requirements: *70226839492380
58
80
  - !ruby/object:Gem::Dependency
59
81
  name: rcov
60
- requirement: &70202685792940 !ruby/object:Gem::Requirement
82
+ requirement: &70226839491580 !ruby/object:Gem::Requirement
61
83
  none: false
62
84
  requirements:
63
85
  - - ! '>='
@@ -65,7 +87,7 @@ dependencies:
65
87
  version: '0'
66
88
  type: :development
67
89
  prerelease: false
68
- version_requirements: *70202685792940
90
+ version_requirements: *70226839491580
69
91
  description: Includes grid square decoding/encoding & call sign lookup.
70
92
  email: gmcintire@gmail.com
71
93
  executables: []
@@ -75,6 +97,7 @@ extra_rdoc_files:
75
97
  - README.rdoc
76
98
  files:
77
99
  - .document
100
+ - .travis.yml
78
101
  - Gemfile
79
102
  - Gemfile.lock
80
103
  - LICENSE.txt
@@ -100,7 +123,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
100
123
  version: '0'
101
124
  segments:
102
125
  - 0
103
- hash: 365327304267282150
126
+ hash: 943163124751310864
104
127
  required_rubygems_version: !ruby/object:Gem::Requirement
105
128
  none: false
106
129
  requirements: