From f2702c293d2d02424a54cad395b639fab586f7d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Christian=20Gr=C3=BCnhage?= Date: Tue, 3 Nov 2020 11:52:30 +0100 Subject: [PATCH] put rendered images into the repo --- .../2846-decentralising-media-through-cids.md | 9 ++++---- proposals/images/2846-receiving-current.jpeg | Bin 0 -> 20532 bytes .../images/2846-receiving-current.mermaid | 14 ++++++++++++ proposals/images/2846-receiving-proposed.jpeg | Bin 0 -> 41169 bytes .../images/2846-receiving-proposed.mermaid | 21 ++++++++++++++++++ proposals/images/2846-sending-current.jpeg | Bin 0 -> 16513 bytes proposals/images/2846-sending-current.mermaid | 7 ++++++ proposals/images/2846-sending-proposed.jpeg | Bin 0 -> 25381 bytes .../images/2846-sending-proposed.mermaid | 17 ++++++++++++++ 9 files changed, 64 insertions(+), 4 deletions(-) create mode 100644 proposals/images/2846-receiving-current.jpeg create mode 100644 proposals/images/2846-receiving-current.mermaid create mode 100644 proposals/images/2846-receiving-proposed.jpeg create mode 100644 proposals/images/2846-receiving-proposed.mermaid create mode 100644 proposals/images/2846-sending-current.jpeg create mode 100644 proposals/images/2846-sending-current.mermaid create mode 100644 proposals/images/2846-sending-proposed.jpeg create mode 100644 proposals/images/2846-sending-proposed.mermaid diff --git a/proposals/2846-decentralising-media-through-cids.md b/proposals/2846-decentralising-media-through-cids.md index eea9f85793e..aa16e933e56 100644 --- a/proposals/2846-decentralising-media-through-cids.md +++ b/proposals/2846-decentralising-media-through-cids.md @@ -14,10 +14,11 @@ the file both on the server side and the client side. ## Current behaviour ### Sending -[![](https://mermaid.ink/img/eyJjb2RlIjoic2VxdWVuY2VEaWFncmFtXG4gIHBhcnRpY2lwYW50IEMgYXMgQ2xpZW50XG4gIHBhcnRpY2lwYW50IFMgYXMgU2VydmVyXG4gIEMtPj5TOiB1cGxvYWQgZmlsZVxuICBTLS0-PkM6IHJldHVybiBNWEMgVVJMXG4gIEMtPj5TOiBzZW5kIGV2ZW50IHdpdGggTVhDIFVSTFxuICBTLS0-PkM6IHJldHVybiBldmVudCBJRFxuIiwibWVybWFpZCI6eyJ0aGVtZSI6ImRlZmF1bHQiLCJ0aGVtZVZhcmlhYmxlcyI6eyJiYWNrZ3JvdW5kIjoid2hpdGUiLCJwcmltYXJ5Q29sb3IiOiIjRUNFQ0ZGIiwic2Vjb25kYXJ5Q29sb3IiOiIjZmZmZmRlIiwidGVydGlhcnlDb2xvciI6ImhzbCg4MCwgMTAwJSwgOTYuMjc0NTA5ODAzOSUpIiwicHJpbWFyeUJvcmRlckNvbG9yIjoiaHNsKDI0MCwgNjAlLCA4Ni4yNzQ1MDk4MDM5JSkiLCJzZWNvbmRhcnlCb3JkZXJDb2xvciI6ImhzbCg2MCwgNjAlLCA4My41Mjk0MTE3NjQ3JSkiLCJ0ZXJ0aWFyeUJvcmRlckNvbG9yIjoiaHNsKDgwLCA2MCUsIDg2LjI3NDUwOTgwMzklKSIsInByaW1hcnlUZXh0Q29sb3IiOiIjMTMxMzAwIiwic2Vjb25kYXJ5VGV4dENvbG9yIjoiIzAwMDAyMSIsInRlcnRpYXJ5VGV4dENvbG9yIjoicmdiKDkuNTAwMDAwMDAwMSwgOS41MDAwMDAwMDAxLCA5LjUwMDAwMDAwMDEpIiwibGluZUNvbG9yIjoiIzMzMzMzMyIsInRleHRDb2xvciI6IiMzMzMiLCJtYWluQmtnIjoiI0VDRUNGRiIsInNlY29uZEJrZyI6IiNmZmZmZGUiLCJib3JkZXIxIjoiIzkzNzBEQiIsImJvcmRlcjIiOiIjYWFhYTMzIiwiYXJyb3doZWFkQ29sb3IiOiIjMzMzMzMzIiwiZm9udEZhbWlseSI6IlwidHJlYnVjaGV0IG1zXCIsIHZlcmRhbmEsIGFyaWFsIiwiZm9udFNpemUiOiIxNnB4IiwibGFiZWxCYWNrZ3JvdW5kIjoiI2U4ZThlOCIsIm5vZGVCa2ciOiIjRUNFQ0ZGIiwibm9kZUJvcmRlciI6IiM5MzcwREIiLCJjbHVzdGVyQmtnIjoiI2ZmZmZkZSIsImNsdXN0ZXJCb3JkZXIiOiIjYWFhYTMzIiwiZGVmYXVsdExpbmtDb2xvciI6IiMzMzMzMzMiLCJ0aXRsZUNvbG9yIjoiIzMzMyIsImVkZ2VMYWJlbEJhY2tncm91bmQiOiIjZThlOGU4IiwiYWN0b3JCb3JkZXIiOiJoc2woMjU5LjYyNjE2ODIyNDMsIDU5Ljc3NjUzNjMxMjglLCA4Ny45MDE5NjA3ODQzJSkiLCJhY3RvckJrZyI6IiNFQ0VDRkYiLCJhY3RvclRleHRDb2xvciI6ImJsYWNrIiwiYWN0b3JMaW5lQ29sb3IiOiJncmV5Iiwic2lnbmFsQ29sb3IiOiIjMzMzIiwic2lnbmFsVGV4dENvbG9yIjoiIzMzMyIsImxhYmVsQm94QmtnQ29sb3IiOiIjRUNFQ0ZGIiwibGFiZWxCb3hCb3JkZXJDb2xvciI6ImhzbCgyNTkuNjI2MTY4MjI0MywgNTkuNzc2NTM2MzEyOCUsIDg3LjkwMTk2MDc4NDMlKSIsImxhYmVsVGV4dENvbG9yIjoiYmxhY2siLCJsb29wVGV4dENvbG9yIjoiYmxhY2siLCJub3RlQm9yZGVyQ29sb3IiOiIjYWFhYTMzIiwibm90ZUJrZ0NvbG9yIjoiI2ZmZjVhZCIsIm5vdGVUZXh0Q29sb3IiOiJibGFjayIsImFjdGl2YXRpb25Cb3JkZXJDb2xvciI6IiM2NjYiLCJhY3RpdmF0aW9uQmtnQ29sb3IiOiIjZjRmNGY0Iiwic2VxdWVuY2VOdW1iZXJDb2xvciI6IndoaXRlIiwic2VjdGlvbkJrZ0NvbG9yIjoicmdiYSgxMDIsIDEwMiwgMjU1LCAwLjQ5KSIsImFsdFNlY3Rpb25Ca2dDb2xvciI6IndoaXRlIiwic2VjdGlvbkJrZ0NvbG9yMiI6IiNmZmY0MDAiLCJ0YXNrQm9yZGVyQ29sb3IiOiIjNTM0ZmJjIiwidGFza0JrZ0NvbG9yIjoiIzhhOTBkZCIsInRhc2tUZXh0TGlnaHRDb2xvciI6IndoaXRlIiwidGFza1RleHRDb2xvciI6IndoaXRlIiwidGFza1RleHREYXJrQ29sb3IiOiJibGFjayIsInRhc2tUZXh0T3V0c2lkZUNvbG9yIjoiYmxhY2siLCJ0YXNrVGV4dENsaWNrYWJsZUNvbG9yIjoiIzAwMzE2MyIsImFjdGl2ZVRhc2tCb3JkZXJDb2xvciI6IiM1MzRmYmMiLCJhY3RpdmVUYXNrQmtnQ29sb3IiOiIjYmZjN2ZmIiwiZ3JpZENvbG9yIjoibGlnaHRncmV5IiwiZG9uZVRhc2tCa2dDb2xvciI6ImxpZ2h0Z3JleSIsImRvbmVUYXNrQm9yZGVyQ29sb3IiOiJncmV5IiwiY3JpdEJvcmRlckNvbG9yIjoiI2ZmODg4OCIsImNyaXRCa2dDb2xvciI6InJlZCIsInRvZGF5TGluZUNvbG9yIjoicmVkIiwibGFiZWxDb2xvciI6ImJsYWNrIiwiZXJyb3JCa2dDb2xvciI6IiM1NTIyMjIiLCJlcnJvclRleHRDb2xvciI6IiM1NTIyMjIiLCJjbGFzc1RleHQiOiIjMTMxMzAwIiwiZmlsbFR5cGUwIjoiI0VDRUNGRiIsImZpbGxUeXBlMSI6IiNmZmZmZGUiLCJmaWxsVHlwZTIiOiJoc2woMzA0LCAxMDAlLCA5Ni4yNzQ1MDk4MDM5JSkiLCJmaWxsVHlwZTMiOiJoc2woMTI0LCAxMDAlLCA5My41Mjk0MTE3NjQ3JSkiLCJmaWxsVHlwZTQiOiJoc2woMTc2LCAxMDAlLCA5Ni4yNzQ1MDk4MDM5JSkiLCJmaWxsVHlwZTUiOiJoc2woLTQsIDEwMCUsIDkzLjUyOTQxMTc2NDclKSIsImZpbGxUeXBlNiI6ImhzbCg4LCAxMDAlLCA5Ni4yNzQ1MDk4MDM5JSkiLCJmaWxsVHlwZTciOiJoc2woMTg4LCAxMDAlLCA5My41Mjk0MTE3NjQ3JSkifX0sInVwZGF0ZUVkaXRvciI6ZmFsc2V9)](https://mermaid-js.github.io/mermaid-live-editor/#/edit/eyJjb2RlIjoic2VxdWVuY2VEaWFncmFtXG4gIHBhcnRpY2lwYW50IEMgYXMgQ2xpZW50XG4gIHBhcnRpY2lwYW50IFMgYXMgU2VydmVyXG4gIEMtPj5TOiB1cGxvYWQgZmlsZVxuICBTLS0-PkM6IHJldHVybiBNWEMgVVJMXG4gIEMtPj5TOiBzZW5kIGV2ZW50IHdpdGggTVhDIFVSTFxuICBTLS0-PkM6IHJldHVybiBldmVudCBJRFxuIiwibWVybWFpZCI6eyJ0aGVtZSI6ImRlZmF1bHQiLCJ0aGVtZVZhcmlhYmxlcyI6eyJiYWNrZ3JvdW5kIjoid2hpdGUiLCJwcmltYXJ5Q29sb3IiOiIjRUNFQ0ZGIiwic2Vjb25kYXJ5Q29sb3IiOiIjZmZmZmRlIiwidGVydGlhcnlDb2xvciI6ImhzbCg4MCwgMTAwJSwgOTYuMjc0NTA5ODAzOSUpIiwicHJpbWFyeUJvcmRlckNvbG9yIjoiaHNsKDI0MCwgNjAlLCA4Ni4yNzQ1MDk4MDM5JSkiLCJzZWNvbmRhcnlCb3JkZXJDb2xvciI6ImhzbCg2MCwgNjAlLCA4My41Mjk0MTE3NjQ3JSkiLCJ0ZXJ0aWFyeUJvcmRlckNvbG9yIjoiaHNsKDgwLCA2MCUsIDg2LjI3NDUwOTgwMzklKSIsInByaW1hcnlUZXh0Q29sb3IiOiIjMTMxMzAwIiwic2Vjb25kYXJ5VGV4dENvbG9yIjoiIzAwMDAyMSIsInRlcnRpYXJ5VGV4dENvbG9yIjoicmdiKDkuNTAwMDAwMDAwMSwgOS41MDAwMDAwMDAxLCA5LjUwMDAwMDAwMDEpIiwibGluZUNvbG9yIjoiIzMzMzMzMyIsInRleHRDb2xvciI6IiMzMzMiLCJtYWluQmtnIjoiI0VDRUNGRiIsInNlY29uZEJrZyI6IiNmZmZmZGUiLCJib3JkZXIxIjoiIzkzNzBEQiIsImJvcmRlcjIiOiIjYWFhYTMzIiwiYXJyb3doZWFkQ29sb3IiOiIjMzMzMzMzIiwiZm9udEZhbWlseSI6IlwidHJlYnVjaGV0IG1zXCIsIHZlcmRhbmEsIGFyaWFsIiwiZm9udFNpemUiOiIxNnB4IiwibGFiZWxCYWNrZ3JvdW5kIjoiI2U4ZThlOCIsIm5vZGVCa2ciOiIjRUNFQ0ZGIiwibm9kZUJvcmRlciI6IiM5MzcwREIiLCJjbHVzdGVyQmtnIjoiI2ZmZmZkZSIsImNsdXN0ZXJCb3JkZXIiOiIjYWFhYTMzIiwiZGVmYXVsdExpbmtDb2xvciI6IiMzMzMzMzMiLCJ0aXRsZUNvbG9yIjoiIzMzMyIsImVkZ2VMYWJlbEJhY2tncm91bmQiOiIjZThlOGU4IiwiYWN0b3JCb3JkZXIiOiJoc2woMjU5LjYyNjE2ODIyNDMsIDU5Ljc3NjUzNjMxMjglLCA4Ny45MDE5NjA3ODQzJSkiLCJhY3RvckJrZyI6IiNFQ0VDRkYiLCJhY3RvclRleHRDb2xvciI6ImJsYWNrIiwiYWN0b3JMaW5lQ29sb3IiOiJncmV5Iiwic2lnbmFsQ29sb3IiOiIjMzMzIiwic2lnbmFsVGV4dENvbG9yIjoiIzMzMyIsImxhYmVsQm94QmtnQ29sb3IiOiIjRUNFQ0ZGIiwibGFiZWxCb3hCb3JkZXJDb2xvciI6ImhzbCgyNTkuNjI2MTY4MjI0MywgNTkuNzc2NTM2MzEyOCUsIDg3LjkwMTk2MDc4NDMlKSIsImxhYmVsVGV4dENvbG9yIjoiYmxhY2siLCJsb29wVGV4dENvbG9yIjoiYmxhY2siLCJub3RlQm9yZGVyQ29sb3IiOiIjYWFhYTMzIiwibm90ZUJrZ0NvbG9yIjoiI2ZmZjVhZCIsIm5vdGVUZXh0Q29sb3IiOiJibGFjayIsImFjdGl2YXRpb25Cb3JkZXJDb2xvciI6IiM2NjYiLCJhY3RpdmF0aW9uQmtnQ29sb3IiOiIjZjRmNGY0Iiwic2VxdWVuY2VOdW1iZXJDb2xvciI6IndoaXRlIiwic2VjdGlvbkJrZ0NvbG9yIjoicmdiYSgxMDIsIDEwMiwgMjU1LCAwLjQ5KSIsImFsdFNlY3Rpb25Ca2dDb2xvciI6IndoaXRlIiwic2VjdGlvbkJrZ0NvbG9yMiI6IiNmZmY0MDAiLCJ0YXNrQm9yZGVyQ29sb3IiOiIjNTM0ZmJjIiwidGFza0JrZ0NvbG9yIjoiIzhhOTBkZCIsInRhc2tUZXh0TGlnaHRDb2xvciI6IndoaXRlIiwidGFza1RleHRDb2xvciI6IndoaXRlIiwidGFza1RleHREYXJrQ29sb3IiOiJibGFjayIsInRhc2tUZXh0T3V0c2lkZUNvbG9yIjoiYmxhY2siLCJ0YXNrVGV4dENsaWNrYWJsZUNvbG9yIjoiIzAwMzE2MyIsImFjdGl2ZVRhc2tCb3JkZXJDb2xvciI6IiM1MzRmYmMiLCJhY3RpdmVUYXNrQmtnQ29sb3IiOiIjYmZjN2ZmIiwiZ3JpZENvbG9yIjoibGlnaHRncmV5IiwiZG9uZVRhc2tCa2dDb2xvciI6ImxpZ2h0Z3JleSIsImRvbmVUYXNrQm9yZGVyQ29sb3IiOiJncmV5IiwiY3JpdEJvcmRlckNvbG9yIjoiI2ZmODg4OCIsImNyaXRCa2dDb2xvciI6InJlZCIsInRvZGF5TGluZUNvbG9yIjoicmVkIiwibGFiZWxDb2xvciI6ImJsYWNrIiwiZXJyb3JCa2dDb2xvciI6IiM1NTIyMjIiLCJlcnJvclRleHRDb2xvciI6IiM1NTIyMjIiLCJjbGFzc1RleHQiOiIjMTMxMzAwIiwiZmlsbFR5cGUwIjoiI0VDRUNGRiIsImZpbGxUeXBlMSI6IiNmZmZmZGUiLCJmaWxsVHlwZTIiOiJoc2woMzA0LCAxMDAlLCA5Ni4yNzQ1MDk4MDM5JSkiLCJmaWxsVHlwZTMiOiJoc2woMTI0LCAxMDAlLCA5My41Mjk0MTE3NjQ3JSkiLCJmaWxsVHlwZTQiOiJoc2woMTc2LCAxMDAlLCA5Ni4yNzQ1MDk4MDM5JSkiLCJmaWxsVHlwZTUiOiJoc2woLTQsIDEwMCUsIDkzLjUyOTQxMTc2NDclKSIsImZpbGxUeXBlNiI6ImhzbCg4LCAxMDAlLCA5Ni4yNzQ1MDk4MDM5JSkiLCJmaWxsVHlwZTciOiJoc2woMTg4LCAxMDAlLCA5My41Mjk0MTE3NjQ3JSkifX0sInVwZGF0ZUVkaXRvciI6ZmFsc2V9) +![Current flow for sending](images/2846-sending-current.jpeg) + ### Receiving -[![](https://mermaid.ink/img/eyJjb2RlIjoic2VxdWVuY2VEaWFncmFtXG4gIHBhcnRpY2lwYW50IEMgYXMgQ2xpZW50XG4gIHBhcnRpY2lwYW50IFMgYXMgU2VydmVyXG4gIHBhcnRpY2lwYW50IE8gYXMgT3JpZ2luXG4gIEMtPj5TOiByZXEgZmlsZVxuICBhY3RpdmF0ZSBTXG4gIG9wdCBmZXRjaCBmaWxlXG4gICAgUy0-Pk86IHJlcSBmaWxlXG4gICAgYWN0aXZhdGUgT1xuICAgIE8tLT4-Uzogc2VydmUgZmlsZVxuICAgIGRlYWN0aXZhdGUgT1xuICBlbmRcbiAgUy0tPj5DOiBzZXJ2ZSBmaWxlXG4gIGRlYWN0aXZhdGUgU1xuIiwibWVybWFpZCI6eyJ0aGVtZSI6ImRlZmF1bHQiLCJ0aGVtZVZhcmlhYmxlcyI6eyJiYWNrZ3JvdW5kIjoid2hpdGUiLCJwcmltYXJ5Q29sb3IiOiIjRUNFQ0ZGIiwic2Vjb25kYXJ5Q29sb3IiOiIjZmZmZmRlIiwidGVydGlhcnlDb2xvciI6ImhzbCg4MCwgMTAwJSwgOTYuMjc0NTA5ODAzOSUpIiwicHJpbWFyeUJvcmRlckNvbG9yIjoiaHNsKDI0MCwgNjAlLCA4Ni4yNzQ1MDk4MDM5JSkiLCJzZWNvbmRhcnlCb3JkZXJDb2xvciI6ImhzbCg2MCwgNjAlLCA4My41Mjk0MTE3NjQ3JSkiLCJ0ZXJ0aWFyeUJvcmRlckNvbG9yIjoiaHNsKDgwLCA2MCUsIDg2LjI3NDUwOTgwMzklKSIsInByaW1hcnlUZXh0Q29sb3IiOiIjMTMxMzAwIiwic2Vjb25kYXJ5VGV4dENvbG9yIjoiIzAwMDAyMSIsInRlcnRpYXJ5VGV4dENvbG9yIjoicmdiKDkuNTAwMDAwMDAwMSwgOS41MDAwMDAwMDAxLCA5LjUwMDAwMDAwMDEpIiwibGluZUNvbG9yIjoiIzMzMzMzMyIsInRleHRDb2xvciI6IiMzMzMiLCJtYWluQmtnIjoiI0VDRUNGRiIsInNlY29uZEJrZyI6IiNmZmZmZGUiLCJib3JkZXIxIjoiIzkzNzBEQiIsImJvcmRlcjIiOiIjYWFhYTMzIiwiYXJyb3doZWFkQ29sb3IiOiIjMzMzMzMzIiwiZm9udEZhbWlseSI6IlwidHJlYnVjaGV0IG1zXCIsIHZlcmRhbmEsIGFyaWFsIiwiZm9udFNpemUiOiIxNnB4IiwibGFiZWxCYWNrZ3JvdW5kIjoiI2U4ZThlOCIsIm5vZGVCa2ciOiIjRUNFQ0ZGIiwibm9kZUJvcmRlciI6IiM5MzcwREIiLCJjbHVzdGVyQmtnIjoiI2ZmZmZkZSIsImNsdXN0ZXJCb3JkZXIiOiIjYWFhYTMzIiwiZGVmYXVsdExpbmtDb2xvciI6IiMzMzMzMzMiLCJ0aXRsZUNvbG9yIjoiIzMzMyIsImVkZ2VMYWJlbEJhY2tncm91bmQiOiIjZThlOGU4IiwiYWN0b3JCb3JkZXIiOiJoc2woMjU5LjYyNjE2ODIyNDMsIDU5Ljc3NjUzNjMxMjglLCA4Ny45MDE5NjA3ODQzJSkiLCJhY3RvckJrZyI6IiNFQ0VDRkYiLCJhY3RvclRleHRDb2xvciI6ImJsYWNrIiwiYWN0b3JMaW5lQ29sb3IiOiJncmV5Iiwic2lnbmFsQ29sb3IiOiIjMzMzIiwic2lnbmFsVGV4dENvbG9yIjoiIzMzMyIsImxhYmVsQm94QmtnQ29sb3IiOiIjRUNFQ0ZGIiwibGFiZWxCb3hCb3JkZXJDb2xvciI6ImhzbCgyNTkuNjI2MTY4MjI0MywgNTkuNzc2NTM2MzEyOCUsIDg3LjkwMTk2MDc4NDMlKSIsImxhYmVsVGV4dENvbG9yIjoiYmxhY2siLCJsb29wVGV4dENvbG9yIjoiYmxhY2siLCJub3RlQm9yZGVyQ29sb3IiOiIjYWFhYTMzIiwibm90ZUJrZ0NvbG9yIjoiI2ZmZjVhZCIsIm5vdGVUZXh0Q29sb3IiOiJibGFjayIsImFjdGl2YXRpb25Cb3JkZXJDb2xvciI6IiM2NjYiLCJhY3RpdmF0aW9uQmtnQ29sb3IiOiIjZjRmNGY0Iiwic2VxdWVuY2VOdW1iZXJDb2xvciI6IndoaXRlIiwic2VjdGlvbkJrZ0NvbG9yIjoicmdiYSgxMDIsIDEwMiwgMjU1LCAwLjQ5KSIsImFsdFNlY3Rpb25Ca2dDb2xvciI6IndoaXRlIiwic2VjdGlvbkJrZ0NvbG9yMiI6IiNmZmY0MDAiLCJ0YXNrQm9yZGVyQ29sb3IiOiIjNTM0ZmJjIiwidGFza0JrZ0NvbG9yIjoiIzhhOTBkZCIsInRhc2tUZXh0TGlnaHRDb2xvciI6IndoaXRlIiwidGFza1RleHRDb2xvciI6IndoaXRlIiwidGFza1RleHREYXJrQ29sb3IiOiJibGFjayIsInRhc2tUZXh0T3V0c2lkZUNvbG9yIjoiYmxhY2siLCJ0YXNrVGV4dENsaWNrYWJsZUNvbG9yIjoiIzAwMzE2MyIsImFjdGl2ZVRhc2tCb3JkZXJDb2xvciI6IiM1MzRmYmMiLCJhY3RpdmVUYXNrQmtnQ29sb3IiOiIjYmZjN2ZmIiwiZ3JpZENvbG9yIjoibGlnaHRncmV5IiwiZG9uZVRhc2tCa2dDb2xvciI6ImxpZ2h0Z3JleSIsImRvbmVUYXNrQm9yZGVyQ29sb3IiOiJncmV5IiwiY3JpdEJvcmRlckNvbG9yIjoiI2ZmODg4OCIsImNyaXRCa2dDb2xvciI6InJlZCIsInRvZGF5TGluZUNvbG9yIjoicmVkIiwibGFiZWxDb2xvciI6ImJsYWNrIiwiZXJyb3JCa2dDb2xvciI6IiM1NTIyMjIiLCJlcnJvclRleHRDb2xvciI6IiM1NTIyMjIiLCJjbGFzc1RleHQiOiIjMTMxMzAwIiwiZmlsbFR5cGUwIjoiI0VDRUNGRiIsImZpbGxUeXBlMSI6IiNmZmZmZGUiLCJmaWxsVHlwZTIiOiJoc2woMzA0LCAxMDAlLCA5Ni4yNzQ1MDk4MDM5JSkiLCJmaWxsVHlwZTMiOiJoc2woMTI0LCAxMDAlLCA5My41Mjk0MTE3NjQ3JSkiLCJmaWxsVHlwZTQiOiJoc2woMTc2LCAxMDAlLCA5Ni4yNzQ1MDk4MDM5JSkiLCJmaWxsVHlwZTUiOiJoc2woLTQsIDEwMCUsIDkzLjUyOTQxMTc2NDclKSIsImZpbGxUeXBlNiI6ImhzbCg4LCAxMDAlLCA5Ni4yNzQ1MDk4MDM5JSkiLCJmaWxsVHlwZTciOiJoc2woMTg4LCAxMDAlLCA5My41Mjk0MTE3NjQ3JSkifX0sInVwZGF0ZUVkaXRvciI6ZmFsc2V9)](https://mermaid-js.github.io/mermaid-live-editor/#/edit/eyJjb2RlIjoic2VxdWVuY2VEaWFncmFtXG4gIHBhcnRpY2lwYW50IEMgYXMgQ2xpZW50XG4gIHBhcnRpY2lwYW50IFMgYXMgU2VydmVyXG4gIHBhcnRpY2lwYW50IE8gYXMgT3JpZ2luXG4gIEMtPj5TOiByZXEgZmlsZVxuICBhY3RpdmF0ZSBTXG4gIG9wdCBmZXRjaCBmaWxlXG4gICAgUy0-Pk86IHJlcSBmaWxlXG4gICAgYWN0aXZhdGUgT1xuICAgIE8tLT4-Uzogc2VydmUgZmlsZVxuICAgIGRlYWN0aXZhdGUgT1xuICBlbmRcbiAgUy0tPj5DOiBzZXJ2ZSBmaWxlXG4gIGRlYWN0aXZhdGUgU1xuIiwibWVybWFpZCI6eyJ0aGVtZSI6ImRlZmF1bHQiLCJ0aGVtZVZhcmlhYmxlcyI6eyJiYWNrZ3JvdW5kIjoid2hpdGUiLCJwcmltYXJ5Q29sb3IiOiIjRUNFQ0ZGIiwic2Vjb25kYXJ5Q29sb3IiOiIjZmZmZmRlIiwidGVydGlhcnlDb2xvciI6ImhzbCg4MCwgMTAwJSwgOTYuMjc0NTA5ODAzOSUpIiwicHJpbWFyeUJvcmRlckNvbG9yIjoiaHNsKDI0MCwgNjAlLCA4Ni4yNzQ1MDk4MDM5JSkiLCJzZWNvbmRhcnlCb3JkZXJDb2xvciI6ImhzbCg2MCwgNjAlLCA4My41Mjk0MTE3NjQ3JSkiLCJ0ZXJ0aWFyeUJvcmRlckNvbG9yIjoiaHNsKDgwLCA2MCUsIDg2LjI3NDUwOTgwMzklKSIsInByaW1hcnlUZXh0Q29sb3IiOiIjMTMxMzAwIiwic2Vjb25kYXJ5VGV4dENvbG9yIjoiIzAwMDAyMSIsInRlcnRpYXJ5VGV4dENvbG9yIjoicmdiKDkuNTAwMDAwMDAwMSwgOS41MDAwMDAwMDAxLCA5LjUwMDAwMDAwMDEpIiwibGluZUNvbG9yIjoiIzMzMzMzMyIsInRleHRDb2xvciI6IiMzMzMiLCJtYWluQmtnIjoiI0VDRUNGRiIsInNlY29uZEJrZyI6IiNmZmZmZGUiLCJib3JkZXIxIjoiIzkzNzBEQiIsImJvcmRlcjIiOiIjYWFhYTMzIiwiYXJyb3doZWFkQ29sb3IiOiIjMzMzMzMzIiwiZm9udEZhbWlseSI6IlwidHJlYnVjaGV0IG1zXCIsIHZlcmRhbmEsIGFyaWFsIiwiZm9udFNpemUiOiIxNnB4IiwibGFiZWxCYWNrZ3JvdW5kIjoiI2U4ZThlOCIsIm5vZGVCa2ciOiIjRUNFQ0ZGIiwibm9kZUJvcmRlciI6IiM5MzcwREIiLCJjbHVzdGVyQmtnIjoiI2ZmZmZkZSIsImNsdXN0ZXJCb3JkZXIiOiIjYWFhYTMzIiwiZGVmYXVsdExpbmtDb2xvciI6IiMzMzMzMzMiLCJ0aXRsZUNvbG9yIjoiIzMzMyIsImVkZ2VMYWJlbEJhY2tncm91bmQiOiIjZThlOGU4IiwiYWN0b3JCb3JkZXIiOiJoc2woMjU5LjYyNjE2ODIyNDMsIDU5Ljc3NjUzNjMxMjglLCA4Ny45MDE5NjA3ODQzJSkiLCJhY3RvckJrZyI6IiNFQ0VDRkYiLCJhY3RvclRleHRDb2xvciI6ImJsYWNrIiwiYWN0b3JMaW5lQ29sb3IiOiJncmV5Iiwic2lnbmFsQ29sb3IiOiIjMzMzIiwic2lnbmFsVGV4dENvbG9yIjoiIzMzMyIsImxhYmVsQm94QmtnQ29sb3IiOiIjRUNFQ0ZGIiwibGFiZWxCb3hCb3JkZXJDb2xvciI6ImhzbCgyNTkuNjI2MTY4MjI0MywgNTkuNzc2NTM2MzEyOCUsIDg3LjkwMTk2MDc4NDMlKSIsImxhYmVsVGV4dENvbG9yIjoiYmxhY2siLCJsb29wVGV4dENvbG9yIjoiYmxhY2siLCJub3RlQm9yZGVyQ29sb3IiOiIjYWFhYTMzIiwibm90ZUJrZ0NvbG9yIjoiI2ZmZjVhZCIsIm5vdGVUZXh0Q29sb3IiOiJibGFjayIsImFjdGl2YXRpb25Cb3JkZXJDb2xvciI6IiM2NjYiLCJhY3RpdmF0aW9uQmtnQ29sb3IiOiIjZjRmNGY0Iiwic2VxdWVuY2VOdW1iZXJDb2xvciI6IndoaXRlIiwic2VjdGlvbkJrZ0NvbG9yIjoicmdiYSgxMDIsIDEwMiwgMjU1LCAwLjQ5KSIsImFsdFNlY3Rpb25Ca2dDb2xvciI6IndoaXRlIiwic2VjdGlvbkJrZ0NvbG9yMiI6IiNmZmY0MDAiLCJ0YXNrQm9yZGVyQ29sb3IiOiIjNTM0ZmJjIiwidGFza0JrZ0NvbG9yIjoiIzhhOTBkZCIsInRhc2tUZXh0TGlnaHRDb2xvciI6IndoaXRlIiwidGFza1RleHRDb2xvciI6IndoaXRlIiwidGFza1RleHREYXJrQ29sb3IiOiJibGFjayIsInRhc2tUZXh0T3V0c2lkZUNvbG9yIjoiYmxhY2siLCJ0YXNrVGV4dENsaWNrYWJsZUNvbG9yIjoiIzAwMzE2MyIsImFjdGl2ZVRhc2tCb3JkZXJDb2xvciI6IiM1MzRmYmMiLCJhY3RpdmVUYXNrQmtnQ29sb3IiOiIjYmZjN2ZmIiwiZ3JpZENvbG9yIjoibGlnaHRncmV5IiwiZG9uZVRhc2tCa2dDb2xvciI6ImxpZ2h0Z3JleSIsImRvbmVUYXNrQm9yZGVyQ29sb3IiOiJncmV5IiwiY3JpdEJvcmRlckNvbG9yIjoiI2ZmODg4OCIsImNyaXRCa2dDb2xvciI6InJlZCIsInRvZGF5TGluZUNvbG9yIjoicmVkIiwibGFiZWxDb2xvciI6ImJsYWNrIiwiZXJyb3JCa2dDb2xvciI6IiM1NTIyMjIiLCJlcnJvclRleHRDb2xvciI6IiM1NTIyMjIiLCJjbGFzc1RleHQiOiIjMTMxMzAwIiwiZmlsbFR5cGUwIjoiI0VDRUNGRiIsImZpbGxUeXBlMSI6IiNmZmZmZGUiLCJmaWxsVHlwZTIiOiJoc2woMzA0LCAxMDAlLCA5Ni4yNzQ1MDk4MDM5JSkiLCJmaWxsVHlwZTMiOiJoc2woMTI0LCAxMDAlLCA5My41Mjk0MTE3NjQ3JSkiLCJmaWxsVHlwZTQiOiJoc2woMTc2LCAxMDAlLCA5Ni4yNzQ1MDk4MDM5JSkiLCJmaWxsVHlwZTUiOiJoc2woLTQsIDEwMCUsIDkzLjUyOTQxMTc2NDclKSIsImZpbGxUeXBlNiI6ImhzbCg4LCAxMDAlLCA5Ni4yNzQ1MDk4MDM5JSkiLCJmaWxsVHlwZTciOiJoc2woMTg4LCAxMDAlLCA5My41Mjk0MTE3NjQ3JSkifX0sInVwZGF0ZUVkaXRvciI6ZmFsc2V9) +![Current flow for receiving](images/2846-receiving-current.jpeg) ## Proposal ### Data structures @@ -29,7 +30,7 @@ hint on where to get the media from instead, which the client may send to the server as a query parameter. ### Sending -[![](https://mermaid.ink/img/eyJjb2RlIjoic2VxdWVuY2VEaWFncmFtXG4gICAgcGFydGljaXBhbnQgQyBhcyBDbGllbnRcbiAgICBwYXJ0aWNpcGFudCBTIGFzIFNlcnZlclxuICAgIEMtPj5TOiB1cGxvYWQgZmlsZVxuICAgIGFjdGl2YXRlIFNcbiAgICBTLT4-UzogY2FsY3VsYXRlIENJRFxuICAgIFMtLT4-QzogcmV0dXJuIE1YQyBVUkwgd2l0aCBDSURcbiAgICBkZWFjdGl2YXRlIFNcblxuICAgIG9wdCB2ZXJpZnkgQ0lEXG4gICAgICBDLT4-QzogdmVyaWZ5IHRoZSBDSURcbiAgICBlbmRcblxuICAgIEMtPj5TOiBzZW5kIGV2ZW50IHdpdGggTVhDIFVSTFxuICAgIGFjdGl2YXRlIFNcbiAgICBTLS0-PkM6IGV2ZW50IElEXG4gICAgZGVhY3RpdmF0ZSBTXG4iLCJtZXJtYWlkIjp7InRoZW1lIjoiZGVmYXVsdCIsInRoZW1lVmFyaWFibGVzIjp7ImJhY2tncm91bmQiOiJ3aGl0ZSIsInByaW1hcnlDb2xvciI6IiNFQ0VDRkYiLCJzZWNvbmRhcnlDb2xvciI6IiNmZmZmZGUiLCJ0ZXJ0aWFyeUNvbG9yIjoiaHNsKDgwLCAxMDAlLCA5Ni4yNzQ1MDk4MDM5JSkiLCJwcmltYXJ5Qm9yZGVyQ29sb3IiOiJoc2woMjQwLCA2MCUsIDg2LjI3NDUwOTgwMzklKSIsInNlY29uZGFyeUJvcmRlckNvbG9yIjoiaHNsKDYwLCA2MCUsIDgzLjUyOTQxMTc2NDclKSIsInRlcnRpYXJ5Qm9yZGVyQ29sb3IiOiJoc2woODAsIDYwJSwgODYuMjc0NTA5ODAzOSUpIiwicHJpbWFyeVRleHRDb2xvciI6IiMxMzEzMDAiLCJzZWNvbmRhcnlUZXh0Q29sb3IiOiIjMDAwMDIxIiwidGVydGlhcnlUZXh0Q29sb3IiOiJyZ2IoOS41MDAwMDAwMDAxLCA5LjUwMDAwMDAwMDEsIDkuNTAwMDAwMDAwMSkiLCJsaW5lQ29sb3IiOiIjMzMzMzMzIiwidGV4dENvbG9yIjoiIzMzMyIsIm1haW5Ca2ciOiIjRUNFQ0ZGIiwic2Vjb25kQmtnIjoiI2ZmZmZkZSIsImJvcmRlcjEiOiIjOTM3MERCIiwiYm9yZGVyMiI6IiNhYWFhMzMiLCJhcnJvd2hlYWRDb2xvciI6IiMzMzMzMzMiLCJmb250RmFtaWx5IjoiXCJ0cmVidWNoZXQgbXNcIiwgdmVyZGFuYSwgYXJpYWwiLCJmb250U2l6ZSI6IjE2cHgiLCJsYWJlbEJhY2tncm91bmQiOiIjZThlOGU4Iiwibm9kZUJrZyI6IiNFQ0VDRkYiLCJub2RlQm9yZGVyIjoiIzkzNzBEQiIsImNsdXN0ZXJCa2ciOiIjZmZmZmRlIiwiY2x1c3RlckJvcmRlciI6IiNhYWFhMzMiLCJkZWZhdWx0TGlua0NvbG9yIjoiIzMzMzMzMyIsInRpdGxlQ29sb3IiOiIjMzMzIiwiZWRnZUxhYmVsQmFja2dyb3VuZCI6IiNlOGU4ZTgiLCJhY3RvckJvcmRlciI6ImhzbCgyNTkuNjI2MTY4MjI0MywgNTkuNzc2NTM2MzEyOCUsIDg3LjkwMTk2MDc4NDMlKSIsImFjdG9yQmtnIjoiI0VDRUNGRiIsImFjdG9yVGV4dENvbG9yIjoiYmxhY2siLCJhY3RvckxpbmVDb2xvciI6ImdyZXkiLCJzaWduYWxDb2xvciI6IiMzMzMiLCJzaWduYWxUZXh0Q29sb3IiOiIjMzMzIiwibGFiZWxCb3hCa2dDb2xvciI6IiNFQ0VDRkYiLCJsYWJlbEJveEJvcmRlckNvbG9yIjoiaHNsKDI1OS42MjYxNjgyMjQzLCA1OS43NzY1MzYzMTI4JSwgODcuOTAxOTYwNzg0MyUpIiwibGFiZWxUZXh0Q29sb3IiOiJibGFjayIsImxvb3BUZXh0Q29sb3IiOiJibGFjayIsIm5vdGVCb3JkZXJDb2xvciI6IiNhYWFhMzMiLCJub3RlQmtnQ29sb3IiOiIjZmZmNWFkIiwibm90ZVRleHRDb2xvciI6ImJsYWNrIiwiYWN0aXZhdGlvbkJvcmRlckNvbG9yIjoiIzY2NiIsImFjdGl2YXRpb25Ca2dDb2xvciI6IiNmNGY0ZjQiLCJzZXF1ZW5jZU51bWJlckNvbG9yIjoid2hpdGUiLCJzZWN0aW9uQmtnQ29sb3IiOiJyZ2JhKDEwMiwgMTAyLCAyNTUsIDAuNDkpIiwiYWx0U2VjdGlvbkJrZ0NvbG9yIjoid2hpdGUiLCJzZWN0aW9uQmtnQ29sb3IyIjoiI2ZmZjQwMCIsInRhc2tCb3JkZXJDb2xvciI6IiM1MzRmYmMiLCJ0YXNrQmtnQ29sb3IiOiIjOGE5MGRkIiwidGFza1RleHRMaWdodENvbG9yIjoid2hpdGUiLCJ0YXNrVGV4dENvbG9yIjoid2hpdGUiLCJ0YXNrVGV4dERhcmtDb2xvciI6ImJsYWNrIiwidGFza1RleHRPdXRzaWRlQ29sb3IiOiJibGFjayIsInRhc2tUZXh0Q2xpY2thYmxlQ29sb3IiOiIjMDAzMTYzIiwiYWN0aXZlVGFza0JvcmRlckNvbG9yIjoiIzUzNGZiYyIsImFjdGl2ZVRhc2tCa2dDb2xvciI6IiNiZmM3ZmYiLCJncmlkQ29sb3IiOiJsaWdodGdyZXkiLCJkb25lVGFza0JrZ0NvbG9yIjoibGlnaHRncmV5IiwiZG9uZVRhc2tCb3JkZXJDb2xvciI6ImdyZXkiLCJjcml0Qm9yZGVyQ29sb3IiOiIjZmY4ODg4IiwiY3JpdEJrZ0NvbG9yIjoicmVkIiwidG9kYXlMaW5lQ29sb3IiOiJyZWQiLCJsYWJlbENvbG9yIjoiYmxhY2siLCJlcnJvckJrZ0NvbG9yIjoiIzU1MjIyMiIsImVycm9yVGV4dENvbG9yIjoiIzU1MjIyMiIsImNsYXNzVGV4dCI6IiMxMzEzMDAiLCJmaWxsVHlwZTAiOiIjRUNFQ0ZGIiwiZmlsbFR5cGUxIjoiI2ZmZmZkZSIsImZpbGxUeXBlMiI6ImhzbCgzMDQsIDEwMCUsIDk2LjI3NDUwOTgwMzklKSIsImZpbGxUeXBlMyI6ImhzbCgxMjQsIDEwMCUsIDkzLjUyOTQxMTc2NDclKSIsImZpbGxUeXBlNCI6ImhzbCgxNzYsIDEwMCUsIDk2LjI3NDUwOTgwMzklKSIsImZpbGxUeXBlNSI6ImhzbCgtNCwgMTAwJSwgOTMuNTI5NDExNzY0NyUpIiwiZmlsbFR5cGU2IjoiaHNsKDgsIDEwMCUsIDk2LjI3NDUwOTgwMzklKSIsImZpbGxUeXBlNyI6ImhzbCgxODgsIDEwMCUsIDkzLjUyOTQxMTc2NDclKSJ9fSwidXBkYXRlRWRpdG9yIjpmYWxzZX0)](https://mermaid-js.github.io/mermaid-live-editor/#/edit/eyJjb2RlIjoic2VxdWVuY2VEaWFncmFtXG4gICAgcGFydGljaXBhbnQgQyBhcyBDbGllbnRcbiAgICBwYXJ0aWNpcGFudCBTIGFzIFNlcnZlclxuICAgIEMtPj5TOiB1cGxvYWQgZmlsZVxuICAgIGFjdGl2YXRlIFNcbiAgICBTLT4-UzogY2FsY3VsYXRlIENJRFxuICAgIFMtLT4-QzogcmV0dXJuIE1YQyBVUkwgd2l0aCBDSURcbiAgICBkZWFjdGl2YXRlIFNcblxuICAgIG9wdCB2ZXJpZnkgQ0lEXG4gICAgICBDLT4-QzogdmVyaWZ5IHRoZSBDSURcbiAgICBlbmRcblxuICAgIEMtPj5TOiBzZW5kIGV2ZW50IHdpdGggTVhDIFVSTFxuICAgIGFjdGl2YXRlIFNcbiAgICBTLS0-PkM6IGV2ZW50IElEXG4gICAgZGVhY3RpdmF0ZSBTXG4iLCJtZXJtYWlkIjp7InRoZW1lIjoiZGVmYXVsdCIsInRoZW1lVmFyaWFibGVzIjp7ImJhY2tncm91bmQiOiJ3aGl0ZSIsInByaW1hcnlDb2xvciI6IiNFQ0VDRkYiLCJzZWNvbmRhcnlDb2xvciI6IiNmZmZmZGUiLCJ0ZXJ0aWFyeUNvbG9yIjoiaHNsKDgwLCAxMDAlLCA5Ni4yNzQ1MDk4MDM5JSkiLCJwcmltYXJ5Qm9yZGVyQ29sb3IiOiJoc2woMjQwLCA2MCUsIDg2LjI3NDUwOTgwMzklKSIsInNlY29uZGFyeUJvcmRlckNvbG9yIjoiaHNsKDYwLCA2MCUsIDgzLjUyOTQxMTc2NDclKSIsInRlcnRpYXJ5Qm9yZGVyQ29sb3IiOiJoc2woODAsIDYwJSwgODYuMjc0NTA5ODAzOSUpIiwicHJpbWFyeVRleHRDb2xvciI6IiMxMzEzMDAiLCJzZWNvbmRhcnlUZXh0Q29sb3IiOiIjMDAwMDIxIiwidGVydGlhcnlUZXh0Q29sb3IiOiJyZ2IoOS41MDAwMDAwMDAxLCA5LjUwMDAwMDAwMDEsIDkuNTAwMDAwMDAwMSkiLCJsaW5lQ29sb3IiOiIjMzMzMzMzIiwidGV4dENvbG9yIjoiIzMzMyIsIm1haW5Ca2ciOiIjRUNFQ0ZGIiwic2Vjb25kQmtnIjoiI2ZmZmZkZSIsImJvcmRlcjEiOiIjOTM3MERCIiwiYm9yZGVyMiI6IiNhYWFhMzMiLCJhcnJvd2hlYWRDb2xvciI6IiMzMzMzMzMiLCJmb250RmFtaWx5IjoiXCJ0cmVidWNoZXQgbXNcIiwgdmVyZGFuYSwgYXJpYWwiLCJmb250U2l6ZSI6IjE2cHgiLCJsYWJlbEJhY2tncm91bmQiOiIjZThlOGU4Iiwibm9kZUJrZyI6IiNFQ0VDRkYiLCJub2RlQm9yZGVyIjoiIzkzNzBEQiIsImNsdXN0ZXJCa2ciOiIjZmZmZmRlIiwiY2x1c3RlckJvcmRlciI6IiNhYWFhMzMiLCJkZWZhdWx0TGlua0NvbG9yIjoiIzMzMzMzMyIsInRpdGxlQ29sb3IiOiIjMzMzIiwiZWRnZUxhYmVsQmFja2dyb3VuZCI6IiNlOGU4ZTgiLCJhY3RvckJvcmRlciI6ImhzbCgyNTkuNjI2MTY4MjI0MywgNTkuNzc2NTM2MzEyOCUsIDg3LjkwMTk2MDc4NDMlKSIsImFjdG9yQmtnIjoiI0VDRUNGRiIsImFjdG9yVGV4dENvbG9yIjoiYmxhY2siLCJhY3RvckxpbmVDb2xvciI6ImdyZXkiLCJzaWduYWxDb2xvciI6IiMzMzMiLCJzaWduYWxUZXh0Q29sb3IiOiIjMzMzIiwibGFiZWxCb3hCa2dDb2xvciI6IiNFQ0VDRkYiLCJsYWJlbEJveEJvcmRlckNvbG9yIjoiaHNsKDI1OS42MjYxNjgyMjQzLCA1OS43NzY1MzYzMTI4JSwgODcuOTAxOTYwNzg0MyUpIiwibGFiZWxUZXh0Q29sb3IiOiJibGFjayIsImxvb3BUZXh0Q29sb3IiOiJibGFjayIsIm5vdGVCb3JkZXJDb2xvciI6IiNhYWFhMzMiLCJub3RlQmtnQ29sb3IiOiIjZmZmNWFkIiwibm90ZVRleHRDb2xvciI6ImJsYWNrIiwiYWN0aXZhdGlvbkJvcmRlckNvbG9yIjoiIzY2NiIsImFjdGl2YXRpb25Ca2dDb2xvciI6IiNmNGY0ZjQiLCJzZXF1ZW5jZU51bWJlckNvbG9yIjoid2hpdGUiLCJzZWN0aW9uQmtnQ29sb3IiOiJyZ2JhKDEwMiwgMTAyLCAyNTUsIDAuNDkpIiwiYWx0U2VjdGlvbkJrZ0NvbG9yIjoid2hpdGUiLCJzZWN0aW9uQmtnQ29sb3IyIjoiI2ZmZjQwMCIsInRhc2tCb3JkZXJDb2xvciI6IiM1MzRmYmMiLCJ0YXNrQmtnQ29sb3IiOiIjOGE5MGRkIiwidGFza1RleHRMaWdodENvbG9yIjoid2hpdGUiLCJ0YXNrVGV4dENvbG9yIjoid2hpdGUiLCJ0YXNrVGV4dERhcmtDb2xvciI6ImJsYWNrIiwidGFza1RleHRPdXRzaWRlQ29sb3IiOiJibGFjayIsInRhc2tUZXh0Q2xpY2thYmxlQ29sb3IiOiIjMDAzMTYzIiwiYWN0aXZlVGFza0JvcmRlckNvbG9yIjoiIzUzNGZiYyIsImFjdGl2ZVRhc2tCa2dDb2xvciI6IiNiZmM3ZmYiLCJncmlkQ29sb3IiOiJsaWdodGdyZXkiLCJkb25lVGFza0JrZ0NvbG9yIjoibGlnaHRncmV5IiwiZG9uZVRhc2tCb3JkZXJDb2xvciI6ImdyZXkiLCJjcml0Qm9yZGVyQ29sb3IiOiIjZmY4ODg4IiwiY3JpdEJrZ0NvbG9yIjoicmVkIiwidG9kYXlMaW5lQ29sb3IiOiJyZWQiLCJsYWJlbENvbG9yIjoiYmxhY2siLCJlcnJvckJrZ0NvbG9yIjoiIzU1MjIyMiIsImVycm9yVGV4dENvbG9yIjoiIzU1MjIyMiIsImNsYXNzVGV4dCI6IiMxMzEzMDAiLCJmaWxsVHlwZTAiOiIjRUNFQ0ZGIiwiZmlsbFR5cGUxIjoiI2ZmZmZkZSIsImZpbGxUeXBlMiI6ImhzbCgzMDQsIDEwMCUsIDk2LjI3NDUwOTgwMzklKSIsImZpbGxUeXBlMyI6ImhzbCgxMjQsIDEwMCUsIDkzLjUyOTQxMTc2NDclKSIsImZpbGxUeXBlNCI6ImhzbCgxNzYsIDEwMCUsIDk2LjI3NDUwOTgwMzklKSIsImZpbGxUeXBlNSI6ImhzbCgtNCwgMTAwJSwgOTMuNTI5NDExNzY0NyUpIiwiZmlsbFR5cGU2IjoiaHNsKDgsIDEwMCUsIDk2LjI3NDUwOTgwMzklKSIsImZpbGxUeXBlNyI6ImhzbCgxODgsIDEwMCUsIDkzLjUyOTQxMTc2NDclKSJ9fSwidXBkYXRlRWRpdG9yIjpmYWxzZX0) +![Proposed flow for sending](images/2846-sending-proposed.jpeg) As you can see, this is very similar to what happens on existing clients and servers. The client behaviour *can* change (in terms of verification of file @@ -48,7 +49,7 @@ https://github.com/multiformats/multicodec/blob/master/table.csv has a list of all hashes supported by the multihash spec. SHA2 and SHA3 should be safe bets). ### Receiving -[![](https://mermaid.ink/img/eyJjb2RlIjoic2VxdWVuY2VEaWFncmFtXG4gIHBhcnRpY2lwYW50IEMgYXMgQ2xpZW50XG4gIHBhcnRpY2lwYW50IFMgYXMgU2VydmVyXG4gIHBhcnRpY2lwYW50IFIgYXMgUmVtb3RlXG4gIEMtPj5TOiByZXEgZmlsZSB3aXRoIENJRCBhbmQgaGludFxuICBOb3RlIG92ZXIgQyxTOiBUaGUgKG9wdGlvbmFsKSBoaW50IGlzIGEgcm9vbStldmVudCBJRFxuICBhY3RpdmF0ZSBTXG4gIG9wdCBmZXRjaCBmaWxlIGZyb20gcmVtb3RlXG4gICAgbG9vcCB0cnkgcG90ZW50aWFsIHJlbW90ZXNcbiAgICAgIFMtPj5SOiByZXEgZmlsZVxuICAgICAgYWN0aXZhdGUgUlxuICAgICAgUi0tPj5TOiBzZXJ2ZSBmaWxlXG4gICAgICBkZWFjdGl2YXRlIFJcbiAgICBlbmRcbiAgZW5kXG4gIFMtPj5TOiB2ZXJpZnkgdGhlIENJRFxuICBTLS0-PkM6IHNlcnZlIGZpbGVcbiAgZGVhY3RpdmF0ZSBTXG4gIG9wdCB2ZXJpZnkgQ0lEXG4gICAgQy0-PkM6IHZlcmlmeSB0aGUgQ0lEXG4gIGVuZFxuIiwibWVybWFpZCI6eyJ0aGVtZSI6ImRlZmF1bHQiLCJ0aGVtZVZhcmlhYmxlcyI6eyJiYWNrZ3JvdW5kIjoid2hpdGUiLCJwcmltYXJ5Q29sb3IiOiIjRUNFQ0ZGIiwic2Vjb25kYXJ5Q29sb3IiOiIjZmZmZmRlIiwidGVydGlhcnlDb2xvciI6ImhzbCg4MCwgMTAwJSwgOTYuMjc0NTA5ODAzOSUpIiwicHJpbWFyeUJvcmRlckNvbG9yIjoiaHNsKDI0MCwgNjAlLCA4Ni4yNzQ1MDk4MDM5JSkiLCJzZWNvbmRhcnlCb3JkZXJDb2xvciI6ImhzbCg2MCwgNjAlLCA4My41Mjk0MTE3NjQ3JSkiLCJ0ZXJ0aWFyeUJvcmRlckNvbG9yIjoiaHNsKDgwLCA2MCUsIDg2LjI3NDUwOTgwMzklKSIsInByaW1hcnlUZXh0Q29sb3IiOiIjMTMxMzAwIiwic2Vjb25kYXJ5VGV4dENvbG9yIjoiIzAwMDAyMSIsInRlcnRpYXJ5VGV4dENvbG9yIjoicmdiKDkuNTAwMDAwMDAwMSwgOS41MDAwMDAwMDAxLCA5LjUwMDAwMDAwMDEpIiwibGluZUNvbG9yIjoiIzMzMzMzMyIsInRleHRDb2xvciI6IiMzMzMiLCJtYWluQmtnIjoiI0VDRUNGRiIsInNlY29uZEJrZyI6IiNmZmZmZGUiLCJib3JkZXIxIjoiIzkzNzBEQiIsImJvcmRlcjIiOiIjYWFhYTMzIiwiYXJyb3doZWFkQ29sb3IiOiIjMzMzMzMzIiwiZm9udEZhbWlseSI6IlwidHJlYnVjaGV0IG1zXCIsIHZlcmRhbmEsIGFyaWFsIiwiZm9udFNpemUiOiIxNnB4IiwibGFiZWxCYWNrZ3JvdW5kIjoiI2U4ZThlOCIsIm5vZGVCa2ciOiIjRUNFQ0ZGIiwibm9kZUJvcmRlciI6IiM5MzcwREIiLCJjbHVzdGVyQmtnIjoiI2ZmZmZkZSIsImNsdXN0ZXJCb3JkZXIiOiIjYWFhYTMzIiwiZGVmYXVsdExpbmtDb2xvciI6IiMzMzMzMzMiLCJ0aXRsZUNvbG9yIjoiIzMzMyIsImVkZ2VMYWJlbEJhY2tncm91bmQiOiIjZThlOGU4IiwiYWN0b3JCb3JkZXIiOiJoc2woMjU5LjYyNjE2ODIyNDMsIDU5Ljc3NjUzNjMxMjglLCA4Ny45MDE5NjA3ODQzJSkiLCJhY3RvckJrZyI6IiNFQ0VDRkYiLCJhY3RvclRleHRDb2xvciI6ImJsYWNrIiwiYWN0b3JMaW5lQ29sb3IiOiJncmV5Iiwic2lnbmFsQ29sb3IiOiIjMzMzIiwic2lnbmFsVGV4dENvbG9yIjoiIzMzMyIsImxhYmVsQm94QmtnQ29sb3IiOiIjRUNFQ0ZGIiwibGFiZWxCb3hCb3JkZXJDb2xvciI6ImhzbCgyNTkuNjI2MTY4MjI0MywgNTkuNzc2NTM2MzEyOCUsIDg3LjkwMTk2MDc4NDMlKSIsImxhYmVsVGV4dENvbG9yIjoiYmxhY2siLCJsb29wVGV4dENvbG9yIjoiYmxhY2siLCJub3RlQm9yZGVyQ29sb3IiOiIjYWFhYTMzIiwibm90ZUJrZ0NvbG9yIjoiI2ZmZjVhZCIsIm5vdGVUZXh0Q29sb3IiOiJibGFjayIsImFjdGl2YXRpb25Cb3JkZXJDb2xvciI6IiM2NjYiLCJhY3RpdmF0aW9uQmtnQ29sb3IiOiIjZjRmNGY0Iiwic2VxdWVuY2VOdW1iZXJDb2xvciI6IndoaXRlIiwic2VjdGlvbkJrZ0NvbG9yIjoicmdiYSgxMDIsIDEwMiwgMjU1LCAwLjQ5KSIsImFsdFNlY3Rpb25Ca2dDb2xvciI6IndoaXRlIiwic2VjdGlvbkJrZ0NvbG9yMiI6IiNmZmY0MDAiLCJ0YXNrQm9yZGVyQ29sb3IiOiIjNTM0ZmJjIiwidGFza0JrZ0NvbG9yIjoiIzhhOTBkZCIsInRhc2tUZXh0TGlnaHRDb2xvciI6IndoaXRlIiwidGFza1RleHRDb2xvciI6IndoaXRlIiwidGFza1RleHREYXJrQ29sb3IiOiJibGFjayIsInRhc2tUZXh0T3V0c2lkZUNvbG9yIjoiYmxhY2siLCJ0YXNrVGV4dENsaWNrYWJsZUNvbG9yIjoiIzAwMzE2MyIsImFjdGl2ZVRhc2tCb3JkZXJDb2xvciI6IiM1MzRmYmMiLCJhY3RpdmVUYXNrQmtnQ29sb3IiOiIjYmZjN2ZmIiwiZ3JpZENvbG9yIjoibGlnaHRncmV5IiwiZG9uZVRhc2tCa2dDb2xvciI6ImxpZ2h0Z3JleSIsImRvbmVUYXNrQm9yZGVyQ29sb3IiOiJncmV5IiwiY3JpdEJvcmRlckNvbG9yIjoiI2ZmODg4OCIsImNyaXRCa2dDb2xvciI6InJlZCIsInRvZGF5TGluZUNvbG9yIjoicmVkIiwibGFiZWxDb2xvciI6ImJsYWNrIiwiZXJyb3JCa2dDb2xvciI6IiM1NTIyMjIiLCJlcnJvclRleHRDb2xvciI6IiM1NTIyMjIiLCJjbGFzc1RleHQiOiIjMTMxMzAwIiwiZmlsbFR5cGUwIjoiI0VDRUNGRiIsImZpbGxUeXBlMSI6IiNmZmZmZGUiLCJmaWxsVHlwZTIiOiJoc2woMzA0LCAxMDAlLCA5Ni4yNzQ1MDk4MDM5JSkiLCJmaWxsVHlwZTMiOiJoc2woMTI0LCAxMDAlLCA5My41Mjk0MTE3NjQ3JSkiLCJmaWxsVHlwZTQiOiJoc2woMTc2LCAxMDAlLCA5Ni4yNzQ1MDk4MDM5JSkiLCJmaWxsVHlwZTUiOiJoc2woLTQsIDEwMCUsIDkzLjUyOTQxMTc2NDclKSIsImZpbGxUeXBlNiI6ImhzbCg4LCAxMDAlLCA5Ni4yNzQ1MDk4MDM5JSkiLCJmaWxsVHlwZTciOiJoc2woMTg4LCAxMDAlLCA5My41Mjk0MTE3NjQ3JSkifX0sInVwZGF0ZUVkaXRvciI6ZmFsc2V9)](https://mermaid-js.github.io/mermaid-live-editor/#/edit/eyJjb2RlIjoic2VxdWVuY2VEaWFncmFtXG4gIHBhcnRpY2lwYW50IEMgYXMgQ2xpZW50XG4gIHBhcnRpY2lwYW50IFMgYXMgU2VydmVyXG4gIHBhcnRpY2lwYW50IFIgYXMgUmVtb3RlXG4gIEMtPj5TOiByZXEgZmlsZSB3aXRoIENJRCBhbmQgaGludFxuICBOb3RlIG92ZXIgQyxTOiBUaGUgKG9wdGlvbmFsKSBoaW50IGlzIGEgcm9vbStldmVudCBJRFxuICBhY3RpdmF0ZSBTXG4gIG9wdCBmZXRjaCBmaWxlIGZyb20gcmVtb3RlXG4gICAgbG9vcCB0cnkgcG90ZW50aWFsIHJlbW90ZXNcbiAgICAgIFMtPj5SOiByZXEgZmlsZVxuICAgICAgYWN0aXZhdGUgUlxuICAgICAgUi0tPj5TOiBzZXJ2ZSBmaWxlXG4gICAgICBkZWFjdGl2YXRlIFJcbiAgICBlbmRcbiAgZW5kXG4gIFMtPj5TOiB2ZXJpZnkgdGhlIENJRFxuICBTLS0-PkM6IHNlcnZlIGZpbGVcbiAgZGVhY3RpdmF0ZSBTXG4gIG9wdCB2ZXJpZnkgQ0lEXG4gICAgQy0-PkM6IHZlcmlmeSB0aGUgQ0lEXG4gIGVuZFxuIiwibWVybWFpZCI6eyJ0aGVtZSI6ImRlZmF1bHQiLCJ0aGVtZVZhcmlhYmxlcyI6eyJiYWNrZ3JvdW5kIjoid2hpdGUiLCJwcmltYXJ5Q29sb3IiOiIjRUNFQ0ZGIiwic2Vjb25kYXJ5Q29sb3IiOiIjZmZmZmRlIiwidGVydGlhcnlDb2xvciI6ImhzbCg4MCwgMTAwJSwgOTYuMjc0NTA5ODAzOSUpIiwicHJpbWFyeUJvcmRlckNvbG9yIjoiaHNsKDI0MCwgNjAlLCA4Ni4yNzQ1MDk4MDM5JSkiLCJzZWNvbmRhcnlCb3JkZXJDb2xvciI6ImhzbCg2MCwgNjAlLCA4My41Mjk0MTE3NjQ3JSkiLCJ0ZXJ0aWFyeUJvcmRlckNvbG9yIjoiaHNsKDgwLCA2MCUsIDg2LjI3NDUwOTgwMzklKSIsInByaW1hcnlUZXh0Q29sb3IiOiIjMTMxMzAwIiwic2Vjb25kYXJ5VGV4dENvbG9yIjoiIzAwMDAyMSIsInRlcnRpYXJ5VGV4dENvbG9yIjoicmdiKDkuNTAwMDAwMDAwMSwgOS41MDAwMDAwMDAxLCA5LjUwMDAwMDAwMDEpIiwibGluZUNvbG9yIjoiIzMzMzMzMyIsInRleHRDb2xvciI6IiMzMzMiLCJtYWluQmtnIjoiI0VDRUNGRiIsInNlY29uZEJrZyI6IiNmZmZmZGUiLCJib3JkZXIxIjoiIzkzNzBEQiIsImJvcmRlcjIiOiIjYWFhYTMzIiwiYXJyb3doZWFkQ29sb3IiOiIjMzMzMzMzIiwiZm9udEZhbWlseSI6IlwidHJlYnVjaGV0IG1zXCIsIHZlcmRhbmEsIGFyaWFsIiwiZm9udFNpemUiOiIxNnB4IiwibGFiZWxCYWNrZ3JvdW5kIjoiI2U4ZThlOCIsIm5vZGVCa2ciOiIjRUNFQ0ZGIiwibm9kZUJvcmRlciI6IiM5MzcwREIiLCJjbHVzdGVyQmtnIjoiI2ZmZmZkZSIsImNsdXN0ZXJCb3JkZXIiOiIjYWFhYTMzIiwiZGVmYXVsdExpbmtDb2xvciI6IiMzMzMzMzMiLCJ0aXRsZUNvbG9yIjoiIzMzMyIsImVkZ2VMYWJlbEJhY2tncm91bmQiOiIjZThlOGU4IiwiYWN0b3JCb3JkZXIiOiJoc2woMjU5LjYyNjE2ODIyNDMsIDU5Ljc3NjUzNjMxMjglLCA4Ny45MDE5NjA3ODQzJSkiLCJhY3RvckJrZyI6IiNFQ0VDRkYiLCJhY3RvclRleHRDb2xvciI6ImJsYWNrIiwiYWN0b3JMaW5lQ29sb3IiOiJncmV5Iiwic2lnbmFsQ29sb3IiOiIjMzMzIiwic2lnbmFsVGV4dENvbG9yIjoiIzMzMyIsImxhYmVsQm94QmtnQ29sb3IiOiIjRUNFQ0ZGIiwibGFiZWxCb3hCb3JkZXJDb2xvciI6ImhzbCgyNTkuNjI2MTY4MjI0MywgNTkuNzc2NTM2MzEyOCUsIDg3LjkwMTk2MDc4NDMlKSIsImxhYmVsVGV4dENvbG9yIjoiYmxhY2siLCJsb29wVGV4dENvbG9yIjoiYmxhY2siLCJub3RlQm9yZGVyQ29sb3IiOiIjYWFhYTMzIiwibm90ZUJrZ0NvbG9yIjoiI2ZmZjVhZCIsIm5vdGVUZXh0Q29sb3IiOiJibGFjayIsImFjdGl2YXRpb25Cb3JkZXJDb2xvciI6IiM2NjYiLCJhY3RpdmF0aW9uQmtnQ29sb3IiOiIjZjRmNGY0Iiwic2VxdWVuY2VOdW1iZXJDb2xvciI6IndoaXRlIiwic2VjdGlvbkJrZ0NvbG9yIjoicmdiYSgxMDIsIDEwMiwgMjU1LCAwLjQ5KSIsImFsdFNlY3Rpb25Ca2dDb2xvciI6IndoaXRlIiwic2VjdGlvbkJrZ0NvbG9yMiI6IiNmZmY0MDAiLCJ0YXNrQm9yZGVyQ29sb3IiOiIjNTM0ZmJjIiwidGFza0JrZ0NvbG9yIjoiIzhhOTBkZCIsInRhc2tUZXh0TGlnaHRDb2xvciI6IndoaXRlIiwidGFza1RleHRDb2xvciI6IndoaXRlIiwidGFza1RleHREYXJrQ29sb3IiOiJibGFjayIsInRhc2tUZXh0T3V0c2lkZUNvbG9yIjoiYmxhY2siLCJ0YXNrVGV4dENsaWNrYWJsZUNvbG9yIjoiIzAwMzE2MyIsImFjdGl2ZVRhc2tCb3JkZXJDb2xvciI6IiM1MzRmYmMiLCJhY3RpdmVUYXNrQmtnQ29sb3IiOiIjYmZjN2ZmIiwiZ3JpZENvbG9yIjoibGlnaHRncmV5IiwiZG9uZVRhc2tCa2dDb2xvciI6ImxpZ2h0Z3JleSIsImRvbmVUYXNrQm9yZGVyQ29sb3IiOiJncmV5IiwiY3JpdEJvcmRlckNvbG9yIjoiI2ZmODg4OCIsImNyaXRCa2dDb2xvciI6InJlZCIsInRvZGF5TGluZUNvbG9yIjoicmVkIiwibGFiZWxDb2xvciI6ImJsYWNrIiwiZXJyb3JCa2dDb2xvciI6IiM1NTIyMjIiLCJlcnJvclRleHRDb2xvciI6IiM1NTIyMjIiLCJjbGFzc1RleHQiOiIjMTMxMzAwIiwiZmlsbFR5cGUwIjoiI0VDRUNGRiIsImZpbGxUeXBlMSI6IiNmZmZmZGUiLCJmaWxsVHlwZTIiOiJoc2woMzA0LCAxMDAlLCA5Ni4yNzQ1MDk4MDM5JSkiLCJmaWxsVHlwZTMiOiJoc2woMTI0LCAxMDAlLCA5My41Mjk0MTE3NjQ3JSkiLCJmaWxsVHlwZTQiOiJoc2woMTc2LCAxMDAlLCA5Ni4yNzQ1MDk4MDM5JSkiLCJmaWxsVHlwZTUiOiJoc2woLTQsIDEwMCUsIDkzLjUyOTQxMTc2NDclKSIsImZpbGxUeXBlNiI6ImhzbCg4LCAxMDAlLCA5Ni4yNzQ1MDk4MDM5JSkiLCJmaWxsVHlwZTciOiJoc2woMTg4LCAxMDAlLCA5My41Mjk0MTE3NjQ3JSkifX0sInVwZGF0ZUVkaXRvciI6ZmFsc2V9) +![Proposed flow for receiving](images/2846-receiving-proposed.jpeg) Again very similar to what happens in the current state. You can drop old implementations into this just fine, everything will continue to work. New diff --git a/proposals/images/2846-receiving-current.jpeg b/proposals/images/2846-receiving-current.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..26de9a83a95e1e3fa6a84f9e1fe4e453546e425a GIT binary patch literal 20532 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 literal 0 HcmV?d00001 diff --git a/proposals/images/2846-receiving-current.mermaid b/proposals/images/2846-receiving-current.mermaid new file mode 100644 index 00000000000..875fffb7e07 --- /dev/null +++ b/proposals/images/2846-receiving-current.mermaid @@ -0,0 +1,14 @@ +sequenceDiagram + participant C as Client + participant S as Server + participant O as Origin + C->>S: req file + activate S + opt fetch file + S->>O: req file + activate O + O-->>S: serve file + deactivate O + end + S-->>C: serve file + deactivate S diff --git a/proposals/images/2846-receiving-proposed.jpeg b/proposals/images/2846-receiving-proposed.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..24ba50e57d534be2edb0a05216c111c57aa7be14 GIT binary patch literal 41169 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∈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: req file with CID and hint + Note over C,S: The (optional) hint is a room+event ID + activate S + opt fetch file from remote + loop try potential remotes + S->>R: req file + activate R + R-->>S: serve file + deactivate R + end + end + S->>S: verify the CID + S-->>C: serve file + deactivate S + opt verify CID + C->>C: verify the CID + end diff --git a/proposals/images/2846-sending-current.jpeg b/proposals/images/2846-sending-current.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..3d3e8b030a69dea7eebe1fab21da4183d48e1e3e GIT binary patch literal 16513 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: upload file + S-->>C: return MXC URL + C->>S: send event with MXC URL + S-->>C: return event ID diff --git a/proposals/images/2846-sending-proposed.jpeg b/proposals/images/2846-sending-proposed.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..87f65fbaa520a78adea1f740d23b7789daa4820e GIT binary patch literal 25381 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 literal 0 HcmV?d00001 diff --git a/proposals/images/2846-sending-proposed.mermaid b/proposals/images/2846-sending-proposed.mermaid new file mode 100644 index 00000000000..19ea371e8ae --- /dev/null +++ b/proposals/images/2846-sending-proposed.mermaid @@ -0,0 +1,17 @@ +sequenceDiagram + participant C as Client + participant S as Server + C->>S: upload file + activate S + S->>S: calculate CID + S-->>C: return MXC URL with CID + deactivate S + + opt verify CID + C->>C: verify the CID + end + + C->>S: send event with MXC URL + activate S + S-->>C: event ID + deactivate S