Conquest as router

  • Hi,


    we have a Problem with the Conquest Server (150D).


    We want to use the Server to recive DICOM an RT Data vorm 2 Servers A and B and send the data to some other Servers C and D.

    I have try many things in the dicom.ini file, sometimes i get the CT pictures on Server C and D but never get also the Dicom File with the RT Data.

    May you could help me, here is the Dicom.ini file:


    [sscscp]

    MicroPACS = sscscp


    # Network configuration: server name and TCP/IP port#

    MyACRNema = CONQUESTSRV1

    TCPPort = 5678


    # Host, database, username and password for database

    SQLHost = localhost

    SQLServer = C:\temp\150d\dicomserver150d\Data\dbase\conquest.db3

    Username =

    Password =

    SqLite = 1

    DoubleBackSlashToDB = 0

    UseEscapeStringConstants = 0


    # Configure server

    ImportExportDragAndDrop = 1

    ZipTime = 05:

    UIDPrefix = 1.2.826.0.1.3680043.2.135.738715.48258851

    EnableComputedFields = 1


    FileNameSyntax = 4


    # Configuration of compression for incoming images and archival

    DroppedFileCompression = un

    IncomingCompression = un

    ArchiveCompression = as


    # For debug information

    PACSName = CONQUESTSRV1

    OperatorConsole = 127.0.0.1

    DebugLevel = 0


    # Configuration of disk(s) to store images

    MAGDeviceFullThreshold = 30

    MAGDevices = 1

    MAGDevice0 = d:\conquest\


    # Configuration of forwarding and/or converter programs to export DICOM slices

    ForwardAssociationLevel = GLOBAL

    ForwardAssociationCloseDelay = 5

    ForwardAssociationRefreshDelay = 3600

    DelayedForwarderThreads = 1

    ExportConverters = 2

    ExportModality0 = *

    ExportConverter0 = forward to "Server A" after 10;

    ExportModality1 = *

    ExportConverter1 = forward to "Server B" after 10;


    CU

    Ralf

  • Ralf0815

    Changed the title of the thread from “Canquest as router” to “Conquest as router”.
  • Hi,


    there can be no spaces in an AE, furthermore start with all defaults, i.e.,

    Code
    # Configuration of forwarding and/or converter programs to export DICOM slices
    ExportConverters = 2
    ExportConverter0 = forward to ServerA after 10
    ExportConverter1 = forward to ServerB after 10

    Conquest is very particular about its syntax, use exactly what is stated in the manual. Make sure ServerA and ServerB are defined in ACRNEMA.MAP.


    Hope this helps,


    Marcel

  • Hi Marcel,


    thanks for your answer, sorry yes the AE is a name without spaces.


    Here is my ACRNEMA.MAP:



    CONQUESTSRV1 10.X.X.X 5678 un

    ServerA 10.X.X.X 104 un

    ServerB 10.X.X.X 32321 un

    ServerC 10.X.X.X 10001 un

    ServerD 10.X.X.X 5678 un

    V* * 1234 un

    W* * 666 un

    S* * 5678 un

  • The Ip`are naturally without a X (i don`t want to show the real names and IP Adresses in the web).

    The Server Name is only Letters and Numbers without Space.


    I try also this :


    # Configuration of forwarding and/or converter programs to export DICOM slices

    ForwardAssociationLevel = SERIES

    ForwardAssociationRefreshDelay = 3600

    VirtualServerFor0 = ServerA

    VirtualServerFor1 = ServerB


    but with the Dicom files come to the Conquest Server, but the Conquest did not send anything forward

    In Fact i don`t want to Change anything in the Date only recive and send it without any change.

  • i had change to SERIES, but still the same Problem.

    Here is my dicom.ini so far :


    [sscscp]

    MicroPACS = sscscp


    # Network configuration: server name and TCP/IP port#

    MyACRNema = CONQUESTSRV1

    TCPPort = 5678


    # Host, database, username and password for database

    SQLHost = localhost

    SQLServer = C:\temp\150d\dicomserver150d\Data\dbase\conquest.db3

    Username =

    Password =

    SqLite = 1

    DoubleBackSlashToDB = 0

    UseEscapeStringConstants = 0


    # Configure server

    ImportExportDragAndDrop = 1

    ZipTime = 05:

    UIDPrefix = 1.2.826.0.1.3680043.2.135.738715.48258851

    EnableComputedFields = 1


    FileNameSyntax = 4


    # Configuration of compression for incoming images and archival

    DroppedFileCompression = un

    IncomingCompression = un

    ArchiveCompression = as


    # For debug information

    PACSName = CONQUESTSRV1

    OperatorConsole = 127.0.0.1

    DebugLevel = 0


    # Configuration of disk(s) to store images

    MAGDeviceFullThreshold = 30

    MAGDevices = 1

    MAGDevice0 = d:\conquest\


    # Configuration of forwarding and/or converter programs to export DICOM slices

    ForwardAssociationLevel = SERIES

    ForwardAssociationCloseDelay = 5

    ForwardAssociationRefreshDelay = 3600

    DelayedForwarderThreads = 1

    ExportConverters = 2

    ExportModality0 = *

    ExportConverter0 = forward to veriqascp2 after 10;

    ExportModality1 = *

    ExportConverter1 = forward to Mobius3d after 10;



    and here my acrnema.map:


    CONQUESTSRV1 10.27.17.216 5678 un

    Mobius3d 10.60.0.10 104 un

    veriqascp2 10.60.0.17 32321 un

    VMSSFN02.HAP1053.onprem.varian.com 10.60.1.165 10001 un

    VMSSFN03.HAP1053.onprem.varian.com 10.60.1.166 5678 un

    V* * 1234 un

    W* * 666 un

    S* * 5678 un


    here a Part from the LOG


    [CONQUESTSRV1] ExportConverter1.0: forward d:\conquest\06871313\1.2.840.113704.1.111.8160.1690371341.14_0002_000046_16945196570089.dcm to Mobius3d

    [CONQUESTSRV1] ExportConverter0.0: forward d:\conquest\06871313\1.2.840.113704.1.111.8160.1690371341.14_0002_000046_16945196570089.dcm to veriqascp2


    best regarts

    Ralf

  • And there is no log entry for RTSTRUCT or RTPLAN?


    In any case, the correct form of the statement is simply:


    # Configuration of forwarding and/or converter programs to export DICOM slices

    ForwardAssociationLevel = SERIES

    ExportConverters = 2

    ExportConverter0 = forward to veriqascp2

    ExportConverter1 = forward to Mobius3d


    The semicolon is only used if you have multiple statements, the after clause only for delayed export by e.g. series. This may be the problem, use only exactly the syntax as stated in the manual. Conquest is not very forgiving.


    Marcel

  • Forwarding works fine for me. But conquest also keeps a local copy under MAGDevice0. Local copy is not needed.


    As FYI, we modify header as shown in ImageConverters below for our integration purposes.


    dicom.ini (trimmed):


    MAGDevice0 = /data

    ForwardAssociationLevel = GLOBAL

    ExportConverters = 1

    ExportConverter0 = forward to RECVROUTER



    [lua]

    ImportConverters=2

    ImportConverter0 = Data.PatientID = "KEY1" .. Data.PatientID

    ImportConverter1 = Data.AccessionNumber = "KEY1" .. Data.AccessionNumber


    DICOM header modification works. Forwarding works. destroy command does not work with ExportConverter or ImportConverter. How to configure dicom.ini to automatically remove local copy in MAGDevice0 after successfully pushing out data to receiver (RECVROUTER) ?


    Conquest info:

    DGATE (1.5.0d, build Mon Aug 19 16:39:34 2024, bits 64) is running as threaded server

    Database type: NULL driver (black hole)

  • Hi,


    destroy only works with ImportConverter, that runs before the files are saved. The easiest way to avoid a local copy is to use 'forward' in an ImportConverter, and use destroy as the last ImportConverter.


    Marcel

  • Commented out export section

    #ForwardAssociationLevel = GLOBAL

    #ExportConverters = 1

    #ExportConverter0 = forward to RECVROUTER



    [lua]

    ImportConverters=3

    ImportConverter0 = Data.PatientID = "KEY1" .. Data.PatientID

    ImportConverter1 = Data.AccessionNumber = "KEY1" .. Data.AccessionNumber

    ImportConverter2 = forward to RECVROUTER; destroy


    Did not work. I even tried with "ImportConverter2 = forward to RECVROUTER; destroy; "


    Error:

    *** lua syntax error [string "forward to RECVROUTER; destroy"]:1: '=' expected near 'to' in 'forward to RECVROUTER; destroy'


    I tried:

    ImportConverter2 = forward to RECVROUTER

    ImportConverter3 = destroy


    Error:

    *** lua syntax error [string "forward to RECVROUTER"]:1: '=' expected near 'to' in 'forward to RECVROUTER'

    *** lua syntax error [string "destroy"]:1: '=' expected near '<eof>' in 'destroy'


    Anything wrong with syntax? forward seems to work only with ExportConverter.

  • Sorry for the earlier post. I just had the statements in the wrong section. It worked with the following setup in dicom.ini. Now I can have the modified DICOM header and forward and not have a local copy. No ExportConverter defined.


    ForwardAssociationLevel = GLOBAL


    ImportConverters=3

    ImportConverter2 = forward to RECVROUTER; destroy


    [lua]

    ImportConverter0 = Data.PatientID = "KEY1" .. Data.PatientID

    ImportConverter1 = Data.AccessionNumber = "KEY1" .. Data.AccessionNumber

  • Hi


    Problem:: AE based Routing


    Scenario:: Server A and Server B. Conquest is sitting between both of them as router. When Server A send studies it should be forwarded to Server B and when Server B send it should be forwarded to Server A.


    I tried to use import convertor but it didn't work for me using if clause.


    Can you please guide.

  • Hi,


    you have to check that the sender is not server A when forwarding to server A drom server B and vice versa. By heart:


    In server A:


    ExportConverters = 1

    ExportConverter0 = ifnotequal "%c","SERVERB"; forward to SERVERB


    In server B:


    ExportConverters = 1

    ExportConverter0 = ifnotequal "%c","SERVERA"; forward to SERVERA


    %c expands to the calling server AE (check the manual please)


    Marcel

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!