docs: def _build_message(self, message):
          """A helper method to convert a PMEmailMessage to a PMMail"""
          if not message.recipients():
              return False
          recipients = ','.join(message.to)
          recipients_cc = ','.join(message.cc)
          recipients_bcc = ','.join(message.bcc)
  
          text_body = message.body
          html_body = None
          if isinstance(message, EmailMultiAlternatives):
              for alt in message.alternatives:
                  if alt[1] == "text/html":
                      html_body = alt[0]
                      break
  
          elif getattr(message, 'content_subtype', None) == 'html':
              # Don't send html content as plain text
              text_body = None
              html_body = message.body
  
          reply_to = ','.join(message.reply_to)
          custom_headers = {}
          if message.extra_headers and isinstance(message.extra_headers, dict):
              if 'Reply-To' in message.extra_headers:
                  reply_to = message.extra_headers.pop('Reply-To')
              if len(message.extra_headers):
                  custom_headers = message.extra_headers
          attachments = []
          if message.attachments and isinstance(message.attachments, list):
              if len(message.attachments):
                  for item in message.attachments:
                      if isinstance(item, tuple):
                          (f, content, m) = item
                          content = base64.b64encode(content)
                          # b64decode returns bytes on Python 3. PMMail needs a
                          # str (for JSON serialization). Convert on Python 3
                          # only to avoid a useless performance hit on Python 2.
                          if not isinstance(content, str):
                              content = content.decode()
                          attachments.append((f, content, m))
                      else:
                          attachments.append(item)
  
          postmark_message = PMMail(api_key=self.api_key,
                                    subject=message.subject,
                                    sender=message.from_email,
                                    to=recipients,
                                    cc=recipients_cc,
                                    bcc=recipients_bcc,
                                    text_body=text_body,
                                    html_body=html_body,
                                    reply_to=reply_to,
                                    custom_headers=custom_headers,
                                    attachments=attachments)
  
          postmark_message.tag = getattr(message, 'tag', None)
          postmark_message.track_opens = getattr(message, 'track_opens', False)
  
          return postmark_message