randydev commited on
Commit
57bfdd8
ยท
verified ยท
1 Parent(s): 6bc40c3

Upload chat.py

Browse files
Files changed (1) hide show
  1. chatbot/plugins/chat.py +67 -55
chatbot/plugins/chat.py CHANGED
@@ -236,19 +236,19 @@ async def modelgeminimenu(client, callback):
236
  uuidstr = callback.matches[0].group(1)
237
  keyboard = []
238
  keyboard.append([
239
- InlineKeyboardButton("Gemini Flash EXP", callback_data=f"us:gemini-2.0-flash-exp:{uuidstr}"),
240
- InlineKeyboardButton("Gemini EXP", callback_data=f"us:gemini-exp-1206:{uuidstr}")
241
  ])
242
  keyboard.append([
243
- InlineKeyboardButton("Gemini Flash 8B", callback_data=f"us:gemini-1.5-flash-8b:{uuidstr}"),
244
- InlineKeyboardButton("Gemini 2.0 Flash ", callback_data=f"us:gemini-2.0-flash-001:{uuidstr}")
245
  ])
246
  keyboard.append([
247
- InlineKeyboardButton("Gemini PRO", callback_data=f"us:gemini-1.5-pro:{uuidstr}"),
248
- InlineKeyboardButton("Gemini Flash", callback_data=f"us:gemini-1.5-flash:{uuidstr}"),
249
  ])
250
  keyboard.append([
251
- InlineKeyboardButton("Close", callback_data="closedd")
252
  ])
253
  await callback.edit_message_reply_markup(reply_markup=InlineKeyboardMarkup(keyboard))
254
 
@@ -282,9 +282,9 @@ async def deletemydata(client, callback):
282
  else:
283
  await callback.answer(delm, True)
284
 
285
- @Client.on_callback_query(filters.regex("^genprompt_(\d+)$"))
286
  async def geminigen_prompt(client, callback):
287
- user_id = int(callback.matches[0].group(1))
288
  user_bl = await db.user_blacklists.find_one({"user_id": user_id})
289
  if user_bl and user_bl.get("is_frozen", False) and user_id not in [6477856957]:
290
  await callback.answer("Sorry your account is frozen", True)
@@ -364,9 +364,9 @@ async def geminigen_prompt(client, callback):
364
  except:
365
  pass
366
 
367
- @Client.on_callback_query(filters.regex("^fluxprompt_(\d+)$"))
368
  async def flux_prompt(client, callback):
369
- user_id = int(callback.matches[0].group(1))
370
  user_bl = await db.user_blacklists.find_one({"user_id": user_id})
371
  if user_bl and user_bl.get("is_frozen", False) and user_id not in [6477856957]:
372
  await callback.answer("Sorry your account is frozen", True)
@@ -468,16 +468,15 @@ async def flux_prompt(client, callback):
468
  except:
469
  pass
470
 
471
- @Client.on_callback_query(filters.regex("^removerbg_(\d+)$"))
472
  async def remover_bg(client, callback):
473
- user_id = int(callback.matches[0].group(1))
474
  user_bl = await db.user_blacklists.find_one({"user_id": user_id})
475
  if user_bl and user_bl.get("is_frozen", False) and user_id not in [6477856957]:
476
  await callback.answer("Sorry your account is frozen", True)
477
  return
478
-
479
  try:
480
- data = await db.backup_chatbot.find_one({"user_id": int(user_id)})
481
  if not data:
482
  return await callback.answer("Can't found user", True)
483
  get_response = data.get("background_file_id", None)
@@ -505,11 +504,12 @@ async def remover_bg(client, callback):
505
  reply_markup=None
506
  )
507
 
508
- @Client.on_callback_query(filters.regex("^memory_(\d+)_([a-f0-9]{8})$"))
509
  async def memory_updated(client, callback):
