# EXPERIMENTAL minimum configuration file for integrating with any DICOM 3.0 compliant PACS (C-FIND, C-MOVE and C-STORE).


server.port=80
server.servlet.session.timeout=60
server.compression.enabled=true
server.compression.mime-types=application/octet-stream


com.softneta.thumbnails.ffMpegExecutable=${com.softneta.meddream.configRoot}/sys/ffmpeg/ffmpeg.exe


authentication.manager.username=admin
authentication.manager.password=


spring.profiles.include=auth-inmemory
authentication.inmemory.users[0].userName=demoadmin
authentication.inmemory.users[0].password=demoadmin
authentication.inmemory.users[1].userName=gabriel
authentication.inmemory.users[1].password=levi
#authentication.inmemory.users[2].userName=USER2
#authentication.inmemory.users[2].password=USER2
#authentication.inmemory.users[3].userName=USER3
#authentication.inmemory.users[3].password=USER3
authorization.users[0].userName=demoadmin
authorization.users[0].role=ADMIN,VIEW_PRIVATE,SEARCH,PATIENT_HISTORY,DOCUMENT_VIEW,REPORT_UPLOAD,DOCUMENT_VIEW,FORWARD
authorization.users[0].accessibleStorages=ORC_North,ORC_South
#authorization.users[0].role=ADMIN,VIEW_PRIVATE,SEARCH,PATIENT_HISTORY,UPLOAD_DICOM_LIBRARY,EXPORT_ISO,EXPORT_ARCH,FORWARD,REPORT_UPLOAD,3D_RENDERING,DOCUMENT_VIEW
authorization.users[1].userName=gabriel
authorization.users[1].role=VIEW_PRIVATE,SEARCH,PATIENT_HISTORY,DOCUMENT_VIEW,EXPORT_ISO,EXPORT_ARCH
authorization.users[0].accessibleStorages=ORC_North,ORC_South
#authorization.users[2].userName=USER2
#authorization.users[2].role=VIEW_PRIVATE,SEARCH,PATIENT_HISTORY,DOCUMENT_VIEW,REPORT_UPLOAD
#authorization.users[3].userName=USER3
#authorization.users[3].role=VIEW_PRIVATE,SEARCH,PATIENT_HISTORY,DOCUMENT_VIEW


#spring.profiles.include=auth-his,auth-inmemory
#spring.profiles.include=auth-his
#authentication.his.token-service-address=http://127.0.0.1:8088/v1/validate
#authentication.his.valid-his-params=study
#authentication.his.valid-his-params=accnum
#authentication.his.valid-his-params[0]=patient,accnum
#authentication.his.valid-his-params=patient
#authentication.his.valid-his-params=file
#authentication.his.useSameSession=true
#authentication.his.patient-integration-open-studies=false

##### HIS integration
# This is the legacy unsafe integration. Supported URL parameters are:
#    study -- comma-separated values, will open all specified studies at once. Failure if more than .maxObjects values are specified;
#    accnum -- single value, will open resulting studies at once (failure if more than .maxObjects entries are found);
#    patient -- single value, will open resulting studies at once *in the Viewer* (failure if more than .maxObjects entries are found);
#    patient,accnum -- single value for each, will open resulting studies at once  (failure if more than .maxObjects entries are found);
#    file -- comma-separated values, will open resulting studies at once. Failure if more than .maxObjects values are specified or found. Supported only by the FileSystem plugin.
# The legacy "token" parameter is *not supported*. See a separate document, Integration Manual, for a *new* token-based integration that has more features.
#spring.profiles.include=auth-his,auth-inmemory
#spring.profiles.include=auth-his
##authentication.his.token-service-address=http://127.0.0.1:8088/v1/validate
#authentication.his.valid-his-params=study
#authentication.his.valid-his-params=accnum
#authentication.his.valid-his-params[0]=patient,accnum
#authentication.his.valid-his-params=patient
#authentication.his.valid-his-params=file
#authentication.his.maxObjects=1
#authorization.defaultHisPermissions=VIEW_PRIVATE,SEARCH,PATIENT_HISTORY,REPORT_VIEW

# Allow adding studies from insecure HIS integration to an existing HIS integration session.
# Default value: false
#authentication.his.useSameSession=true

# Default user name for HIS sessions (current tokens do not support passing the identity).
#Default value: his-user
#authentication.his.username=his-user


