imjoshdean / mascot-bot

Beatz Bot is BronyCon's Slack assistant, at your service!
MIT License
5 stars 3 forks source link

BeatzBot should only respond to commands when invoked #29

Closed dispatchrabbi closed 7 years ago

dispatchrabbi commented 7 years ago

Rolling the dice right now rolls whenever someone says 'rtd' and a die configuration.

In order to specifically invoke that functionality, BeatzBot should only respond if invoked, such as @beatzbot roll 4d6 or something similar.

grantjbutler commented 7 years ago

What about adding a way for behaviors to integrate into Slack as slash commands? So, for example, the "roll the dice" behavior would be triggered with something like /roll 4d6. Unless the way that slash commands are implemented (as a sort of web hook kind of system) makes it hard with the current architecture of beatz-bot?

I ask because it seems like there are two functions that beatz-bot is serving right now: scheduled updates, and commands. If we're going to talk about changing how commands are invoked, and want to go more in the direction of explicitly invoking commands through the use of an attribute, identifier, or other string, I think I would be in favor of integrating into Slack more by implementing these behaviors as slash commands.

imjoshdean commented 7 years ago

I dislike the idea of having to actively invoke Beatz-Bot through commands, part of the reason of having him there is to passively respond to people talking.

I'm not seeing the benefit of having it be invoked versus passive.

Slash commands are nice, but doing them as commands that people will be able to see, like this falls outside of what Beatz-Bot is capable of. I kind of don't want to utilize that as a way to interact with him because it's confusing in comparison to actual app commands.

You're going to tell someone to type in /roll 4d6 and they're not going to see it in the commands and become confused.