510
- user_id, uuidstr = callback.matches[0].groups()
511
- user_bl = await db.user_blacklists.find_one({"user_id": int(user_id)})
512
- if user_bl and user_bl.get("is_frozen", False) and int(user_id) not in [6477856957]:
 
513
  await callback.answer("Sorry your account is frozen", True)
514
  return
515
 
@@ -520,11 +520,11 @@ async def memory_updated(client, callback):
520
  if user_id == 0:
521
  return await callback.answer("Server busy, try again later", show_alert=True)
522
 
523
- data_tr = await db.backup_chatbot.find_one({"user_id": int(user_id)})
524
  if not data_tr:
525
  return await callback.answer("User data not found", show_alert=True)
526
 
527
- backup_chat = await db._get_chatbot_chat_from_db(int(user_id))
528
  if not backup_chat:
529
  backup_chat = []
530
 
@@ -541,7 +541,7 @@ async def memory_updated(client, callback):
541
  "parts": [{"text": translate_result}]
542
  })
543
  await asyncio.gather(
544
- db._update_chatbot_chat_in_db(int(user_id), backup_chat),
545
  callback.answer("Memory updated successfully!")
546
  )
547
  message_memory_state[callback.message.id] = True
@@ -549,11 +549,12 @@ async def memory_updated(client, callback):
549
  LOGS.error(f"Memory update failed: {str(e)}")
550
  await callback.answer("Server error", show_alert=True)
551
 
552
- @Client.on_callback_query(filters.regex("^tr_(\d+)_(\w+)_([a-f0-9]{8})$"))
553
  async def terjemahkan(client, callback):
554
- user_id, targetlang, uuidstr = callback.matches[0].groups()
555
- user_bl = await db.user_blacklists.find_one({"user_id": int(user_id)})
556
- if user_bl and user_bl.get("is_frozen", False) and int(user_id) not in [6477856957]:
 
557
  await callback.answer("Sorry your account is disabled", True)
558
  return
559
 
@@ -561,7 +562,7 @@ async def terjemahkan(client, callback):
561
  try:
562
  if user_id == 0:
563
  return await callback.answer("Server busy try again later", True)
564
- data_tr = await db.backup_chatbot.find_one({"user_id": int(user_id)})
565
  if not data_tr:
566
  return await callback.answer("Can't found user", True)
567
  if not data_tr or "translate_history" not in data_tr:
@@ -590,10 +591,10 @@ async def terjemahkan(client, callback):
590
  LOGS.error(f"Exception translate: {str(e)}")
591
  await callback.answer("Server busy try again later", True)
592
 
593
- @Client.on_callback_query(filters.regex("^showchat_(\d+)$"))
594
  async def createchat_cb(client, callback):
595
- user_id = int(callback.matches[0].group(1))
596
- data = await db.backup_chatbot.find_one({"user_id": int(user_id)})
597
  if not data:
598
  await callback.answer("Can't found user", True)
599
  return
@@ -603,41 +604,42 @@ async def createchat_cb(client, callback):
603
  return
604
  await callback.answer(f"Created Chat: {create_chat_uuid}", True)
605
 
606
- @Client.on_callback_query(filters.regex("^trmulti_(\d+)_([a-f0-9]{8})$"))
607
  async def multiple_langagues(client, callback):
608
- user_id, uuidstr = callback.matches[0].groups()
609
- user_bl = await db.user_blacklists.find_one({"user_id": int(user_id)})
610
- if user_bl and user_bl.get("is_frozen", False) and int(user_id) not in [6477856957]:
 
611
  await callback.answer("Sorry your account is frozen", True)
612
  return
613
 
614
  keyboard = []
615
  keyboard.append([
616
- InlineKeyboardButton("๐Ÿ‡ฆ๐Ÿ‡ช", callback_data=f"tr_{int(user_id)}_ar_{uuidstr}"),
617
- InlineKeyboardButton("๐Ÿ‡ฆ๐Ÿ‡ฟ", callback_data=f"tr_{int(user_id)}_az_{uuidstr}")
618
  ])
