- Licensed under the MIT license
- Has a Code of Conduct for contributors
- configurable for deployment via .env as a single bot to run in a single slack workspace
- loads data for a single class from each folder in the
data
directory - has personas for teachers, assistants, and students who may be a part of multiple classes
- the data model for classes and participants is stored in the
./data/{class name}/facilitators
and./data/{class name}/students
folders ascsv
andjson
files - an auditor flag may be added to any persona assigned to a user so that they have the capabilities of that persona but are not automatically assigned to breakout rooms by the
make breakout rooms
command
-
emails {class}
displays a list of email addresses for a class suitable for copy/pasting into a bcc field -
audit cohort
displays all users and their personas -
audit {email address}
displays which files provided that email address with the associated personas -
invite cohort
sychronizes the list of participants in Slack, inviting new participants and assigning participants to the appropriate slack channels for each class -
make breakout rooms {class}
looks up the user list of the current Zoom session for a class, then, based on the configured list of participants, create a Zopom breakout room for each assistant and randomly send students to each assistant's breakout room
- Agile morning standup to have each student answer the questions: "What did you work on yesterday?" "What are you working on today?" and "What are you having trouble with?" These responses can be printed with the command
list attendance {class} {date}
.
All contributors to this project are expected to adhere to our Code of Conduct.
This bot is powered by Botkit and a folder full of modules in the ./src/features/ folder.
Follow the Slack bot setup guide and copy the configuration data into a copy of .env.example
named .env
.
- run
ngrok http 3000
in one window. - note the domain that
ngrok
gives you - correct the
redirectUri=https://SOMETHING.ngrok.io/install/auth
in.env
to the newngrok
domain. - correct the Slack app configuration with the new
ngrok
domain inInteractivity & Shortcuts: Request URL
,OAuth & Permissions: Redirect URLs
, andEvent Subscriptions: Request URL
- run
npm start
in another window.
- Bot installation and authorization must be run twice?
npm run dev
runs Jest in watch mode executing tests on changed files.npm test
will run the full Jest test suite and provide a code coverage report.