Skip to content

Latest commit

 

History

History
56 lines (41 loc) · 1.58 KB

README.md

File metadata and controls

56 lines (41 loc) · 1.58 KB

Kafka for ACA-PY

This plugin contains the components needed for ACA-Py to use Kafka for inbound and outbound message queuing and events.

Installation and Usage

First, install this plugin into your environment.

$ pip install git+https://github.com/sicpa-dlab/aries-acapy-plugin-kafka-events.git

When starting up ACA-Py, load the plugin along with any other startup parameters.

$ aca-py start --plugin kafka_queue # ... the remainder of your startup arguments

Plugin configuration

This is an open door to configure the kafka client to produce and consume records. Kafka has several configuration beyond the URL of the service.

The kafka plugin will pull configuration from ACA-Py's plugin config settings. This enables us to create and use a configuration yaml file and then load it on startup with ACA-Py. See this PR for more details Plugin configuration.

An example configuration for the plugin can be found in example-config.yml.

Running with configuration

$ aca-py start \
    --plugin kafka_events \
    --plugin-config plugins-config.yaml \
    # ... the remainder of your startup arguments

Consuming DIDComm messages

Messages produced by this plugin contain metadata in addition to the encrypted DIDComm message. Messages look like:

{
    "service": {"url": "recipient url"},
    "metadata": {...},
    "payload": "encryped_and_packed_didcomm_message"
}

Be cautious and only send the payload content over the wire to the DIDComm recipient.