diff --git a/database/__init__.py b/database/__init__.py
index 0c56b527..dcbdfa0a 100644
--- a/database/__init__.py
+++ b/database/__init__.py
@@ -4,9 +4,8 @@
* @projectName MissKatyPyro
* Copyright @YasirPedia All rights reserved
"""
-from motor.motor_asyncio import AsyncIOMotorClient as MongoClient
+from async_pymongo import AsyncClient
+from misskaty.vars import DATABASE_URI, DATABASE_NAME
-from misskaty.vars import DATABASE_URI
-
-mongo = MongoClient(DATABASE_URI)
-dbname = mongo.MissKatyDB
+mongo = AsyncClient(DATABASE_URI)
+dbname = mongo[DATABASE_NAME]
diff --git a/database/afk_db.py b/database/afk_db.py
index 5a6062e5..87644745 100644
--- a/database/afk_db.py
+++ b/database/afk_db.py
@@ -10,8 +10,8 @@
from database import dbname
-usersdb = dbname.users
-cleandb = dbname.cleanmode
+usersdb = dbname["users"]
+cleandb = dbname["cleanmode"]
cleanmode = {}
diff --git a/database/filters_db.py b/database/filters_db.py
index fba5983b..66ac2004 100644
--- a/database/filters_db.py
+++ b/database/filters_db.py
@@ -2,7 +2,7 @@ from typing import Dict, List, Union
from database import dbname
-filtersdb = dbname.filters
+filtersdb = dbname["filters"]
async def _get_filters(chat_id: int) -> Dict[str, int]:
diff --git a/database/gban_db.py b/database/gban_db.py
index c7b5352c..05c455fd 100644
--- a/database/gban_db.py
+++ b/database/gban_db.py
@@ -1,6 +1,6 @@
from database import dbname
-gbansdb = dbname.gban
+gbansdb = dbname["gban"]
async def is_gbanned_user(user_id: int) -> bool:
diff --git a/database/imdb_db.py b/database/imdb_db.py
index 90b840c6..f1ed2a78 100644
--- a/database/imdb_db.py
+++ b/database/imdb_db.py
@@ -1,6 +1,6 @@
from database import dbname
-imbd_db = dbname.imdb
+imbd_db = dbname["imdb"]
async def is_imdbset(user_id: int) -> bool:
diff --git a/database/karma_db.py b/database/karma_db.py
index 5b7b19a0..a3c8ab31 100644
--- a/database/karma_db.py
+++ b/database/karma_db.py
@@ -3,7 +3,7 @@ from typing import Dict, Union
from database import dbname
from misskaty.helper.functions import int_to_alpha
-karmadb = dbname.karma
+karmadb = dbname["karma"]
async def get_karmas_count() -> dict:
diff --git a/database/locale_db.py b/database/locale_db.py
index 39bbd318..d6823b54 100644
--- a/database/locale_db.py
+++ b/database/locale_db.py
@@ -4,7 +4,7 @@ from pyrogram.enums import ChatType
from database import dbname
-localesdb = dbname.locale # DB for localization
+localesdb = dbname["locale"] # DB for localization
group_types: Iterable[ChatType] = (ChatType.GROUP, ChatType.SUPERGROUP)
diff --git a/database/notes_db.py b/database/notes_db.py
index 89761702..e21432be 100644
--- a/database/notes_db.py
+++ b/database/notes_db.py
@@ -2,7 +2,7 @@ from typing import Dict, List, Union
from database import dbname
-notesdb = dbname.notes
+notesdb = dbname["notes"]
async def _get_notes(chat_id: int) -> Dict[str, int]:
diff --git a/database/sangmata_db.py b/database/sangmata_db.py
index 1ad76ac9..813355e0 100644
--- a/database/sangmata_db.py
+++ b/database/sangmata_db.py
@@ -1,6 +1,6 @@
from database import dbname
-matadb = dbname.sangmata
+matadb = dbname["sangmata"]
# Get Data User
diff --git a/database/users_chats_db.py b/database/users_chats_db.py
index ce42892f..16ea6a3b 100644
--- a/database/users_chats_db.py
+++ b/database/users_chats_db.py
@@ -1,14 +1,13 @@
-import motor.motor_asyncio
-
+from async_pymongo import AsyncClient
from misskaty.vars import DATABASE_NAME, DATABASE_URI
-class Database:
+class UsersData:
def __init__(self, uri, database_name):
- self._client = motor.motor_asyncio.AsyncIOMotorClient(uri)
+ self._client = AsyncClient(uri)
self.db = self._client[database_name]
- self.col = self.db.users
- self.grp = self.db.groups
+ self.col = self.db["users"]
+ self.grp = self.db["groups"]
@staticmethod
def new_user(id, name):
@@ -109,4 +108,4 @@ class Database:
return (await self.db.command("dbstats"))["dataSize"]
-db = Database(DATABASE_URI, DATABASE_NAME)
+db = UsersData(DATABASE_URI, DATABASE_NAME)
diff --git a/database/warn_db.py b/database/warn_db.py
index 122cacf7..64ab6063 100644
--- a/database/warn_db.py
+++ b/database/warn_db.py
@@ -2,7 +2,7 @@ from typing import Dict, Union
from database import dbname
-warnsdb = dbname.warn
+warnsdb = dbname["warn"]
async def get_warns_count() -> dict:
diff --git a/misskaty/__init__.py b/misskaty/__init__.py
index d0aa5f17..715055c3 100644
--- a/misskaty/__init__.py
+++ b/misskaty/__init__.py
@@ -8,7 +8,6 @@ from logging import ERROR, INFO, StreamHandler, basicConfig, getLogger, handlers
from apscheduler.jobstores.mongodb import MongoDBJobStore
from apscheduler.schedulers.asyncio import AsyncIOScheduler
from async_pymongo import AsyncClient
-from motor.motor_asyncio import AsyncIOMotorClient
from pymongo import MongoClient
from pyrogram import Client
diff --git a/misskaty/plugins/imdb_search.py b/misskaty/plugins/imdb_search.py
index 7b163bed..d3194976 100644
--- a/misskaty/plugins/imdb_search.py
+++ b/misskaty/plugins/imdb_search.py
@@ -649,7 +649,7 @@ async def imdb_en_callback(self: Client, query: CallbackQuery):
for i in r_json["creator"]
if i["@type"] == "Person"
)
- res_str += f"Writer: {creator[-2]}\n"
+ res_str += f"Writer: {creator[:-2]}\n"
if r_json.get("actor"):
actors = actors = "".join(
f"{i['name']}, " for i in r_json["actor"]
diff --git a/misskaty/plugins/inline_search.py b/misskaty/plugins/inline_search.py
index a364d1ed..1860b331 100644
--- a/misskaty/plugins/inline_search.py
+++ b/misskaty/plugins/inline_search.py
@@ -11,7 +11,6 @@ from sys import version as pyver
from bs4 import BeautifulSoup
from deep_translator import GoogleTranslator
-from motor import version as mongover
from pykeyboard import InlineButton, InlineKeyboard
from pyrogram import __version__ as pyrover
from pyrogram import enums, filters
@@ -26,6 +25,7 @@ from pyrogram.types import (
)
from misskaty import BOT_USERNAME, app, user
+from misskaty.plugins.dev import shell_exec
from misskaty.core.decorator.ratelimiter import ratelimiter
from misskaty.helper import GENRES_EMOJI, http, post_to_telegraph, search_jw
from misskaty.plugins.misc_tools import get_content
@@ -50,6 +50,7 @@ LOGGER = getLogger()
@app.on_inline_query()
async def inline_menu(_, inline_query: InlineQuery):
if inline_query.query.strip().lower().strip() == "":
+ aspymon_ver = (await shell_exec("pip freeze | grep async-pymongo"))[0]
buttons = InlineKeyboard(row_width=2)
buttons.add(
*[
@@ -59,8 +60,8 @@ async def inline_menu(_, inline_query: InlineQuery):
)
btn = InlineKeyboard(row_width=2)
- bot_state = "Alive" if await app.get_me() else "Dead"
- ubot_state = "Alive" if await user.get_me() else "Dead"
+ bot_state = "Alive" if USER_SESSION and await app.get_me() else "Dead"
+ ubot_state = "Alive" if USER_SESSION and await user.get_me() else "Dead"
btn.add(
InlineKeyboardButton("Stats", callback_data="stats_callback"),
InlineKeyboardButton("Go Inline!", switch_inline_query_current_chat=""),
@@ -72,10 +73,12 @@ async def inline_menu(_, inline_query: InlineQuery):
**UserBot:** `{ubot_state}`
**Python:** `{pyver.split()[0]}`
**Pyrogram:** `{pyrover}`
-**MongoDB:** `{mongover}`
+**MongoDB:** `{aspymon_ver}`
**Platform:** `{platform}`
-**Profiles:** {(await app.get_me()).username} | {(await user.get_me()).first_name}
+**Profiles:** {(await app.get_me()).username}
"""
+ if USER_SESSION:
+ msg += f" | {(await user.get_me()).first_name}"
answerss = [
InlineQueryResultArticle(
title="Inline Commands",
diff --git a/requirements.txt b/requirements.txt
index 5cae3125..fd9efcc8 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -4,7 +4,6 @@ tgcrypto
async_pymongo
pymongo
python-dotenv
-motor[srv]>=3.1.2
requests
bs4
aiohttp