Compare commits

..

No commits in common. "426b36c9d0f58df8e7d0486354f1041c33425570" and "d2fb4bb8abffe21a7241d85d2676f8204af756ba" have entirely different histories.

8 changed files with 51 additions and 101 deletions

View File

@ -1,10 +0,0 @@
FROM python:3.8-buster
WORKDIR /Praxis
COPY requirements.txt requirements.txt
RUN pip3 install -r requirements.txt
COPY . .
CMD [ "python3", "main.py"] #Uncomment to start with the Docker Container

View File

@ -2,18 +2,6 @@ A chatbot to help with live stream production and effects.
___ ___
# Docker:
## Docker Info:
Currently to build the container run the following command.
`docker create -p 2501:2501 -e ISDOCKER=cat --name praxis praxis`
To start the bot with **User_Module** activated use this.
`docker exec -ti praxis python3 main.py`
# Credentials: # Credentials:
## Credentials Setup: ## Credentials Setup:

View File

@ -30,8 +30,8 @@ block_DiscordChannelsMessaging = [""] # Blocks the ability to send messages to D
blockAll_DiscordChannelsMessaging = False # Blocks the ability to send messages to Discord channels blockAll_DiscordChannelsMessaging = False # Blocks the ability to send messages to Discord channels
blockAll_DiscordPrivateMessaging = False # Private Messaging not yet implemented blockAll_DiscordPrivateMessaging = False # Private Messaging not yet implemented
autoEnabled_DiscordChannelsTTS = False
selected_DiscordTTSChannels = ["431129571308339210"] selected_DiscordTTSChannels = ["431129571308339210"]
autoEnabled_DiscordChannelsTTS = False
block_DiscordChannelsTTS = [""] # block supersedes the tts_enabled bool block_DiscordChannelsTTS = [""] # block supersedes the tts_enabled bool
blockAll_DiscordChannelsTTS = False # blockAll supersedes the force bool and force list and tts_enabled bool blockAll_DiscordChannelsTTS = False # blockAll supersedes the force bool and force list and tts_enabled bool
force_DiscordChannelsTTS = [""] # force supersedes the block list force_DiscordChannelsTTS = [""] # force supersedes the block list

View File

@ -138,13 +138,7 @@ class Discord_Module(discord.Client):
#print("isBlocked: " + str(isBlocked)) #print("isBlocked: " + str(isBlocked))
#print("isForced: " + str(isForced)) #print("isForced: " + str(isForced))
if (not await self.contains_slur(message)) and (await self.isTTS_URL_Enabled(message)): if (not await self.contains_slur(message)) and (await self.isTTS_URL_Enabled(message)):
print(message.channel.id, message.channel.id, message.channel.id) if self.tts_enabled and not isBlocked and not config.blockAll_DiscordChannelsTTS or isForced or config.forceAll_DiscordChatChannelsTTS:
isMessageChannelInList = False
for TTS_C_id in config.selected_DiscordTTSChannels:
print(TTS_C_id)
if int(TTS_C_id) == int(message.channel.id):
isMessageChannelInList = True
if self.tts_enabled and (isMessageChannelInList) and not isBlocked and not config.blockAll_DiscordChannelsTTS or isForced or config.forceAll_DiscordChatChannelsTTS:
if not message.content.startswith('!'): if not message.content.startswith('!'):
text_to_say: str = "%s says, %s" % (message.author.display_name, message.content) text_to_say: str = "%s says, %s" % (message.author.display_name, message.content)
channel_text = "%s user msg" % message.channel channel_text = "%s user msg" % message.channel

View File

@ -36,9 +36,8 @@ def twitch_module_init(dbCert, twitchCert):
twitchModule_.tts_enabled = config.autoEnabled_TwitchChannelsTTS twitchModule_.tts_enabled = config.autoEnabled_TwitchChannelsTTS
twitchModule_.whitelisted_users = config.whitelisted_TwitchPowerUsers twitchModule_.whitelisted_users = config.whitelisted_TwitchPowerUsers
print("[TWITCH Module]>", "Loading Channels...")
for twitchChannel in config.autoJoin_TwitchChannels: for twitchChannel in config.autoJoin_TwitchChannels:
print("joining twitch channel:", twitchChannel) print("joining channel function")
twitchModule_.join_channel(None, twitchChannel) twitchModule_.join_channel(None, twitchChannel)
def discord_module_init(dbCert, discordCert): def discord_module_init(dbCert, discordCert):
@ -64,8 +63,6 @@ def user_module_init(dbCert, Empty):
userModule_.main() userModule_.main()
def thread_main(): def thread_main():
if utility.isRunningInDocker() == True:
print("<[DOCKER Detected]>")
if not config.skip_splashScreen: if not config.skip_splashScreen:
utility.splashScreen() utility.splashScreen()
global credentials_manager global credentials_manager
@ -103,8 +100,6 @@ def thread_main():
thread_.start() thread_.start()
if config.user_module == True: if config.user_module == True:
if utility.isRunningInDocker() == False:
config.user_module = False
thread_ = threading.Thread(target=user_module_init, args=(dbCert, None)) thread_ = threading.Thread(target=user_module_init, args=(dbCert, None))
threads.append(thread_) threads.append(thread_)
thread_.start() thread_.start()
@ -114,7 +109,6 @@ def thread_main():
t.join() t.join()
print("---Point of no return---") print("---Point of no return---")
if utility.isRunningInDocker() == False:
input() input()

5
tts.py
View File

@ -6,17 +6,12 @@ import requests
from gtts import gTTS from gtts import gTTS
from playsound import playsound from playsound import playsound
import utilities_script as utility
import config import config
streamLabsUrl = "https://streamlabs.com/polly/speak" streamLabsUrl = "https://streamlabs.com/polly/speak"
def tts(inputText: str, *args): def tts(inputText: str, *args):
outpath = create_speech_file(inputText) outpath = create_speech_file(inputText)
if utility.isRunningInDocker() == True:
print("Docker Detected, skipping playsound()")
else:
print("Playing Sound...")
playsound(outpath) playsound(outpath)

View File

@ -9,8 +9,6 @@ from commands.command_base import AbstractCommand
from cooldowns import Cooldown_Module from cooldowns import Cooldown_Module
import utilities_script as utility
class User_Module(): class User_Module():
def __init__(self): def __init__(self):
super().__init__() super().__init__()
@ -21,9 +19,6 @@ class User_Module():
def main(self): def main(self):
print("\nWaiting on User input...\n") print("\nWaiting on User input...\n")
inputLoop = True inputLoop = True
if utility.isRunningInDocker() == True:
inputLoop = False
print("\nNo User's Input Allowed")
while inputLoop: while inputLoop:
keyboardInput = input() keyboardInput = input()
message = UserMessage() message = UserMessage()

View File

@ -65,12 +65,6 @@ def contains_slur(input: str):
print("<{ slur detected! }> ") print("<{ slur detected! }> ")
return containsSlur return containsSlur
def isRunningInDocker():
isD = os.getenv('ISDOCKER')
if isD is None:
return False
return isD == "cat"
def hard_shutdown(): def hard_shutdown():
current_system_pid = os.getpid() current_system_pid = os.getpid()