Class: Wizrb::Shared::Discover
- Inherits:
-
Object
- Object
- Wizrb::Shared::Discover
show all
- Defined in:
- lib/wizrb/shared/discover.rb
Constant Summary
collapse
- MULTICAST_ADDR =
"224.0.0.1"
- BIND_ADDR =
"0.0.0.0"
- PORT =
38_899
- REGISTRATION_MESSAGE =
{
method: "registration",
params: {
phoneMac: "ABCDEFGHIJKL",
register: false,
phoneIp: "1.2.3.4",
id: "1"
}
}.to_json
Class Method Summary
collapse
Instance Method Summary
collapse
Constructor Details
#initialize(wait: 2) ⇒ Discover
25
26
27
28
29
30
|
# File 'lib/wizrb/shared/discover.rb', line 25
def initialize(wait: 2)
@wait = wait
@listening = false
@thread = nil
@devices = []
end
|
Class Method Details
.all(wait: 2, filters: {}) ⇒ Object
50
51
52
|
# File 'lib/wizrb/shared/discover.rb', line 50
def self.all(wait: 2, filters: {})
new(wait: wait).all(filters: filters)
end
|
.home(id, wait: 2) ⇒ Object
54
55
56
|
# File 'lib/wizrb/shared/discover.rb', line 54
def self.home(id, wait: 2)
new(wait: wait).home(id)
end
|
.room(id, wait: 2) ⇒ Object
58
59
60
|
# File 'lib/wizrb/shared/discover.rb', line 58
def self.room(id, wait: 2)
new(wait: wait).room(id)
end
|
Instance Method Details
#all(filters: {}) ⇒ Object
32
33
34
35
36
37
38
39
40
|
# File 'lib/wizrb/shared/discover.rb', line 32
def all(filters: {})
open_socket
listen_registration(filters)
dispatch_registration
sleep(@wait)
close_registration
close_socket
group_devices
end
|
#home(id) ⇒ Object
42
43
44
|
# File 'lib/wizrb/shared/discover.rb', line 42
def home(id)
all(filters: {"homeId" => id})
end
|
#room(id) ⇒ Object
46
47
48
|
# File 'lib/wizrb/shared/discover.rb', line 46
def room(id)
all(filters: {"roomId" => id})
end
|