Commit 01848051f7ae17dff5c454e94d433a5c61d76dfa
better description of how user invites work
Dominic Tarr committed on 12/14/2018, 1:12:19 AMParent: e78f3103aca1ae4bdbffcd9ed957553ccb2b394a
Files changed
README.md | changed |
README.md | |||
---|---|---|---|
@@ -13,20 +13,28 @@ | |||
13 | 13 … | * sometimes pubs failed to follow back. | |
14 | 14 … | * some pubs more inviting than others "too open" | |
15 | 15 … | * hard to tell if growth was word of mouth or not | |
16 | 16 … | ||
17 | -## solution: user-invites | ||
17 … | +## user invites - how it works | ||
18 | 18 … | ||
19 | -These are invites created directly by _users_ to directly | ||
20 | -invite _one_ new person. | ||
19 … | +host (user creating the invite) generates a _seed_, and publishes an invitation | ||
20 … | +message (`type:'user-invite'`) for their guest (new user, receiving the invite) | ||
21 … | +The message may contain both a private and a reveal section. | ||
22 … | +(private section is only readably be the guest, but reveal is published | ||
23 … | +if they guest accepts the invite). | ||
21 | 24 … | ||
22 | -* host user creates invite, publishes stub, sends invite to guest | ||
23 | -* guest connects to pub, requests invite message, which contains host identity. | ||
24 | -* guest publishes accept message | ||
25 | -* guest passes accept message to pub directy | ||
26 | -* pub now replicates guest, considering them friend of host, and publishes a "confirm" containing the accept message. | ||
27 | -* other peers can strongly link invite with accept via confirm. | ||
25 … | +The host then checks for peers that have a public address and follow them. | ||
26 … | +The host provides the guest with the `seed` the invite message id, and | ||
27 … | +a short list of [pub addresse](http://github.com/ssbc/ssb-device-address) that may process the invite. | ||
28 | 28 … | ||
29 … | +The guest accepting the invite is a two step process. First they use the | ||
30 … | +seed and the pub addresses to connect to a pub and request the invite message. | ||
31 … | +Here they may read a private message from their host, as well as see what will | ||
32 … | +be revealed once they accept. If they accept, they publish a accept message | ||
33 … | +on their own feed (`type: 'user-invite/accept'`), and then pass that to the pub, | ||
34 … | +who then publishes a confirm message (`type: user-invite/confirm'`). | ||
35 … | +Now peers who replicate the pub's feed can see the guest has arrived. | ||
36 … | + | ||
29 | 37 … | ## example | |
30 | 38 … | ||
31 | 39 … | Alice wishes to invite Bob to her corner of the ssb | |
32 | 40 … | network. But she is does not have a pub server. | |
@@ -143,4 +151,9 @@ | |||
143 | 151 … | ## License | |
144 | 152 … | ||
145 | 153 … | MIT | |
146 | 154 … | ||
155 … | + | ||
156 … | + | ||
157 … | + | ||
158 … | + | ||
159 … | + |
Built with git-ssb-web