def METHOD_NAME(alert: Alert, text: str) -> Tuple[Alert, str]:
    wanted_plugins, wanted_config = plugins.routing(alert)
    updated = None
    for plugin in wanted_plugins:
        try:
            updated = plugin.take_note(alert, text, config=wanted_config)
        except NotImplementedError:
            pass  # plugin does not support take_note() method
        except (RejectException, ForwardingLoop, AlertaException):
            raise
        except Exception as e:
            if current_app.config['PLUGINS_RAISE_ON_ERROR']:
                raise ApiError(f"Error while running note plugin '{plugin.name}': {str(e)}")
            else:
                logging.error(f"Error while running note plugin '{plugin.name}': {str(e)}")
        if isinstance(updated, Alert):
            updated = updated, text
        if isinstance(updated, tuple) and len(updated) == 2:
            alert, text = updated
    if updated:
        alert.update_tags(alert.tags)
        alert.update_attributes(alert.attributes)
    return alert, text