- Kotlin 99.3%
- Dockerfile 0.7%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| .idea | ||
| gradle/wrapper | ||
| src/main | ||
| .gitignore | ||
| build.gradle.kts | ||
| Dockerfile | ||
| gradle.properties | ||
| gradlew | ||
| gradlew.bat | ||
| LICENSE | ||
| README.md | ||
| settings.gradle.kts | ||
Speech and Spell
Now spell... PAUL
A custom-made TTS bot because the others felt too slow. Add me today!
Features
- Clear speech
- Announces images and embeds
- DecTalk syntax support
- Open source (duh)
- Pretty quick
- Averages ~250ms warm to ~600ms cold
- Customizable prefixes and nicknames
- Message edit support
- Announces reactions
- Reads emojis, tone indicators, abbreviations, and won't read URLs
- Admin skip and clear commands
Motivation
I personally don't like to use my mic when in voice channels in discord, usually resorting to no mic or the voice chat text channel.
Some cool people have made TTS bots that announce out the messages from the channels so that people with "no mic" don't get ignored. However, the particular one I was using in a server was so slow that it was unbearable.
So, with help from a friend (who already have a speech synthesis API set up) I made this bot out of spite of the other one.
Building
Note
Requires Java 25!
Run ./gradlew build and pray
Deploying
Create a .env file in the root of your working directory with the following contents:
BOT_TOKEN=<your token here>
API_URL=<your api>
DATABASE=h2
# optional if you are using postgres
POSTGRES_PORT=5432
POSTGRES_USER=<username>
POSTGRES_PASSWORD=<password>
Next, run the .jar resulting from the ./gradlew build
$ java -jar SpeechAndSpell-1.0.0-all.jar
Optionally: supply extra ram with JVM parameters (-Xms256m -Xmx2048m should be more than enough!)
Optionally: use the included dockerfile for almost complete setup (with exception of .env)