code: def send_email(subject, message, sender, recipients, image_png=None):
      
      notifiers = {
          'ses': send_email_ses,
          'sendgrid': send_email_sendgrid,
          'smtp': send_email_smtp,
          'sns': send_email_sns,
      }
  
      subject = _prefix(subject)
      if not recipients or recipients == (None,):
          return
  
      if _email_disabled_reason():
          logger.info("Not sending email to %r because %s",
                      recipients, _email_disabled_reason())
          return
  
      # Clean the recipients lists to allow multiple email addresses, comma
      # separated in luigi.cfg
      recipients_tmp = []
      for r in recipients:
          recipients_tmp.extend([a.strip() for a in r.split(',') if a.strip()])
  
      # Replace original recipients with the clean list
      recipients = recipients_tmp
  
      logger.info("Sending email to %r", recipients)
  
      # Get appropriate sender and call it to send the notification
      email_sender = notifiers[email().method]
      email_sender(sender, subject, message, recipients, image_png)
docs: Decides whether to send notification. Notification is cancelled if there are
      no recipients or if stdout is onto tty or if in debug mode.
  
      Dispatches on config value email.method.  Default is 'smtp'.