Converts the input to a ExecCommand tuple. It can be from a single string, list, or tuple. Single values (also
        single-element lists or tuples) are considered a command string, whereas two-element items are read as
        ``(command string, user name)``.

        :param value: Input value for conversion.
        :return: ExecCommand tuple.
        :rtype: ExecCommand

def get_type_item(self, value):
        """
        Converts the input to a ExecCommand tuple. It can be from a single string, list, or tuple. Single values (also
        single-element lists or tuples) are considered a command string, whereas two-element items are read as
        ``(command string, user name)``.

        :param value: Input value for conversion.
        :return: ExecCommand tuple.
        :rtype: ExecCommand
        """
        if isinstance(value, ExecCommand):
            return value
        elif isinstance(value, six.string_types + (lazy_type,)):
            return ExecCommand(value)
        elif isinstance(value, (list, tuple)):
            v_len = len(value)
            if 1 <= v_len <= 3:
                return ExecCommand(*value)
            raise ValueError("Invalid element length; only tuples and lists of length 1-3 can be converted to a "
                             "ExecCommand tuple. Found length {0}.".format(v_len))
        elif isinstance(value, dict):
            return ExecCommand(**value)
        raise ValueError(
            "Invalid type; expected a list, tuple, dict, or string type, found {0}.".format(type(value).__name__))