This project allows people QuizBowl players to study QuizBowl using an AI voice reader in voice and message channels. SpeechQB uses two APIs, one to get the questions first (https://www.qbreader.org/) and one to get an audio file of the text (Google TTS). A player can type in the command -play [categories] [difficulties] to start a reading session, i. e -play geo 2, geo being geography. The process of starting a session goes like this: a user types in the command to start the session, SpeechQB will join the voice channel, SpeechQB will
make an API call to https://www.qbreader.org/ to retrieve a question, SpeechQB will then make another API call to Google TTS to turn the question text into a playable audio file, then SpeechQB will play the audio file. Once it starts playing the user is free to buzz in by typing “bz” or “buzz” and will be prompted for an answer. Once the user types in an answer it will either be wrong, correct, or prompted. If it is wrong the user will not receive any points and the question will continue to be read, if the answer is correct the user will receive 10 points and the question stops being read, if it is prompted the user will be prompted for another answer. This process simulates real-life quiz bowl where students are read by a human reader, which is a great tool to study with. To get this project working locally a user will need a discord bot Token as well as a Google credential (Google TTS credential). Those fields will be in main.py and helpers.py respectively. On top of voice AI reading, the option to play a text-based version was implemented in order for convenience. It essentially works the same way, but instead of reading the question the more and more of the question is sent in an embed which is set to delay for 0.7 seconds after sending 6 words of the question until the question is finished. That way players are able to buzz in to answer the question without there being too much delay. This tool is fun for QuizBowl players who need practice or are just looking for academic fun.
Invite Link: https://discord.com/oauth2/authorize?client_id=1104229749968089108&scope=bot&permissions=8
This project allows people QuizBowl players to study QuizBowl using an AI voice reader in voice and message channels. SpeechQB uses two APIs, one to get the questions first (https://www.qbreader.org/) and one to get an audio file of the text (Google TTS). A player can type in the command -play [categories] [difficulties] to start a reading session, i. e -play geo 2, geo being geography. The process of starting a session goes like this: a user types in the command to start the session, SpeechQB will join the voice channel, SpeechQB will make an API call to https://www.qbreader.org/ to retrieve a question, SpeechQB will then make another API call to Google TTS to turn the question text into a playable audio file, then SpeechQB will play the audio file. Once it starts playing the user is free to buzz in by typing “bz” or “buzz” and will be prompted for an answer. Once the user types in an answer it will either be wrong, correct, or prompted. If it is wrong the user will not receive any points and the question will continue to be read, if the answer is correct the user will receive 10 points and the question stops being read, if it is prompted the user will be prompted for another answer. This process simulates real-life quiz bowl where students are read by a human reader, which is a great tool to study with. To get this project working locally a user will need a discord bot Token as well as a Google credential (Google TTS credential). Those fields will be in main.py and helpers.py respectively. On top of voice AI reading, the option to play a text-based version was implemented in order for convenience. It essentially works the same way, but instead of reading the question the more and more of the question is sent in an embed which is set to delay for 0.7 seconds after sending 6 words of the question until the question is finished. That way players are able to buzz in to answer the question without there being too much delay. This tool is fun for QuizBowl players who need practice or are just looking for academic fun.