Technical Specifications > Central Intake Message Workflows

The Central Intake Hub (CI Hub) acts as a RMS-Source as well as a RMS-Target. The CI Hub is responsible for manage the referral queues for a regional Central Intake implementation. The CI Hub is integrated with the Ontario Provincial Care Coordination Gateway (PCCG) to:

  • receive referrals into the queue
  • route referrals to destinations
  • receive routing recommendations

Routing, Splitting and Chaining Requests

In cases where a completion of a 'parent' ServiceRequest results in the creation of other 'children' ServiceRequests, multiple ServiceRequests MAY be triggered by an RMS that is performing the role of both RMS Source and RMS Target.

Message Flows

The diagram and corresponding table below illustrates message flows between Referral Management Systems, the PCCG, and the CI Hub in an electronic referral forwarding scenario.

CI_Hub_FHIR_Event_Workflow_for_Referral_Forwarding

Business Event Source System Target System Details
1a. RMS Source sends ServiceRequest (SR1) to PCCG RMS Source PCCG
  • MessageHeader.event: add-service-request
  • ServiceRequest.status: active
1b. PCCG sends ServiceRequest (SR1) to CI Hub/RMS-T1 PCCG CI Hub/RMS Target 1
  • MessageHeader.event: add-service-request
  • ServiceRequest.status: active

NOTE: CWM Insights sends recommended providers to PCCG using notify-internal-process and PCCG sends an add-service-request with recommended providers to the CI Hub solution
1c. CI Hub/RMS-T1 sends acknowledgement message to PCCG to track status CI Hub/RMS Target 1 PCCG
  • MessageHeader.event: add-process-request
  • Task.status: requested
  • Task.code: process-request
1d. PCCG sends acknowledgement message to RMS-S to track status PCCG RMS Source
  • MessageHeader.event: add-process-request
  • Task.status: requested
  • Task.code: process-request
CI/RMS Target 1 routes/forwards referral to RMS Target 2
2a. CI Hub/RMS-T1 sends new ServiceRequest (SR2) to PCCG CI Hub/RMS Target 1 PCCG
  • MessageHeader.event: add-service-request
  • ServiceRequest.status: active

NOTE: Official identifier SHALL be the same for both SR1 and SR2
SR2.replaces = SR1
SR2.identifier = SR1.identifier
SR2.requsition = null
SR2.requester = SR1.requester
SR2.basedOn = null
2a. PCCG sends new ServiceRequest (SR2) to RMS-T2 PCCG RMS Target 2
  • MessageHeader.event: add-service-request
  • ServiceRequest.status: active
2b. CI Hub/RMS-T1 notifies RMS-S through PCCG that SR1 was routed/forwarded CI Hub/RMS Target 1 PCCG
  • MessageHeader.event: notify-add-service=record
  • ServiceRequest.status: active
  • MessageHeader.focus: SR2

NOTE: Official identifier SHALL be the same for both SR1 and SR2
SR2.replaces = SR1
SR2.identifier = SR1.identifier
SR2.requsition = null
SR2.requester = SR1.requester
SR2.basedOn = null
2b.PCCG notifies RMS-S that SR1 was routed/forwarded PCCG RMS Source
  • MessageHeader.event: notify-add-service-record
  • ServiceRequest.status: active
2c.RMS-T2 sends acknowledgement message of referral acceptance to CI Hub/RMS-T1 and RMS-S through PCCG RMS Target 2 PCCG
  • MessageHeader.event: notify-add-process-request
  • Task.status: requested
  • Task.code: process-request
  • Task.basedOn: SR2
2c.PCCG sends acknowledgement message to CI Hub/RMS-T1 PCCG CI Hub/RMS Target 1
  • MessageHeader.event: notify-add-process-request
  • Task.status: requested
  • Task.code: process-request
  • Task.basedOn: SR2
