Posts by kakarr0t

    Thanks for pointing that out! I think we're getting somewhere now. Got past that particular error, but now getting SQL errors, not sure if they're anything to be worried about though... Thoughts or suggestions?


    I did double check that those were installed (one wasn't able to install, but your alternative worked, see below), still getting the same error dgate error:


    Option 3 does the same thing, sadly. Not sure what to make of this. I downloaded the files via :: git clone https://github.com/marcelvanherk/Conquest-DICOM-Server


    Hi Marcel, curious if you've run into this before?

    When attempting to compile/install conquest 150b, I receive this error below. The installer itself, says to ignore the errors below. However, this particular error I don't think can be ignored and prevents dgate from even running to begin with.

    "./maklinux: line 157: ./dgate: No such file or directory"


    I'm unable to proceed past this error. Any thoughts or suggestions? Thanks!



    Here's the version of Ubuntu I'm using:

    dicom.ini file, HERE. (posted separately from post above)

    Hi Marcel, we've been having a lot of intermittent "Forward failed to connect" errors for quite some time, with no apparent rhyme or reason, and it only seems to be getting worse. We archive several days worth of logs (serverstatus.log, PacsTrouble, etc). After doing a grep of these files (on 3 of our conquest servers all running CentOS and Conquest 1417e) we're able to get a tally of how often and on which days we're seeing errors in the last several days (see below). Sometimes getting these failed forwards just needs a reboot and it magically works, other times our only option is to manually delete the potentially faulty file... But we often don't know what's faulty about it because the logs don't return detailed enough information.


    We're wondering a couple things.

    1) is there a way to get better logging for when image-sends fail? We have it on debug, however, we're not actually getting a real reason why the "forward failed to connect..."

    2) do you think upgrading to Conquest 1419b will either

    a) fix some of these failure instances

         b) and/or give us better logging?

    3) do you have any other recommendations?


    We're also seeing sometimes images will be sucessfully delivered to Conquest and then no other movement or errors or logging will occur on these images... We're not sure what to make of this. I'll post the config below as well.


    Errors | forward failed to connect, HERE.



    Our dicom.ini file, posted separately.

    For reference to the above question, here's what our LUA script looks like.


    Hi Marcel, we're looking for help using the destroy command within a LUA script.
    We're configuring this in Linux, but using the windowsmanual.pdf file. The only info available that I can find is this...


    Code
    destroy ( ) Special for server events, See e.g. script ('destroy')


    What should be inside the "( )" if we're intending to get rid of some data that we don't want?


    We tried it and it gave us an error.


    Code
    Thu Mar 8 11:14:59 2018 *** lua run error lua/ic-cqus.lua:19: attempt to call global 'destroy' (a nil value) in 'dofile('lua/ic-cqus.lua')'


    I think it needs to be like destroy(filename.dcm) or something, but not sure. Thanks. --Tim

    Hi Marcel. We're having trouble getting a lua script to show us the sending device's IP address. With our current lua script, it's simply giving us 0.0.0.0. I think I saw a couple other posts where people were needing the same thing, however, I wasn't able to find a solution.


    Here's the script located at this destination: lua/ic-announcer.lua

    Code
    print ('ImportConverter0 (ic-announcer.lua) Receiving on AETitle:', Association.Called, 'from AETitle: ', Association.Calling, ' IP: ' , Association.ConnectedIP, ' Modality: ', Data.Modality, ' PatientID: ', Data.PatientID, ' PatientName: ', Data.PatientName, 'Accession: ', Data.AccessionNumber, ' StudyUID: ', Data.StudyInstanceUID, ' SeriesUID: ', Data.SeriesInstanceUID, ' SeriesNo: ', Data.SeriesNumber, ' SOPuid: ', Data.SOPInstanceUID)lua/ic-announcer.lua (END)


    And here's the output where it's printing the sending device's IP as 0.0.0.0.

    Code
    Thu Feb 8 12:11:15 2018 ImportConverter0 (ic-announcer.lua) Receiving on AETitle: CONQUESTSRV1 from AETitle: DEVICE01 IP: 0.0.0.0 Modality: DX PatientID: 123456 PatientName: PATIENTLAST^PATIENTFIRST Accession: 7891011 StudyUID: 1.
    2.840.114350.2.431.2.798268.2.46360523.1 SeriesUID: 1.3.12.2.1107.5.3.49.23739.2.201802081203410765 SeriesNo: 2 SOPuid: 1.3.12.2.1107.5.3.49.23739.12.201802081203410765GG


    Do you know how we could get the lua to show us the actual sending modality's IP address? Thanks. --Tim

    looks like it should be like this....


    instead of:

    Code
    ImportConverter6 = dofile(lua/importconverter6.lua)


    it should have these --> '

    Code
    ImportConverter6 = dofile('lua/importconverter6.lua')


    and inside of the new lua file, instead of using the # symbol for comments, it should be using "--"


    Thanks for your help. --Tim

    Ok thanks for your help.


    We've changed the dicom.ini entry to this:

    Code
    ImportConverter6 = dofile(lua/importconverter6.lua)


    Added a file under the lua folder called: lua/importconverter6.lua


    The file has this inside:

    Code
    #Separate and create unique Series with US Cine's#If called "CQUS" and SOPClassUID equals the SOPClass for US Cine's, then Obtain the last 7 characters from the SOP Instance UID(SOPSubs) and remove 10 characters from SeriesInstanceUID.#If new SeriesInstanceUID ends in a period, remove 11 characters from the original SeriesInstanceUID.#Concatinates the values from the new SeriesInstanceUID and new SOPSubs to make a unique US Cine SeriesInstanceUID.#Rename SeriesDescription to "CINE"if Association.Called == 'CQUS' and Data.SOPClassUID == '1.2.840.10008.5.1.4.1.1.3.1' then SOPSubs = string.sub(Data.SOPInstanceUID, -7) SeriesInstanceUID = string.sub(Data.SeriesInstanceUID, 1, -10) if string.byte(SeriesInstanceUID, -1) == 46 then SeriesInstanceUID = string.sub(Data.SeriesInstanceUID, 1, -11) end Data.SeriesInstanceUID = SeriesInstanceUID..SOPSubs..'.24' Data.SeriesDescription = 'CINE' print('ImportConverter6.0 received an US Cine on AETitle CQUS and has modified SeriesInstanceUID to ', Data.SeriesInstanceUID)end


    And getting this error now:

    Code
    Wed Feb 7 15:20:10 2018 *** lua run error [string "dofile(lua/importconverter6.lua)"]:1: attempt to index global 'importconverter6' (a nil value) in 'dofile(lua/importconverter6.lua)'


    Are we missing something? Thanks! --Tim

    Hi Marcel. We're on Conquest Version 1417d. Linux centOS.


    And are developing some custom LUA scripts and are wondering if you might be able to assist with why this doesn't seem to be working.


    This version currently works just fine.

    Code
    #Separate and create unique Series with US Cine's#If called "CQUS" and SOPClassUID equals the SOPClass for US Cine's, then Obtain the last 7 characters from the SOP Instance UID(SOPSubs) and remove 10 characters from SeriesInstanceUID.#If new SeriesInstanceUID ends in a period, remove 11 characters from the original SeriesInstanceUID.#Concatinates the values from the new SeriesInstanceUID and new SOPSubs to make a unique US Cine SeriesInstanceUID.ImportConverter6 = if Association.Called == 'CQUS' and Data.SOPClassUID == '1.2.840.10008.5.1.4.1.1.3.1' then SOPSubs = string.sub(Data.SOPInstanceUID, -7); SeriesInstanceUID = string.sub(Data.SeriesInstanceUID, 1, -10); if string.byte(SeriesInstanceUID, -1) == 46 then SeriesInstanceUID = string.sub(Data.SeriesInstanceUID, 1, -11) end; Data.SeriesInstanceUID = SeriesInstanceUID..SOPSubs..'.24'; print('ImportConverter6.0 received an US Cine on AETitle CQUS and has modified SeriesInstanceUID to ', Data.SeriesInstanceUID) end


    When we add in a line to rename the SeriesDescription to "CINE"
    , see near the end right before the "print" command: "Data.SeriesDescription = 'CINE';".

    Code
    #Separate and create unique Series with US Cine's#If called "CQUS" and SOPClassUID equals the SOPClass for US Cine's, then Obtain the last 7 characters from the SOP Instance UID(SOPSubs) and remove 10 characters from SeriesInstanceUID.#If new SeriesInstanceUID ends in a period, remove 11 characters from the original SeriesInstanceUID.#Concatinates the values from the new SeriesInstanceUID and new SOPSubs to make a unique US Cine SeriesInstanceUID.#Rename SeriesDescription to "CINE"ImportConverter6 = if Association.Called == 'CQUS' and Data.SOPClassUID == '1.2.840.10008.5.1.4.1.1.3.1' then SOPSubs = string.sub(Data.SOPInstanceUID, -7); SeriesInstanceUID = string.sub(Data.SeriesInstanceUID, 1, -10); if string.byte(SeriesInstanceUID, -1) == 46 then SeriesInstanceUID = string.sub(Data.SeriesInstanceUID, 1, -11) end; Data.SeriesInstanceUID = SeriesInstanceUID..SOPSubs..'.24'; Data.SeriesDescription = 'CINE'; print('ImportConverter6.0 received an US Cine on AETitle CQUS and has modified SeriesInstanceUID to ', Data.SeriesInstanceUID) end


    Here's the error we get when adding this line and sending a study that matches the ImportConverter6 requirements of CQUS

    Code
    Tue Feb 6 16:19:36 2018 *** lua syntax error [string "if Association.Called == 'CQUS' and Data.SOPClassUID == '1.2.84..."]:1: unfinished string near '<eof>' in 'if Association.Called == 'CQUS' and Data.SOPClassUID == '1.2.840.10008.5.1.4.1.1.3.1' then SOPSubs = string.sub(Data.SOPInstanceUID, -7); SeriesInstanceUID = string.sub(Data.SeriesInstanceUID, 1, -10); if string.byte(SeriesInstanceUID, -1) == 46 then SeriesInstanceUID = string.sub(Data.SeriesInstanceUID, 1, -11) end; Data.SeriesInstanceUID = SeriesInstanceUID..SOPSubs..'.24'; Data.SeriesDescription = 'CINE'; print('ImportConverter6.0 received an US Cine on AETitle CQUS and has modified SeriesInstanceUID t'


    Any thoughts on why this LUA script might be failing when we add that extra line to rename the SeriesDescription?

    Hi Marcel, we recently received some image data which was missing the MRN, DOB, Patient Name, and Gender (See below). It caused conquest to clog and not be able to process any additional images. We then attempted to delete that patient data via the DGATE command, however, that also didn't work.


    Conquest stored this data in a folder /conquest/data/unknown.


    I ended up having to manually move this patient image data to a temp directory to get Conquest moving again.


    What I would like to do is create a LUA script that automatically handles this type of problem in the future without causing any clogs.


    For instance, LUA script will look to see if these fields are empty or null...


    0010,0020 PatientID
    0010,0010 PatientName
    0010,0030 PatientBirthDate
    0010,0040 PatientSex


    If any of those fields are empty or null, then the LUA script will copy the patient image data into a temp directory, then delete the patient data out of the database via a DGATE script.


    My question is, is this possible?
    The main thing I'm unsure of is can LUA manipulate data on a file level, such as cp /conquest/data/unkown /conquest/temp/?
    Do you see any way that a script like this can be created, specifically the move part? Thanks! --Tim


    Unknown patient log in serverstatus.log


    unkown patient data dicom dump

    I think we got it.


    Code
    ImportConverter8 = if Data.StudyDescription and Data.StudyDescription:upper() ~= Data.StudyDescription then Data.StudyDescription = Data.StudyDescription:upper(); print('ImportConverter8.0 Modified StudyDescription to ', Data.StudyDescription) end; if Data.PatientName and Data.PatientName:upper() ~= Data.PatientName then Data.PatientName = Data.PatientName:upper(); print('ImportConverter8.0 Modified PatientName to ', Data.PatientName) end