← Навигация по документации

Обзор

Modality Performed Procedure Step может быть получен архивом от модальности после того, как объекты сохранены в архив. В этом случае уведомление Instance Availability Notification может быть отправлено из архива, как только все объекты исследования будут указаны в MPPS.

Если дополнительно настроен IAN Timeout для ожидания и проверки полноты экземпляров, полученных в MPPS, и все экземпляры, указанные в MPPS, были получены, то этот таймер будет остановлен и отправлено уведомление Instance Availability Notification.

Настройка

Вариант использования: в MPPS указана только часть объектов

ИЛИ - Через LDAP — Можно либо создать LDIF-файл для добавления атрибутов на: - Уровне Archive Device (например):

        version: 1
        dn: dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
        changetype: modify
        add: dcmIanTimeout
        dcmIanTimeout: PT5M

        dn: dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
        changetype: modify
        add: dcmIanOnTimeout
        dcmIanOnTimeout: TRUE

ИЛИ

- Уровне Archive AE (например):

        version: 1        
        dn: dicomAETitle=DCM4CHEE,dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
        changetype: modify
        add: dcmIanTimeout
        dcmIanTimeout: PT5M

        dn: dicomAETitle=DCM4CHEE,dicomDeviceName=dcm4chee-arc,cn=Devices,cn=DICOM Configuration,dc=dcm4che,dc=org
        changetype: modify
        add: dcmIanOnTimeout
        dcmIanOnTimeout: TRUE

и импортировать его на LDAP-сервер с помощью утилиты командной строки _ldapmodify_.

ИЛИ использовать функции Add Attribute... и Add Value... в Apache Directory Studio, чтобы добавить атрибуты на уровне устройства (например: dicomDeviceName=dcm4chee-arc) или на уровне Application Entity (например: dicomAETitle=DCM4CHEE) в конфигурации архива.

Описание атрибутов можно найти в Archive Device или Archive Network AE.

Дополнительные сведения о длительностях см. в ISO-8601 Duration format.

Перейдите на вкладку Control на странице Configuration в UI архива и перезагрузите конфигурацию.

Тестирование

Необходимые инструменты dcm4che

Проверка

В MPPS указаны все объекты

  1. Запустите IANSCP

      ianscp -b IANSCP:11117
    
  2. Сохраните все объекты этого исследования в архив

      storescu -c DCM4CHEE@localhost:11112 /pathToStudy
    
  3. Отправьте запрос MPPS, ссылающийся на все объекты этого исследования

      mppsscu -c DCM4CHEE@localhost:11112 /pathToStudy
    

После истечения настроенного интервала опроса проверьте в окне инструмента ianscp, что получено уведомление Instance Availability Notification.

В MPPS указана только часть объектов

  1. Запустите IANSCP

      ianscp -b IANSCP:11117
    
  2. Сохраните все объекты этого исследования в архив

      storescu -c DCM4CHEE@localhost:11112 /pathToStudy
    
  3. Отправьте запрос MPPS, ссылающийся только на часть объектов этого исследования

      mppsscu -c DCM4CHEE@localhost:11112 /pathToStudy-some-objects
    

После истечения настроенного интервала опроса проверьте в окне инструмента ianscp, что уведомление Instance Availability Notification получено только для объектов, указанных в MPPS.

В MPPS указаны все объекты до истечения IAN Timeout

  1. Запустите IANSCP

      ianscp -b IANSCP:11117
    
  2. Сохраните все объекты этого исследования в архив

      storescu -c DCM4CHEE@localhost:11112 /pathToStudy
    
  3. Отправьте запрос MPPS, ссылающийся на все объекты этого исследования

      mppsscu -c DCM4CHEE@localhost:11112 /pathToStudy
    

После истечения настроенного интервала опроса планировщик проверяет полноту MPPS и отправляет IAN. Это можно проверить по запланированному времени задачи IAN, началу работы планировщика IAN и времени отправки соответствующего IAN. Проверьте в окне инструмента ianscp, что получено уведомление Instance Availability Notification. Пример журналов на стороне архива для этого варианта использования