2d.CI Hub/RMS-T1 notifies RMS-S through PCCG that referral was updated CI Hub/RMS Target 1 PCCG
  • MessageHeader.event: notify-update-service-record
  • Task.status: requested
  • Task.code: process-request
  • Task.basedOn: SR2
2d.PCCG transmits message to notify RMS-S of referral update PCCG RMS Source
  • MessageHeader.event: notify-update-service-record
  • Task.status: requested
  • Task.code: process-request
  • Task.basedOn: SR2
3a.RMS T-2 requests further information for the patient, communication sent to RMS T1 RMS Target 2 PCCG
  • MessageHeader.event: send-communication-from-provider
3a.PCCG sends request for communication to CI Hub/RMS T1 PCCG CI Hub/RMS Target 1
  • MessageHeader.event: send-communication-from-provider
CI Hub/RMS-T1 assesses request and sends to RMS-S (Option 1) or answers (Option 2)
3b. Option 1 CI Hub/RMS-T1 sends a new request to RMS-S through PCCG CI Hub/RMS Target 1 PCCG
  • MessageHeader.event: send-communication-from-provider
3b. Option 1 PCCG sends the new request to RMS-S PCCG RMS Source
  • MessageHeader.event: send-communication-from-provider
3b. Option 1 RMS Source sends answer of new request to CI Hub/RMS-T1 via PCCG RMS Source PCCG
  • MessageHeader.event: send-communication-from-requester
3b. Option 1 PCCG sends answer of new request to CI Hub/RMS-T1 PCCG CI Hub/RMS Target 1
  • MessageHeader.event: send-communication-from-requester
3b. Option 1 CI Hub/RMS-T1 sends answer of new request to RMS-T2 CI Hub/RMS Target 1 PCCG
  • MessageHeader.event: send-communication-from-requester
3b. Option 1 PCCG sends answer of new request to RMS-T2 through PPCCG PCCG RMS Target 2
  • MessageHeader.event: send-communication-from-requester
3b. Option 2 CI Hub/RMS-T1 sends answer to RMS-T2 through PCCG CI Hub/RMS Target 1 PCCG
  • MessageHeader.event: send-communication-from-requester
4a. RMS-T2 sends notification that referral has been accepted to CI Hub/RMS-T1 and RMS-S through PCCG RMS Target 2 PCCG
  • MessageHeader.event: notify-update-process-request
  • Task.status: accepted
  • Task.code: process-request
4a. PCCG sends notification to CI Hub/RMS-T1 that referral has been accepted PCCG CI Hub/RMS Target 1
  • MessageHeader.event: notify-update-process-request
  • Task.status: accepted
  • Task.code: process-request
  • Task.basedOn: SR2
4b.CI Hub/RMS-T1 notifies RMS-S through PCCG that referral has been accepted CI Hub/RMS Target 1 PCCG
  • MessageHeader.event: notify-update-service-record
  • Task.status: accepted
  • Task.code: process-request
  • Task.basedOn: SR2
  • MessageHeader.Focus: Task 1
4b.PCCG sends notification to RMS-S that referral has been accepted PCCG RMS Source
  • MessageHeader.event: notify-update-service-record
  • Task.status: accepted
  • Task.code: process-request
  • Task.basedOn: SR2
5a.RMS-T2 sends notification that referral has been booked to CI Hub/RMS-T1 via PCCG RMS Target 2 PCCG
  • MessageHeader.event: notify-add-appointment
5a.PCCG sends notification to CI-Hub / RMS-T1 that referral has been booked PCCG CI Hub/RMS Target 1
  • MessageHeader.event: notify-add-appointment
5a. CI-Hub/RMS-T1 notifies RMS-S through PCCG that referral has been booked CI Hub/RMS Target 1 PCCG
  • MessageHeader.event: notify-add-appointment
5a. PCCG notifies RMS-S that referral has been booked PCCG RMS-Target 1
  • MessageHeader.event: notify-add-appointment

