class_docstr: Handle all alert dispatching for AWS SES
class_docstr_tok: ["Handle","all","alert","dispatching","for","AWS","SES"]
docstr: Add attachments to the msg
  
  Args:
      msg (MIMEMultipart): email to attach too
      name (str): name for the file to be attached
      content (str): content of the file to be attached (should be string)
  
  Returns:
      msg (MIMEMultipart): Email with the relevant attachments
code: def _add_attachment(msg, name, content):
      """Add attachments to the msg
  
      Args:
          msg (MIMEMultipart): email to attach too
          name (str): name for the file to be attached
          content (str): content of the file to be attached (should be string)
  
      Returns:
          msg (MIMEMultipart): Email with the relevant attachments
      """
      LOGGER.debug("Attaching %s to msg", name)
  
      att = MIMEApplication(content)
  
      att.add_header("Content-Disposition", "attachment", filename=name)
      msg.attach(att)
  
      return msg
  
imports: from abc import abstractmethod
  from collections import OrderedDict
  from email.mime.application import MIMEApplication
  from email.mime.multipart import MIMEMultipart
  from email.mime.text import MIMEText
  from datetime import datetime
  import json
  import uuid
  import backoff
  from botocore.exceptions import ClientError
  import boto3
  from streamalert.alert_processor.helpers import compose_alert, elide_string_middle
  from streamalert.alert_processor.outputs.output_base import OutputDispatcher, OutputProperty, StreamAlertOutput
  from streamalert.shared.backoff_handlers import backoff_handler, success_handler, giveup_handler
  from streamalert.shared.logger import get_logger
label_desc: Use image node_id 1 for calling the SESOutput obj's underlying member method code with example usage: obj._add_attachment(msg, name, content) and returns: msg