619
  keyboard.append([
620
- InlineKeyboardButton("๐Ÿ‡ง๐Ÿ‡พ", callback_data=f"tr_{int(user_id)}_be_{uuidstr}"),
621
- InlineKeyboardButton("๐Ÿ‡ช๐Ÿ‡ธ", callback_data=f"tr_{int(user_id)}_es_{uuidstr}")
622
  ])
623
  keyboard.append([
624
- InlineKeyboardButton("๐Ÿ‡น๐Ÿ‡ท", callback_data=f"tr_{int(user_id)}_tr_{uuidstr}"),
625
- InlineKeyboardButton("๐Ÿ‡ป๐Ÿ‡ณ", callback_data=f"tr_{int(user_id)}_vi_{uuidstr}")
626
  ])
627
  keyboard.append([
628
- InlineKeyboardButton("๐Ÿ‡ฎ๐Ÿ‡ฉ", callback_data=f"tr_{int(user_id)}_id_{uuidstr}"),
629
- InlineKeyboardButton("๐Ÿ‡บ๐Ÿ‡ธ", callback_data=f"tr_{int(user_id)}_en_{uuidstr}")
630
  ])
631
  keyboard.append([
632
- InlineKeyboardButton("๐Ÿ‡ฎ๐Ÿ‡ณ", callback_data=f"tr_{int(user_id)}_hi_{uuidstr}"),
633
- InlineKeyboardButton("๐Ÿ‡ฏ๐Ÿ‡ต", callback_data=f"tr_{int(user_id)}_ja_{uuidstr}")
634
  ])
635
  keyboard.append([
636
- InlineKeyboardButton("๐Ÿ‡ฒ๐Ÿ‡พ", callback_data=f"tr_{int(user_id)}_ms_{uuidstr}"),
637
- InlineKeyboardButton("๐Ÿ‡ท๐Ÿ‡บ", callback_data=f"tr_{int(user_id)}_ru_{uuidstr}"),
638
  ])
639
  keyboard.append([
640
- InlineKeyboardButton("๐Ÿ’พ", callback_data=f"memory_{int(user_id)}_{uuidstr}")
641
  ])
642
  try:
643
  await callback.edit_message_reply_markup(
@@ -658,6 +660,16 @@ def anonymous_user(user_id: int = None):
658
  )
659
  return keyboard
660
 
 
 
 
 
 
 
 
 
 
 