The diagram and corresponding table below illustrates message flows between Referral Management Systems, the PCCG, and the CI Hub in an electronic referral splitting scenario.

CI_Hub_FHIR_Event_Workflow_for_Split_Scenario

Business Event Source System Target System Details
1a. RMS Source sends ServiceRequest (SR1) to PCCG RMS Source PCCG
  • MessageHeader.event: add-service-request
  • ServiceRequest.status: active
1b. PCCG sends ServiceRequest (SR1) to Central Intake PCCG Central Intake
  • MessageHeader.event: add-service-request
  • ServiceRequest.status: active

NOTE: CWM Insights sends recommended providers to PCCG using notify-internal-process and PCCG sends an add-service-request with recommended providers to the CI Hub solution
2a. Central Intake sends acknowledgement message to PCCG to indicate receipt Central Intake PCCG
  • MessageHeader.event: add-process-request
  • Task.status: received
  • Task.code: process-request
2b. PCCG sends acknowledgement message to RMS-S to indicate receipt PCCG RMS Source
  • MessageHeader.event: add-process-request
  • Task.status: received
  • Task.code: process-request
Central Intake splits the ServiceRequest and creates two child ServiceRequests NOTE: Official identifier SHALL be different for SR1, SR1.1 and SR1.2
SR1.1.replaces = null
SR1.1.identifier = new
SR1.1.requsition = SR1 identifier
SR1.1.requester = SR1.performer
SR1.1.basedOn = SR1

When the system splits the referral based on the downstream provider's preferences configured in PHSD, both split referrals are routed to the same RMS-T
SR1.1 Flow
3.1a. Central Intake sends new ServiceRequest (SR1.1) to RMS Target 1 via PCCG Central Intake PCCG
  • MessageHeader.event: add-service-request
  • ServiceRequest.status: active
3.1b. PCCG sends new ServiceRequest (SR1.1) to RMS Target 1 PCCG RMS Target 1
  • MessageHeader.event: add-service-request
  • ServiceRequest.status: active
3.1.c. Central Intake notifies RMS-S through PCCG that SR1 was split and two child referral (SR1.1 and SR1.2) were created Central Intake PCCG
  • MessageHeader.event: notify-add-service=record

NOTE: Splitting the referral results in one inactive parent referral and two active child referrals
3.1.d.PCCG notifies RMS-S that SR1 was split and two child referral (SR1.1 and SR1.2) were created PCCG RMS Source
  • MessageHeader.event: notify-add-service-record
4.1a. RMS-Target 1 sends acknowledgement message to PCCG to indicate receipt RMS Target 1 PCCG
  • MessageHeader.event: notify-add-process-request
  • Task.status: requested
  • Task.code: process-request
4.1.b. PCCG sends notification of receipt to Central Intake PCCG Central Intake
  • MessageHeader.event: notify-add-process-request
  • Task.status: requested
  • Task.code: process-request
  • Task.code: process-request
4.1.c. Central Intake sends notice of receipt to RMS-S through PCCG Central Intake PCCG
  • MessageHeader.event: notify-update-service-record
  • Task.status: requested
  • Task.code: process-request
4.1.d.PCCG sends notification of receipt to RMS-S PCCG RMS Source
  • MessageHeader.event: notify-update-service-record
  • Task.status: requested
  • Task.code: process-request
5.1.a.RMS Target 1 sends notification that referral has accepted to Central Intake via PCCG RMS Target 1 PCCG
  • MessageHeader.event: notify-update-process-request
  • Task.status: accepted
  • Task.code: process-request
5.1.b.PCCG sends notification that referral has accepted to Central Intake PCCG Central Intake
  • MessageHeader.event: notify-update-process-request
  • Task.status: accepted
  • Task.code: process-request
5.1.c.Central Intake sends notification that referral has accepted to RMS Source via PCCG Central Intake PCCG
  • MessageHeader.event: notify-update-service-record
  • Task.status: accepted
  • Task.code: process-request
