dronefly-garden / dronefly

Red Discord Bot V3 cogs for naturalists.
Other
16 stars 3 forks source link

obs reactions: Prompt user in DM for home reaction & home not set #102

Closed michaelpirrello closed 2 years ago

michaelpirrello commented 4 years ago

image

4 button presses but only two places displayed appear to be the result of users with no home place set attempting to use the feature. We should consider...

  1. Verifying whether the attempt is counted in stats or not
  2. Implementing a "I see you attempted to use the home reaction button without a home place set. Would you like to set one now?" feature.
  3. Developing an admin tool to list users with/without home places set.
  4. Developing a ,ps command to search only places (using https://www.inaturalist.org/places/search?utf8=%E2%9C%93&q={query}&commit=Search)
michaelpirrello commented 4 years ago

Nevermind on 4. Just realized we already have ,s places that serves that function.

synrg commented 4 years ago

I'm not sure what you mean by "1. verifying whether the attempt is counted in stats or not." Can you please explain?

  1. I have retitled the issue to focus on implementing this.

  2. It's a privacy concern if an admin can see their home place. I don't think having the admin know that piece of information is justifiable without asking them.

Scenario:

michaelpirrello commented 4 years ago
  1. If a user with no home place set presses the home reaction button, does it count towards image

  2. OK

  3. The request isn't asking for a list of the home places, just an indicator of whether the value has been set. For example: User Home Place Set? Ben Yes Mike No

synrg commented 4 years ago
  1. This ensures that when "deafened" to the other kind of reaction, only the actively handled reactions are counted:

https://github.com/synrg/dronefly/blob/12c843c4d8da4f33baa78983a0d99de315741e38/inatcog/listeners.py#L479-L493

i.e. if it has place counts, it only processes user reactions and vice versa

  1. Fair. That's not a privacy issue, and helps an admin understand if a user complains it isn't working (though other users are likely to be on the ball and help the user out anyway - but I'm thinking about iNat Discord which has a super active and friendly/helpful community; that may not always be the case).
synrg commented 4 years ago

If there's to be any action on 3, it needs to be a separate issue. Feel free to file it and cross-reference this one (you can just write # and the GitHub editor will prompt you to choose the bug# cross-reference link).

michaelpirrello commented 4 years ago
  1. So, just to be clear, if a user does not have a home place set, and clicks the home button, is that considered "actively handled" or not?
synrg commented 3 years ago

Usability / self-serve for 1st public release.

synrg commented 2 years ago

Too much complexity in this feature for too little benefit. Since #120 is now implemented, if a registered user that does not have a home place set reacts to a place button in a server channel, the server's configured place is used, and if they react to a place button in a DM, the bot's global place is used. If the bot operator has not explicitly configured either, North America is a hardwired default in the code. Thus, pressing the home reaction now always gives you a result, so long as you're a registered user.

User and home reaction buttons still do not do anything if you're not a registered user. However, that's not something I plan to change, at least not for the default behaviour in server channels. Asking the user to share their user profile is a part of our member onboarding process on iNaturalist Discord, and on other servers that use Dronefly (or their own instance of Dronefly) as well, so it's fair to have the bot simply not respond if they either forgot or opted not to do that.