code: func (cs *ClientServerImpl) Disconnect(...interface{}) error {
  	cs.writeLock.Lock()
  	defer cs.writeLock.Unlock()
  
  	if cs.conn == nil {
  		return fmt.Errorf("websocker client: no connection to close")
  	}
  
  	// Close() in turn results in a an internal flushFrame() call in gorilla
  	// as the close frame needs to be sent to the server. Set the deadline
  	// for that as well.
  	if err := cs.conn.SetWriteDeadline(time.Now().Add(cs.RWTimeout)); err != nil {
  		seelog.Warnf("Unable to set write deadline for websocket connection: %v for %s", err, cs.URL)
  	}
  	return cs.conn.Close()
  }
docs: // Disconnect disconnects the connection