view Applications/StoneWebViewer/NOTES.txt @ 1696:572652803929

bootstrapping the Stone Web viewer configuration file
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 27 Nov 2020 09:34:02 +0100
parents e787b52d025f
children bc40b6450261
line wrap: on
line source



Differences with Osimis Web viewer
==================================

- The images are retrieved using DICOMweb.

- The Stone Web viewer uses the DICOM identifiers. The Osimis Web
  viewer the Orthanc identifiers.
  https://book.orthanc-server.com/faq/orthanc-ids.html

  In the Stone Web viewer, the studies are indexed by their "Study
  Instance UID" tag (0020,000d). The series are indexed by their
  "Series Instance UID" tag (0020,000e). To open a single series,
  the parent study must be provided.

  To open a single study:
  http://.../index.html?study=<StudyInstanceUID>

  To open a single series:
  http://.../index.html?study=<StudyInstanceUID>&series=<SeriesInstanceUID>

- In the Osimis Web viewer, the "pickableStudyIds" parameter in the
  URL defines the list of studies that are available for display, and
  that are listed in the dropdown at the top-left of the interface.

  In the Stone Web viewer, "pickableStudyIds" is replaced by the
  single "study" GET argument, that is allowed to contain a
  comma-separated list of studies. The "series" parameter is ignored
  in this case.

  To open a list of studies:
  http://.../index.html?study=<StudyInstanceUID1>,<StudyInstanceUID2>,...
  
- In the Osimis Web viewer, the "selectedStudyIds" defines the list of
  studies that are selected in the dropdown (and therefore displayed
  when the viewer starts).

  In the Stone Web viewer, "selectedStudyIds" is replaced by the
  "selectedStudies" GET argument, that is allowed to contain a
  comma-separated list of studies.

  To make a list of studies available, but display only one of those
  studies when the viewer starts:
  http://.../index.html?study=<StudyInstanceUID1>,<StudyInstanceUID2>,...&selectedStudies=<StudyInstanceUID1>

  If the "selectedStudies" is not provided, then all the studies are
  displayed at the startup.


Dynamic actions using messages
==============================

Some actions can be dynamically triggered in the Stone Web viewer from
another Web page. This is done by using the "window.postMessage()"
primitive of JavaScript:
https://developer.mozilla.org/en-US/docs/Web/API/Window/postMessage

Each message must be a JSON object containing at least the "type"
field. The latter field indicates the type of action to be triggered.

For security, the "ExpectedMessageOrigin" configuration option of the
Stone Web viewer must have been set to the expected origin of the
messages. Otherwise, the Stone Web viewer will reject the message.


Action of type "show-osirix-annotations"
----------------------------------------

This action loads a set of ROIs exported from OsiriX. The ROIs must
use the XML file format of OsiriX.

The parent DICOM study containing the annotation(s) must have been
loaded by the Stone Web viewer beforehand. The Stone Web viewer shall
automatically focus on one instance that is associated with the ROIs.

The JSON message must contain the following fields:

- "type" must be equal to "show-osirix-annotations"

- "xml" must contain the XML file generated by OsiriX

- "clear" is a Boolean to indicate whether to clear the annotations
  that have previously been opened.