huawei_e5180_api 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 +4 -4
- data/README.md +24 -0
- data/VERSION +1 -1
- data/huawei_e5180_api.gemspec +101 -0
- data/lib/huawei_e5180_api.rb +1 -1
- data/spec/huawei_e5180_api_spec.rb +11 -0
- metadata +2 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6e1dcc53a6c2656e698fb47873b88de7bce5336e
|
4
|
+
data.tar.gz: f880e81addfb59560eba322b112cb658c2a2e7d4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 07292279e3e2b46d9586951cda5e97915158e8c0049846e23235e438b83de17e2e075bb7fd6fab5c90b0ef2ce469636b7e6eb560bd8795756b45bd130f05d747
|
7
|
+
data.tar.gz: 5ffe9c7a720161b69bb7092d73a0bdc7cf5e8c6e5b058ed343513ab8125d5de5c912eb77230bdd45ce5113d831cc6e577815647440c78f6ee675ac2fbd2923c7
|
data/README.md
CHANGED
@@ -6,6 +6,30 @@ Api support for Huawei E5180 LTE modem in ruby.
|
|
6
6
|
|
7
7
|
As mobile companies give shitty data cap of 100GB on "unlimited" plans (after which you land with 2M/384k connection) we want to know internet usage distribution.
|
8
8
|
|
9
|
+
## Setup
|
10
|
+
|
11
|
+
Install gem:
|
12
|
+
```gem install huawei_e5180_api```
|
13
|
+
|
14
|
+
Put this into your Gemfile:
|
15
|
+
```gem 'huawei_e5180_api'```
|
16
|
+
|
17
|
+
|
18
|
+
## Usage:
|
19
|
+
|
20
|
+
```
|
21
|
+
require 'huawei_e5180_api'
|
22
|
+
|
23
|
+
agent = HuaweiE5180Api.new
|
24
|
+
while true
|
25
|
+
stats = agent.traffic_statistics
|
26
|
+
# here save stats to database for further analysis
|
27
|
+
sleep 5
|
28
|
+
end
|
29
|
+
```
|
30
|
+
|
31
|
+
Also see specs.
|
32
|
+
|
9
33
|
## Contributing to huawei_e5180_api
|
10
34
|
|
11
35
|
* Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet.
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.1
|
@@ -0,0 +1,101 @@
|
|
1
|
+
# Generated by jeweler
|
2
|
+
# DO NOT EDIT THIS FILE DIRECTLY
|
3
|
+
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
|
+
# -*- encoding: utf-8 -*-
|
5
|
+
# stub: huawei_e5180_api 0.1.1 ruby lib
|
6
|
+
|
7
|
+
Gem::Specification.new do |s|
|
8
|
+
s.name = "huawei_e5180_api"
|
9
|
+
s.version = "0.1.1"
|
10
|
+
|
11
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
12
|
+
s.require_paths = ["lib"]
|
13
|
+
s.authors = ["Marcin Nowicki"]
|
14
|
+
s.date = "2015-04-30"
|
15
|
+
s.description = "Api support for Huawei E5180 LTE modem in ruby."
|
16
|
+
s.email = "pr0d1r2@gmail.com"
|
17
|
+
s.extra_rdoc_files = [
|
18
|
+
"LICENSE",
|
19
|
+
"README.md"
|
20
|
+
]
|
21
|
+
s.files = [
|
22
|
+
".document",
|
23
|
+
".rspec",
|
24
|
+
"Gemfile",
|
25
|
+
"Gemfile.lock",
|
26
|
+
"Guardfile",
|
27
|
+
"LICENSE",
|
28
|
+
"README.md",
|
29
|
+
"Rakefile",
|
30
|
+
"VERSION",
|
31
|
+
"huawei_e5180_api.gemspec",
|
32
|
+
"huawei_e5180_monitoring.gemspec",
|
33
|
+
"lib/huawei_e5180_api.rb",
|
34
|
+
"spec/fixtures/cassettes/check_notifications.yml",
|
35
|
+
"spec/fixtures/cassettes/converged_status.yml",
|
36
|
+
"spec/fixtures/cassettes/current_plmn.yml",
|
37
|
+
"spec/fixtures/cassettes/mobile_dataswitch.yml",
|
38
|
+
"spec/fixtures/cassettes/status.yml",
|
39
|
+
"spec/fixtures/cassettes/status_info.yml",
|
40
|
+
"spec/fixtures/cassettes/traffic_statistics.yml",
|
41
|
+
"spec/huawei_e5180_api_spec.rb",
|
42
|
+
"spec/spec_helper.rb",
|
43
|
+
"spec/support/vcr.rb"
|
44
|
+
]
|
45
|
+
s.homepage = "http://github.com/pr0d1r2/huawei_e5180_api"
|
46
|
+
s.licenses = ["MIT"]
|
47
|
+
s.rubygems_version = "2.4.5"
|
48
|
+
s.summary = "Api support for Huawei E5180 LTE modem in ruby."
|
49
|
+
|
50
|
+
if s.respond_to? :specification_version then
|
51
|
+
s.specification_version = 4
|
52
|
+
|
53
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
54
|
+
s.add_runtime_dependency(%q<mechanize>, [">= 0"])
|
55
|
+
s.add_runtime_dependency(%q<activesupport>, [">= 0"])
|
56
|
+
s.add_development_dependency(%q<rspec>, [">= 0"])
|
57
|
+
s.add_development_dependency(%q<vcr>, [">= 0"])
|
58
|
+
s.add_development_dependency(%q<webmock>, [">= 0"])
|
59
|
+
s.add_development_dependency(%q<guard-bundler>, [">= 0"])
|
60
|
+
s.add_development_dependency(%q<guard-rspec>, [">= 0"])
|
61
|
+
s.add_development_dependency(%q<guard-rubocop>, [">= 0"])
|
62
|
+
s.add_development_dependency(%q<guard-cane>, [">= 0"])
|
63
|
+
s.add_development_dependency(%q<guard-rubycritic>, [">= 0"])
|
64
|
+
s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
|
65
|
+
s.add_development_dependency(%q<bundler>, ["~> 1.0"])
|
66
|
+
s.add_development_dependency(%q<jeweler>, ["~> 2.0.1"])
|
67
|
+
s.add_development_dependency(%q<simplecov>, [">= 0"])
|
68
|
+
else
|
69
|
+
s.add_dependency(%q<mechanize>, [">= 0"])
|
70
|
+
s.add_dependency(%q<activesupport>, [">= 0"])
|
71
|
+
s.add_dependency(%q<rspec>, [">= 0"])
|
72
|
+
s.add_dependency(%q<vcr>, [">= 0"])
|
73
|
+
s.add_dependency(%q<webmock>, [">= 0"])
|
74
|
+
s.add_dependency(%q<guard-bundler>, [">= 0"])
|
75
|
+
s.add_dependency(%q<guard-rspec>, [">= 0"])
|
76
|
+
s.add_dependency(%q<guard-rubocop>, [">= 0"])
|
77
|
+
s.add_dependency(%q<guard-cane>, [">= 0"])
|
78
|
+
s.add_dependency(%q<guard-rubycritic>, [">= 0"])
|
79
|
+
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
80
|
+
s.add_dependency(%q<bundler>, ["~> 1.0"])
|
81
|
+
s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
|
82
|
+
s.add_dependency(%q<simplecov>, [">= 0"])
|
83
|
+
end
|
84
|
+
else
|
85
|
+
s.add_dependency(%q<mechanize>, [">= 0"])
|
86
|
+
s.add_dependency(%q<activesupport>, [">= 0"])
|
87
|
+
s.add_dependency(%q<rspec>, [">= 0"])
|
88
|
+
s.add_dependency(%q<vcr>, [">= 0"])
|
89
|
+
s.add_dependency(%q<webmock>, [">= 0"])
|
90
|
+
s.add_dependency(%q<guard-bundler>, [">= 0"])
|
91
|
+
s.add_dependency(%q<guard-rspec>, [">= 0"])
|
92
|
+
s.add_dependency(%q<guard-rubocop>, [">= 0"])
|
93
|
+
s.add_dependency(%q<guard-cane>, [">= 0"])
|
94
|
+
s.add_dependency(%q<guard-rubycritic>, [">= 0"])
|
95
|
+
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
96
|
+
s.add_dependency(%q<bundler>, ["~> 1.0"])
|
97
|
+
s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
|
98
|
+
s.add_dependency(%q<simplecov>, [">= 0"])
|
99
|
+
end
|
100
|
+
end
|
101
|
+
|
data/lib/huawei_e5180_api.rb
CHANGED
@@ -11,10 +11,10 @@ class HuaweiE5180Api < Mechanize
|
|
11
11
|
def initialize(address = DEFAULT_ADDRESS)
|
12
12
|
@address = address
|
13
13
|
super
|
14
|
-
cookie!
|
15
14
|
end
|
16
15
|
|
17
16
|
def method_missing(m, *_args, &_block)
|
17
|
+
cookie!
|
18
18
|
Hash.from_xml(get(send("#{m}_url")).body)['response']
|
19
19
|
end
|
20
20
|
|
@@ -3,6 +3,17 @@ require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
|
|
3
3
|
describe HuaweiE5180Api do
|
4
4
|
let(:agent) { described_class.new }
|
5
5
|
|
6
|
+
describe '#address' do
|
7
|
+
it { expect(agent.address).to eq('192.168.8.1') }
|
8
|
+
|
9
|
+
context 'when change address' do
|
10
|
+
let(:changed_address) { '10.0.0.1' }
|
11
|
+
let(:agent) { described_class.new(changed_address) }
|
12
|
+
|
13
|
+
it { expect(agent.address).to eq(changed_address) }
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
6
17
|
describe '#status' do
|
7
18
|
it 'returns hash with stats' do
|
8
19
|
VCR.use_cassette('status') do
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: huawei_e5180_api
|
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
|
- Marcin Nowicki
|
@@ -223,6 +223,7 @@ files:
|
|
223
223
|
- README.md
|
224
224
|
- Rakefile
|
225
225
|
- VERSION
|
226
|
+
- huawei_e5180_api.gemspec
|
226
227
|
- huawei_e5180_monitoring.gemspec
|
227
228
|
- lib/huawei_e5180_api.rb
|
228
229
|
- spec/fixtures/cassettes/check_notifications.yml
|