The code works well on my private laptop in a public network.
In the hospital I need to be able to set, besides the MoveDestinationAETitle, the StoragePort as in Slicers DICOM Query/Retrieve dialog here (11112)
The query works from the dialog window in hospital (using our local PACS access data), but access negotiations fail from the snippet. I think it is because the StoragePort needs to be defined in the python code because the PACS is configured to write to 11112
Perhaps you have the same issue as discussed in this thread? @Amy_Morton also links to some documentation that helped explain the various requirements.
it turned out that setting the āMove Storage Portā is not necessary but it was required to use setCallingAETitle, setCalledAETitle, setHost, setPort in the dicomRetrieve class to make this work with our GEPACS.
So I changed the code from the repository (@lassoan maybe update?) to:
Thanks for pointing out this inconsistency. The preferred way would be to use dicomRetrieve.callingAETitle = dicomQuery.callingAETitle since both classes have those values exposed as properties, but only ctkDICOMRetrieve exposes the Q_INVOKABLE versions. Probably at this point we should add Q_INVOKABLE to the corresponding methods in ctkDICOMQuery for consistency, but properties are usually better to use if where they exist.