main
1#!/usr/bin/env python
2# -*- coding: utf-8 -*-
3"""在Docker中退出时, 会自动重启Bot服务."""
4
5import os
6
7from glom import glom
8from loguru import logger
9from pyrogram.types import Message
10
11from config import DEVICE_NAME
12from custom.config import ALLOW_USERS_TO_CALL_RESTART
13from utils import slim_cid, strings_list
14
15
16async def restart_bot(message: Message):
17 # VPS上的账号不响应 开发Group 的消息
18 if message.chat.id == -1002434113592 and DEVICE_NAME in ["BennyBot-JP", "BennyBot-US", "BennyBot-CN"]:
19 return
20 if message.content.strip().lower() != "/restart":
21 return
22 uid = glom(message, "from_user.id", default=0) or 0
23 if slim_cid(uid) not in strings_list(ALLOW_USERS_TO_CALL_RESTART):
24 return
25 logger.error(f"Restart command received from {uid=}")
26 os._exit(0)