This use case describes the steps a User performs to log out of the MediaBar and end their Agent session with the switch.

Actors

Name

Type

Role

 

 

 

 

 

 

Basic Flow

Preconditions

  • The User has logged an Agent into the MediaBar

Steps

  1. The user clicks the Logout button located in the upper right corner of the MediaBar

  2. The MediaBar sends the session.request.logout request to HIS. See the Client Connectivity documentation for details of the request contents

  3. Decision 1: HIS checks each active channel to see if the Agent has any ongoing interactions

    1. If an ongoing interaction is found, this flow ends and EF 1 - Ongoing Interaction is executed

  4. If the switch platform requires a Logout Reason from the User, this flow ends and AF 1 - Logout Reason is executed

  5. Decision 2: HIS checks the agent state of each channel to see if the agent is in the Ready state

    1. If the Agent is in the Ready state, HIS performs the server side portion of Go Not Ready generating the appropriate events

      1. If an error occurs trying to enter the Not Ready state, this flow ends and EF 2 - Not Ready Failure is executed

  6. Decision 3: HIS checks each channel to see if it is active

    1. If the channel is active and the platform supports channel deactivation, HIS performs the server side portion of Deactivate Channel, generating the appropriate events

      1. If an error occurs trying to deactivate the channel, this flow ends and the EF 3 - Deactivation Failure is executed

  7. HIS disposes of each existing channel and its associated workflow, generating the appropriate events

  8. HIS disposes of the channel group and its associated workflow, generating the appropriate events

  9. HIS disposes of the session and its associated workflow, generating the appropriate events

  10. The HIS message bus connection is closed

  11. This flow ends and the MediaBar begins the Basic Login flow

Post Conditions

  • The Agent session and all associated resources are closed and disposed of

  • The MediaBar initiates the Basic Login flow

Alternate Flow 1 - Logout Reason

Some platforms require the User to provide or select a reason for their log out request. This flow manages the collection of that reason and its delivery to the switch.

AF1 Preconditions

  • A logout request has been made

  • The switch platform requires a reason for the logout request

AF1 Steps

  1. HIS sends a NeedInfo error response related to the logout request to MediaBar

  2. The MediaBar presents the Logout Reason Selection Screen to the User populated with the logout reasons collected during the Basic Login use case

  3. The User selects, or if allowed enters, the appropriate logout reason and clicks the Checkmark button

  4. The MediaBar hides the Logout Reason Selection Screen

  5. The MediaBar resubmits the session.request.logout request including the selected logout reason

  6. This flow ends and the basic flow resumes at step 3

AF1 Post Conditions

  • The logout reason has been added to the logout request

Error Flow 1 - Ongoing Interaction

This error flow shouldn’t be possible as the Logout button should be disabled when an interaction is underway. However, it is documented here as HIS still needs to perform the check and respond as described here.

EF1 Trigger Conditions

  • An email, chat, or phone call interaction is in progress for the agent when the logout request is made

EF1 Steps

  1. HIS responds to the MediaBar with an error indicating that an interaction is underway and the logout is not possible

  2. MediaBar displays the error message provided by HIS to the agent and this flow ends

EF1 Post Conditions

  • The agent state remains unchanged as if the logout request never happened

Error Flow 2 - Not Ready Failure

This error flow happens if the agent requests to log out while some or all of their channels are in the Ready agent state and an attempt to move the agent to Not Ready fails for some reason.

EF1 Trigger Conditions

  • The attempt to make the agent Not Ready on a Ready channel fails during a logout request

EF1 Steps

  1. When HIS attempts to make the agent Not Ready on a channel an error occurs

  2. HIS sends an error to MediaBar indicating the Not Ready attempt failed

  3. MediaBar displays the error message to the agent and this flow ends

EF1 Post Conditions

  • The agent is still logged into the switch

  • Any channels successfully made Not Ready prior to the failure remain in the Not Ready state

Error Flow 3 - Deactivation Failure

This error flow happens if the agent requests to log out while some or all of their channels are in the active state (if supported by the switch) and an attempt to deactivate the channel fails for some reason.

EF1 Trigger Conditions

  • The attempt to deactivate an active channel fails during a logout request

EF1 Steps

  1. When HIS attempts to deactivate and active channel an error occurs

  2. HIS sends an error to MediaBar indicating the deactivate attempt failed

  3. MediaBar displays the error message to the agent and this flow ends

EF1 Post Conditions

  • The agent is still logged into the switch

  • Any channels successfully deactivated prior to the failure remain in the deactivated state

UI Concepts

Logout Reason Selection Screen