Skip to content

Commit

Permalink
Merge pull request #15725 from CDCgov/flexion/add-automated-test-org-…
Browse files Browse the repository at this point in the history
…settings

Add sender and receiver settings for TI automated staging test
  • Loading branch information
basiliskus authored Oct 1, 2024
2 parents b9f2d0d + 50528ce commit eb84e75
Show file tree
Hide file tree
Showing 6 changed files with 68 additions and 20 deletions.
2 changes: 1 addition & 1 deletion prime-router/settings/STLTs/AL/al-phl.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
jurisdictionalFilter:
- "Bundle.entry.resource.ofType(MessageHeader).event.code = 'O21'" # OML_O21
- "Bundle.entry.resource.ofType(MessageHeader).meta.tag.where(system = 'http://localcodes.org/ETOR').code = 'ETOR'" # required to avoid looping issue with TI
- "Bundle.entry.resource.ofType(MessageHeader).destination.receiver.resolve().identifier.where(value = '2.16.840.1.114222.4.3.26.1.1').exists()" # receiver routing filter
- "Bundle.entry.resource.ofType(MessageHeader).destination.receiver.resolve().identifier.where(extension.value = 'HD.2,HD.3').value = '2.16.840.1.114222.4.3.26.1.1'" # receiver routing filter (MSH-6.2)
qualityFilter:
- "true"
timing:
Expand Down
5 changes: 3 additions & 2 deletions prime-router/settings/STLTs/CA/ucsd.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,9 @@
jurisdictionalFilter:
- "Bundle.entry.resource.ofType(MessageHeader).event.code = 'R01'" # ORU_R01
- "Bundle.entry.resource.ofType(MessageHeader).meta.tag.where(system = 'http://localcodes.org/ETOR').code = 'ETOR'" # required to avoid looping issue with TI
- "Bundle.entry.resource.ofType(MessageHeader).sender.resolve().identifier.where(value = 'CDPH').exists()" # sender routing filter
- "Bundle.entry.resource.ofType(DiagnosticReport)[0].basedOn.resolve().requester.resolve().organization.resolve().extension.where(url = 'https://reportstream.cdc.gov/fhir/StructureDefinition/xon-organization').extension.where(url = 'XON.10').value in ('R797' | 'R508')" # receiver routing filter
- "Bundle.entry.resource.ofType(MessageHeader).sender.resolve().identifier.where(value = 'CDPH').exists()" # sender routing filter (MSH-4.1)
- "Bundle.entry.resource.ofType(MessageHeader).destination.receiver.resolve().identifier.where(extension.value = 'HD.1').value in ('R797' | 'R508')" # receiver routing filter (MSH-6.1)
- "Bundle.identifier.value.contains('AUTOMATEDTEST-').not()" # exclude flexion automated test messages (MSH-10)
qualityFilter:
- "true"
timing:
Expand Down
57 changes: 55 additions & 2 deletions prime-router/settings/STLTs/Flexion/flexion.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,12 @@
topic: "etor-ti"
customerStatus: "active"
format: "HL7"
# Sender used for automated tests in staging
- name: "automated-staging-test-sender"
organizationName: "flexion"
topic: "etor-ti"
customerStatus: "active"
format: "HL7"
receivers:
# ETOR Service Receiver for orders - Routes ORM_O01 and OML_O21 FHIR orders to TI orders endpoint
- name: "etor-service-receiver-orders"
Expand Down Expand Up @@ -129,7 +135,7 @@
jurisdictionalFilter:
- "Bundle.entry.resource.ofType(MessageHeader).event.code = 'R01'" # ORU_R01
- "Bundle.entry.resource.ofType(MessageHeader).meta.tag.where(system = 'http://localcodes.org/ETOR').code = 'ETOR'" # required to avoid looping issue
- "Bundle.entry.resource.ofType(MessageHeader).destination.receiver.resolve().identifier.where(value = 'simulated-hospital-id').exists()" # receiver routing filter
- "Bundle.entry.resource.ofType(MessageHeader).destination.receiver.resolve().identifier.where(extension.value = 'HD.2,HD.3').value = 'simulated-hospital-id'" # receiver routing filter (MSH-6.2)
qualityFilter:
- "true"
timing:
Expand All @@ -155,7 +161,7 @@
jurisdictionalFilter:
- "Bundle.entry.resource.ofType(MessageHeader).event.code = 'O21'" # OML_O21
- "Bundle.entry.resource.ofType(MessageHeader).meta.tag.where(system = 'http://localcodes.org/ETOR').code = 'ETOR'" # required to avoid looping issue
- "Bundle.entry.resource.ofType(MessageHeader).destination.receiver.resolve().identifier.where(value = 'simulated-lab-id').exists()" # receiver routing filter
- "Bundle.entry.resource.ofType(MessageHeader).destination.receiver.resolve().identifier.where(extension.value = 'HD.2,HD.3').value = 'simulated-lab-id'" # receiver routing filter (MSH-6.2)
qualityFilter:
- "true"
timing:
Expand All @@ -173,3 +179,50 @@
port: 22
filePath: "./upload"
credentialName: null # use "DEFAULT-SFTP" if running locally
- name: "automated-staging-test-receiver-orders"
organizationName: "flexion"
topic: "etor-ti"
customerStatus: "active"
jurisdictionalFilter:
- "(Bundle.entry.resource.ofType(MessageHeader).event.code = 'O01') or (Bundle.entry.resource.ofType(MessageHeader).event.code = 'O21')" # ORM_O01 or OML_O21
- "Bundle.entry.resource.ofType(MessageHeader).meta.tag.where(system = 'http://localcodes.org/ETOR').code = 'ETOR'" # required to avoid looping issue
- "Bundle.entry.resource.ofType(MessageHeader).destination.receiver.resolve().identifier.where(extension.value = 'HD.2,HD.3').value = 'automated-staging-test-receiver-id'" # receiver routing filter (MSH-6.2)
qualityFilter:
- "true"
timing:
operation: "MERGE"
numberPerDay: 1440 # Every minute
initialTime: "00:00"
translation:
type: "HL7"
schemaName: "classpath:/metadata/hl7_mapping/receivers/Flexion/etor-oml-receiver-transform.yml"
useTestProcessingMode: false
useBatchHeaders: false
transport:
type: "BLOBSTORE"
storageName: "cdctiautomated"
containerName: "automated"
- name: "automated-staging-test-receiver-results"
organizationName: "flexion"
topic: "etor-ti"
customerStatus: "active"
jurisdictionalFilter:
- "Bundle.entry.resource.ofType(MessageHeader).event.code = 'R01'" # ORU_R01
- "Bundle.entry.resource.ofType(MessageHeader).meta.tag.where(system = 'http://localcodes.org/ETOR').code = 'ETOR'" # required to avoid looping issue
- "(Bundle.entry.resource.ofType(MessageHeader).destination.receiver.resolve().identifier.where(extension.value = 'HD.2,HD.3').value = 'automated-staging-test-receiver-id')
or (Bundle.identifier.value.contains('AUTOMATEDTEST-'))" # receiver routing filter (MSH-6.2 or MSH-10)
qualityFilter:
- "true"
timing:
operation: "MERGE"
numberPerDay: 1440 # Every minute
initialTime: "00:00"
translation:
type: "HL7"
schemaName: "classpath:/metadata/hl7_mapping/ORU_R01/ORU_R01-base.yml"
useTestProcessingMode: false
useBatchHeaders: false
transport:
type: "BLOBSTORE"
storageName: "cdctiautomated"
containerName: "automated"
3 changes: 1 addition & 2 deletions prime-router/settings/STLTs/LA/la-ochsner.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,7 @@
jurisdictionalFilter:
- "Bundle.entry.resource.ofType(MessageHeader).event.code = 'R01'" # ORU_R01
- "Bundle.entry.resource.ofType(MessageHeader).meta.tag.where(system = 'http://localcodes.org/ETOR').code = 'ETOR'" # required to avoid looping issue with TI
# Pending: add correct filter(s) for routing
- "Bundle.entry.resource.ofType(MessageHeader).destination.receiver.resolve().identifier.where(value = 'la-ochsner-simulated-lab-id').exists()"
- "Bundle.entry.resource.ofType(MessageHeader).destination.receiver.resolve().identifier.where(extension.value = 'HD.2,HD.3').value = '1.2.840.114350.1.13.286.2.7.2.695071'" # receiver routing filter (MSH-6.2)
qualityFilter:
- "true"
timing:
Expand Down
2 changes: 1 addition & 1 deletion prime-router/settings/STLTs/LA/la-phl.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
jurisdictionalFilter:
- "Bundle.entry.resource.ofType(MessageHeader).event.code = 'O21'" # OML_O21
- "Bundle.entry.resource.ofType(MessageHeader).meta.tag.where(system = 'http://localcodes.org/ETOR').code = 'ETOR'" # required to avoid looping issue with TI
- "Bundle.entry.resource.ofType(MessageHeader).destination.receiver.resolve().identifier.where(value = '2.16.840.1.114222.4.3.26.3.2').exists()" # receiver routing filter
- "Bundle.entry.resource.ofType(MessageHeader).destination.extension.where(url = 'https://reportstream.cdc.gov/fhir/StructureDefinition/universal-id').value = '2.16.840.1.114222.4.3.26.3.2'" # receiver routing filter (MSH-5.2)
qualityFilter:
- "true"
timing:
Expand Down
19 changes: 7 additions & 12 deletions prime-router/settings/STLTs/Oracle/oracle-rln.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
# Oracle RLN settings in staging
#
# Oracle RLN is defined at the Federal level and will route the message to its final destination
# Partners using Oracle RLN are:
# - Baptist in Alabama
#
# To load the settings in staging, run:
# ./prime login --env staging
# ./prime multiple-settings set --env staging --input ./settings/STLTs/Oracle/oracle-rln.yml
Expand Down Expand Up @@ -35,8 +39,7 @@
jurisdictionalFilter:
- "Bundle.entry.resource.ofType(MessageHeader).event.code = 'R01'" # ORU_R01
- "Bundle.entry.resource.ofType(MessageHeader).meta.tag.where(system = 'http://localcodes.org/ETOR').code = 'ETOR'" # required to avoid looping issue with TI
# Pending: add correct filter(s) for routing
- "Bundle.entry.resource.ofType(MessageHeader).destination.receiver.resolve().identifier.where(value = 'oracle-rln-simulated-lab-id').exists()"
- "Bundle.entry.resource.ofType(MessageHeader).destination.receiver.resolve().identifier.where(extension.value = 'HD.2,HD.3').value in ('2.16.840.1.113883.3.1898' | '2.16.840.1.113883.3.1899')" # receiver routing filter (MSH-6.2)
qualityFilter:
- "true"
timing:
Expand All @@ -47,19 +50,11 @@
maxReportCount: 100
description: ""
transport:
type: "REST"
reportUrl: "https://spaces.erxhubdevcert.cerner.com/etor"
authTokenUrl: ""
encryptionKeyUrl: ""
authType: "apiKey"
authTokenUrl: ""
tlsKeystore: null
parameters: {}
jwtParams: {}
headers:
Content-Type: "text/plain"
shared-api-key: "From Vault"
authHeaders: {}
type: "REST"
externalName: null
enrichmentSchemaNames: []
timeZone: null
dateTimeFormat: "OFFSET"

0 comments on commit eb84e75

Please sign in to comment.