func (c *Client) ClientGetName() (string, error) {
	var ret string
	err := c.command(
		&ret,
		[]byte("CLIENT"),
		[]byte("GETNAME"),
	)
	return ret, err
}
/*
The CLIENT GETNAME returns the name of the current connection as set by CLIENT
SETNAME. Since every new connection starts without an associated name, if no
name was assigned a null bulk reply is returned.

http://redis.io/commands/client-getname
package redis
import (
	"errors"
	"fmt"
	"io"
	"menteslibres.net/gosexy/to"
	"strings"
)
func (c *Client) Append(key string, value interface{}) (int64, error) {
	var ret int64
	err := c.command(
		&ret,
		[]byte("APPEND"),
		[]byte(key),
		to.Bytes(value),
	)
	return ret, err
}
func (c *Client) Auth(password string) (string, error) {
	var ret string
	err := c.command(
		&ret,
		[]byte("AUTH"),
		[]byte(password),
	)
	return ret, err
}
func (c *Client) BgRewriteAOF() (string, error) {
	var ret string
	err := c.command(
		&ret,
		[]byte("BGREWRITEAOF"),
	)
	return ret, err
}
func (c *Client) BgSave() (string, error) {
	var ret string
	err := c.command(
		&ret,
		[]byte("BGSAVE"),
	)
	return ret, err
}
func (c *Client) BitCount(key string, params ...int64) (int64, error) {
	var ret int64
	args := make([][]byte, len(params)+2)
	args[0] = []byte("BITCOUNT")
	args[1] = []byte(key)
	for i := range params {
		args[2+i] = to.Bytes(params[i])
	}
	err := c.command(&ret, args...)
	return ret, err
}
func (c *Client) BitOp(op string, dest string, keys ...string) (int64, error) {
	var ret int64
	args := make([][]byte, len(keys)+3)
	args[0] = []byte("BITOP")
	args[1] = []byte(op)
	args[2] = []byte(dest)
	for i := range keys {
		args[3+i] = to.Bytes(keys[i])
	}
	err := c.command(&ret, args...)
	return ret, err
}
func (c *Client) BLPop(timeout uint64, keys ...string) ([]string, error) {
	var ret []string
	args := make([][]byte, len(keys)+2)
	args[0] = []byte("BLPOP")
	i := 0
	for _, key := range keys {
		i++
		args[i] = to.Bytes(key)
	}
	args[1+i] = to.Bytes(timeout)
	err := c.command(&ret, args...)
	return ret, err
}
func (c *Client) BRPop(timeout uint64, keys ...string) ([]string, error) {
	var ret []string
	args := make([][]byte, len(keys)+2)
	args[0] = []byte("BRPOP")
	i := 0
	for _, key := range keys {
		i++
		args[i] = to.Bytes(key)
	}
	args[1+i] = to.Bytes(timeout)
	err := c.command(&ret, args...)
	return ret, err
}
func (c *Client) BRPopLPush(source string, destination string, timeout int64) (string, error) {
	var ret string
	err := c.command(
		&ret,
		[]byte("BRPOPLPUSH"),
		[]byte(source),
		[]byte(destination),
		to.Bytes(timeout),
	)
	return ret, err
}
func (c *Client) ClientKill(ip string, port uint) (string, error) {
	var ret string
	err := c.command(
		&ret,
		[]byte("CLIENT"),
		[]byte("KILL"),
		to.Bytes(fmt.Sprintf("%s:%d", ip, port)),
	)
	return ret, err
}
func (c *Client) ClientList() ([]string, error) {
	var ret []string
	err := c.command(
		&ret,
		[]byte("CLIENT"),
		[]byte("LIST"),
	)
	return ret, err
}