mosca 0.0.8 → 0.0.9

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: f77a3ccdac0df20783d950be8510522ef872cc30
4
- data.tar.gz: 11e7061866fb33a2fe98f3cc1ef0e5ebf8bc4483
3
+ metadata.gz: 15f35eb8f69221fc5b332d47f9a7d16d2bc89298
4
+ data.tar.gz: 0e69fc6153e88456cdb09a62e2e367fb2f9be624
5
5
  SHA512:
6
- metadata.gz: 49c6779585f022278f302fe3d36897e01bc71a8d440368be55dbba5076445bd0585fcbd545ec132f13cbb3ca7ea216ebacf47046f9ed5f86c459636274d7145b
7
- data.tar.gz: 4632fbd6230ec967acf90865932090ca30e6bd2578ab35200d6346f8d49fcb65305ef1aaede36319d604c4529defd7eff42cf0928bf86ab9a433a60f7e973401
6
+ metadata.gz: a71f4cc939b000d437113a0c51b53e19fca2f8921e02ffaff04aa2f1459ac95225992b1f781c1fa9be0e597ef904dbf9e3f95ef23886899604ca9dc6785c6e1b
7
+ data.tar.gz: 8132b4d0bb719cb28ef9e28d2a39cc4afa38031361a1761532940842c34c7a1c2e9693665fda5137da3d06c060e97f4cc63ed0c63ee60cbfe12d2d2db1801693
data/Gemfile.lock CHANGED
@@ -3,7 +3,7 @@ PATH
3
3
  specs:
4
4
  mosca (0.0.8)
5
5
  json (~> 1.8.1)
6
- mqtt (~> 0.3.1)
6
+ mqtt (~> 0.3, >= 0.3.1)
7
7
 
8
8
  GEM
9
9
  remote: https://rubygems.org/
data/lib/mosca/client.rb CHANGED
@@ -7,6 +7,9 @@ module Mosca
7
7
  class Client
8
8
  extend Forwardable
9
9
 
10
+ DEFAULT_KEEP_ALIVE = 10
11
+ KEEP_ALIVE_MARGIN = 5
12
+
10
13
  class << self
11
14
  attr_accessor :default_broker, :default_timeout
12
15
  end
@@ -25,6 +28,7 @@ module Mosca
25
28
  @topic_base = args[:topic_base] || ""
26
29
  @broker = args[:broker] || ENV["MOSCA_BROKER"] || self.class.default_broker
27
30
  @client = args[:client] || MQTT::Client
31
+ @keep_alive = args[:keep_alive] || DEFAULT_KEEP_ALIVE
28
32
  end
29
33
 
30
34
  def publish! message, params = {}
@@ -81,6 +85,8 @@ module Mosca
81
85
  @connection
82
86
  else
83
87
  @connection = @client.connect(client_options)
88
+ @connection.keep_alive = @keep_alive
89
+ @connection
84
90
  end
85
91
  end
86
92
 
@@ -98,7 +104,7 @@ module Mosca
98
104
  end
99
105
 
100
106
  def is_alive?
101
- ( Time.now - @connection.last_ping_response ) < 30
107
+ ( Time.now - @connection.last_ping_response ) < @keep_alive + KEEP_ALIVE_MARGIN
102
108
  end
103
109
  end
104
110
  end
data/lib/mosca/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Mosca
2
- VERSION = '0.0.8'
2
+ VERSION = '0.0.9'
3
3
  end
data/spec/mosca_spec.rb CHANGED
@@ -4,13 +4,14 @@ describe Mosca::Client do
4
4
  OUT = "out_topic"
5
5
  IN = "in_topic"
6
6
  MESSAGE = "test_message"
7
+ KEEP_ALIVE = 5
7
8
 
8
9
  let (:client) {
9
10
  ClientDouble.new
10
11
  }
11
12
 
12
13
  let (:mosca) {
13
- mosca = Mosca::Client.new topic_out: OUT, topic_in: IN, client: client
14
+ mosca = Mosca::Client.new topic_out: OUT, topic_in: IN, client: client, keep_alive: KEEP_ALIVE
14
15
  }
15
16
 
16
17
  it "has a default broker" do
@@ -160,7 +161,7 @@ describe Mosca::Client do
160
161
  end
161
162
 
162
163
  it "is false when not alive (no ping response)" do
163
- expect( client ).to receive( :last_ping_response ).and_return( Time.now - 30 )
164
+ allow( client ).to receive( :last_ping_response ).and_return( Time.now - ( KEEP_ALIVE + 5 ) )
164
165
  expect( mosca.connected? ).to be_falsey
165
166
  end
166
167
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mosca
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.8
4
+ version: 0.0.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Armando Andini
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-11-04 00:00:00.000000000 Z
11
+ date: 2014-12-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: mqtt