Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Note

If enabling One Time Passcode verification, version 4.2 or higher is required and Redis caching must be enabled.

Table of Contents

Dependencies

The Patient Identification module is dependent on the following modules:

Integration

The Patient Identification module exposes the flow ID of its main flow as:

...

Code Block
const SUCCESS_FLOW_ID = "...";
const FAILURE_FLOW_ID = "...";

const { patientIdentification, flowManager } = flow.get("project");

const success = (msg, patient) => {
    // Patient data is passed if useful
    node.warn(patient);
    
    flowManager.changeFlow(msg, SUCCESS_FLOW_ID);
};

patientIdentification.registerHandler("success", success);

const failure = (msg, patient) => {
    // Patient data is passed if useful
    node.warn(patient);
    
    flowManager.changeFlow(msg, FAILURE_FLOW_ID);
};

patientIdentification.registerHandler("failure", failure);

Configuration

The Patient Identification module will read and respect the values shown below. To add or edit configuration values follow this path: Experience Manager > Create tab > Content component > Settings item > patientIdentification section.

...

Code Block
"patientIdentification": {
    "verify": {
        "dob": true,
        "zipCode": true,
        "name": true,
        "otp": true
    },
    "otpChannelSelection": true,
    "patientDobFormat": "MM/DD/YYYY",
    "content": {
        "dob": {
            "prompt": "Custom DOB verification prompt.",
            "retry": "Custom DOB retry prompt.",
            "incorrect": "Custom DOB incorrect message."
        },
        "zipCode": {
            "prompt": "Custom zip verification prompt.",
            "invalid": "Custom zip invalid prompt.",
            "retry": "Custom zip retry prompt.",
            "incorrect": "Custom zip incorrect message."
        },
        "name": {
            "prompt": "Custom name verification prompt ({{patient.firstName}} {{patient.lastName}})",
            "incorrect": "Custom name incorrect message."
        },
        "otp": {
            "channelPrompt": "Custom OTP channel prompt message.",
            "noChannels": "Custom OTP no channels available message.",
            "prompt": "Custom OTP prompt message ({{otpChannel}}).",
            "retry": "Custom OTP retry prompt.",
            "incorrect": "Custom OTP incorrect message."
        }
    }
}

Handlers

dobVerificationFailed

This handler is called when a patient fails to verify their date of birth twice.

...

The default implementation of this handler does nothing.

zipCodeVerificationFailed

This handler is called when a patient fails to verify their zip code twice.

...

The default implementation of this handler does nothing.

nameVerificationFailed

This handler is called when a patient indicates they are not the named patient.

...

The default implementation of this handler does nothing.

otpVerificationFailed

This handler is called when a patient enters an incorrect one time passcode three times.

...

The default implementation of this handler does nothing.

Anchor
success
success
success

This handler is called when a patient has successfully verified their identity.

...

Note

This handler is expected to handle the message in some way, for example by calling flowManager.changeFlow(msg, flowId)

Anchor
failure
failure
failure

This handler is called when a patient fails to verify their identity.

...

Note

This handler is expected to handle the message in some way, for example by calling flowManager.changeFlow(msg, flowId)

Overriding Handlers

Any of the above handlers can be overridden with a custom version by using the registerHandler method exposed by the Patient Identification module. For example:

...

Your custom handler can accept any of the documented parameters and there is an expectation that it will return an appropriate value for handlers expected to return something.

Implementation Documentation

To help with customer specific content updates: https://aikeras.sharepoint.com/:w:/r/sites/Product-Team/_layouts/15/Doc.aspx?sourcedoc=%7B0BCE78BC-453B-4799-B3B1-58328D9D1AED%7D&file=Patient%20Identification%20Module%20-%20How%20to%20Configure%20Content%20within%20Settings.docx&action=default&mobileredirect=true