The Idea
Allow a user to create a vote in a channel.
- votes are attached to a channel and a user
- any number of draft votes can exist
- only one can be active in the channel
- multi choice options are supplied
- voting starts when the owner says so
- entire channel gets to vote
- voting stops when the owner of the vote closes the polls
- once closed, a summary of the results is shown
- once closed, other votes can be started
Commands:
/vote start
/vote option [option]
/vote option list
/vote start
/vote [option]
/vote close
/vote list
/vote result [vote id]
How it might work:
/vote create When shall we meet for beers?
(ephemeral message)
what are the options? Use \vote options [option text]
to create them, then \vote start
to start voting in this channel or \vote quit
to abort
/vote option Monday
(enter)
(ephemeral message)
you've added the option "Monday"
/vote option Wednesday
(enter)
(ephemeral message)
you've added the option "Wednesday"
/vote option Monday
(enter)
(ephemeral message)
you've already added this option. Please make your options unique. Friday` (enter)
/vote option Friday
(enter)
(ephemeral message)
you've added the option "Friday"
/vote start
(enter)
@martinpeck wants you to vote on something!
@martinpeck asks "When shall we meet for beers?"
Your options are:
/vote 1
for Monday
/vote 2
for Tuesday
/vote 3
for Friday
/vote options
will remind you of the options
To end voting, @martinpeck can use /vote close
and I'll show you the results
/vote start
(ephemeral message)
There is already a vote taking place in this channel
/vote 1
(ephemeral message)
Thanks! Your vote has been counted! Any previous votes will be ignored.
/vote 1
(ephemeral message)
Thanks! Your vote has been counted! Any previous votes will be ignored.
/vote close
Voting has closed on Martin's vote "When shall we meet for beers?"
Here are the results:
Monday: 1 vote
Wednesday: 0 votes
Friday: 0 votes
It looks like the option "Monday" has won!