##### Reporting
# Maximum size of a single attachment file, and maximum size of all files when attaching more than one at once.
#spring.servlet.multipart.max-file-size=1MB
#spring.servlet.multipart.max-request-size=10MB


logging.level.ROOT=DEBUG
#logging.level.com.softneta=INFO
logging.file.name=meddream


com.softneta.dicom.library.upload.anonymized=true


com.softneta.dicomStoreService.localAETitle=MEDDREAM
com.softneta.dicomStoreService.port=11116
com.softneta.dicomStoreService.saveURIDirectory=file:///C:/MDPACK/MedDream/temp/STORE
com.softneta.dicomStoreService.acceptAETitles=DCMSND,SENDTOPACS,TESTSERVER,TESTSERVER2,DEVELOPER,PDSIARC322,PDSIARC522
# If true preparation will be started for the received dicom file
com.softneta.dicomStoreService.prepareReceivedFile=true
# Enables cache files preparation. If disabled preparation jobs are created but not executed.
com.softneta.preparation.enabled=true
# If 'true' cache will be persisted to file system and restored after server restart
com.softneta.preparation.persistCache=true

com.softneta.preparation.multiFrameThreadTimeoutSeconds=300


com.softneta.tempCleaner.cleanRateMilliSec=1800000

com.softneta.tempCleaner.tempItems[0].directory=${com.softneta.meddream.tempDir}/archive
com.softneta.tempCleaner.tempItems[0].pattern=*
com.softneta.tempCleaner.tempItems[0].olderThanSec=7200

com.softneta.tempCleaner.tempItems[1].directory=${com.softneta.meddream.tempDir}
com.softneta.tempCleaner.tempItems[1].pattern=*_export
com.softneta.tempCleaner.tempItems[1].olderThanSec=21600
com.softneta.tempCleaner.tempItems[1].matchAnyDepth=false

com.softneta.tempCleaner.tempItems[2].directory=${com.softneta.meddream.tempDir}
com.softneta.tempCleaner.tempItems[2].pattern=forward_*.dcm
com.softneta.tempCleaner.tempItems[2].olderThanSec=7200
com.softneta.tempCleaner.tempItems[2].matchAnyDepth=false

com.softneta.tempCleaner.tempItems[3].directory=${com.softneta.meddream.tempDir}/3d
com.softneta.tempCleaner.tempItems[3].pattern=*
com.softneta.tempCleaner.tempItems[3].olderThanSec=7200

com.softneta.tempCleaner.tempItems[4].directory=${com.softneta.video.convertedDir}
com.softneta.tempCleaner.tempItems[4].pattern=*
com.softneta.tempCleaner.tempItems[4].olderThanSec=3600

com.softneta.tempCleaner.tempItems[5].directory=${com.softneta.preparation.cacheDir}
com.softneta.tempCleaner.tempItems[5].pattern=*
com.softneta.tempCleaner.tempItems[5].olderThanSec=604800

com.softneta.tempCleaner.tempItems[6].directory=${com.softneta.dicom.library.upload.tempDir}
com.softneta.tempCleaner.tempItems[6].pattern=*
com.softneta.tempCleaner.tempItems[6].olderThanSec=86400

# files received for QueryRetrieve plugin (uncomment ONLY if com.softneta.dicomStoreService.saveURIDirectory is configured)
# it keeps the cache for 168 hours, 7 days
com.softneta.tempCleaner.tempItems[7].directory=${com.softneta.dicomStoreService.saveURIDirectory}
com.softneta.tempCleaner.tempItems[7].pattern=*
com.softneta.tempCleaner.tempItems[7].olderThanSec=604800


#com.softneta.audit.serverHostname=192.168.1.123
#com.softneta.audit.serverPort=6514
com.softneta.audit.useTls=false
com.softneta.audit.trustStore=file:///c:/tmp/nxlog/client/cacerts.jks
com.softneta.audit.trustStorePassword={password}
com.softneta.audit.keyStore=file:///c:/tmp/nxlog/client/cacerts.jks
com.softneta.audit.keyStorePassword={password}


spring.batch.job.maxFailedJobRestarts=10


# Configure an instance of QR plugin in this element of configurations[]
com.softneta.meddream.pacs.configurations[0].type=QR
com.softneta.meddream.pacs.configurations[1].type=QR
#com.softneta.meddream.pacs.configurations[2].type=QR

