Emoji Reaction#

The following diagrams shows workflow in case a reaction is added by user.

Main reaction schedule#

graph TD A[Start] --> B([Emoji added]) B --> C[[Add reaction to DB]] C --> D[[Get all valid games]] D --> E{valid game
for reation?} E --> |no| B E --> |yes| F[[Get all valid player]] F --> G[[Game Reaction Schedule]] G --> H[[Update reaction in DB]] H --> B

Game Reaction Schedule#

graph TD AA[Start] --> AB>Reaction.state:NEW] AB{GameState} --> |CREATED| AC AB --> |PAUSED| AC AC{reaction is
game-emoji} --> |yes| AD AC --> |no| AK AD[[Remove reaction]] --> AF>Reaction.state:DELETED_STATUS] AB --> |RUNNING| AG AG{reaction is
game-emoji} --> |yes| AH AG --> |no| AK AH{user is
game participant} --> |yes| AI>Reaction.state:REGISTERED] AH --> |no| AJ AJ[[Remove reation]] --> AL>Reaction.state:DELETED_PLAYER] AK>Reaction.state:SUPPORTER] AF --> AZ[End] AI --> AZ AL --> AZ AK --> AZ