From 7565f5d44d297179f9bff9944273850955bfc99b Mon Sep 17 00:00:00 2001 From: akwizgran Date: Mon, 13 Apr 2015 11:11:01 +0000 Subject: [PATCH] akwizgran created page: ForumApp --- ForumApp.markdown | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 ForumApp.markdown diff --git a/ForumApp.markdown b/ForumApp.markdown new file mode 100644 index 0000000..2865c63 --- /dev/null +++ b/ForumApp.markdown @@ -0,0 +1,25 @@ +ForumApp is an application that uses [BSP](BSP) to synchronise invitation-only forums. + +### Channel identifiers + +ForumApp uses a channel with a random identifier for forum invitations: +`667e 2acb da80 2e61 3168 98f2 8ec5 8102 fcf2 3d10 04ee 3086 f5e9 94d8 30f5 b773` + +Each forum has its own channel with a hash identifier. The application data structure for generating the identifier is a [BDF](BDF) list with two elements: `forum_name` (string) and `salt` (raw, exactly HASH_LEN bytes). The random salt prevents collisions between forums with the same name. The application identifer is random: +`859a 7be5 0dca 035b 64bd 6902 fb79 7097 795a f837 abbf 8c16 d750 b3c2 ccc1 86ea` + +### Message types + +**0: INVITATION** - The content is a BDF list with two elements: `forum` (list) and `message` (string, may be null). `forum` is a list with two elements, `forum_name` and `salt`, as described above. `message` is an optional note from the inviter to the invitee. + +**1: RESPONSE** - The content is a BDF list with three elements: `invitation_id` (raw, exactly HASH_LEN bytes), `decision` (boolean), and `message` (string, may be null). `invitation_id` is the message identifier of the INVITATION to which this is a response. `decision` indicates whether the invitee wishes to join the forum. `message` is an optional note from the invitee to the inviter. + +**2: POST** + +**3: ATTACHMENT** + +### Validation + +### Storage policy + +### Sharing policy