JackDotJS / OptiBot

(DISCONTINUED) The original Discord bot for OptiFine. https://discord.gg/3mMpcwW
1 stars 0 forks source link

VC text channel TTS transmission #265

Closed JackDotJS closed 3 years ago

JackDotJS commented 3 years ago

When a user joins a voice channel with a related text channel, the bot could immediately join that same channel alongside the user and automatically transmit any message posted into the channel via some kind of text-to-speech engine. Additionally, the bot could be set up to only transmit text messages sent by users who are also in the voice channel.

Discord technically has this sort of feature built-in, but it's difficult to set up and incredibly unreliable in the end.

Additionally, this may conflict with the upcoming music player feature. One solution would be to have a separate bot to handle voice transmission, but that may introduce additional problems. (creating a completely new bot from scratch, inviting it to the server, dealing with completely different prefixes if this bot needs commands, etc)

A last note, just something i thought of at the last second: would a bot joining the VC every time you're in it come off as a privacy concern? obviously im not interested in recording peoples conversations, but this could be something others would be worried about.

JackDotJS commented 3 years ago

last side note: might make for a neat mini-project, could probably be made into a public bot

TropheusJ commented 3 years ago

this would be extremely useful. people often overlook my messages while in VC. however, it could be easily abused. it should have a pretty short max message length, maybe 100 characters? for longer messages the bot would simply say "see voice text channel for full message" or something along those lines.

Additionally, the bot could be set up to only transmit text messages sent by users who are also in the voice channel.

I think this should not be done, context will probably be missing often if only some messages were said.

would a bot joining the VC every time you're in it come off as a privacy concern?

server deafen the bot

MrCheeze446 commented 3 years ago

this is a good idea, but I worry about spam protection, and people making the bot say slurs

ghost commented 3 years ago

Potential Slurs and people spamming the same word to be said into TTS would be a concern for sure, but this seems like a cool idea.

ZenIsBestWolf commented 3 years ago

Restricting this to just VIP VC and Staff channels perhaps could be a compromise, since VIPs are less likely than the average user to abuse.

JackDotJS commented 3 years ago

this would be extremely useful. people often overlook my messages while in VC. however, it could be easily abused. it should have a pretty short max message length, maybe 100 characters? for longer messages the bot would simply say "see voice text channel for full message" or something along those lines.

Additionally, the bot could be set up to only transmit text messages sent by users who are also in the voice channel.

I think this should not be done, context will probably be missing often if only some messages were said.

would a bot joining the VC every time you're in it come off as a privacy concern?

server deafen the bot

all of these sound good.

though instead of a character limit, maybe it could be a audio length limit? like 10 seconds max or something. or maybe both and just have it like "~100 characters OR 10 seconds maximum length"

JackDotJS commented 3 years ago

im having a hard time finding a genuinely free TTS module for node. most of it seems to rely on online services like google, and others dont provide a way to get readable streams or buffers, which is what we absolutely need to transmit audio at runtime.

the only thing i've found that would probably work is another AWS service called amazon polly but this is still relying on an online service AND it's paid.

JackDotJS commented 3 years ago

update: as it turns out, windows powershell allows you to synthesize speech locally

i could probably use this somehow

JackDotJS commented 3 years ago

this is an entirely separate project now