661
  def create_keyboard(
662
  likes: int = 0,
663
  unlikes: int = 0,
@@ -669,8 +681,8 @@ def create_keyboard(
669
  keyboard = InlineKeyboardMarkup(
670
  [
671
  [
672
- InlineKeyboardButton(f"โ™พ๏ธ", callback_data=f"trmulti_{user_id}_{uuid_str}"),
673
- InlineKeyboardButton(f"๐Ÿ’พ", callback_data=f"memory_{user_id}_{uuid_str}"),
674
  ],
675
  [
676
  InlineKeyboardButton(f"๐Ÿ‘ {likes}", callback_data="vote:like"),
@@ -682,10 +694,10 @@ def create_keyboard(
682
  keyboard = InlineKeyboardMarkup(
683
  [
684
  [
685
- InlineKeyboardButton(f"โ™พ๏ธ", callback_data=f"trmulti_{user_id}_{uuid_str}"),
686
- InlineKeyboardButton(f"๐Ÿ”’", callback_data=f"showchat_{user_id}"),
687
  InlineKeyboardButton(f"โ›๏ธ", callback_data=f"modelmenu:{uuid_str}"),
688
- InlineKeyboardButton(f"๐Ÿ’พ", callback_data=f"memory_{user_id}_{uuid_str}")
689
  ],
690
  [
691
  InlineKeyboardButton(f"๐Ÿ‘ {likes}", callback_data="vote:like"),
@@ -982,7 +994,7 @@ async def chatbot_talk(client: Client, message: Message):
982
  [
983
  InlineKeyboardButton(
984
  text="โœ‚๏ธ Background Remover",
985
- callback_data=f"removerbg_{message.from_user.id}"
986
  )
987
  ],
988
  [
@@ -1246,13 +1258,13 @@ async def chatbot_talk(client: Client, message: Message):
1246
  [
1247
  InlineKeyboardButton(
1248
  text="๐ŸŽจ Gemini AI Generate Image",
1249
- callback_data=f"genprompt_{message.from_user.id}"
1250
  )
1251
  ],
1252
  [
1253
  InlineKeyboardButton(
1254
  text="๐Ÿ–Œ๏ธ FLUX AI Generate Image",
1255
- callback_data=f"fluxprompt_{message.from_user.id}"
1256
  )
1257
  ],
1258
  [
 
236
  uuidstr = callback.matches[0].group(1)
237
  keyboard = []
238
  keyboard.append([
239
+ InlineKeyboardButton("G Flash EXP", callback_data=f"us:gemini-2.0-flash-exp:{uuidstr}"),
240
+ InlineKeyboardButton("G EXP 1206", callback_data=f"us:gemini-exp-1206:{uuidstr}")
241
  ])
242
  keyboard.append([
243
+ InlineKeyboardButton("G 1.5 Flash 8B", callback_data=f"us:gemini-1.5-flash-8b:{uuidstr}"),
244
+ InlineKeyboardButton("G 2.0 Flash 001", callback_data=f"us:gemini-2.0-flash-001:{uuidstr}")
245
  ])
246
  keyboard.append([
247
+ InlineKeyboardButton("G 1.5 PRO", callback_data=f"us:gemini-1.5-pro:{uuidstr}"),
248
+ InlineKeyboardButton("G 1.5 Flash", callback_data=f"us:gemini-1.5-flash:{uuidstr}"),
249
  ])
250
  keyboard.append([
251
+ InlineKeyboardButton("Back To Menu", callback_data=f"menu_back:{uuidstr}")
252
  ])
253
  await callback.edit_message_reply_markup(reply_markup=InlineKeyboardMarkup(keyboard))
254
 
 
282
  else:
283
  await callback.answer(delm, True)
284
 
285
+ @Client.on_callback_query(filters.regex("^genprompt$"))
286
  async def geminigen_prompt(client, callback):
287
+ user_id = callback.from_user.id
288
  user_bl = await db.user_blacklists.find_one({"user_id": user_id})
289
  if user_bl and user_bl.get("is_frozen", False) and user_id not in [6477856957]:
290
  await callback.answer("Sorry your account is frozen", True)
 
364
  except:
365
  pass
366
 
367
+ @Client.on_callback_query(filters.regex("^fluxprompt$"))
368
  async def flux_prompt(client, callback):
369
+ user_id = callback.from_user.id
370
  user_bl = await db.user_blacklists.find_one({"user_id": user_id})
371
  if user_bl and user_bl.get("is_frozen", False) and user_id not in [6477856957]:
372
  await callback.answer("Sorry your account is frozen", True)
 
468
  except:
469
  pass
470
 
471
+ @Client.on_callback_query(filters.regex("^removerbg$"))
472
  async def remover_bg(client, callback):
473
+ user_id = callback.from_user.id
474
  user_bl = await db.user_blacklists.find_one({"user_id": user_id})
475
  if user_bl and user_bl.get("is_frozen", False) and user_id not in [6477856957]:
476
  await callback.answer("Sorry your account is frozen", True)
477
  return
 
478
  try:
479
+ data = await db.backup_chatbot.find_one({"user_id": user_id})
480
  if not data:
481
  return await callback.answer("Can't found user", True)
482
  get_response = data.get("background_file_id", None)
 
504
  reply_markup=None
505
  )
506
 
507
+ @Client.on_callback_query(filters.regex("^memory_([a-f0-9]{8})$"))
508
  async def memory_updated(client, callback):
509
+ uuidstr = callback.matches[0].group(1)
510
+ user_id = callback.from_user.id
511
+ user_bl = await db.user_blacklists.find_one({"user_id": user_id})
512
+ if user_bl and user_bl.get("is_frozen", False) and user_id not in [6477856957]:
513
  await callback.answer("Sorry your account is frozen", True)
514
  return
515
 
 
520
  if user_id == 0:
521
  return await callback.answer("Server busy, try again later", show_alert=True)
522
 
523
+ data_tr = await db.backup_chatbot.find_one({"user_id": user_id})
524
  if not data_tr:
525
  return await callback.answer("User data not found", show_alert=True)
526
 
527
+ backup_chat = await db._get_chatbot_chat_from_db(user_id)
528
  if not backup_chat:
529
  backup_chat = []
530
 
 
541
  "parts": [{"text": translate_result}]
542
  })
543
  await asyncio.gather(
544
+ db._update_chatbot_chat_in_db(user_id, backup_chat),
545
  callback.answer("Memory updated successfully!")
546
  )
547
  message_memory_state[callback.message.id] = True
 
549
  LOGS.error(f"Memory update failed: {str(e)}")
550
  await callback.answer("Server error", show_alert=True)
551
 
552
+ @Client.on_callback_query(filters.regex("^tr_(\w+)_([a-f0-9]{8})$"))
553
  async def terjemahkan(client, callback):
554
+ targetlang, uuidstr = callback.matches[0].groups()
555
+ user_id = callback.from_user.id
556
+ user_bl = await db.user_blacklists.find_one({"user_id": user_id})
557
+ if user_bl and user_bl.get("is_frozen", False) and user_id not in [6477856957]:
558
  await callback.answer("Sorry your account is disabled", True)
559
  return
560
 
 
562
  try:
563
  if user_id == 0:
564
  return await callback.answer("Server busy try again later", True)
565
+ data_tr = await db.backup_chatbot.find_one({"user_id": user_id})
566
  if not data_tr:
567
  return await callback.answer("Can't found user", True)
568
  if not data_tr or "translate_history" not in data_tr:
 
591
  LOGS.error(f"Exception translate: {str(e)}")
592
  await callback.answer("Server busy try again later", True)
593
 
594
+ @Client.on_callback_query(filters.regex("^showchat$"))
595
  async def createchat_cb(client, callback):
596
+ user_id = callback.from_user.id
597
+ data = await db.backup_chatbot.find_one({"user_id": user_id})
598
  if not data:
599
  await callback.answer("Can't found user", True)
600
  return
 
604
  return
605
  await callback.answer(f"Created Chat: {create_chat_uuid}", True)
606
 
607
+ @Client.on_callback_query(filters.regex("^trmulti_([a-f0-9]{8})$"))
608
  async def multiple_langagues(client, callback):
609
+ uuidstr = callback.matches[0].group(1)
610
+ user_id = callback.from_user.id
611
+ user_bl = await db.user_blacklists.find_one({"user_id": user_id})
612
+ if user_bl and user_bl.get("is_frozen", False) and user_id not in [6477856957]:
613
  await callback.answer("Sorry your account is frozen", True)
614
  return
615
 
616
  keyboard = []
617
  keyboard.append([
618
+ InlineKeyboardButton("๐Ÿ‡ฆ๐Ÿ‡ช", callback_data=f"tr_ar_{uuidstr}"),
619
+ InlineKeyboardButton("๐Ÿ‡ฆ๐Ÿ‡ฟ", callback_data=f"tr_az_{uuidstr}")
620
  ])
621
  keyboard.append([
622
+ InlineKeyboardButton("๐Ÿ‡ง๐Ÿ‡พ", callback_data=f"tr_be_{uuidstr}"),
623
+ InlineKeyboardButton("๐Ÿ‡ช๐Ÿ‡ธ", callback_data=f"tr_es_{uuidstr}")
624
  ])
625
  keyboard.append([
626
+ InlineKeyboardButton("๐Ÿ‡น๐Ÿ‡ท", callback_data=f"tr_tr_{uuidstr}"),
627
+ InlineKeyboardButton("๐Ÿ‡ป๐Ÿ‡ณ", callback_data=f"tr_vi_{uuidstr}")
628
  ])
629
  keyboard.append([
630
+ InlineKeyboardButton("๐Ÿ‡ฎ๐Ÿ‡ฉ", callback_data=f"tr_id_{uuidstr}"),
631
+ InlineKeyboardButton("๐Ÿ‡บ๐Ÿ‡ธ", callback_data=f"tr_en_{uuidstr}")
632
  ])
633
  keyboard.append([
634
+ InlineKeyboardButton("๐Ÿ‡ฎ๐Ÿ‡ณ", callback_data=f"tr_hi_{uuidstr}"),
635
+ InlineKeyboardButton("๐Ÿ‡ฏ๐Ÿ‡ต", callback_data=f"tr_ja_{uuidstr}")
636
  ])
637
  keyboard.append([
638
+ InlineKeyboardButton("๐Ÿ‡ฒ๐Ÿ‡พ", callback_data=f"tr_ms_{uuidstr}"),
639
+ InlineKeyboardButton("๐Ÿ‡ท๐Ÿ‡บ", callback_data=f"tr_ru_{uuidstr}"),
640
  ])
641
  keyboard.append([
642
+ InlineKeyboardButton("๐Ÿ’พ", callback_data=f"memory_{uuidstr}")
643
  ])
644
  try:
645
  await callback.edit_message_reply_markup(
 
660
  )
661
  return keyboard
662
 
663
+ @Client.on_callback_query(filters.regex("^menu_back:([a-f0-9]{8})$"))
664
+ async def menu_back(client, callback):
665
+ uuidstr = callback.matches[0].group(1)
666
+ user_id = callback.from_user.id
667
+ keyboard = create_keyboard(
668
+ user_id=user_id,
669
+ uuid_str=uuidstr
670
+ )
671
+ await callback.edit_message_reply_markup(reply_markup=keyboard)
672
+
673
  def create_keyboard(
674
  likes: int = 0,
675
  unlikes: int = 0,
 
681
  keyboard = InlineKeyboardMarkup(
682
  [
683
  [
684
+ InlineKeyboardButton(f"โ™พ๏ธ", callback_data=f"trmulti_{uuid_str}"),
685
+ InlineKeyboardButton(f"๐Ÿ’พ", callback_data=f"memory_{uuid_str}"),
686
  ],
687
  [
688
  InlineKeyboardButton(f"๐Ÿ‘ {likes}", callback_data="vote:like"),
 
694
  keyboard = InlineKeyboardMarkup(
695
  [
696
  [
697
+ InlineKeyboardButton(f"โ™พ๏ธ", callback_data=f"trmulti_{uuid_str}"),
698
+ InlineKeyboardButton(f"๐Ÿ”’", callback_data=f"showchat"),
699
  InlineKeyboardButton(f"โ›๏ธ", callback_data=f"modelmenu:{uuid_str}"),
700
+ InlineKeyboardButton(f"๐Ÿ’พ", callback_data=f"memory_{uuid_str}")
701
  ],
702
  [
703
  InlineKeyboardButton(f"๐Ÿ‘ {likes}", callback_data="vote:like"),
 
994
  [
995
  InlineKeyboardButton(
996
  text="โœ‚๏ธ Background Remover",
997
+ callback_data="removerbg"
998
  )
999
  ],
1000
  [
 
1258
  [
1259
  InlineKeyboardButton(
1260
  text="๐ŸŽจ Gemini AI Generate Image",
1261
+ callback_data="genprompt"
1262
  )
1263
  ],
1264
  [
1265
  InlineKeyboardButton(
1266
  text="๐Ÿ–Œ๏ธ FLUX AI Generate Image",
1267
+ callback_data="fluxprompt"
1268
  )
1269
  ],
1270
  [