Skip to content

chore: perf platform messages#2073

Closed
RockChinQ wants to merge 27 commits into
masterfrom
refactor/eba
Closed

chore: perf platform messages#2073
RockChinQ wants to merge 27 commits into
masterfrom
refactor/eba

Conversation

@RockChinQ

Copy link
Copy Markdown
Member

概述 / Overview

请在此部分填写你实现/解决/优化的内容:
Summary of what you implemented/solved/optimized:

更改前后对比截图 / Screenshots

请在此部分粘贴更改前后对比截图(可以是界面截图、控制台输出、对话截图等):
Please paste the screenshots of changes before and after here (can be interface screenshots, console output, conversation screenshots, etc.):

修改前 / Before:

修改后 / After:

检查清单 / Checklist

PR 作者完成 / For PR author

请在方括号间写x以打勾 / Please tick the box with x

  • 阅读仓库贡献指引了吗? / Have you read the contribution guide?
  • 与项目所有者沟通过了吗? / Have you communicated with the project maintainer?
  • 我确定已自行测试所作的更改,确保功能符合预期。 / I have tested the changes and ensured they work as expected.

项目维护者完成 / For project maintainer

  • 相关 issues 链接了吗? / Have you linked the related issues?
  • 配置项写好了吗?迁移写好了吗?生效了吗? / Have you written the configuration items? Have you written the migration? Has it taken effect?
  • 依赖加到 pyproject.toml 和 core/bootutils/deps.py 了吗 / Have you added the dependencies to pyproject.toml and core/bootutils/deps.py?
  • 文档编写了吗? / Have you written the documentation?

@dosubot dosubot Bot added size:XXL This PR changes 1000+ lines, ignoring generated files. eh: Feature enhance: 新功能添加 / add new features m: Platform 机器人管理相关 / Bots management pd: Need testing pending: 待测试的PR / PR waiting to be tested labels Mar 22, 2026
RockChinQ added 3 commits May 7, 2026 15:18
- TelegramAdapter inherits AbstractPlatformAdapter with all capabilities
- TelegramEventConverter handles all Update types: message, edited_message,
  chat_member, my_chat_member, callback_query, message_reaction
- TelegramAPIMixin implements: edit_message, delete_message, forward_message,
  get_group_info, get_group_member_list/info, get_user_info, get_file_url,
  mute/unmute/kick_member, leave_group
- PLATFORM_API_MAP for call_platform_api: pin/unpin message, set chat title/desc,
  get admins, send chat action, create invite link, answer callback query
- Full backward compat: legacy FriendMessage/GroupMessage listeners still work
- Preserves all existing functionality: stream output, markdown card, forum topics
- Old sources/telegram.py untouched for gradual migration
Comment thread src/langbot/pkg/platform/adapters/telegram/adapter.py Fixed
Comment thread src/langbot/pkg/platform/adapters/telegram/adapter.py Fixed
Comment thread src/langbot/pkg/platform/adapters/telegram/event_converter.py Fixed
Comment thread src/langbot/pkg/platform/adapters/telegram/message_converter.py Fixed
Comment thread tests/unit_tests/platform/test_discord_eba_adapter.py Fixed
task.cancel()
try:
await asyncio.wait_for(task, timeout=3)
except (asyncio.CancelledError, asyncio.TimeoutError):
Comment thread tests/unit_tests/platform/test_dingtalk_eba_adapter.py Fixed
request = (
CreateImageRequest.builder()
.request_body(
CreateImageRequestBody.builder().image_type('message').image(open(temp_file_path, 'rb')).build()
CreateFileRequestBody.builder()
.file_type(file_type)
.file_name(file_name)
.file(open(temp_file_path, 'rb'))
Comment thread tests/unit_tests/platform/test_lark_eba_adapter.py Fixed
Comment thread tests/unit_tests/platform/test_wecom_eba_adapter.py Fixed
Comment thread tests/unit_tests/platform/test_wecombot_eba_adapter.py Fixed
Comment thread tests/unit_tests/platform/test_wecomcs_eba_adapter.py Fixed
Comment thread src/langbot/pkg/platform/adapters/officialaccount/errors.py Fixed
self._ws_task.cancel()
try:
await self._ws_task
except asyncio.CancelledError:
self._ws_task = asyncio.create_task(self.bot.connect_gateway_loop(on_event, on_ready, on_error))
try:
await self._ws_task
except asyncio.CancelledError:
server_task.cancel()
try:
await server_task
except asyncio.CancelledError:
server_task.cancel()
try:
await server_task
except asyncio.CancelledError:
Comment thread src/langbot/pkg/platform/adapters/qqofficial/errors.py Fixed
Comment thread tests/e2e/live_slack_eba_probe.py Fixed
task.cancel()
try:
await task
except asyncio.CancelledError:
self.heartbeat_task.cancel()
try:
await self.heartbeat_task
except asyncio.CancelledError:
await asyncio.sleep(30)
if self.ws:
await self.ws.send(json.dumps({'s': 2, 'sn': self.current_sn}))
except asyncio.CancelledError:
@RockChinQ

Copy link
Copy Markdown
Member Author

recheck

@github-actions

github-actions Bot commented Jun 10, 2026

Copy link
Copy Markdown
Contributor

All contributors have signed the CLA. ✅ 所有贡献者均已签署 CLA。
Posted by the CLA Assistant Lite bot.

@RockChinQ

Copy link
Copy Markdown
Member Author

@wangcham

@wangcham

Copy link
Copy Markdown
Member

I have read the CLA Document and I hereby sign the CLA

RockChinQ added a commit to langbot-app/cla that referenced this pull request Jun 14, 2026
@RockChinQ

Copy link
Copy Markdown
Member Author

Continue in #2277

@RockChinQ RockChinQ closed this Jun 23, 2026
@github-actions github-actions Bot locked and limited conversation to collaborators Jun 23, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

eh: Feature enhance: 新功能添加 / add new features m: Platform 机器人管理相关 / Bots management pd: Need testing pending: 待测试的PR / PR waiting to be tested size:XXL This PR changes 1000+ lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants