Skip to content

Sync User Profile Image on Discord and RealDevSquad V1 [RFC] #1924

@ivinayakg

Description

@ivinayakg

Brief

  • Right now, any user can change their profile picture on RealDevSquad or Discord, leading to inconsistency between the profile images on different profiles.
  • The System is already built Profile and Discord Image Verification #1094, this task is about sharpening the edges and activating this behind the feature flag.
  • Also added a new key status, to the photo-verification object which can have the values of ACCEPTED, PENDING, and REJECTED, which will help in simplifying the querying of the objects based on their status. note - the status will turn to ACCEPTED only when both the profile.approved and discord.profile is approved.

User Flows

  1. When a user updates their profile image from the my-site.
    • Backend API, to create a PHOTO_VERIFICATION, which will store the previous as well as the requested changes.
    • Backend API, to approve PHOTO_VERIFICATION only by SUPERUSER and then make the user profile changes.
    • Show all PHOTO_VERIFICATION on dashboard-site.
      • Will show current profile photo, new profile photo as well as the current discord profile photo.
      • Three options Approve, Reject & Refresh Discord Avatar

API Docs

  • /discord-actions/avatar/update/:discordId, this API will be responsible for updating the discord avatar URL in a PENDING status photo-verification object. Only for SUPERUSER.
  • /picture/all, this API will be responsible for querying all the current PENDING status photo-verification objects back. It can also accept username as a query parameter to filter. Only for SUPERUSER
  • /picture/:userId, will be responsible for querying all the current PENDING status photo-verification objects back for the userId provided. SUPERUSER can run this for any userId, while other users can only run for their own userId.

Dashboard

  • A basic UI for SUPERUSER to interact with photo-verification objects. Giving the user the ability to perform all of the above actions and also more in the future.

Metadata

Metadata

Assignees

Labels

feature taskFeature that has to be built

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions