Tutorial: produce QuestionnaireResponse to Kafka topic
Prerequisites
Aidbox license. Get a self-hosted Aidbox license on the Aidbox Portal.
Step 1: Set Up the Environment
Clone GitHub repository
Set Up Aidbox
Copy the
.env.tpl
file to.env
:Get a self-hosted Aidbox license on the Aidbox Portal.
Add the license key (
AIDBOX_LICENSE
) to the.env
file.
Run Aidbox, Kafka & Kafka UI
Aidbox is be available at http://localhost:8888/
Username:
admin
Password:
password
Kafka UI is be available at http://localhost:8080/
Kafka is available at
http://localhost:9092/
(no authorization required)
The Docker Compose file initializes the environment for both Kafka and Aidbox with the following configuration:
Imports FHIR Questionnaire (see
init-aidbox
service).Creates a Kafka topic for
QuestionnaireResponse
(seeinit-kafka
service).
Step 2: Set Up Subscription and Destination
Create AidboxSubscriptionTopic Resource
To create a subscription on the QuestionnaireResponse
resource that has a specific status, open Aidbox UI -> APIs -> REST Console and execute the following request:
This resource describes the data source for the subscription but doesn't execute any activities from Aidbox.
Create TopicDestination Resource
Creating this resource establishes a connection to the Kafka server. When the system produces an event, it will be processed to the specified Kafka topic.
Step 3: Demonstration
Submit Form
Open the list of forms, click share
-> click attach
-> copy the link -> open the link -> fill out the form, and submit it.
Check TopicDestination Status
Open the Aidbox REST Console and get the TopicDestination status:
Check Messages in Kafka UI
Open Kafka UI -> Topics
-> aidbox-forms
-> messages
and review the QuestionnaireResponse
that was created after submitting the form.
Last updated