Skip to content

Commit 831afca

Browse files
committed
bugfix: 修复kook ws心跳间隔可能会出现负数时间的bug
1 parent 07b3840 commit 831afca

2 files changed

Lines changed: 5 additions & 3 deletions

File tree

astrbot/core/platform/sources/kook/kook_adapter.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ async def _main_loop(self):
135135
# 等待一段时间后重试
136136
wait_time = min(
137137
2**consecutive_failures, max_retry_delay
138-
) # 指数退避,最大60秒
138+
) # 指数退避
139139
logger.info(f"[KOOK] 等待 {wait_time} 秒后重试...")
140140
await asyncio.sleep(wait_time)
141141

astrbot/core/platform/sources/kook/kook_client.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -255,8 +255,10 @@ async def _heartbeat_loop(self):
255255
"""心跳循环"""
256256
while self.running:
257257
try:
258-
# 随机化心跳间隔 (30±5秒)
259-
interval = self.config.heartbeat_interval + random.randint(-5, 5)
258+
# 随机化心跳间隔 (±5秒)
259+
interval = max(
260+
1, self.config.heartbeat_interval + random.randint(-5, 5)
261+
)
260262
await asyncio.sleep(interval)
261263

262264
if not self.running:

0 commit comments

Comments
 (0)