Knowlege base

EPIC Integration Module

Article ID: 964
Last updated: 21 Jun, 2023

Imagicle Epic Integration for Digital Fax allows users to send faxes and be notified about relevant outcome directly from the Epic ecosystem. 

Thanks to end-to-end encryption, data transfer between Epic and Imagicle is entirely secure, ensuring compliance with HIPAA and GDPR and managing Protected Health Information (PHI) in a reliable and electronic format. Fax operations are streamlined through a secure data exchange protected by role-based access, central document storage, and easy data retrieval. When attaching a document, you can choose from various formats, including pdf, doc(x), xls(x), rtf, bmp, jpg, jpeg, gif, and tiff.

Sending a fax is as easy as printing a file: the Epic Print Server (EPS) processes the outbound fax and delivers it to the Imagicle Digital Fax server to be queued for sending. When the fax has been sent, relevant outcome is returned from the Imagicle Digital Fax server to EPS's one. If a fax fails after EPS delivers it to the fax server, EPS will return a failed status.

Requirements

  • Imagicle UCX on-prem or Cloud Suite, ver. 2023.Summer.1 or above.
  • Imagicle Digital Fax license must be in place.

Module Installation

Imagicle EPIC Integration Module can be installed in the Imagicle UCX Suite virtual/actual server.

Please download the software package from here.

Access to Imagicle server via RDP. If you are leveraging an Imagicle UCX Cloud Suite, please contact Imagicle Support for more details.

To install the application:

  • Unzip the package in StonevoiceAS\EpicFaxGateway
  • Add a valid certificate named "certificate.pfx" inside the unzipped folder,
  • Open a command line interface (CMD) in Administrator mode,
  • Execute the following command:

SC CREATE ImagicleEpicToFaxGateway displayname= “Imagicle Epic-to-Fax Gateway” start= auto binpath= “C:\FaxGateway\FaxGateway.exe"

Open "Services" Control Panel and verify new "FaxGateway" service is running.

Module Configuration

Inside C:\FaxGateway\data folder, you can find a file named "config.json". It includes configuration information according to Epic customer’s host and credentials. See below a typical sample:

config.json

{
{
  "faxGW":{
    "host": "dev.telisca.cloud",
    "port": 8944,
    "credentials": {
      "user": "Imagicle",
      "password": "XXXXXXXXXX"
    }
  },
  "imagicleFax": {
    "host": "51.103.74.94",
    "port": 443,
    “allowProxyUser”:true,
    "credentials": {
      "user": "faxtest",
      "password": " XXXXXXXXXX "
    },
    "checkCertificate":false
  },
  "epic": {
    "epicClientId": "b18224dd-6497-4325-88c5-ba87d2ac4b84",
    "credentials": {
      "user": "emp$IMAGICLE",
      "password": " XXXXXXXXXX "
    }
  },
  "bodyModelFile": “faxbody.txt”,
  "logLevel": "method",
  “logDataPath”=”..\\StoneVoiceAS\\Var\\log”,
  “userField”: “epicUserID”
}

The following fields must be amended, depending on your EPIC/Imagicle environment:

faxGW:

  • host = FQDN to reach the Imagicle EPIC Integration Module. If co-located in Imagicle UCX Suite, you set it to "localhost"
  • port = TCP 8944 (default)
  • credentials = username + password to allow EPIC to access the Imagicle Module

imagicleFax:

  • host = Imagicle UCX Suite IP address. 
  • port = TCP 443, to leverage Digital Fax REST APIs
  • allowProxyUser = set this parameter to "true" if you wish to leverage a default sender user for those outbound transactions including an unknown user. If the parameter is set to "false" and the sender user is unknown, then the outbound transaction is rejected and the error "Unable to retrieve sending user" is returned to EPIC.
  • credentials = username + password of an Imagicle admin user, needed to leverage Digital Fax APIs
  • checkCertificate = set it to "true" if a proper Digital Certificate is used for https access. Leave it to "false" to leverage default self-signed Imagicle certificate.

epic:

  • epicClientId = This is an unique product identifier, provided by EPIC.
  • credentials = username + password to login into EPIC application and return the outbound fax transaction outcome.

Other settings:

  • logLevel = For troubleshooting purposes, you can change it to “disabled”, “forced”, “error”, “treatment”, “methods”, “maximum”.
  • logDataPath = This is the folder path where logs are placed.
  • userField = It defines the attribute used to match "PBX username" field in Imagicle users's database, to assign the right Imagicle sender user. You can set it as “senderName”, “sendingUser”, “epicUserId”, “epicUserName”, “userAccount”.

Fax Body template configuration

"bodyModelFile" parameter in config.json points to a text file, included in the same C:\FaxGateway\data folder and named faxbody.txt. It defines the template of the fax body, including several dynamic variables mapped to Epic metadata received in the send fax request. See below a typical sample:

Sender name: %SenderName%
Sender company: %SenderCompany%
Sender fax: %SenderFax%

Patient CSN: %PatientCSN%
Patient Name: %PatientName%
Patient MRN : %PatientMRN%
Patient ZIP code: %PatientZIPCode%
Patient Date of Birth: %PatientDateofBirth%

Here is the list of dynamic metadata fields you can retrieve from EPIC and include in the fax body template. Do not forget to prepend and append "%" symbol to variable name:

SenderName
SendingUser
CoverSheetNotes
EpicUserID
EpicUserName
UserAccount
UserDomain
PatientCSN
PatientName
DateTimeSent
NoteID
NoteType
PatientMRN
PatientIDType
PatientZIPCode
IsAdHocCommunication
RecipientINI
RecipientID
RecipientIDType
DocumentOrigin
PatientLegalSex
PatientDateOfBirth
PatientEnterpriseNumber
CoverPage
RecipientName
RecipientFirstName
RecipientLastName
RecipientTitle
RecipientCompany
RecipientPhone
RecipientEmail
RecipientBillingCode
RecipientSubBillingCode
RecipientAccount
RecipientAddressWhole
RecipientStreet
RecipientCity
RecipientIZIPCode
RecipientState
RecipeintCityState
RecipientCounty
RecipientCountry
SenderName
SenderFirstName
SenderLastName
SenderTitle
SenderDepartment
SenderLocation
SenderCompany
SenderDepartmentPhone
SenderDepartmentFax
SenderServiceArea
SenderPhone
SenderEmail
SenderFax
SenderAddressWhole
SenderStreet
SenderCity
SenderZIPCode
SenderState
SenderCityState
SenderCounty
SenderCountry

Note: When config.json is updated, it is reloaded immediately. However, if faxGW/port is changed, "FaxGateway" service must be restarted.

Article ID: 964
Last updated: 21 Jun, 2023
Revision: 12
Views: 237
Print Export to PDF Subscribe Share
This article was:  
Prev   Next
Print To Fax     Fax-to-Email configuration for inbound faxes