Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DIDComm Mediators #41

Closed
wip-abramson opened this issue Oct 26, 2020 · 4 comments
Closed

DIDComm Mediators #41

wip-abramson opened this issue Oct 26, 2020 · 4 comments
Assignees
Labels
Good first issue 🎓 Perfect for beginners, welcome to OpenMined!
Projects

Comments

@wip-abramson
Copy link
Member

What?

A DIDComm mediator is used in routing messages between agents. It is not always required, but in situations where recipients are not always online such as mobile phones, a mediator is necessary.

Mediators are starting to get attention within the identity space as DIDComm v2 becomes standardised. It would be great to understand what is out there for us to use either to run our own mediator or connect to a mediator hosted by another party.

How long?

2 months

Is your research related to a problem?

Before we will be able to run our own mobile agents we will require a mediator they can connect to - #37

Additional Context

This is a good resource on mediators - https://github.com/hyperledger/aries-framework-go/blob/master/docs/didcomm_mediator.md

Currently the go framework does not work with ACA-Py agents but this is supposed to be coming very soon.

I am also expecting the release of specific mediator libraries very soon.

This demo from ACA-Py uses a RoutingAgent that might be worth looking into - https://github.com/hyperledger/aries-cloudagent-python/blob/master/demo/runners/performance.py. This could be used to create a nice notebook tutorial on mediators.

I also know these two projects claim to support mediators:

@wip-abramson wip-abramson added the Type: Research 🔬 When further investigation into a subject is required label Oct 26, 2020
@wip-abramson
Copy link
Member Author

wip-abramson commented Oct 26, 2020

@wip-abramson wip-abramson added this to To do in Research Nov 2, 2020
@wip-abramson wip-abramson added Good first issue 🎓 Perfect for beginners, welcome to OpenMined! and removed Type: Research 🔬 When further investigation into a subject is required labels Jan 6, 2021
@wip-abramson
Copy link
Member Author

This is now implementable in ACA-Py. We should create a demo using it.

dblum(hyperledger rocket chat):
The general flow for mediation is as follows:

  1. Connect to your mediator agent
  2. Send a mediation request to the mediator agent (this step will create the mediation id)
  3. Mediator sends a grant message (done automatically if using the
    --open-mediation flag, otherwise it must be granted through the Admin API; listing requests on the Mediator side will show a mediation request in requested state until granted)
  4. Send keys to your mediator to be mediated. When the mediator receives a forward message with one of these keys in the to field, it will forward the message on to your agent. This is done automatically during the connection protocol if you create an invitation with a mediation id or if you receive/accept an invitation with a mediation id. Support for DID Exchange and OOB is still pending so you'll have to use the connection protocol for now.

@wip-abramson
Copy link
Member Author

There is also a test mediator hosted by Indicio - https://indicio-tech.github.io/mediator/. This could be added to a staging network tutorial

@lohanspies
Copy link
Member

@wip-abramson suggest we close this ticket as mediators is already implemented with v0.6.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Good first issue 🎓 Perfect for beginners, welcome to OpenMined!
Projects
Development

No branches or pull requests

2 participants