🚀 Auto-deploy: BotVPS atualizado em 29/04/2026 11:38:36

This commit is contained in:
2026-04-29 11:38:36 +00:00
parent ffbcd5c49f
commit bd0fbbbeb3

View File

@@ -161,16 +161,24 @@ def resolve_account(account_alias: str) -> str:
clean = account_alias.strip().lower()
return ACCOUNT_MAPPING.get(clean, f"gws-{clean}")
def list_gmail_emails(account: str) -> str:
def list_gmail_emails(account_alias: str) -> str:
"""Lista os últimos 5 e-mails com Título e Remetente. Aceita apelidos: ma, mr, adm, 4r."""
account = resolve_account(account)
account = resolve_account(account_alias)
list_cmd = f"{account} gmail users messages list --params '{{\"userId\": \"me\", \"maxResults\": 5}}'"
res = run_bash_command(list_cmd)
try:
data = json.loads(res)
# Limpeza de JSON (remove lixo do keyring/stderr no stdout)
json_match = re.search(r"(\{.*\})", res, re.S)
res_clean = json_match.group(1) if json_match else res
data = json.loads(res_clean)
if "error" in data:
err_msg = data["error"].get("message", str(data["error"]))
return f"❌ Erro de Autenticação GWS ({account}): {err_msg}. Você pode precisar reautenticar o CLI na VPS."
messages = data.get("messages", [])
if not messages: return "Nenhum e-mail encontrado."
if not messages: return "📭 Nenhum e-mail encontrado na caixa de entrada."
result_text = "📧 **Últimos E-mails:**\n"
for i, msg in enumerate(messages, 1):
@@ -178,7 +186,11 @@ def list_gmail_emails(account: str) -> str:
details_cmd = f"{account} gmail users messages get --params '{{\"userId\": \"me\", \"id\": \"{msg_id}\", \"format\": \"metadata\", \"metadataHeaders\": [\"Subject\", \"From\"]}}'"
details_res = run_bash_command(details_cmd)
try:
details = json.loads(details_res)
# Limpeza de JSON também nos detalhes
dm = re.search(r"(\{.*\})", details_res, re.S)
dc = dm.group(1) if dm else details_res
details = json.loads(dc)
headers = details.get("payload", {}).get("headers", [])
subject = next((h["value"] for h in headers if h["name"] == "Subject"), "Sem Assunto")
sender = next((h["value"] for h in headers if h["name"] == "From"), "Desconhecido")