def add_command_by_method_name(self, command, obj):
        """
        Lookup method named command in obj and call that method when the command is received.
        Raises ValueError if obj doesn't have a method named command
        :param command: str: name of the comand to wait for
        :param obj: object: must have a member function with the exact name of the command
        """
        func = getattr(obj, command)
        if func and callable(func):
            self.add_command(command, func)
        else:
            raise ValueError("Object missing {} method.".format(command))
Lookup method named command in obj and call that method when the command is received.
        Raises ValueError if obj doesn't have a method named command
        :param command: str: name of the comand to wait for
        :param obj: object: must have a member function with the exact name of the command