Update chatbot/plugins/chat.py
Browse files- chatbot/plugins/chat.py +31 -17
chatbot/plugins/chat.py
CHANGED
@@ -54,6 +54,7 @@ from google import genai
|
|
54 |
from google.genai import types as ty
|
55 |
|
56 |
trans = SyncTranslator()
|
|
|
57 |
|
58 |
async def geni_files_delete(name: str):
|
59 |
url = f"https://generativelanguage.googleapis.com/v1beta/{name}"
|
@@ -234,29 +235,42 @@ async def closeed(client, callback):
|
|
234 |
@Client.on_callback_query(filters.regex("^memory_(\d+)$"))
|
235 |
async def memory_updated(client, callback):
|
236 |
user_id = int(callback.matches[0].group(1))
|
237 |
-
|
238 |
-
if callback.message.id
|
239 |
-
|
240 |
-
|
241 |
-
if is_memory:
|
242 |
-
return await callback.answer("Memory is Already Updated!", False)
|
243 |
-
backup_chat = await db._get_chatbot_chat_from_db(user_id)
|
244 |
try:
|
245 |
if user_id == 0:
|
246 |
-
return await callback.answer("Server busy try again later", True)
|
|
|
247 |
data_tr = await db.backup_chatbot.find_one({"user_id": user_id})
|
248 |
if not data_tr:
|
249 |
-
return await callback.answer("
|
250 |
-
|
|
|
|
|
|
|
|
|
|
|
251 |
if not get_response:
|
252 |
-
return await callback.answer("
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
257 |
except Exception as e:
|
258 |
-
LOGS.error(f"
|
259 |
-
await callback.answer("Server
|
260 |
|
261 |
@Client.on_callback_query(filters.regex("^tr_(\d+)$"))
|
262 |
async def terjemahkan(client, callback):
|
|
|
54 |
from google.genai import types as ty
|
55 |
|
56 |
trans = SyncTranslator()
|
57 |
+
message_memory_state = {}
|
58 |
|
59 |
async def geni_files_delete(name: str):
|
60 |
url = f"https://generativelanguage.googleapis.com/v1beta/{name}"
|
|
|
235 |
@Client.on_callback_query(filters.regex("^memory_(\d+)$"))
|
236 |
async def memory_updated(client, callback):
|
237 |
user_id = int(callback.matches[0].group(1))
|
238 |
+
|
239 |
+
if message_memory_state.get(callback.message.id, False):
|
240 |
+
return await callback.answer("Memory already updated!", show_alert=False)
|
241 |
+
|
|
|
|
|
|
|
242 |
try:
|
243 |
if user_id == 0:
|
244 |
+
return await callback.answer("Server busy, try again later", show_alert=True)
|
245 |
+
|
246 |
data_tr = await db.backup_chatbot.find_one({"user_id": user_id})
|
247 |
if not data_tr:
|
248 |
+
return await callback.answer("User data not found", show_alert=True)
|
249 |
+
|
250 |
+
backup_chat = await db._get_chatbot_chat_from_db(user_id)
|
251 |
+
if not backup_chat:
|
252 |
+
backup_chat = []
|
253 |
+
|
254 |
+
get_response = data_tr.get("translate_text")
|
255 |
if not get_response:
|
256 |
+
return await callback.answer("No translation available", show_alert=True)
|
257 |
+
|
258 |
+
|
259 |
+
backup_chat.append({
|
260 |
+
"role": "model",
|
261 |
+
"parts": [{"text": get_response}]
|
262 |
+
})
|
263 |
+
|
264 |
+
await asyncio.gather(
|
265 |
+
db._update_chatbot_chat_in_db(user_id, backup_chat),
|
266 |
+
callback.answer("Memory updated successfully!")
|
267 |
+
)
|
268 |
+
|
269 |
+
message_memory_state[callback.message.id] = True
|
270 |
+
|
271 |
except Exception as e:
|
272 |
+
LOGS.error(f"Memory update failed: {str(e)}")
|
273 |
+
await callback.answer("Server error", show_alert=True)
|
274 |
|
275 |
@Client.on_callback_query(filters.regex("^tr_(\d+)$"))
|
276 |
async def terjemahkan(client, callback):
|