Channel Source
The Channel source subscribes to the output of another channel within the same project, enabling multi-stage pipelines where one channel’s processed output becomes the next channel’s input.
This is useful when you need to break a complex integration into discrete, testable steps — for example, receiving HL7v2 in one channel, converting to FHIR in a second, and routing to multiple destinations in a third.
Configuration
Section titled “Configuration”source: type: channel channel: source_channel_id: hl7-intakeThe source_channel_id must match the id field of an upstream channel defined in the same project.
Properties
Section titled “Properties”| Property | Type | Required | Default | Description |
|---|---|---|---|---|
source_channel_id | string | Yes | — | The id of the upstream channel whose output this channel subscribes to. |
Complete Example
Section titled “Complete Example”A two-stage pipeline where the first channel receives HL7v2 over TCP/MLLP and the second channel converts the output to FHIR:
id: hl7-intakeenabled: truegroup: admissions
source: type: tcp port: 6661 content_type: hl7v2 mllp: true
transformer: normalize.ts
destinations: - local_fileid: fhir-converterenabled: truegroup: admissions
source: type: channel channel: source_channel_id: hl7-intake
transformer: hl7-to-fhir.ts
destinations: - epic_fhirIn this setup, every message that completes the hl7-intake pipeline is automatically forwarded into the fhir-converter pipeline for the next processing stage.