Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Extend Remind Command Functionality #1327

Open
HassanAbouelela opened this issue Dec 15, 2020 · 10 comments · May be fixed by #2973
Open

Extend Remind Command Functionality #1327

HassanAbouelela opened this issue Dec 15, 2020 · 10 comments · May be fixed by #2973
Assignees
Labels
a: fun Related to non-serious, "fun" features (duck pond, off topic channel names) s: planning Discussing details t: feature New feature or request

Comments

@HassanAbouelela
Copy link
Member

HassanAbouelela commented Dec 15, 2020

Description

The remind command is a useful feature, particularly when working on projects on the server. The way it is currently set up, you have to invoke the command yourself or get mentioned to get a reminder, but I think a useful feature would be allowing users to "+1" on other's reminders. This is a feature that exists in other reminder systems, such as the remindme bot on reddit.

This feature would make it easier to work on things together and keep track of other's progress, without flooding the reminder system, and would make it easier for people to setup reminders in general.

Implementation

Implementation shouldn’t be too difficult, as the reminder system is already capable of reminding multiple people at once.

In terms of how people would add themselves, the bot adds a reaction to bookmarks, and something similar can be done with reminders. The reactions can be used as a method of opting-in to a reminder. Either that, or reactions on the confirmation message. Preferably, you wouldn’t have to type anything, or you might as well create your own reminder right below the other one, or mentioning the other one.

@HassanAbouelela HassanAbouelela added t: feature New feature or request a: fun Related to non-serious, "fun" features (duck pond, off topic channel names) labels Dec 15, 2020
@ks129
Copy link
Member

ks129 commented Dec 19, 2020

Sir Lancebot already have issue about getting copy of bookmark: python-discord/sir-lancebot#341.

@HassanAbouelela
Copy link
Member Author

Thanks, edited my comment to remove the bookmark part.

@ks129 ks129 changed the title Extend Remind and Bookmark Command Functionality Extend Remind Command Functionality Dec 21, 2020
@MarkKoz
Copy link
Member

MarkKoz commented Jan 3, 2021

Would removing a reaction opt-out of the reminder? If so, would people spam-toggling the reaction be a concern for the reminders endpoint of our API?

@HassanAbouelela
Copy link
Member Author

I hadn't considered any extra opt-out functionality besides canceling, but if we want to implement something like that, we might have to add a cooldown. Regardless, I don't think we should necessarily react to users when they opt-in/opt-out, so the only concern would be from a bot resource standpoint.

One way to combat that would be to not run all the extra checks of whether the user has permission or not, etc, but to just add/remove users from a list. The checks would still run for the initial message, but the reactions just interact with a list.

@Xithrius Xithrius added the s: planning Discussing details label Jan 17, 2021
@onerandomusername
Copy link
Contributor

How would edits be handled? If a user opts in, and then the initial user deletes or modifies it, would it modify it for all users, or create a copy for themselves?

@HassanAbouelela
Copy link
Member Author

HassanAbouelela commented Dec 13, 2021

I don't see a reason to complicate this. If it's deleted or edited, we just send whatever we have at the time it's supposed to be delivered. If that means not sending a reminder, so be it.

@onerandomusername
Copy link
Contributor

True, that makes sense.

@hedyhli
Copy link
Member

hedyhli commented Mar 23, 2024

Is this issue approved? If so, I'd be interested in working on this.

I made a quick prototype using the UI interaction button (similar to .bm), which will not support opt-outs at all.
image

However, using reactions as originally proposed lets the original author see who also opted-in to be notified. With this approach we'd have to perhaps have it edit the original affirmation message to "and will mention N+1 other(s)".

@MarkKoz
Copy link
Member

MarkKoz commented Mar 23, 2024

Yes, you can start working on it.

We should probably be moving away from using reactions; the button is better UX. I don't think the ability to see who else added themselves is important; editing the message with the new count is sufficient, but I do not consider that a strict requirement.

We will have to keep in mind the limits on how many people can be mentioned (if it sends DMs instead then that does not matter, but I forget how this command works).

@hedyhli hedyhli self-assigned this Mar 24, 2024
@hedyhli
Copy link
Member

hedyhli commented Mar 24, 2024

Yes, all mentions are pinged as message content together with the reminder embed sent publicly:

image

So the mention limit will just be the 2000 character limit, counting all mentions to be in the <@ID> form. On average, the character limit might be exceeded when >90 different people click on the button to get mentioned, if I'm not mistaken.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
a: fun Related to non-serious, "fun" features (duck pond, off topic channel names) s: planning Discussing details t: feature New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants