mirror of
https://github.com/migatu/conjurer.git
synced 2026-07-14 21:38:38 +00:00
addfs
This commit is contained in:
+12
-10
@@ -42,7 +42,9 @@ location = "/home/pi/Conjurer/transcripts/"
|
||||
class WaveWriter:
|
||||
def __init__(self, user_id):
|
||||
|
||||
self.username = str(user_id)
|
||||
self.username = str(user_id.id)
|
||||
logger.info("Creating Wavewriter %s", self.username)
|
||||
logger.info(user_id)
|
||||
self.present_file_id = 0
|
||||
self.file_name_past = None
|
||||
|
||||
@@ -101,20 +103,20 @@ class SRBuffer(voice_recv.AudioSink):
|
||||
self.wavewriter = {}
|
||||
|
||||
def on_user_connect(self, username):
|
||||
self.wavewriter[str(username)] = [WaveWriter(username), time.time_ns(), False]
|
||||
self.wavewriter[str(username.id)] = [WaveWriter(username), time.time_ns(), False, False]
|
||||
|
||||
def on_user_disconnect(self,username):
|
||||
self.wavewriter[str(username)].cleanup()
|
||||
self.wavewriter.pop(str(username))
|
||||
def on_user_disconnect(self,username.id):
|
||||
self.wavewriter[str(username.id)].cleanup()
|
||||
self.wavewriter.pop(str(username.id))
|
||||
|
||||
def rotate_user(self,username):
|
||||
self.wavewriter[str(username)].rotate()
|
||||
self.wavewriter[str(username.id)].rotate()
|
||||
|
||||
def wants_opus(self) -> bool:
|
||||
return False
|
||||
|
||||
def write(self, user, data) -> None:
|
||||
logger.info("User %s", user)
|
||||
#logger.info("User %s", user)
|
||||
if user:
|
||||
self.wavewriter[str(user.id)][0].writeframes(data.pcm)
|
||||
self.wavewriter[str(user.id)][1] = time.time_ns()
|
||||
@@ -162,7 +164,7 @@ class Transcriber(commands.Cog):
|
||||
vc.listen(self.wsink)
|
||||
self.check_data.start()
|
||||
|
||||
@tasks.loop(seconds=5)
|
||||
@tasks.loop(seconds=0.5)
|
||||
async def check_data(self):
|
||||
for item in self.wsink.wavewriter.values():
|
||||
logger.info(item[0])
|
||||
@@ -174,12 +176,12 @@ class Transcriber(commands.Cog):
|
||||
async def on_voice_state_update(self, user, before, after):
|
||||
if before.channel is None:
|
||||
logger.info("User %s connected to channel %s", user, after.channel.name)
|
||||
self.wsink.on_user_connect(user.id)
|
||||
self.wsink.on_user_connect(user)
|
||||
elif after.channel is None:
|
||||
logger.info("User %s disconnected from channel %s", user, before.channel.name)
|
||||
operation = {
|
||||
"type": "user_cleanup",
|
||||
user : str(user.id)
|
||||
user : user.id
|
||||
}
|
||||
self.comm_queue.put(operation)
|
||||
else:
|
||||
|
||||
Reference in New Issue
Block a user