def open(options)
      password = (options[:password].nil? ? nil : options[:password].to_s)
      if !options[:server_id].nil?
        Klass.openRemote(@handle, options[:server_id].to_s, password)
      else
        Klass.openRemoteIP(@handle, options[:address].to_s, options[:port].to_i, password)
      end
      sleep 1
      true
    end
def open(options)
      password = (options[:password].nil? ? nil : options[:password].to_s)
      if !options[:server_id].nil?
        Klass.openRemote(@handle, options[:server_id].to_s, password)
      else
        Klass.openRemoteIP(@handle, options[:address].to_s, options[:port].to_i, password)
      end
      sleep 1
      true
    end
Opens a PhidgetDictionary over the WebService.
 If you are not programming with the block method, you will have to call this explicitly.
 This is called automatically if you are programming with the block method.

 <b>Usage:</b>

 Open a PhidgetDictionary using an address, port, and an optional password.
  options = {:address => 'localhost', :port => 5001, :password => nil}
  dict.open(options)

 Open a PhidgetDictionary using a server id, and an optional password.
  options = {:server_id => 'localhost', :password => nil}
  dict.open(options)
 @return [Boolean] returns true or raises an error