Coder Social home page Coder Social logo

intersystems-community / irisdemo-demo-appointmentsms Goto Github PK

View Code? Open in Web Editor NEW
4.0 11.0 4.0 1.52 MB

InterSystems IRIS Interoperability HL7/SMS Demo with AWS

Home Page: http://www.intersystems.com

License: MIT License

Dockerfile 6.68% Shell 11.61% JavaScript 8.39% ObjectScript 71.83% Batchfile 1.49%
intersystems iris demo interoperability integration hl7 aws sms analytics

irisdemo-demo-appointmentsms's Introduction

IRIS Healthcare Integration Demo

This demo shows how easy it is to integrate an Electronic Medical Record system that is sending HL7 messages with AWS. The example shows how we can receive appointments (SIU_S12 messages), extract data from the message and do two things with the data:

  • Send a text (SMS) to notify the patient of the appointment
  • Store the data on a table and give you a real-time dashboard about your business

The picture bellow shows the workflow:

Demo Landing Page

You will find two YouTube videos bellow. The first one is 10 minutes long and walks you through the IRIS demo. But if you want to experience building an integration project with IRIS, we recommend watching both videos.

Have fun! :)

Just watch it

Start with this video demo on YouTube (if you haven't already watched it).

WARNING: A previous version of this demo used the namespace "USER". Now it is running on the namespace "APPINT". So, when watching the video, when you see "USER", please use "APPINT" instead.

Build it yourself!

Now that you have watched the demo, you can watch this second video and take two different paths:

  • Use the video to run the demo on your PC with your AWS account. Don't worry, the video guides you through set up and AWS has a free tier for sending text messages!
  • Use the video to build parts of your demo yourself.

To just run the demo on your PC, make sure you have Docker installed on your machine and run the following command:

docker run --init -it --rm -p 52773:52773 --name iris intersystemsdc/irisdemo-demo-appointmentsms:version-1.2.3

Then open the demo landing page on http://localhost:52773/csp/appint/demo.csp.

Use the username SuperUser and the password sys. This is just a demo that is running on your machine, so we are using a default password.

If you want to experience on building parts of the demo, start this other container instead:

docker run --init -it --rm -p 52773:52773 --name iris intersystemsdc/irisdemo-demo-appointmentsms:student-version-1.2.3

In this container, many componentes of the demo are missing, so you get to build and add them yourself.

Independently of the path you choose, don't forget to follow the second video for guidance.

Enjoy!

Other demo applications

There are other IRIS demo applications that touch different subjects such as NLP, ML, Integration with AWS services, Twitter services, performance benchmarks etc. Here are some of them:

  • HTAP Demo - Hybrid Transaction-Analytical Processing benchmark. See how fast IRIS can insert and query at the same time. You will notice it is up to 20x faster than AWS Aurora!
  • Kafka Retail Banking Demo - Shows how InterSystems IRIS can be used to import AVRO Schemas from a Kafka's schema registry and consume Kafka events from a simulated retail banking application. It shows how InterSystems IRIS can be used to collate the events into a canonical model, apply data transformation and vocabulary normalization and bring people into the process when issues appear.
  • Fraud Prevention - Apply Machine Learning and Business Rules to prevent frauds in financial services transactions using IRIS.
  • Twitter Sentiment Analysis - Shows how IRIS can be used to consume Tweets in realtime and use its NLP (natural language processing) and business rules capabilities to evaluate the tweet's sentiment and the metadata to make decisions on when to contact someone to offer support.
  • The Readmission Demo - Patient Readmissions are said to be the "Hello World of Machine Learning" in Healthcare. On this demo, we use this problem to show how IRIS can be used to safely build and operationalize ML models for real time predictions and how this can be integrated into a random application. This IRIS for Health demo seeks to show how a full solution for this problem can be built.
  • HL7 Appointments and SMS (text messages) application - This demo

Report any Issues

Please, report any issues on the Issues section.

irisdemo-demo-appointmentsms's People

Contributors

amirsamary avatar dependabot[bot] avatar evshvarov avatar pbooth01 avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

irisdemo-demo-appointmentsms's Issues

superuser account is disabled

the documented username to use to login is SuperUser, however, in the image downloaded, that account is disabled (it probably expired).

Protect error starting demo

Error: ERROR #5002: ObjectScript error: STARTUP+26^STU ^SYS("DSONLY","Environment"),/usr/irissys/mgr/ - Shutting down the system : $zu(56,2)=$Id: //iris/2019.1.0/kernel/common/src/gkill.c#1 $ 1549 2Starting IRIS

Error response from AWS SNS not parsed

Hi,

If I test the demo flow to create an appointment without first configuring my AWS credentials I get an error like this below:

"ERROR ErrGeneral: Retrying Message body [email protected] / 1 because Status 'ERROR #5035: General exception Name 'XPathEvaluatExpressionReturnedNoResultsException'Code ''Data '''matched ReplyCodeAction 1 : 'E=R'resulting in Action code R | ERROR ErrGeneral: Retrying Message body [email protected] / 1 because Status 'ERROR #5035: General exception Name 'XPathEvaluatExpressionReturnedNoResultsException'Code ''Data '''matched ReplyCodeAction 1 : 'E=R'resulting in Action code R"

You also can see the very same error in the screenshot attached.

2019_04_02_11_00_28_Event_Log

For future releases, we might want to parse the error from AWS call to better understand what the problem is.

Incorrect time in Signature

Hi,

Be aware that adjusting the time of the container to whatever timezone you are in, or copying the AWS interface code, and trying to run it locally, in a different time zone fails... Because:

BuildSignature method in AWS.AWS4Auth.SignatureMethods.BaseSignatureMethod uses this line to determine the time.

Set ..SignatureTime = $ZDT($ZTS, 8,7)

$ZTS returns UTC Time. The method requires the current time of the system and as it so happens, the container's system timezone is in fact set to UTC. (so it's ok for this container).

If you adjusted the time in this container, to be your local timezone (say Sydney time) , this interface will fail, as, the request made to AWS will be made at a time that is recorded to be way different from what is in SignatureTime.

Setting the above line to read:

Set ..SignatureTime = $ZDT($HOROLOG 8,7)

fixes this issue. It may be worth adjusting the source code.
Steve.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.