🐛 fix: Telegram适配器使用代理地址无法获取图片 #723

This commit is contained in:
Soulter
2025-03-07 09:05:00 +08:00
parent d8155bc8eb
commit 7de27abc8d
4 changed files with 21 additions and 6 deletions
+1
View File
@@ -165,6 +165,7 @@ CONFIG_METADATA_2 = {
"telegram_token": "your_bot_token",
"start_message": "Hello, I'm AstrBot!",
"telegram_api_base_url": "https://api.telegram.org/bot",
"telegram_file_base_url": "https://api.telegram.org/file/bot",
},
},
"items": {
@@ -51,13 +51,19 @@ class TelegramPlatformAdapter(Platform):
if not base_url:
base_url = "https://api.telegram.org/bot"
file_base_url = self.config.get(
"telegram_file_base_url", "https://api.telegram.org/file/bot"
)
if not file_base_url:
file_base_url = "https://api.telegram.org/file/bot"
self.base_url = base_url
self.application = (
ApplicationBuilder()
.token(self.config["telegram_token"])
.base_url(base_url)
.base_file_url(base_url)
.base_file_url(file_base_url)
.build()
)
message_handler = TelegramMessageHandler(
+12 -4
View File
@@ -303,9 +303,13 @@ class Main(star.Star):
uid = event.get_sender_id()
if uid in self.user_waiting:
self.user_waiting.pop(uid)
yield event.plain_result(f"代码执行器: {event.get_sender_name()}/{event.get_sender_id()} 已清理。")
yield event.plain_result(
f"代码执行器: {event.get_sender_name()}/{event.get_sender_id()} 已清理。"
)
else:
yield event.plain_result(f"代码执行器: {event.get_sender_name()}/{event.get_sender_id()} 没有等待上传文件。")
yield event.plain_result(
f"代码执行器: {event.get_sender_name()}/{event.get_sender_id()} 没有等待上传文件。"
)
@pi.command("list")
async def pi_file_list(self, event: AstrMessageEvent):
@@ -313,9 +317,13 @@ class Main(star.Star):
uid = event.get_sender_id()
if uid in self.user_file_msg_buffer:
files = self.user_file_msg_buffer[uid]
yield event.plain_result(f"代码执行器: {event.get_sender_name()}/{event.get_sender_id()} 上传的文件: {files}")
yield event.plain_result(
f"代码执行器: {event.get_sender_name()}/{event.get_sender_id()} 上传的文件: {files}"
)
else:
yield event.plain_result(f"代码执行器: {event.get_sender_name()}/{event.get_sender_id()} 没有上传文件。")
yield event.plain_result(
f"代码执行器: {event.get_sender_name()}/{event.get_sender_id()} 没有上传文件。"
)
@llm_tool("python_interpreter")
async def python_interpreter(self, event: AstrMessageEvent):
+1 -1
View File
@@ -1,9 +1,9 @@
from astrbot.api.event import AstrMessageEvent, filter
from astrbot.api.star import Context, Star, register
from astrbot.core.utils.session_waiter import SessionWaiter, USER_SESSIONS
from sys import maxsize
@register(
"session_controller",
"Cvandia & Soulter",