fix(telegram): 補 send_text 公開方法 — 修復 drift_adopt_telegram_failed
drift_adopt_service / drift_remediator / runbook_generator / signoz_webhook
均呼叫 tg.send_text(),但 TelegramGateway 缺少此公開方法,
導致每次呼叫拋出 AttributeError。
新增 send_text() 委派至 _send_request('sendMessage'),
預設 chat_id = alert_chat_id(SRE 群組),支援 HTML parse_mode。
不動任何呼叫方,不改 dedup / nonce 邏輯。
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -4961,6 +4961,41 @@ class TelegramGateway:
|
||||
payload["reply_markup"] = reply_markup
|
||||
return await self._send_request("sendMessage", payload)
|
||||
|
||||
# =========================================================================
|
||||
# 2026-05-04 Claude Sonnet 4.6: send_text 公開 wrapper(修復 drift_adopt_telegram_failed)
|
||||
# =========================================================================
|
||||
|
||||
async def send_text(
|
||||
self,
|
||||
text: str,
|
||||
chat_id: int | str | None = None,
|
||||
parse_mode: str = "HTML",
|
||||
disable_web_page_preview: bool = True,
|
||||
) -> dict:
|
||||
"""
|
||||
公開 send_text wrapper — 委派至 _send_request('sendMessage', ...)
|
||||
|
||||
給 drift_adopt_service / drift_remediator / runbook_generator /
|
||||
signoz_webhook 等服務使用的通用純文字送出方法。
|
||||
預設送往 alert_chat_id(SRE 群組)。
|
||||
|
||||
Args:
|
||||
text: 訊息內容(最多 4096 字元)
|
||||
chat_id: 目標 chat ID,None 時使用 alert_chat_id
|
||||
parse_mode: 解析模式(預設 HTML)
|
||||
disable_web_page_preview: 是否關閉網頁預覽
|
||||
|
||||
Returns:
|
||||
dict: Telegram API 回應
|
||||
"""
|
||||
payload: dict = {
|
||||
"chat_id": chat_id or self.alert_chat_id,
|
||||
"text": text[:4096],
|
||||
"parse_mode": parse_mode,
|
||||
"disable_web_page_preview": disable_web_page_preview,
|
||||
}
|
||||
return await self._send_request("sendMessage", payload)
|
||||
|
||||
# =========================================================================
|
||||
# 2026-04-24 Claude Sonnet 4.6 (ADR-095 WS4): Hermes NL 回覆
|
||||
# =========================================================================
|
||||
|
||||
Reference in New Issue
Block a user