Background
==========

- Priority scale: High, Medium and Low

- Complexity scale: C1, C2, C4 and C8.
   The complexity scale is exponential, with complexity 1 being the
   lowest complexity. Complexity is a function of both task 'complexity'
   and task 'scope'.

  The general rule of thumb is that a complexity 1 task should take 1-2 weeks
  for a person very familiar with mmsd codebase.  Higher complexity tasks
  require more time and have higher uncertainty.

  Higher complexity tasks should be refined into several lower complexity tasks
  once the task is better understood.


MMS Delivery Report
===================

- Add delivery report request when sending message.
  Modify SendMessage D-Bus API to add delivery report request flag.
  Update message structure to manage this flag.
  Modify MMS M-Send.Req PDU encoder to encode delivery report request.
  Modify test script related to message sending to support new delivery flag.

  Priority: Medium
  Complexity: C2
  Owner: Ronald Tessier <ronald.tessier@linux.intel.com>

- Update message status stored in its associated Meta file.
  Add a group [delivery_status] in the message status to handle delivery
  reports, this group contains an entry for each message recipients.
  Each recipient entry will be updated when the corresponding report will be
  received and then remove the temporary stored delivery report.
  Upon M-Send.Conf reception, store the received Message_ID to match delivery
  reports (needed only if delivery report was requested).

  Priority: Medium
  Complexity: C2
  Depends:
  Owner: Sébastien Bianti <sebastien.bianti@linux.intel.com>

- Add MMS M-Delivery.ind PDU decoding support.
  Modify mms_service_push_notify() to handle MMS Delivery Report WAP Push
  notification and temporary store the M-Delivery.ind PDU.
  Decode M-Delivery.ind PDU.
  Add MMS M-Delivery.ind PDU sample PDU to unit test.

  Priority: Medium
  Complexity: C2
  Depends:
  Owner: Ronald Tessier <ronald.tessier@linux.intel.com>

- Update message Meta file.
  Upon MMS M-Delivery.ind PDU reception, update delivery_status recipient entry
  with the received status (this is described in doc/storage.txt).

  Priority: Medium
  Complexity: C2
  Depends:
  Owner: Sébastien Bianti <sebastien.bianti@linux.intel.com>


D-Bus API
=========

- Add the "org.ofono.mms.Service" interface "DeleteMessages" method
  implementation.
  The D-Bus Message API documentation is available under /doc/service-api.txt.

  Priority: Medium
  Complexity: C2
  Owner: Sébastien Bianti <sebastien.bianti@linux.intel.com>

- Add the "org.ofono.mms.Service" interface "DeleteConversation" method
  implementation.
  The D-Bus Message API documentation is available under /doc/service-api.txt.

  Priority: Medium
  Complexity: C2
  Owner: Ronald Tessier <ronald.tessier@linux.intel.com>


Miscellaneous
=============

- Add OMA MMS M-Retrieve.conf decoding mandatory test cases to the unit tests.
  PDU for these tests cases should be added as data files to the unit tests.
  The test PDUs should use the media content sample provided by the OMA.
  Applicable test cases are available in "OMA Enabler Test Specification for
  (Conformance) for MMS" [OMA-ETS-MMS_CON-V1_3-20101015-C].

  Complexity: C1
  Priority: Low
  Owner: Christophe Guiraud <christophe.guiraud@linux.intel.com>
