It would be nice to see your outgoing message queue, say before you decide to plug in a gateway.
Related to #1849
Consider having a button to show the outgoing message in English if it is being sent in another language.
Related: medic/medic-projects#2816 medic/medic-projects#2719
Related: #3249
View the full design spec and additional mockups here: https://docs.google.com/document/d/1RHydv1vjO0jGZwD9T0k5pEiZxJLVmSJamuzER7oOmCM/edit?usp=sharing
Summary of the MVP

Scheduled tab

Due tab
Will not send tab
Table columns
Recipient
Created
Message
Status

Conditional styling of status

Scheduled
Last Update
Note there are three types of dates:
Date formatting

For reference, pasting a summary of a few clarifications discussed with Diana and Jill:
Do we include outgoing messages from the Messages tab, or just those from the Reports tab?
Will not send tab - do we include past due date or future due date or both?
What to do in cases where recipient phone number doesn’t exist
For my own understanding...
-- will messages which are muted and appear on the "do not send" list switch over to the "scheduled/due" list when the mute status is cleared? And only those after the time when the schedule was unmuted? (i.e. unmute doesn't apply to the entire past schedule, only future messages)
-- for how long do we try again to send failed messages and when do they permanently fail?
-- did you all run the naming of the tabs and statuses by a few other teammates and users?
Will messages which are muted and appear on the "do not send" list switch over to the "scheduled/due" list when the mute status is cleared?
Yes, my understanding is that they would switch over to the "Scheduled" tab, provided that the due date is still in the future. If a muted message is unmuted, but the due date is in the past, it should remain in the "Did not send" tab. The rules for which message appears on which tab are based on the message status. A given message may and should move across tabs as it's status changes.
For how long do we try again to send failed messages and when do they permanently fail?
My understanding is that we do NOT try again. As soon as a message has reached the status "failed" it will not be retried. In the future we would like to add a "resend" button but that has been removed from the MVP.
Did you all run the naming of the tabs and statuses by a few other teammates and users?
Not explicitly, but during conversation the only status name that was mentioned as confusing was "Delivered". People have a hard time understanding the difference between "Sent" and "Delivered". We suggested that it might be clearer to change "Delivered" to "Received" but I did not include that in this ticket, as it seemed like a separate issue.
Thanks for those clarifications!
The wording that trips me up is "due" in the context of messages that live in the past (because they are no longer due, and arguably the failed ones are "overdue" but cannot be rectified), and "failed" as a status as differentiated from the tab "will not send" (because neither have been sent and neither will... hence my question about re-trying). I'm OK hearing that I'm in the minority here and don't need to make an issue of it if these terms are clear to others.
Here is why we like having "failed" messages grouped together with other pending message states: We anticipate that the "Due" tab will be the tab where PMs spend the majority of their time. They can go to this tab to either verify that all messages are properly moving quickly through the states, or they can be alerted to messages that have failed or been stuck in a pending state for a long time, indicating a potential gateway issue or some other problem. "Failed" is one of the statuses that PMs care about _most_. If we moved "failed" to a different tab, then PMs would have to toggle between multiple tabs to get the full picture of the health of the system.
Your point is valid about the wording "Due" not quite fitting all of the content on that page. All I can say is we're all well aware that this is not a perfect solution. We've had countless back and forth conversations about how many tabs there should be, what should be on them, and what the tabs should be called, and we all compromised to get here. "Due" vs "Overdue" is a tricky concept, because in reality almost every message will take _some_ time to go through the process and be delivered, so I think they will often be past the exact due date/time even when progressing normally through the pending states...Do you have a suggestion for a name besides "Due" without splitting off to make a separate "Overdue" tab?
In the end, we'd just like to get something out, let people start using it, and gather feedback from there to inform future tweaks or iterations. I don't think changing the name of a tab is too difficult down the road!
because neither have been sent and neither will
On the contrary, "failed" messages DID attempt to send. Here is the full definition of "failed":
The sending attempt failed. Sending will not be retried without user intervention.
LGTM. There is an error message showing on the Will not send tab. It might be related to #4899 . So, I will go ahead and close this (as a feature done) and keep #4899 open.

Reopening to fix bug related to deleted patients causing messages list to error (https://github.com/medic/medic-webapp/issues/4899#issuecomment-440941632)
@ngaruko The fix for the deleted patients has been merged into master (3.4), with no intention to backporting to 3.3. I deleted the report that caused the error in Admin message queue (id 8cb9904d-cc22-485a-8ef0-0c3d2a1372e2).
@ngaruko this issue is part of 3.3.x, not 3.4.x.
LGTM