Sha256: ba0cceedf59ee232d0133975b831830fe7c9f77b42581301e830737993027af4

Contents?: true

Size: 1.26 KB

Versions: 1

Compression:

Stored size: 1.26 KB

Contents

require 'thor'
require 'thor/group'

module Artoo
  module Commands
    class Connect < Thor
      include Thor::Actions
      include Artoo::Utility

      desc "scan", "scan for connected devices"
      def scan
        case os
        when :linux
          run("hcitool scan")
        when :macosx
          run("ls /dev/tty.*")          
        else
          say "OS not yet supported..."
        end
      end

      desc "bind", "bind [ADDRESS] [NAME] binds a device to some connected hardware"
      option :comm, :default => 0, :desc => "Comm number"
      def bind(address, name, hcix=nil)
        case os
        when :linux
          run("bundle exec ./bin/artoo_bind.sh #{comm} #{address} #{name}")
        when :macosx
          say "OSX binds devices on its own volition."
        else
          say "OS not yet supported..."
        end
      end

      desc "socat", "socat [PORT] [NAME] use socat to connect a socket to a device by name"
      def socat(port, name)
        case os
        when :linux
          run("bundle exec ./bin/artoo_socat_linux.sh #{port} #{name}")
        when :macosx
          run("bundle exec ./bin/artoo_socat_osx.sh #{port} #{name}")          
        else
          say "OS not yet supported..."
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
artoo-1.0.0.rc2 lib/artoo/commands/connect.rb