client
sequenceDiagram
participant Initiator
participant Alice
participant Bob
Initiator->>Blockchain: create meeting with id
Initiator-->>Internet: share meeting Id
loop
Initiator->>Blockchain: wait for pub. key for Alice and Bob
activate Blockchain
Blockchain--)Initiator: receive pub key [Alice, Bob]
deactivate Blockchain
end
par
Bob->>Internet: get meeting id
activate Internet
Internet--)Bob: receive meeting id
deactivate Internet
and
Alice->>Internet: get meeting id
activate Internet
Internet--)Alice: receive meeting id
deactivate Internet
end
par
Bob->>Blockchain: put temp public key for Bob
activate Blockchain
Blockchain--)Bob: Initiator public key
deactivate Blockchain
and
Alice->>Blockchain: put temp public key for Alice
activate Blockchain
Blockchain--)Alice: Initiator public key
deactivate Blockchain
end
Initiator-->>RelayServer: Olm message(symetric key) by Bob pub key
RelayServer-->>Bob: Olm message(symetric key) by Bob pub key
Initiator-->>RelayServer: Olm message(symetric key) by Alice pub key
RelayServer-->>Alice: Olm message(symetric key) by Alice pub key