Schoolbot-kt is a Kotlin rewrite of Schoolbot, a Discord bot that provides helps college students manage their school life.
- Class schedule
- Classes can be automatically added
- Only for University of Pittsburgh or any of its branch campuses
- Classes can be automatically added
- Class reminders
- Class cancellations
- Class changes
- Class assignments
- Laundry room availability
- Only for University of Pittsburgh or any of branch campuses
- Java 17 or higher
- Gradle 4.10.2 or higher
- A Discord bot token
- Any Database supported by JDBI
- Clone the repository
- Create a file called
schoolbot_cfg.json
in the root directory. Example below:
{
"token" : "YOUR_TOKEN_HERE",
"developerIds" : [ "" ],
"logLevel": "INFO",
"pittToken": ""
}
- Create a file called
application.properties
in the root directory. (You can also find an example in the resources folder of this repo) Example below:
spring.datasource.hikari.pool-name=Schoolbot Connection Pool
spring.datasource.hikari.connection-timeout=
spring.datasource.hikari.maximum-pool-size=
spring.datasource.url=
spring.datasource.username=
spring.datasource.password=
spring.datasource.driver-class-name=org.postgresql.Driver
spring.jpa.properties.hibernate.dialect=
spring.jpa.properties.hibernate.temp.use_jdbc_metadata_defaults=
spring.jpa.properties.hibernate.jdbc.batch_size=100
spring.jpa.properties.hibernate.order_inserts=true
spring.jpa.properties.hibernate.order_updates=true
- Run
gradle build
to build the project - Run
gradle run
to run the project - Invite the bot to your server
- Download the docker-compose.yml file from the repository
- Create a file called
schoolbot_cfg.json
in the root directory. Example below:
{
"token" : "YOUR_TOKEN_HERE",
"developerIds" : [ "" ],
"logLevel": "INFO",
"pittToken": ""
}
- Create a file called
application.properties
in the root directory. (You can also find an example in the resources folder of this repo) Example below:
spring.datasource.hikari.pool-name=Schoolbot Connection Pool
spring.datasource.hikari.connection-timeout=
spring.datasource.hikari.maximum-pool-size=
spring.datasource.url=
spring.datasource.username=
spring.datasource.password=
spring.datasource.driver-class-name=org.postgresql.Driver
spring.jpa.properties.hibernate.dialect=
spring.jpa.properties.hibernate.temp.use_jdbc_metadata_defaults=
spring.jpa.properties.hibernate.jdbc.batch_size=100
spring.jpa.properties.hibernate.order_inserts=true
spring.jpa.properties.hibernate.order_updates=true
- Run
docker-compose up -d
to start the bot - Invite the bot to your server
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.