Module: RobotLab::Discovery

Defined in:
lib/robot_lab/discovery.rb,
lib/robot_lab/discovery/result.rb,
lib/robot_lab/discovery/browser.rb,
lib/robot_lab/discovery/version.rb,
lib/robot_lab/discovery/constants.rb,
lib/robot_lab/discovery/advertiser.rb,
lib/robot_lab/discovery/txt_record.rb,
sig/robot_lab/discovery.rbs

Defined Under Namespace

Modules: Browser, TxtRecord Classes: Advertiser, Error, Result

Constant Summary collapse

VERSION =

Returns:

  • (String)
"0.2.6"
SERVICE_TYPE =
"_robot-lab._tcp.local."

Class Method Summary collapse

Class Method Details

.browse(timeout: 3) ⇒ Object



14
# File 'lib/robot_lab/discovery.rb', line 14

def self.browse(timeout: 3)                      = Browser.browse(timeout:)

.dns_label(capability) ⇒ Object

Converts a free-form capability string into a valid DNS label: downcased, non-alphanumeric runs replaced with hyphens, no leading/trailing hyphens. "Web Search" → "web-search", "NLP/Analysis" → "nlp-analysis"



22
23
24
# File 'lib/robot_lab/discovery.rb', line 22

def self.dns_label(capability)
  capability.to_s.downcase.gsub(/[^a-z0-9]+/, "-").gsub(/\A-+|-+\z/, "")
end

.find(name, timeout: 5) ⇒ Object



15
# File 'lib/robot_lab/discovery.rb', line 15

def self.find(name, timeout: 5)                  = Browser.find(name, timeout:)

.find_by_capability(cap, timeout: 3) ⇒ Object



16
# File 'lib/robot_lab/discovery.rb', line 16

def self.find_by_capability(cap, timeout: 3)     = Browser.find_by_capability(cap, timeout:)

.list_capabilities(timeout: 3) ⇒ Object



17
# File 'lib/robot_lab/discovery.rb', line 17

def self.list_capabilities(timeout: 3)           = Browser.list_capabilities(timeout:)