11:30:51,867 INFO  [org.dcm4chee.arc.ian.scu.IANScheduler] (EE-ManagedExecutorService-default-Thread-6) DCM4CHEE<-MPPSSCU(5): 
Created IanTask[pk=10, deviceName=dcm4chee-arc, mppsInstanceUID=2.25.283448069981433108367525709744139201854, 
scheduledTime=Tue Mar 10 11:31:51 CET 2020]
..............
..............
11:31:04,971 INFO  [org.dcm4chee.arc.ian.scu.IANScheduler] (EE-ManagedScheduledExecutorService-default-Thread-3) start 
IANScheduler.execute()
11:31:04,995 INFO  [org.dcm4chee.arc.ian.scu.IANScheduler] (EE-ManagedScheduledExecutorService-default-Thread-3) Check 
availability of MPPS[pk=40, uid=2.25.283448069981433108367525709744139201854, studyInstanceUID=1.2.840.113674.1335.106.200, 
status=COMPLETED]
11:31:05,006 INFO  [org.dcm4chee.arc.ian.scu.IANScheduler] (EE-ManagedScheduledExecutorService-default-Thread-3) Schedule 
IanTask[pk=10, deviceName=dcm4chee-arc, mppsInstanceUID=2.25.283448069981433108367525709744139201854, 
scheduledTime=2020-03-10 11:31:51.859]
11:31:05,038 INFO  [org.dcm4chee.arc.qmgt.impl.QueueManagerEJB] (EE-ManagedScheduledExecutorService-default-Thread-3) 
Schedule Task[id=ID:3f198e8f-62ba-11ea-a51c-c465169b5497] at Queue IANSCU
11:31:05,114 INFO  [org.dcm4chee.arc.ian.scu.IANScheduler] (EE-ManagedScheduledExecutorService-default-Thread-3) finished 
IANScheduler.execute()
11:31:05,145 INFO  [org.dcm4chee.arc.qmgt.impl.QueueManagerEJB] (Thread-13 (ActiveMQ-client-global-threads)) Start 
processing Task[id=ID:3f198e8f-62ba-11ea-a51c-c465169b5497] from Queue IANSCU with Status: SCHEDULED
11:31:05,181 INFO  [org.dcm4che3.net.Connection] (Thread-13 (ActiveMQ-client-global-threads)) Initiate connection from 
/0.0.0.0:0 to localhost:11117
11:31:05,184 INFO  [org.dcm4che3.net.Connection] (Thread-13 (ActiveMQ-client-global-threads)) Established connection 
Socket[addr=localhost/127.0.0.1,port=11117,localport=58759]
11:31:05,184 INFO  [org.dcm4che3.net.Association] (Thread-13 (ActiveMQ-client-global-threads)) DCM4CHEE->IANSCP(6) << A-ASSOCIATE-RQ
11:31:05,251 INFO  [org.dcm4che3.net.Association] (EE-ManagedExecutorService-default-Thread-9) DCM4CHEE->IANSCP(6) >> A-ASSOCIATE-AC
11:31:05,251 INFO  [org.dcm4che3.net.Dimse] (Thread-13 (ActiveMQ-client-global-threads)) DCM4CHEE->IANSCP(6) << 1:N-CREATE-RQ[pcid=1
  cuid=1.2.840.10008.5.1.4.33 - Instance Availability Notification SOP Class
  iuid=2.25.100257876498806151984262827556432404898 - ?
  tsuid=1.2.840.10008.1.2 - Implicit VR Little Endian]
11:31:05,360 INFO  [org.dcm4che3.net.Dimse] (EE-ManagedExecutorService-default-Thread-9) DCM4CHEE->IANSCP(6) >> 1:N-CREATE-RSP[pcid=1, status=0H
  cuid=1.2.840.10008.5.1.4.33 - Instance Availability Notification SOP Class
  iuid=2.25.100257876498806151984262827556432404898 - ?
  tsuid=1.2.840.10008.1.2 - Implicit VR Little Endian]
11:31:05,361 INFO  [org.dcm4che3.net.Association] (Thread-13 (ActiveMQ-client-global-threads)) DCM4CHEE->IANSCP(6) << A-RELEASE-RQ
11:31:05,362 INFO  [org.dcm4che3.net.Association] (EE-ManagedExecutorService-default-Thread-9) DCM4CHEE->IANSCP(6) >> A-RELEASE-RP
11:31:05,362 INFO  [org.dcm4che3.net.Association] (EE-ManagedExecutorService-default-Thread-9) DCM4CHEE->IANSCP(6): close 
Socket[addr=localhost/127.0.0.1,port=11117,localport=58759]
11:31:05,374 INFO  [org.dcm4chee.arc.qmgt.impl.QueueManagerEJB] (Thread-13 (ActiveMQ-client-global-threads)) Finished 
processing of Task[id=ID:3f198e8f-62ba-11ea-a51c-c465169b5497] at Queue IANSCU with Status COMPLETED