- TypeScript 96.5%
- Dockerfile 3.5%
Bumps [axios](https://github.com/axios/axios) from 1.13.5 to 1.15.2. - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v1.13.5...v1.15.2) --- updated-dependencies: - dependency-name: axios dependency-version: 1.15.0 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|---|---|---|
| .github/workflows | ||
| src | ||
| .gitignore | ||
| bun.lock | ||
| config.toml.example | ||
| docker-compose.dev.yml | ||
| docker-compose.prod.yml | ||
| docker-compose.yml | ||
| Dockerfile | ||
| env.d.ts | ||
| LICENSE.txt | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| tsconfig.json | ||
Duologue
Duologue sends posts and questions posted on Ed Discussion as a Discord message when they are posted. It can also retrieve them when requested by the user.
Installation
Create a new Discord application and bot and obtain its bot token and client ID.
Copy config.toml.example to config.toml, then fill in the required fields.
To run in development (build locally):
docker compose -f docker-compose.dev.yml up --build
To run in production (pull from GitHub Container Registry):
docker compose -f docker-compose.prod.yml up -d
Usage
/ping
Returns the ping of the bot.
/bind [course_id] [thread_type]
Note
This command requires the Administrator permission.
Binds the course with the given course ID to the channel which the command is run in.
[course_id]: The course ID of the course to be bound. For example, in the URL "https://edstem.org/au/courses/12345/discussion/", the course ID is 12345.
[thread_type]: The type of thread that the channel should be subscribed to: announcements (threads created by instructors) or normal (all other threads). Channels can be subscribed to both (you will have to run the command twice but change this parameter)
/unbind [course_id]
Note
This command requires the Administrator permission.
Unbinds the course with the given course ID from the channel which the command is run in. Note that for channels subscribed to both thread types, this will unsubscribe from both types.
[course_id]: The course ID of the course to be bound. For example, in the URL "https://edstem.org/au/courses/12345/discussion/", the course ID is 12345.
Motivation
Whilst Ed Discussion is somewhat promoted within the university (dependent on lecturer), students do not check it often, prefering to use Discord instead for discussion related to their courses.
Additionally, Ed Discussion notifications are very slow to send out via email and not everyone wants to enable push notifications.
This bot intends to serve both of these use cases.