new function voice chat
This commit is contained in:
32
db.py
32
db.py
@@ -125,15 +125,31 @@ class BotDB:
|
||||
except sqlite3.Error as error:
|
||||
print(error)
|
||||
|
||||
def get_random_audio(self, user_id):
|
||||
"""Получает данные о войсе юзера из БД"""
|
||||
def check_listen_audio(self, user_id):
|
||||
"""Проверяет прослушано ли аудио пользователем"""
|
||||
try:
|
||||
file_name = self.cursor.execute(
|
||||
"SELECT `file_name` FROM `audio_message_reference` WHERE `author_id` <> ?", (user_id,))
|
||||
file_name_massive = file_name.fetchall()
|
||||
number_element = random.randint(0, len(file_name_massive)-1)
|
||||
audio_for_user = file_name_massive[number_element]
|
||||
return audio_for_user
|
||||
query_listen_audio = self.cursor.execute(
|
||||
"""SELECT l.file_name
|
||||
FROM audio_message_reference a
|
||||
LEFT JOIN listen_audio_users l ON l.file_name = a.file_name
|
||||
WHERE l.user_id = ?
|
||||
AND l.file_name IS NOT NULL""" , (user_id,))
|
||||
check_sign = query_listen_audio.fetchall()
|
||||
query_all_audio = self.cursor.execute('SELECT file_name FROM audio_message_reference WHERE author_id <> ?', (user_id,))
|
||||
sign_all_audio = query_all_audio.fetchall()
|
||||
new_sign1 = list(set(sign_all_audio) - set(check_sign))
|
||||
new_sign = []
|
||||
for i in new_sign1:
|
||||
new_sign.append(i[0])
|
||||
return new_sign
|
||||
except sqlite3.Error as error:
|
||||
print(error)
|
||||
|
||||
def mark_listened_audio(self, file_name, user_id):
|
||||
"""Отмечает аудио прослушанным для конкретного пользователя."""
|
||||
try:
|
||||
result = self.cursor.execute("INSERT INTO `listen_audio_users` (file_name, user_id, is_listen) VALUES (?, ?, ?)", (file_name, user_id, 1))
|
||||
return self.conn.commit()
|
||||
except sqlite3.Error as error:
|
||||
print(error)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user