Commit d1f0088

benny-dou <60535774+benny-dou@users.noreply.github.com>
2025-02-08 08:20:09
feat(chart): add tradingview url to chart caption
1 parent 34906b1
Changed files (1)
src
src/bridge/chartimg.py
@@ -33,7 +33,13 @@ async def send_to_chartimg_bridge(client: Client, message: Message, symbol: str,
         target_mid = None
     else:
         target_mid = to_int(reply_msg_id)
-    params = {"target_cid": target_cid, "target_mid": target_mid, "text": f"{symbol} {interval}"}
+    params = {
+        "target_cid": target_cid,
+        "target_mid": target_mid,
+        "text": f"{symbol} {interval}",
+        "symbol": symbol,
+        "interval": interval,
+    }
     cache.set(f"bridge-{params['text']}", params, ttl=60)  # save params to cache
     logger.warning(f"Trying chartimg bridge (@{CHART_BOT}): {params['text']}")
     await client.send_message(chat_id=f"@{CHART_BOT}", text=f"/chart {params['text']}")
@@ -53,11 +59,11 @@ async def forward_chartimg_results(client: Client, message: Message):
     params = cache.get(f"bridge-{info['text']}")
 
     logger.info(f"Forwarding tradingview chart @{info['handle']} -> chat={params['target_cid']}, id={params['target_mid']}")
-    await client.copy_message(
+    await client.send_photo(
         chat_id=params["target_cid"],
-        from_chat_id=message.chat.id,
-        message_id=message.id,
-        reply_parameters=ReplyParameters(message_id=params["target_mid"]),  # type: ignore
+        photo=info["file_id"],
+        caption=f"[{params['symbol']}](https://www.tradingview.com/chart/?symbol={params['symbol']}) @{params['interval']} (UTC)",
+        reply_parameters=ReplyParameters(message_id=params["target_mid"]),
     )
     cache.delete(f"bridge-{params['text']}")
     with contextlib.suppress(Exception):