From a31a40e690e5cd485023ae7be26796c88cd0fd40 Mon Sep 17 00:00:00 2001 From: user Date: Sat, 1 Mar 2025 16:04:46 +0300 Subject: [PATCH] fix meta --- app/api/routes/content.py | 4 +-- app/client_bot/routers/content.py | 4 +-- app/core/background/convert_service.py | 6 ++++- app/core/background/indexer_service.py | 6 +++-- app/core/models/_telegram/templates/player.py | 25 ++++++++++--------- 5 files changed, 26 insertions(+), 19 deletions(-) diff --git a/app/api/routes/content.py b/app/api/routes/content.py index a10ff17..29101cb 100644 --- a/app/api/routes/content.py +++ b/app/api/routes/content.py @@ -95,8 +95,8 @@ async def s_api_v1_content_view(request, content_address: str): invoice_url = None try: invoice_url = await Bot(token=CLIENT_TELEGRAM_API_KEY).create_invoice_link( - 'Lifetime access to content', - 'You will receive NFT with lifetime access to content', + 'Неограниченный доступ к контенту', + 'Неограниченный доступ к контенту', invoice_id, "XTR", [ types.LabeledPrice(label='Lifetime access', amount=stars_cost), diff --git a/app/client_bot/routers/content.py b/app/client_bot/routers/content.py index ec89420..ae10d9c 100644 --- a/app/client_bot/routers/content.py +++ b/app/client_bot/routers/content.py @@ -137,7 +137,7 @@ async def t_inline_query_node_content(query: types.InlineQuery, memory=None, use # Upload preview of decrypted content (limit to 30 seconds) if content_type_declared in ('audio', 'video'): - if True or not decrypted_content.meta.get('telegram_file_cache_preview'): + if not decrypted_content.meta.get('telegram_file_cache_preview'): try: # Construct URL for trimmed preview using decrypted content preview_content = db_session.query(StoredContent).filter_by( @@ -174,7 +174,7 @@ async def t_inline_query_node_content(query: types.InlineQuery, memory=None, use content_share_link = { 'text': user.translated('p_shareLinkContext').format(title=' – '.join(audio_title)), - 'url': f"https://t.me/{CLIENT_TELEGRAM_BOT_USERNAME}/content?startapp=C{content.cid.serialize_v2()}" + 'url': f"https://t.me/{CLIENT_TELEGRAM_BOT_USERNAME}/content?startapp={content.cid.serialize_v2()}" } # Create inline query result using decrypted content's file_id diff --git a/app/core/background/convert_service.py b/app/core/background/convert_service.py index 6fc7a74..e7add33 100644 --- a/app/core/background/convert_service.py +++ b/app/core/background/convert_service.py @@ -203,7 +203,11 @@ async def convert_loop(memory): if wallet_owner_connection: wallet_owner_user = wallet_owner_connection.user wallet_owner_bot = Wrapped_CBotChat(memory._client_telegram_bot, chat_id=wallet_owner_user.telegram_id, user=wallet_owner_user, db_session=session) - unprocessed_encrypted_content.meta['upload_notify_msg_id'] = await wallet_owner_bot.send_content(session, unprocessed_encrypted_content) + unprocessed_encrypted_content.meta = { + **unprocessed_encrypted_content.meta, + 'upload_notify_msg_id': await wallet_owner_bot.send_content(session, unprocessed_encrypted_content) + } + session.commit() async def main_fn(memory): diff --git a/app/core/background/indexer_service.py b/app/core/background/indexer_service.py index 6f2224a..1fdd671 100644 --- a/app/core/background/indexer_service.py +++ b/app/core/background/indexer_service.py @@ -247,8 +247,10 @@ async def indexer_loop(memory, platform_found: bool, seqno: int) -> [bool, int]: return platform_found, seqno encrypted_stored_content.updated = datetime.now() - if encrypted_stored_content.meta != item_metadata_packed: - encrypted_stored_content.meta = item_metadata_packed + encrypted_stored_content.meta = { + **encrypted_stored_content.meta, + **item_metadata_packed + } session.commit() return platform_found, seqno diff --git a/app/core/models/_telegram/templates/player.py b/app/core/models/_telegram/templates/player.py index b8127ec..8d46bbc 100644 --- a/app/core/models/_telegram/templates/player.py +++ b/app/core/models/_telegram/templates/player.py @@ -71,7 +71,7 @@ class PlayerTemplates: content_share_link = { 'text': self.user.translated('p_shareLinkContext').format(title=content_metadata_json.get('name', "")), - 'url': f"https://t.me/{CLIENT_TELEGRAM_BOT_USERNAME}/content?startapp=C{content.cid.serialize_v2()}" + 'url': f"https://t.me/{CLIENT_TELEGRAM_BOT_USERNAME}/content?startapp={content.cid.serialize_v2()}" } preview_content = db_session.query(StoredContent).filter( @@ -207,18 +207,19 @@ class PlayerTemplates: ) if self.bot_id == 1: - if content_type == 'audio': - content.meta = { - **content.meta, - 'telegram_file_cache': r.audio.file_id, - } - elif content_type == 'video': - content.meta = { - **content.meta, - 'telegram_file_cache': r.video.file_id, - } + if content.type == 'onchain/content': + if content_type == 'audio': + content.meta = { + **content.meta, + 'telegram_file_cache': r.audio.file_id, + } + elif content_type == 'video': + content.meta = { + **content.meta, + 'telegram_file_cache': r.video.file_id, + } - self.db_session.commit() + self.db_session.commit() return r