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

Обзор

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

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

Настройка

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

ИЛИ - Через 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

Проверка

Получены все указанные объекты

  1. Отправьте запрос MPPS для исследования

      mppsscu -c DCM4CHEE@localhost:11112 /pathToStudy
    
  2. Запустите IANSCP

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

      storescu -c DCM4CHEE@localhost:11112 /pathToStudy
    

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

Получена только часть указанных объектов

  1. Отправьте запрос MPPS для исследования

      mppsscu -c DCM4CHEE@localhost:11112 /pathToStudy
    
  2. Запустите IANSCP

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

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

После истечения настроенного интервала опроса и IAN Timeout проверьте в окне инструмента ianscp, что получено уведомление Instance Availability Notification. Также в журналах на стороне архива можно увидеть сообщение WARN:

17:19:31,023 WARN  [org.dcm4chee.arc.ian.scu.IANScheduler] (EE-ManagedScheduledExecutorService-default-Thread-7) Timeout 
for IanTask[pk=7, deviceName=dcm4chee-arc, mppsInstanceUID=2.25.252633828717293194269690210345411940655, scheduledTime=2020-03-09 17:19:06.409] 
exceeded - schedule IAN for available instances

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

  1. Отправьте запрос MPPS для исследования

      mppsscu -c DCM4CHEE@localhost:11112 /pathToStudy
    
  2. Запустите IANSCP

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

      storescu -c DCM4CHEE@localhost:11112 /pathToStudy
    

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

11:12:09,023 INFO  [org.dcm4chee.arc.ian.scu.IANScheduler] (EE-ManagedExecutorService-default-Thread-5) DCM4CHEE<-MPPSSCU(1): 
Created IanTask[pk=9, deviceName=dcm4chee-arc, mppsInstanceUID=2.25.316612971090743533821318144748315192179, 
scheduledTime=Tue Mar 10 11:13:09 CET 2020]
..............
..............
11:13:04,527 INFO  [org.dcm4chee.arc.ian.scu.IANScheduler] (EE-ManagedScheduledExecutorService-default-Thread-9) start 
IANScheduler.execute()
11:13:04,578 INFO  [org.dcm4chee.arc.ian.scu.IANScheduler] (EE-ManagedScheduledExecutorService-default-Thread-9) Check 
availability of MPPS[pk=39, uid=2.25.316612971090743533821318144748315192179, studyInstanceUID=1.2.840.113674.1335.106.200, 
status=COMPLETED]
11:13:04,599 INFO  [org.dcm4chee.arc.ian.scu.IANScheduler] (EE-ManagedScheduledExecutorService-default-Thread-9) Schedule 
IanTask[pk=9, deviceName=dcm4chee-arc, mppsInstanceUID=2.25.316612971090743533821318144748315192179, 
scheduledTime=2020-03-10 11:13:09.015]
11:13:04,710 INFO  [org.dcm4chee.arc.qmgt.impl.QueueManagerEJB] (EE-ManagedScheduledExecutorService-default-Thread-9) 
Schedule Task[id=ID:bb2c6efa-62b7-11ea-a51c-c465169b5497] at Queue IANSCU
11:13:04,764 INFO  [org.dcm4chee.arc.ian.scu.IANScheduler] (EE-ManagedScheduledExecutorService-default-Thread-9) 
finished IANScheduler.execute()
11:13:04,801 INFO  [org.dcm4chee.arc.qmgt.impl.QueueManagerEJB] (Thread-12 (ActiveMQ-client-global-threads)) Start 
processing Task[id=ID:bb2c6efa-62b7-11ea-a51c-c465169b5497] from Queue IANSCU with Status: SCHEDULED
11:13:04,815 INFO  [org.dcm4che3.net.Connection] (Thread-12 (ActiveMQ-client-global-threads)) Initiate connection from 
/0.0.0.0:0 to localhost:11117
11:13:04,816 INFO  [org.dcm4che3.net.Connection] (Thread-12 (ActiveMQ-client-global-threads)) Established connection 
Socket[addr=localhost/127.0.0.1,port=11117,localport=51565]
11:13:04,817 INFO  [org.dcm4che3.net.Association] (Thread-12 (ActiveMQ-client-global-threads)) DCM4CHEE->IANSCP(3) << A-ASSOCIATE-RQ
11:13:04,863 INFO  [org.dcm4che3.net.Association] (EE-ManagedExecutorService-default-Thread-7) DCM4CHEE->IANSCP(3) >> A-ASSOCIATE-AC
11:13:04,864 INFO  [org.dcm4che3.net.Dimse] (Thread-12 (ActiveMQ-client-global-threads)) DCM4CHEE->IANSCP(3) << 1:N-CREATE-RQ[pcid=1
  cuid=1.2.840.10008.5.1.4.33 - Instance Availability Notification SOP Class
  iuid=2.25.334780248116221015257243059289974336611 - ?
  tsuid=1.2.840.10008.1.2 - Implicit VR Little Endian]
11:13:04,920 INFO  [org.dcm4che3.net.Dimse] (EE-ManagedExecutorService-default-Thread-7) DCM4CHEE->IANSCP(3) >> 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.334780248116221015257243059289974336611 - ?
  tsuid=1.2.840.10008.1.2 - Implicit VR Little Endian]
11:13:04,920 INFO  [org.dcm4che3.net.Association] (Thread-12 (ActiveMQ-client-global-threads)) DCM4CHEE->IANSCP(3) << A-RELEASE-RQ
11:13:04,921 INFO  [org.dcm4che3.net.Association] (EE-ManagedExecutorService-default-Thread-7) DCM4CHEE->IANSCP(3) >> A-RELEASE-RP
11:13:04,921 INFO  [org.dcm4che3.net.Association] (EE-ManagedExecutorService-default-Thread-7) DCM4CHEE->IANSCP(3): close 
Socket[addr=localhost/127.0.0.1,port=11117,localport=51565]
11:13:04,927 INFO  [org.dcm4chee.arc.qmgt.impl.QueueManagerEJB] (Thread-12 (ActiveMQ-client-global-threads)) Finished 
processing of Task[id=ID:bb2c6efa-62b7-11ea-a51c-c465169b5497] at Queue IANSCU with Status COMPLETED