# Unique ID of this plugin instance (any alphanumeric string)
com.softneta.meddream.pacs.configurations[0].id=ORC_North
com.softneta.meddream.pacs.configurations[1].id=ORC_South
#com.softneta.meddream.pacs.configurations[2].id=Network Archive

# Application Entity Title of the PACS.
# Default value: empty
com.softneta.meddream.pacs.configurations[0].remoteAET=PDSIARC322
com.softneta.meddream.pacs.configurations[1].remoteAET=PDSIARC522
#com.softneta.meddream.pacs.configurations[2].remoteAET=DEVELOPER

# Host name or IP address of the PACS.
# Default value: empty
com.softneta.meddream.pacs.configurations[0].remoteHost=192.168.52.52
com.softneta.meddream.pacs.configurations[1].remoteHost=192.168.52.52
#com.softneta.meddream.pacs.configurations[2].remoteHost=192.168.52.70

# Port of the PACS.
# Default value: empty
com.softneta.meddream.pacs.configurations[0].remotePort=5680
com.softneta.meddream.pacs.configurations[1].remotePort=5682
#com.softneta.meddream.pacs.configurations[2].remotePort=5677

# Application Entity Title of all DICOM clients implemented in this plugin instance, and destination of the C-MOVE command.
# Default value: empty
com.softneta.meddream.pacs.configurations[0].localAET=MEDDREAM
com.softneta.meddream.pacs.configurations[1].localAET=MEDDREAM
#com.softneta.meddream.pacs.configurations[2].localAET=MEDDREAM

# Expected location of files that are received from this remoteAET by Store SCP implemented in Core. Must end with a forward/back slash character.
# It is recommended to reuse saveURIDirectory (of dicomStoreService) and remoteAET (of this plugin) to minimize human errors.
# Default value: empty
com.softneta.meddream.pacs.configurations[0].cacheDir=${com.softneta.dicomStoreService.saveURIDirectory}/${com.softneta.meddream.pacs.configurations[0].remoteAET}/
com.softneta.meddream.pacs.configurations[1].cacheDir=${com.softneta.dicomStoreService.saveURIDirectory}/${com.softneta.meddream.pacs.configurations[1].remoteAET}/
#com.softneta.meddream.pacs.configurations[2].cacheDir=${com.softneta.dicomStoreService.saveURIDirectory}/${com.softneta.meddream.pacs.configurations[2].remoteAET}/

# Use STUDY level C-FIND requests. If `false`, will use the SERIES level.
# Default value: true
com.softneta.meddream.pacs.configurations[0].studyLevelRequest=true
com.softneta.meddream.pacs.configurations[1].studyLevelRequest=true
#com.softneta.meddream.pacs.configurations[2].studyLevelRequest=true

# Accept multiple modalities selected in Search window.
# If the PACS does not support multiple modalities in a query (like DCM4CHEE), then specify `false` to fail in advance.
# Default value: true
com.softneta.meddream.pacs.configurations[0].multipleModalitySupport=true
com.softneta.meddream.pacs.configurations[1].multipleModalitySupport=true
#com.softneta.meddream.pacs.configurations[2].multipleModalitySupport=true
com.softneta.meddream.pacs.configurations[0].timeout=420000
com.softneta.meddream.pacs.configurations[1].timeout=420000
#com.softneta.meddream.pacs.configurations[2].timeout=420000
com.softneta.meddream.pacs.configurations[0].retryDelay=1000
com.softneta.meddream.pacs.configurations[1].retryDelay=1000
#com.softneta.meddream.pacs.configurations[2].retryDelay=1000

# Remote AE Title for uploading annotations and KOs.
# Default value: empty
com.softneta.meddream.pacs.configurations[0].storeScpAet=PDSIARC322
com.softneta.meddream.pacs.configurations[1].storeScpAet=PDSIARC522
#com.softneta.meddream.pacs.configurations[2].storeScpAet=DEVELOPER

# IP of remote AE for uploading annotations and KOs.
# Default value: empty
com.softneta.meddream.pacs.configurations[0].storeScpIp=192.168.52.52
com.softneta.meddream.pacs.configurations[1].storeScpIp=192.168.52.52
#com.softneta.meddream.pacs.configurations[2].storeScpIp=192.168.52.70

# Port of remote AE for uploading annotations and KOs.
# Default value: empty
com.softneta.meddream.pacs.configurations[0].storeScpPort=5680
com.softneta.meddream.pacs.configurations[1].storeScpPort=5682
#com.softneta.meddream.pacs.configurations[2].storeScpPort=5677



