code: def create_message(self, project_id, category_id, title, body,
          extended_body, use_textile=False, private=False, notify=None,
          attachments=None):
          
          path = '/projects/%u/msg/create' % project_id
          req = ET.Element('request')
          req.append(self._create_message_post_elem(category_id, title, body,
              extended_body, use_textile=False, private=False))
          if notify is not None:
              for person_id in notify:
                  ET.SubElement(req, 'notify').text = str(int(person_id))
          # TODO: Implement attachments.
          if attachments is not None:
              raise NotSupportedErr('Attachments are currently not implemented.')
          ##for attachment in attachments:
          ##    attms = ET.SubElement(req, 'attachments')
          ##    if attachment['name']:
          ##        ET.SubElement(attms, 'name').text = str(attachment['name'])
          ##    file_ = ET.SubElement(attms, 'file')
          ##    ET.SubElement(file_, 'file').text = str(attachment['temp_id'])
          ##    ET.SubElement(file_, 'content-type').text \
          ##        = str(attachment['content_type'])
          ##    ET.SubElement(file_, 'original-filename').text \
          ##        = str(attachment['original_filename'])
          return self._request(path, req)
docs: Creates a new message, optionally sending notifications to a selected
          list of people. Note that you can also upload files using this
          function, but you need to upload the files first and then attach them.
          See the description at the top of this document for more information.