def alert_email(feed, cfg, entry): """Sends alert via email. Args: feed (:py:class:`Feed`): the feed cfg (dict): output config entry (dict): the feed entry """ logger = logging.LoggerAdapter(log, extra = { 'feed': feed.name, 'group': feed.group['name'], }) logger.debug(f"[{feed.name}] Alerting email: {entry.title}") description = strip_html(entry.description) try: smtp = Mailer(host=cfg['server']) message = Message(charset="utf-8", From=cfg['from'], To=cfg['to'], Subject = f"{feed.group['name']} Alert: ({feed.name}) {entry.title}") message.Body = f"Feed: {feed.name}\nDate: {entry.datestring}\n\n{description}" message.header('X-Mailer', 'rssalertbot') smtp.send(message) except Exception: logger.exception(f"[{feed.name}] Error sending mail")
def test_message_as_string(self): msg = Message( To='*****@*****.**', From='*****@*****.**', Subject='Test Message', Text='This is just a test message.', Html='<body><p>This is just a test message.</p></body>', ) msg.header('Message-ID', make_msgid()) s = msg.as_string() assert type(s) == str
def alert_email(feed, cfg, entry): """Sends alert via email. Args: feed (:py:class:`Feed`): the feed cfg (dict): output config entry (dict): the feed entry """ log.debug(f"Alerting email: {entry.title}") description = strip_html(entry.description) smtp = Mailer(host=cfg['server']) message = Message( charset="utf-8", From=cfg['from'], To=cfg['to'], Subject=f"{feed.group['name']} Alert: ({feed.name}) {entry.title}") message.Body = f"Feed: {feed.name}\nDate: {entry.datestring}\n\n{description}" message.header('X-Mailer', 'rssalertbot') smtp.send(message)