2.5 KiB
2.5 KiB
nKode Enrollment
sequenceDiagram
participant User
participant Client
participant Server
Note over User,Server: Enrollment
Client->>User: Signup Form
Note left of User: email: user@example.com
User->>Client: Submit Email
Client->>+Server: Signup Session: user@example.com
Server->>Server: Create Signup Session
Note over User,Server: Set nKode
Server-->>-Client: signup_session_id, set_keypad, icons
Note left of Server: signup_session_id:<br/>e029138e-fb64-49ea-a6bc-b6b5affbf263
Note left of Server: set_keypad:<br/>Key 0: [18 7 20 22 23]<br/>Key 1: [12 13 8 28 29]<br/>Key 2: [24 25 26 16 5]<br/>Key 3: [ 6 19 2 10 11]<br/>Key 4: [ 0 1 14 4 17]<br/>
Note left of Server: Icons:<br/>[😀,😂,🥳,😍,🤓<br/>😎,🥺,😡,😱,🤯<br/>🥰,😴,🤔,🙃,😇<br/>🤖,👽,👾,🐱,🐶<br/>🦁,🐻,🐸,🐙,🦄<br/>🌟,⚡,🔥,🍕,🎉]
Client->>Client: Order Icons by keypad
Client->>User: Display Keypad
Note left of Client: Key 0: ['🐱' '😡' '🦁' '🐸' '🐙']<br/>Key 1: ['🤔' '🙃' '😱' '🍕' '🎉']<br/>Key 2: ['🦄' '🌟' '⚡' '👽' '😎']<br/>Key 3: ['🥺' '🐶' '🥳' '🥰' '😴']<br/>Key 4: ['😀' '😂' '😇' '🤓' '👾']<br/>
Note left of User: User icons: ['🐱' '🥳' '🐶' '⚡']
User->>Client: Set Key Selection: [0, 3, 3, 2]
Client->>+Server: Set nKode:<br/>e029138e-fb64-49ea-a6bc-b6b5affbf263<br/>[0, 3, 3, 2]
Server->>Server: Disperse Set Keypad
Note over User,Server: Confirm nKode
Server-->>-Client: signup_session_id, confirm_keypad, icons
Note left of Server: signup_session_id:<br/>e029138e-fb64-49ea-a6bc-b6b5affbf263
Note left of Server: confirm_keypad:<br/>Key 0: [ 6 7 8 16 17]<br/>Key 1: [ 0 13 2 22 5]<br/>Key 2: [24 19 14 28 23]<br/>Key 3: [18 1 26 10 29]<br/>Key 4: [12 25 20 4 11]<br/>
Client->>Client: Order Icons by keypad
Client->>User: Display Keypad
Note left of Client: Key 0: ['🥺' '😡' '😱' '👽' '👾']<br/>Key 1: ['😀' '🙃' '🥳' '🐸' '😎']<br/>Key 2: ['🦄' '🐶' '😇' '🍕' '🐙']<br/>Key 3: ['🐱' '😂' '⚡' '🥰' '🎉']<br/>Key 4: ['🤔' '🌟' '🦁' '🤓' '😴']<br/>
Note left of User: User icons: ['🐱' '🥳' '🐶' '⚡']
User->>Client: Key Selection: [3, 1, 2, 3]
Client->>+Server: Confirm nKode:<br/>e029138e-fb64-49ea-a6bc-b6b5affbf263<br/>[3, 1, 2, 3]
Server->>Server: Create User
Server-->>-Client: Success