Target releaseRelease name or number
EpicNotifications - UI Customization
Document status
Priority
eLMIS StatusImplemented
OpenLMIS StatusPartially Implemented
PATH -
OpenLMIS Craig Appl (Unlicensed)
JSIAshraf Islam (Unlicensed)


Goals/Scope

This requirements page has been replaced by Customizable notifications


Ability to allow the text used on notification email/SMS

Status in eLMIS: Implemented.

Status in OpenLMIS: Partially Implemented. Implementers can change by editing the strings in each service. Values can come from the database.

Priority: High priority for Tanzania, Zanzibar, Zambia

Background

Different countries have different protocols and customs on how they notify individuals for different message types and what to say

Assumptions

User Stories


TitleUser StoryLabelImportanceNotesJIRA Tickets
1

Notifications

As an administrator I want to be able to customize the text to be used for different types of notificationsNotificationsMust have

See screenshot below


2Notifications
As an administrator I want to be able to put values from the database (e.g., name, address) embedded on the textNotifications
Must haveSee screenshot belowImplemented
3Send push notifications to usersAs an administrator, I need to be able to send push notifications (via email and/or SMS messages) to end users in order to notify them of things like planned system outages.Malawi-Request

MJ added this because perhaps we can achieve the needs of Malawi with this gap feature.

THIS FEATURE IS NOT RELATED TO THIS GAP STORY - WE SHOULD MAKE THIS ANOTHER GAP FEATURE FOR CONSIDERATION

Current Features

Numer 1 and 2 from the user stories are currently available in OpenLMIS 3.x. Number 3 above is a separate interface.

OpenLMIS v3.x has the ability to define the messages as part of the build process in each service:

Requisition Service Example:

requisition.email.convertToOrder.subject=Requisition converted to order
requisition.email.convertToOrder.content=Dear {0} {1},\n\nThe Requisition for Program {2} \
  and Period {3} has been converted to order.
requisition.email.statusUpdate.subject=Requisition Status Update
requisition.email.statusUpdate.content=Dear ${initiator}:\nThis email is informing you that \
  the ${requisitionType} requisition submitted on ${submittedDate} for the Period ${periodName} \
  and ${programName} at ${facilityName} has been ${requisitionStatus} by ${author} \
  on ${changeDate}.\nPlease login to see the requisition.\n${requisitionUrl}\nThank you.
requisition.email.actionRequired.subject=Action Required
requisition.email.actionRequired.content=Dear ${approver}:\nThis email is informing you that \
  the ${requisitionType} requisition submitted on ${submittedDate} for the Period ${periodName} \
  and ${programName} at ${facilityName} is ready for review. Please login to review the requisition.\
  \n${requisitionUrl}\nThank you.
requisition.email.requisitionApproved.subject=Action Required
requisition.email.requisitionApproved.content=Dear ${user}:\nThis email is informing you that the \
  ${requisitionType} requisition approved on ${finalApprovalDate} for the Period ${period} \
  and ${program} at ${facility} is ready to be converted to an order. Please login to convert \
  the requisition to an order.\n${url}\nThank you.

These messages are also available to be translated using Transifex into the local language.

Links to all services:

Diagrams

Include any business process mapping, mockups, diagrams or visual designs relating to these requirements. Describes the tasks and the personas who perform those activities. The diagram provides the context for the user stories and serves as a focal point for achieving clarity and agreement among stakeholders. Looks like a standard flow chart.

Dependencies

Identify initial dependencies that are on the critical path for this functionality and may affect the delivery time and serving of business goals. Include links to stories.

DescriptionLink
Name of story or release Link to JIRA


Open Questions

Initial communication between stakeholders and the development team to help understand scope and estimates.

Below is a list of questions to be addressed as a result of this requirements document:

#QuestionOutcomeStatus
1Ashraf How often do these messages change?RarelyHelps with future adoptions without the need to 
2Is a UI really required?Yes
3If required, what is an appropriate syntax to reference the database fields? (groovy is popular)

Out of Scope

Notes from Gap Estimation 4/11/2018