Free-Nations-Region / CyborgianStates

A (Discord-) Bot for all needs of a Region in NationStates
MIT License
0 stars 1 forks source link

/verifyme Command #18

Open bion33 opened 4 years ago

bion33 commented 4 years ago

Step 1

Needs: A nation name. Replies with: A message describing the next step.

Verification workflow is started for the given nation.

Step 2

Needs: reply containing "api" or "telegram". Replies with: A message describing the next step.

Telegram: A telegram with an Ownership Verification Code (OVC) is sent to the nation. API: The NS API is used for verification.

Step 3

Needs: reply containing verification code. Replies with: Verification or rejection message.

If the verification code is correct, the basic roles are assigned to the discord user.

jasonycin commented 2 years ago

Do we want to continue keeping step 2 as-is? OVC's haven't been used in a while. Is it still a functionality we should dedicate time to?

drehtisch commented 2 years ago

Do we want to continue keeping step 2 as-is? OVC's haven't been used in a while. Is it still a functionality we should dedicate time to?

I would rather suggest following approach:

  1. Trigger Flow on User Joined -> "Do you have a NationStates Nation name?" -> Yes, ask ; No, assign Foreigner Role Or 1.1 Trigger Flow via /verify with nationName
  2. If the user has already been verified skip to 3. Otherwise use NS API to do the verification. This should take place in dm or with a ephemeral SlashCommand Interaction
  3. Assign a Verified Role, if not present. If nation is known to be Citizen assign Citizen Roles. If nation is know to be in WA assign WA Roles

To receive Citizen Roles after e.g. endorsing the delegate just run the command again. Verification is skipped and roles get assigned.

In the future with a corresponding event mechanism WA & Citizen Roles should be assigned automatically when there Events occur. Multiple verification invoccation would not be necessary in that case. But that is Out of Scope for this issue.