Versions Compared

Key

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

...

All examples in this page come from the HSPC the Logica Patient Data Manager (PDM) and Bilirubin Risk Chart apps. The code can be found at https://bitbucket.org/hspconsortium/patient-data-manager and https://bitbucket.org/hspconsortium/bilirubin-risk-chart.

...

So, you have an app that launches great from within the HSPC the Logica sandbox or EHR system. But what happens when the your app is loaded outside of these authorization spaces? What does the user see? Usually, it's either a garbage page or your app with no loaded data. We suggest you take advantage of these opportunities by instead showing a marketing page through your index.html file. Here's an example of the index.html rendering of the HSPC the Logica PDM app (https://patient-data-manager.hspconsortiumlogicahealth.org).

As you create this page, we recommend including at least 3 different features:

...

FieldDescription
software_id

Unique identifier for your app. The HSPC The Logica apps use Maven Coordinates (https://maven.apache.org/pom.html#Maven_Coordinates)

client_nameName of the application
client_uriThe marketing index.html address
logo_uriLink to a screenshot of your app
launch_urlThe html page that handles the Oauth process
redirect_urisList of possible urls that the sandbox/EHR will redirect to after authorization
scope

A space-delimited list of scopes (http://docs.smarthealthit.org/authorization/scopes-and-launch-context)

token_endpoint_auth_methodString indicator of the requested authentication method for the token endpoint. Values are: "none", "client_secret_post", and "client_secret_basic" (https://tools.ietf.org/html/rfc7591)
grant_typesArray of OAuth 2.0 grant types that the client may use (http://docs.smarthealthit.org/authorization/best-practices)
fhir_versionsList of FHIR versions that the app can handle

...

When an app is viewed in an EHR system, a patient banner containing certain patient demographics may be displayed, keeping the app in the context of the patient being treated. When designing your app, you may want to include a patient banner just in case the system it is launched in does not have one. You are more than welcome to do so, but you don't want to have two patient banners show up in the user's view. That's why the SMART authorization standard has included a parameter that your app can accept indicating whether to show your app's banner or not. The variable is called "need_patient_banner". It is received in the final step of authorization when the access token and patient id are sent to your app. See http://docs.smarthealthit.org/authorization/scopes-and-launch-context/ for full documentation.

...

In Logica

The HSPC The Logica sandbox may be used to test out this functionality. First, build a launch scenario for your app, click the Launch Embedded option, and launch.

...