5.1.c.PCCG sends notification that referral has accepted to RMS Source PCCG RMS Source
  • MessageHeader.event: notify-update-service-record
  • Task.status: accepted
  • Task.code: process-request
6.1.a.RMS Target 1 sends appointment details for child ServiceRequest (SR1.1) RMS Target 1 PCCG
  • MessageHeader.event: notify-add-appointment
  • Appointment.status: booked
6.1.b.PCCG sends appointment details for child ServiceRequest (SR1.1) PCCG Central Intake
  • MessageHeader.event: notify-add-appointment
  • Appointment.status: booked
6.1.c.Central Intake sends appointment details for child ServiceRequest (SR1.1) Central Intake PCCG
  • MessageHeader.event: notify-update-service-record
  • Appointment.status: booked
6.1.c.PCCG sends appointment details for child ServiceRequest (SR1.1) PCCG RMS Source
  • MessageHeader.event: notify-update-service-record
  • Appointment.status: booked
SR1.2 Flow
3.2a. Central Intake sends new ServiceRequest (SR1.2) to RMS Target 2 via PCCG Central Intake PCCG
  • MessageHeader.event: add-service-request
  • ServiceRequest.status: active
3.2b. PCCG sends new ServiceRequest (SR1.2) to RMS Target 2 PCCG RMS Target 2
  • MessageHeader.event: add-service-request
  • ServiceRequest.status: active
4.2.a. RMS-Target 2 sends acknowledgement message to PCCG to indicate receipt RMS Target 2 PCCG
  • MessageHeader.event: notify-add-process-request
  • Task.status: requested
  • Task.code: process-request
4.2.b. PCCG sends notification of receipt to Central Intake PCCG Central Intake
  • MessageHeader.event: notify-add-process-request
  • Task.status: requested
  • Task.code: process-request
  • Task.code: process-request
4.2.c. Central Intake sends notice of receipt to RMS-S through PCCG Central Intake PCCG
  • MessageHeader.event: notify-update-service-record
  • Task.status: requested
  • Task.code: process-request
4.2.d.PCCG sends notification of receipt to RMS-S PCCG RMS Source
  • MessageHeader.event: notify-update-service-record
  • Task.status: requested
  • Task.code: process-request
5.2.a.RMS Target 2 sends notification that referral has accepted to Central Intake via PCCG RMS Target 2 PCCG
  • MessageHeader.event: notify-update-process-request
  • Task.status: accepted
  • Task.code: process-request
5.2.b.PCCG sends notification that referral has accepted to Central Intake PCCG Central Intake
  • MessageHeader.event: notify-update-process-request
  • Task.status: accepted
  • Task.code: process-request
5.2.c.Central Intake sends notification that referral has accepted to RMS Source via PCCG Central Intake PCCG
  • MessageHeader.event: notify-update-service-record
  • Task.status: accepted
  • Task.code: process-request
5.2.c.PCCG sends notification that referral has accepted to RMS Source PCCG RMS Source
  • MessageHeader.event: notify-update-service-record
  • Task.status: accepted
  • Task.code: process-request
6.2.a.RMS Target 2 sends appointment details for child ServiceRequest (SR1.1) RMS Target 2 PCCG
  • MessageHeader.event: notify-add-appointment
  • Appointment.status: booked
6.2.b.PCCG sends appointment details for child ServiceRequest (SR1.1) PCCG Central Intake
  • MessageHeader.event: notify-add-appointment
  • Appointment.status: booked
6.2.c.Central Intake sends appointment details for child ServiceRequest (SR1.1) Central Intake PCCG
  • MessageHeader.event: notify-update-service-record
  • Appointment.status: booked
6.2.c.PCCG sends appointment details for child ServiceRequest (SR1.1) PCCG RMS Source
  • MessageHeader.event: notify-update-service-record
  • Appointment.status: booked