Class: DACPClient::Browser
- Inherits:
-
Object
- Object
- DACPClient::Browser
- Defined in:
- lib/dacpclient/browser.rb
Overview
The Client class handles communication with the server
Defined Under Namespace
Classes: Device
Constant Summary collapse
- DAAP_SERVICE =
'_daap._tcp'.freeze
- TOUCHABLE_SERVICE =
'_touch-able._tcp'.freeze
Instance Attribute Summary collapse
-
#devices ⇒ Object
readonly
Returns the value of attribute devices.
Instance Method Summary collapse
- #browse(new_service = true) ⇒ Object
-
#initialize ⇒ Browser
constructor
A new instance of Browser.
Constructor Details
#initialize ⇒ Browser
Returns a new instance of Browser.
22 23 24 |
# File 'lib/dacpclient/browser.rb', line 22 def initialize @devices = [] end |
Instance Attribute Details
#devices ⇒ Object (readonly)
Returns the value of attribute devices.
20 21 22 |
# File 'lib/dacpclient/browser.rb', line 20 def devices @devices end |
Instance Method Details
#browse(new_service = true) ⇒ Object
26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/dacpclient/browser.rb', line 26 def browse(new_service = true) service_name = new_service ? DAAP_SERVICE : TOUCHABLE_SERVICE @devices = [] timeout(2) do DNSSD.browse!(service_name) do |node| resolve(node) break unless node.flags.more_coming? end end devices rescue Timeout::Error # => e [] end |