Skip to main content

HealthShare Personal Community Workbench Messaging Setup Guide





1. Overview

Messages can be routed between the Personal Community public application and the Workbench; members send messages to providers, and providers read and respond using the Workbench

2. Workbench Messaging Setup

2.1. Enabling Messages in the Workbench

Organizations can control what types of messages patients can send.  The default workbench setting is set to enabled to allow for full functionality of the messaging feature. The setting may be changed by organizations if their provider messaging system may not be in place, or may not support different types of messaging
  1. Lo g into the Workbench as a user with the  Configuration Manager  role.

  2. Go to the  Configuration Application   page ( Setup  Configuration Application ) and select the  Feature Control  tab.  In the activity pane, select   Configure Messaging .  

  3. Select  Edit Mode   to make edits to the fields described in the following steps.

  4. To the right of the   Messaging box, ensure that the   Enable   checkbox is selected.

  5. Once the   Configure Messaging section is expanded, select from the current settings:

    • Allow patient to send messages -  allows messaging functionality for members. Once selected, you must choose at least one of the following message types:
      • Medical Question - allows members to send a message specifically labeled as a "medical question".
      • General Question - allows members to send a message specifically labeled as a "general question".
      • Billing Question - allows members to send a message specifically labeled as a "billing question".
    • Allow patient to send replies - allows members to reply back to a message sent by a provider.
  1. After you have finished, select   Submit   at the bottom of the page to save your changes. 


2.2. Configuring a Message Flow

Each clinical group may have a message flow for each supported message type. This enables them to process each of the various message types separately. To use these message flows, you must explicitly enable them.

2.2.1. Prerequisites to Setting up a Message Flow

To start, make sure you have all the requisite components:

  1. Add an organization .

  2. Add a clinical group . Make it part of the organization and enable messaging for it; these tasks involve the   Organization   and   Messaging Enabled   fields, respectively.

  3. Add providers . Add these providers to their respective clinical groups. This involves modifying the providers using the   Add provider to group   button.

For message flows with the Workbench, complete the following additional steps:

  1. Add a workflow group .

2.2.2. Setting up the Message Flow

To tie a message flow to a clinical group, complete the following steps:

  1. Log into the Workbench as a user with the   Provider Manager   role.

  2. Go to the   Setup   tab.

  3. In the activity pane, choose   Clinical Groups .

  4. On the   Clinical Groups   page, select the group that is using the flow. This displays the   Clinical Group Details   page for the group.

  5. On the   Group Details   page, near the bottom of the page, select   Create message flow . This displays the   Create Flow  page.

  6. On the   Create Flow   page:

    1. In the   Message Type   list, choose the type of message that the flow uses (or   All   for all of them).

    2. In the   Delivery Interface   list, choose the delivery interface that Personal Community uses to provide the message to the external system. To handle messages using mechanisms entirely within Personal Community, select   Workbench Task . To handle messages externally, select the name of the delivery interface to use. Choosing an interface may display additional options.

    3. Select the   Active   check box for the flow to operate with the clinical group.

    4. Complete any other choices that the page displays because of the selected delivery interface. For example, if you are setting up a Workbench task, the page displays the   Workflow Group   list; from that list, select the workflow group that is associated with the message flow.

    5. Choose   Save   to create the flow and save the settings for it.

If you have configured this flow for messaging with the Workbench, log in to the Workbench as a user with the   Task Processing   role; go to the   Tasks   tab; and   assign agents to the workflow group

Patients can now communicate with the provider for the supported message types.

2.3. Customizing the Results of Member's Searches for Providers

One of the first steps for members who want to send their provider a message is to search for those providers. You may want to implement a filter to limit the providers returned in this search.

2.3.1. Creating the Search Filter Class

To implement a search filter that will exclude certain providers from being available to members for messaging:

  1. Create a new class that extends   HSPortal.Messaging.Settings.FilterInterface .

  2. Implement the   ShouldExcludeRecipientFromResults()   method. This method loops through all available providers and must return   1   for each recipient you want to exclude and   0   for each recipient you want to include.

    The filtering criteria include:

    • AcceptsAttachments   - Boolean flag.

    • ClinicalGroupAddress   - Address object of type   HSPortal.API.Datagram.Providers.Address .

    • ClinicalGroupRecipientID   - ID of the   Recipient   object for the clinical group.

    • ClinicalGroupID   - ID of the   ClinicalGroup   object.

    • ClinicalGroupName   - Name of the clinical group.

    • RecipientID   - ID of the   Recipient   object for the provider at the clinical group.

    • ProviderID   - ID of the   Provider   object.

    • ProviderTitle   - Title of the provider.

    • ProviderSuffix   - Suffix for the provider.

    • FirstName   - First name of the provider.

    • LastName   - Last name of the provider.

    • Specialties   - List of specialty names.

    • Favorite   - Boolean flag to indicate if the provider is a favorite of the member doing the search.

    For example, if you wanted to exclude from a messaging search all providers from the “Physicians Group, Inc.” clinical group, the filtering code in your implementation of the method might look like this:

    Set pStatus = $$$OK
    Set tExclude = 0
        
    If (pRecipient.ClinicalGroupName = "Physicians Group, Inc.") {
            Set tExclude = 1
            }
            
    Quit tExclude
    

    IMPORTANT

    If you need to perform an expensive call to retrieve member-specific information, such as retrieving the providers in the member’s care team, you can use the   InitializeRecipientFilter()   method once in the initialization method. Then, you can add the relevant set of recipients to a local property so that each call to   ShouldExcludeRecipientFromResults()   can simply look up the provider locally. If you use the method, your code must call   ##super() ; see the class documentation for   InitializeRecipientFilter() .

  3. Compile your class.

2.3.2. Enabling the Search Filter in the Workbench

After creating your search filter, you must change a configuration setting in the Workbench to enable it.

To enable provider search filtering:

  1. Log in to the Workbench as a user with the   Configuration Manager   role.

  2. Go to the   Site Configuration Settings   page ( Setup   >   Site Configuration ).

  3. Change the value of the   Provider search filter class   setting to the name of your custom class.

  4. Select   Apply .