t04glovern / slackbot-wordle

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Slackbot Wordle

Slackbot Example

Usage

  • /wordle start - start a game
  • /wordle guess <word> - guess a 5 letter word
  • /wordle end - terminate current active game (incase you want a new gameboard)
  • /wordle letters - returns letters still available if a list helps you.

Manual Deployment

# Install sam
pip install aws-sam-cli
## or
brew tap aws/tap && brew install aws-sam-cli

# Only needs to be run once (if a samconfig.toml file is not present in samconfig.toml)
sam deploy --guided

# Run each time
sam build
sam deploy

Follow the instructions in SLACK.md for details on how to install the bot in your workspace.

Local Testing

DynamoDB

# Start DynamoDB locally (must be run in devcontainer)
java -Djava.library.path=/opt/dynamodb_local/DynamoDBLocal_lib -jar /opt/dynamodb_local/DynamoDBLocal.jar -sharedDb

In a new terminal tab, run your tests

GitHub Actions

Requires the OIDC provider and repository specific template to be deployed into an AWS account allowing specific permissions needed.

Then make sure that the following Secrets are setup for the repo.

OIDC_ROLE_AWS_REGION
OIDC_ROLE_AWS_ROLE_TO_ASSUME

Architecture

Architecture

TODO

  • Convert flow to use Surface modals if possible - will need to confirm this is possible with Slack Bolt
  • Instead of returning Emojis/Unicode images, return a dynamically generated image (png/svg) that will be displayed in the modal.
    • i.e URL: /gameboard/<some-kind-of-gameboard-encoding-in-url>/ -> image_data

Attribution

About

License:GNU General Public License v3.0


Languages

Language:Python 87.4%Language:Dockerfile 9.1%Language:Makefile 3.6%