Leave a comment at the end of this page or email contact@krishagni.com
How to configure Automated Freezer integration with OpenSpecimen?
OpenSpecimen can be integrated with any automated freezer and do the operation like put/retrieve specimen. To work integration need to do below configuration.
Step 1: Register auto freezer provider
We need to register provider and set properties which are used to connect with freezer.
To register provider invoke below REST API
URL | http://<host>:<port>/openspecimen/rest/ng/auto-freezer-providers |
Method | POST |
Input JSON | { "name": "Any thing that makes sense" "implClass": "Concrete Java class that implements the interface AutomatedFreezer", "props": { "prop1": "custom property1 required for the AutomatedFreezer implementation", "prop2": "custom property2 required for the AutomatedFreezer implementation", . . . } } |
Example | { "name": "Hamilton Bios", "implClass": "com.krishagni.autofreezers.hamilton.core.BiosFreezer", "props": { "url": "http://localhost:9000/api/v11/", "user": "admin", "password": "admin", "barcode_type": “ECC 200“, "job_priority": "100", "job_optimization_mode": "System", "job_destination_labware_type": "IOCassette" } } |
Step 2: Create a dimensionless storage container as autofreezer.
To create a dimensionless container specifying that container as automated freezer need to invoke below API. Once we do this step add/retrieve the specimens from this container will invoke APIs of the actual automated freezer.
URL | http://<host>:<port>/openspecimen/rest/ng/storage-containers/{id} |
Method | POST |
Request | { "name": "BiOS_Instrument", "displayName": "BiOS_Instrument", "usedFor": "STORAGE", "activityStatus": "Active", "siteName": "RTOG", "positionLabelingMode": "NONE", "positionAssignment": "HZ_TOP_DOWN_LEFT_RIGHT", "columnLabelingScheme": "Numbers", "rowLabelingScheme": "Numbers", "storeSpecimensEnabled": true, "automated": true, "autoFreezerProvider": "Hamilton Bios", "allowedCollectionProtocols": [], "calcAllowedCollectionProtocols": [], "temperature": -80, "cellDisplayProp": "SPECIMEN_LABEL", "allowedSpecimenClasses": [], "calcAllowedSpecimenClasses": [ "Tissue", "Fluid", "Molecular", "Cell" ], "allowedSpecimenTypes": [], "calcAllowedSpecimenTypes": [], "allowedDistributionProtocols": [], "calcAllowedDistributionProtocols": [], "occupiedPositions": [], "printLabels": false } |
Response: | { "opComments": null, "id": 1, "name": "BiOS_Instrument", "barcode": null, "displayName": "BiOS_Instrument", "typeId": null, "typeName": null, "usedFor": "STORAGE", "activityStatus": "Active", "siteName": "RTOG", "storageLocation": null, "createdBy": { "id": 2, "type": "SUPER", "firstName": "System", "lastName": "Administrator", "loginName": "admin", "domain": "openspecimen", "emailAddress": "admin@localhost", "instituteId": 1, "instituteName": "Biobank Institute", "admin": true, "instituteAdmin": false, "manageForms": false, "manageWfs": true, "downloadLabelsPrintFile": false, "cpCount": 0, "activityStatus": "Active" }, "noOfColumns": null, "noOfRows": null, "positionLabelingMode": "NONE", "positionAssignment": "HZ_TOP_DOWN_LEFT_RIGHT", "columnLabelingScheme": "Numbers", "rowLabelingScheme": "Numbers", "freePositions": null, "usedPositions": null, "storeSpecimensEnabled": true, "capacity": null, "storedSpecimens": null, "automated": true, "autoFreezerProvider": "Hamilton Bios", "allowedCollectionProtocols": [], "calcAllowedCollectionProtocols": [], "childContainers": null, "starred": null, "status": null, "blockedLocation": null, "freezerId": null, "freezerName": null, "freezerBarcode": null, "freezerDisplayName": null, "temperature": -80, "cellDisplayProp": "SPECIMEN_LABEL", "comments": null, "extensionDetail": null, "allowedSpecimenClasses": [], "calcAllowedSpecimenClasses": [ "Tissue", "Fluid", "Molecular", "Cell" ], "allowedSpecimenTypes": [], "calcAllowedSpecimenTypes": [], "allowedDistributionProtocols": [], "calcAllowedDistributionProtocols": [], "occupiedPositions": [], "specimensByType": null, "printLabels": false } |
Enabling Store/Pick event notifications:
Steps:
- Login to Hamilton UI.
- Navigate to settings.
- Enable JOB Status Notification.
- Add JOB Status Notification endpoint: <app_url>/rest/ng/bios-notifs e.g. https://test.openspecimen.org/rest/ng/bios-notifs
After enabling this, OpenSpecimen shows the Store and Pick event ran on the Hamilton side on stored specimen overview page.
An e.g.
Leave a comment at the end of this page or email contact@krishagni.com