Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • briar briar
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 788
    • Issues 788
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 8
    • Merge requests 8
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • briar
  • briarbriar
  • Issues
  • #494

Closed
Open
Created Jul 18, 2016 by akwizgran@akwizgranOwner

Implement backend for reblogging and blog comments

Sub-task of #437 (closed).

Group Messages

The group descriptor is a BDF list with three elements: name (string), author_name (string) and public_key (raw). Posts are signed with the corresponding private key.

0: Post

A blog post.

  • type (int) - Must be 0
  • content (string) - The content of the blog post
  • signature (raw) - A signature over a list with the following elements:
    • group_id (raw) - Taken from the message header
    • timestamp (int) - Taken from the message header
    • type (int) - As described above
    • content (string) - As described above

Dependencies: None

1: Comment

A comment on a blog post.

  • type (int) - Must be 1
  • content (string or null) - An optional comment added to the post
  • parent_original_id (raw) - The ID of a post or comment in this group or another group
  • parent_id (raw) - The ID of a post, comment, wrapped post or wrapped comment in this group, which had the ID parent_original_id in the group where it was originally posted
  • signature (raw) - A signature over a list with the following elements:
    • group_id (raw) - Taken from the message header
    • timestamp (int) - Taken from the message header
    • type (int) - As described above
    • content (string or null) - As described above
    • parent_original_id (raw) - As described above
    • parent_id (raw) - As described above

Dependencies: parent_id

2: Wrapped Post

A post from another group that has been reposted to this group. Not shared with other subscribers unless it is a transitive dependency of a valid post or comment in this group.

  • type (int) - Must be 2
  • post_group_descriptor (raw) - The descriptor of the group where the post was originally posted
  • post_timestamp (int) - Taken from the original post
  • post_content(string) - Taken from the original post
  • post_signature (raw) - Taken from the original post

Dependencies: None

3: Wrapped Comment

A comment from another group that has been reposted to this group. Not shared with other subscribers unless it is a transitive dependency of a valid post or comment in this group.

  • type (int) - Must be 3
  • comment_group_descriptor (raw) - The descriptor of the group where the comment was originally posted
  • comment_timestamp (int) - Taken from the original comment
  • comment_content (string or null) - Taken from the original comment
  • comment_parent_original_id (raw) - Taken from the original comment
  • comment_parent_id (raw) - Taken from the original comment
  • comment_signature (raw) - Taken from the original comment
  • parent_id (raw) - The ID of a post, comment, wrapped post or wrapped comment in this group, which had the ID comment_parent_original_id in the group where it was originally posted

Dependencies: parent_id

Assignee
Assign to
Time tracking