""" notify.py - Telegram 推送。 """ import logging import requests logger = logging.getLogger(__name__) BOT_TOKEN = "8742822093:AAGzD1vS7ru7ROhgcOjA-UyHb4R8Cfcqv3Q" CHAT_ID = "580807463" def send_telegram_message(text: str) -> bool: """发送 Telegram 消息(不去重,每次调用都发)。""" if not BOT_TOKEN or not CHAT_ID: logger.warning("Telegram 未配置,跳过推送") return False url = f"https://api.telegram.org/bot{BOT_TOKEN}/sendMessage" try: resp = requests.post( url, json={ "chat_id": CHAT_ID, "text": text, "parse_mode": "HTML", "disable_web_page_preview": True, }, timeout=10, ) resp.raise_for_status() return True except Exception as e: logger.error(f"Telegram 推送失败: {e}") return False def send_bsp_alert(text: str, bsp_key: str = "") -> bool: """推送 BSP 消息。""" if not BOT_TOKEN or not CHAT_ID: logger.warning("Telegram 未配置,跳过推送") return False url = f"https://api.telegram.org/bot{BOT_TOKEN}/sendMessage" try: resp = requests.post( url, json={ "chat_id": CHAT_ID, "text": text, "parse_mode": "HTML", "disable_web_page_preview": True, }, timeout=10, ) resp.raise_for_status() logger.info(f"Telegram 推送成功: {bsp_key or 'no-key'}") return True except Exception as e: logger.error(f"Telegram 推送失败: {e}") return False