- https://api.slack.com/legacy/message-buttons
- https://api.slack.com/legacy/interactive-messages
- https://stackabuse.com/reading-and-writing-json-to-a-file-in-python/
- https://app.slack.com/block-kit-builder/T0707SH4P
- https://www.digitalocean.com/community/tutorials/how-to-write-a-slash-command-with-flask-and-python-3-on-ubuntu-16-04
- https://github.com/slackapi/python-slackclient
Last active
July 15, 2020 07:29
-
-
Save paulera/9fae41bc494fa6904b154240df813d18 to your computer and use it in GitHub Desktop.
Ideas for group estimation polls on Slack. The design can be tested at https://app.slack.com/block-kit-builder .
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"blocks": [ | |
{ | |
"type": "section", | |
"text": { | |
"type": "plain_text", | |
"text": "The message goes in here", | |
"emoji": true | |
} | |
}, | |
{ | |
"type": "divider" | |
}, | |
{ | |
"type": "section", | |
"text": { | |
"type": "mrkdwn", | |
"text": "Indicate the level of *Clarity*" | |
} | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":cloud: No clue", | |
"emoji": true | |
}, | |
"value": "clarity_1" | |
} | |
] | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":barely_sunny: Unclear", | |
"emoji": true | |
}, | |
"value": "clarity_1" | |
} | |
] | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":partly_sunny: Information still needed", | |
"emoji": true | |
}, | |
"value": "clarity_1" | |
} | |
] | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":mostly_sunny: Clear enough", | |
"emoji": true | |
}, | |
"value": "clarity_1" | |
} | |
] | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":sun_with_face: Very clear", | |
"emoji": true | |
}, | |
"value": "clarity_1" | |
} | |
] | |
}, | |
{ | |
"type": "section", | |
"text": { | |
"type": "mrkdwn", | |
"text": "Total votes: *1* - <@USERID>" | |
} | |
}, | |
{ | |
"type": "divider" | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "End voting and show results :heavy_check_mark:", | |
"emoji": true | |
}, | |
"value": "sp_tfb", | |
"style": "primary" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "Reset votes and do again :boom:", | |
"emoji": true | |
}, | |
"value": "sp_nfc", | |
"style": "danger" | |
} | |
] | |
} | |
] | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"blocks": [ | |
{ | |
"type": "section", | |
"text": { | |
"type": "plain_text", | |
"text": "The message goes in here", | |
"emoji": true | |
} | |
}, | |
{ | |
"type": "divider" | |
}, | |
{ | |
"type": "section", | |
"text": { | |
"type": "mrkdwn", | |
"text": "Indicate your level of *Confidence*" | |
} | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":zipper_mouth_face: I have no clue about it", | |
"emoji": true | |
}, | |
"value": "confidence_1" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":hankey: No way", | |
"emoji": true | |
}, | |
"value": "confidence_1" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":grimacing: I have concerns", | |
"emoji": true | |
}, | |
"value": "confidence_2" | |
} | |
] | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":face_with_rolling_eyes: Okay, I guess...", | |
"emoji": true | |
}, | |
"value": "confidence_3" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":slightly_smiling_face: Sounds good", | |
"emoji": true | |
}, | |
"value": "confidence_4" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":sunglasses: Sure about it!", | |
"emoji": true | |
}, | |
"value": "confidence_5" | |
} | |
] | |
}, | |
{ | |
"type": "section", | |
"text": { | |
"type": "mrkdwn", | |
"text": "Total votes: *1* - <@UL3JKFQEL>" | |
} | |
}, | |
{ | |
"type": "divider" | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "End voting and show results :heavy_check_mark:", | |
"emoji": true | |
}, | |
"value": "sp_tfb", | |
"style": "primary" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "Reset votes and do again :boom:", | |
"emoji": true | |
}, | |
"value": "sp_nfc", | |
"style": "danger" | |
} | |
] | |
} | |
] | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"blocks": [ | |
{ | |
"type": "section", | |
"text": { | |
"type": "plain_text", | |
"text": "The message goes in here", | |
"emoji": true | |
} | |
}, | |
{ | |
"type": "divider" | |
}, | |
{ | |
"type": "section", | |
"text": { | |
"type": "mrkdwn", | |
"text": "Evaluate using *Like/Dislike*" | |
} | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "Like :+1:", | |
"emoji": true | |
}, | |
"style": "primary", | |
"value": "like_yes" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "Dislike :-1:", | |
"emoji": true | |
}, | |
"style": "danger", | |
"value": "star_1" | |
} | |
] | |
}, | |
{ | |
"type": "section", | |
"text": { | |
"type": "mrkdwn", | |
"text": "Total votes: *1* - <@UL3JKFQEL>" | |
} | |
}, | |
{ | |
"type": "divider" | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "End voting and show results :heavy_check_mark:", | |
"emoji": true | |
}, | |
"value": "sp_tfb", | |
"style": "primary" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "Reset votes and do again :boom:", | |
"emoji": true | |
}, | |
"value": "sp_nfc", | |
"style": "danger" | |
} | |
] | |
} | |
] | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"blocks": [ | |
{ | |
"type": "section", | |
"text": { | |
"type": "plain_text", | |
"text": "The message goes in here", | |
"emoji": true | |
} | |
}, | |
{ | |
"type": "divider" | |
}, | |
{ | |
"type": "section", | |
"text": { | |
"type": "mrkdwn", | |
"text": "Indicate your estimate using *No Estimates*" | |
} | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "1", | |
"emoji": true | |
}, | |
"value": "sp_1" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "TFB :elephant:", | |
"emoji": true | |
}, | |
"value": "sp_tfb" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "NFC :question:", | |
"emoji": true | |
}, | |
"value": "sp_nfc" | |
} | |
] | |
}, | |
{ | |
"type": "section", | |
"text": { | |
"type": "mrkdwn", | |
"text": "Total votes: *1* - <@USERID>" | |
} | |
}, | |
{ | |
"type": "divider" | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "End voting and show results :heavy_check_mark:", | |
"emoji": true | |
}, | |
"value": "sp_tfb", | |
"style": "primary" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "Reset votes and do again :boom:", | |
"emoji": true | |
}, | |
"value": "sp_nfc", | |
"style": "danger" | |
} | |
] | |
} | |
] | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"blocks": [ | |
{ | |
"type": "section", | |
"text": { | |
"type": "plain_text", | |
"text": "The message goes in here", | |
"emoji": true | |
} | |
}, | |
{ | |
"type": "divider" | |
}, | |
{ | |
"type": "section", | |
"text": { | |
"type": "mrkdwn", | |
"text": "Evaluate using *Star Rating*" | |
} | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "No stars", | |
"emoji": true | |
}, | |
"value": "star_0" | |
} | |
] | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":star: - 1 star", | |
"emoji": true | |
}, | |
"value": "star_1" | |
} | |
] | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":star::star: - 2 stars", | |
"emoji": true | |
}, | |
"value": "star_2" | |
} | |
] | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":star::star::star: - 3 stars", | |
"emoji": true | |
}, | |
"value": "star_3" | |
} | |
] | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":star::star::star::star: - 4 stars", | |
"emoji": true | |
}, | |
"value": "star_4" | |
} | |
] | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":star::star::star::star::star: - 5 stars", | |
"emoji": true | |
}, | |
"value": "star_5" | |
} | |
] | |
}, | |
{ | |
"type": "section", | |
"text": { | |
"type": "mrkdwn", | |
"text": "Total votes: *1* - <@UL3JKFQEL>" | |
} | |
}, | |
{ | |
"type": "divider" | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "End voting and show results :heavy_check_mark:", | |
"emoji": true | |
}, | |
"value": "sp_tfb", | |
"style": "primary" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "Reset votes and do again :boom:", | |
"emoji": true | |
}, | |
"value": "sp_nfc", | |
"style": "danger" | |
} | |
] | |
} | |
] | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"blocks": [ | |
{ | |
"type": "section", | |
"text": { | |
"type": "plain_text", | |
"text": "The message goes in here", | |
"emoji": true | |
} | |
}, | |
{ | |
"type": "divider" | |
}, | |
{ | |
"type": "section", | |
"text": { | |
"type": "mrkdwn", | |
"text": "Indicate your estimate using *Story Points*" | |
} | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "0", | |
"emoji": true | |
}, | |
"value": "sp_0" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "1/2", | |
"emoji": true | |
}, | |
"value": "sp_half" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "1", | |
"emoji": true | |
}, | |
"value": "sp_1" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "2", | |
"emoji": true | |
}, | |
"value": "sp_2" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "3", | |
"emoji": true | |
}, | |
"value": "sp_3" | |
} | |
] | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "5", | |
"emoji": true | |
}, | |
"value": "sp_5" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "8", | |
"emoji": true | |
}, | |
"value": "sp_8" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "13", | |
"emoji": true | |
}, | |
"value": "sp_13" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "20", | |
"emoji": true | |
}, | |
"value": "sp_20" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "40", | |
"emoji": true | |
}, | |
"value": "sp_40" | |
} | |
] | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "100", | |
"emoji": true | |
}, | |
"value": "sp_100" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "TFB :elephant:", | |
"emoji": true | |
}, | |
"value": "sp_tfb" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "NFC :question:", | |
"emoji": true | |
}, | |
"value": "sp_nfc" | |
} | |
] | |
}, | |
{ | |
"type": "divider" | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "End voting and show results :heavy_check_mark:", | |
"emoji": true | |
}, | |
"value": "sp_tfb", | |
"style": "primary" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "Reset votes and do again :boom:", | |
"emoji": true | |
}, | |
"value": "sp_nfc", | |
"style": "danger" | |
} | |
] | |
}, | |
{ | |
"type": "divider" | |
}, | |
{ | |
"type": "section", | |
"text": { | |
"type": "mrkdwn", | |
"text": "Total votes: *1*" | |
} | |
}, | |
{ | |
"type": "section", | |
"text": { | |
"type": "mrkdwn", | |
"text": "<@USERID>" | |
} | |
} | |
] | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"blocks": [ | |
{ | |
"type": "section", | |
"text": { | |
"type": "plain_text", | |
"text": "The message goes in here", | |
"emoji": true | |
} | |
}, | |
{ | |
"type": "divider" | |
}, | |
{ | |
"type": "section", | |
"text": { | |
"type": "mrkdwn", | |
"text": "Indicate your estimate using *Time*" | |
} | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":clock1: 1H", | |
"emoji": true | |
}, | |
"value": "hours_1" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":clock2: 2H", | |
"emoji": true | |
}, | |
"value": "hours_2" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":clock3: 3H", | |
"emoji": true | |
}, | |
"value": "hours_3" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":clock4: 4H", | |
"emoji": true | |
}, | |
"value": "hours_4" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":clock6: 6H", | |
"emoji": true | |
}, | |
"value": "hours_6" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":sunny: 1 day", | |
"emoji": true | |
}, | |
"value": "day_1" | |
} | |
] | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":sunny: 1.5 days", | |
"emoji": true | |
}, | |
"value": "day_15" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":sunny: 2 days", | |
"emoji": true | |
}, | |
"value": "day_2" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":sunny: 2.5 days", | |
"emoji": true | |
}, | |
"value": "day_25" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":sunny: 3 days", | |
"emoji": true | |
}, | |
"value": "day_3" | |
} | |
] | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":sunny: 4 days", | |
"emoji": true | |
}, | |
"value": "day_4" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": ":sunny: 5 days", | |
"emoji": true | |
}, | |
"value": "day_5" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "TFB :elephant:", | |
"emoji": true | |
}, | |
"value": "sp_tfb" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "NFC :question:", | |
"emoji": true | |
}, | |
"value": "sp_nfc" | |
} | |
] | |
}, | |
{ | |
"type": "section", | |
"text": { | |
"type": "mrkdwn", | |
"text": "Total votes: *1* - <@USERID>" | |
} | |
}, | |
{ | |
"type": "divider" | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "End voting and show results :heavy_check_mark:", | |
"emoji": true | |
}, | |
"value": "sp_tfb", | |
"style": "primary" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "Reset votes and do again :boom:", | |
"emoji": true | |
}, | |
"value": "sp_nfc", | |
"style": "danger" | |
} | |
] | |
} | |
] | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"blocks": [ | |
{ | |
"type": "section", | |
"text": { | |
"type": "plain_text", | |
"text": "The message goes in here", | |
"emoji": true | |
} | |
}, | |
{ | |
"type": "divider" | |
}, | |
{ | |
"type": "section", | |
"text": { | |
"type": "mrkdwn", | |
"text": "Indicate your estimate using *T-Shirt Size*" | |
} | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "S (small)", | |
"emoji": true | |
}, | |
"value": "shirt_s" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "M (medium)", | |
"emoji": true | |
}, | |
"value": "shirt_m" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "L (large)", | |
"emoji": true | |
}, | |
"value": "shirt_l" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "XL (extra-large)", | |
"emoji": true | |
}, | |
"value": "shirt_xl" | |
} | |
] | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "TFB :elephant:", | |
"emoji": true | |
}, | |
"value": "sp_tfb" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "NFC :question:", | |
"emoji": true | |
}, | |
"value": "sp_nfc" | |
} | |
] | |
}, | |
{ | |
"type": "section", | |
"text": { | |
"type": "mrkdwn", | |
"text": "Total votes: *1* - <@USERID>" | |
} | |
}, | |
{ | |
"type": "divider" | |
}, | |
{ | |
"type": "actions", | |
"elements": [ | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "End voting and show results :heavy_check_mark:", | |
"emoji": true | |
}, | |
"value": "sp_tfb", | |
"style": "primary" | |
}, | |
{ | |
"type": "button", | |
"text": { | |
"type": "plain_text", | |
"text": "Reset votes and do again :boom:", | |
"emoji": true | |
}, | |
"value": "sp_nfc", | |
"style": "danger" | |
} | |
] | |
} | |
] | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment