Triage tickets based on time of day and services

TL;DR, as much as possible we should work out how to prioritise tickets
and not put that burden on the user. However, there are some cases where
we can’t.

In business hours all tickets are high priority, ie we will at least
acknowledge them within 30 mins.

If we are not in business hours then we need to know if a ticket is
serious enough to get someone out of bed. Only the user can tell us
this, but we can give them some examples to help them decide.

In addition, out-of-hours tickets are only a priority if the user has
live services. Normally we can determine this and do the
priority-setting in the background.

If they can’t log in then we can’t determine what services they have. So
in this case they will need to use the emergency email address, which
only users with live services will have.

The logic for this gets fairly complex. It might be to easier to
understand what’s going on by walking through the test cases, which are
a bit more declarative.

N.B. Deskpro’s ‘urgency’ is descending, eg 10 is the most urgent and 1
is the least.
This commit is contained in:
Chris Hill-Scott
2016-12-12 11:44:11 +00:00
parent a43112db88
commit 438868257f
7 changed files with 463 additions and 9 deletions

View File

@@ -0,0 +1,46 @@
{% extends "withoutnav_template.html" %}
{% from "components/textbox.html" import textbox %}
{% from "components/page-footer.html" import page_footer %}
{% block page_title %}
Out of hours emergencies GOV.UK Notify
{% endblock %}
{% block maincolumn_content %}
<h1 class="heading-large">
Out of hours emergencies
</h1>
<div class="grid-row">
<div class="column-two-thirds">
<p>
First, check the
<a href="https://status.notifications.service.gov.uk">system status page</a>.
You dont need to contact us if
the problem youre having is listed on that page.
</p>
<p>
Otherwise, contact us using the emergency email address we
gave you or your service manager when we made your service live.
</p>
<p>
Well reply within 30 minutes and give you hourly updates
until the problems fixed.
</p>
<p>
We dont offer out of hours support if your service is in
trial mode.
</p>
<h2 class="heading-medium">Any other problems</h2>
<p class="bottom-gutter-2">
<a href="{{ url_for('main.feedback', ticket_type='problem', severe=False)}}">Fill in this form</a>
and well get back to you by the next working day.
</p>
<p>
<a href="{{ url_for('.support') }}">Back to support</a>
</p>
</div>
</div>
{% endblock %}

View File

@@ -1,4 +1,5 @@
{% extends "withoutnav_template.html" %}
{% from "components/checkbox.html" import checkbox %}
{% from "components/textbox.html" import textbox %}
{% from "components/page-footer.html" import page_footer %}
@@ -19,7 +20,6 @@
page to see if there are any known issues with GOV.UK Notify.
</p>
</div>
<p>What went wrong, if anything? What went well? How could we improve this service?</p>
<form method="post">
{{ textbox(form.feedback, width='1-1', hint='', rows=10) }}
{% if not current_user.is_authenticated %}

View File

@@ -0,0 +1,61 @@
{% extends "withoutnav_template.html" %}
{% from "components/radios.html" import radios %}
{% from "components/page-footer.html" import page_footer %}
{% block page_title %}
Feedback GOV.UK Notify
{% endblock %}
{% block maincolumn_content %}
<div class="grid-row">
<div class="column-two-thirds">
<h1 class="heading-large">
Report a problem
</h1>
<form method="post">
{{ radios(form.severe) }}
{{ page_footer('Next') }}
</form>
<h2 class="heading-small">
Its only an emergency if:
</h2>
<ul class="list list-bullet">
<li>
no one in your team can log in
</li>
<li>
you get a technical difficulties error message when you try
to upload a file
</li>
<li>
you get a 500 response code when you try to send messages
using the API
</li>
</ul>
<h2 class="heading-small">
Its not an emergency if:
</h2>
<ul class="list list-bullet bottom-gutter">
<li>
all your messages stay in sending for a few hours
</li>
<li>
you send the wrong message by accident
</li>
<li>
a team member uses GOV.UK Notify to send an
inappropriate message
</li>
<li>
your system is telling the GOV.UK Notify API to send the wrong
message
</li>
</ul>
<p>
<a href="{{ url_for('.support') }}">Back to support</a>
</p>
</div>
</div>
{% endblock %}