Files
fn_registry/functions/infra/smtp_send.md
T
egutierrez 47fac22230 chore: auto-commit (799 archivos)
- .claude/CLAUDE.md
- .claude/commands/subagentes.md
- .claude/rules/INDEX.md
- .mcp.json
- bash/functions/cybersecurity/analyze_dns.md
- bash/functions/cybersecurity/audit_http_headers.md
- bash/functions/cybersecurity/audit_ssh_config.md
- bash/functions/cybersecurity/check_firewall.md
- bash/functions/cybersecurity/detect_suspicious_users.md
- bash/functions/cybersecurity/encrypt_file.md
- ...

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-14 00:28:20 +02:00

1.8 KiB

name, kind, lang, domain, version, purity, signature, description, tags, uses_functions, uses_types, returns, returns_optional, error_type, imports, params, output, tested, tests, test_file_path, file_path
name kind lang domain version purity signature description tags uses_functions uses_types returns returns_optional error_type imports params output tested tests test_file_path file_path
smtp_send function go infra 1.0.0 impure func SMTPSend(client *smtp.Client, msg EmailMessage) error Serializa un EmailMessage a MIME y lo envia usando el smtp.Client dado. Soporta texto plano, HTML, multipart/alternative y adjuntos (multipart/mixed).
email
smtp
send
mime
multipart
pendiente-usar
smtp_connect_go_infra
EmailMessage_go_infra
false error_go_core
bytes
encoding/base64
fmt
mime
mime/multipart
net/smtp
net/textproto
strings
time
name desc
client cliente SMTP autenticado obtenido de SMTPConnect
name desc
msg mensaje email con From, To, Subject y al menos un body (HTML o text)
nil si el envio fue exitoso; error con contexto si falla MAIL FROM, RCPT TO, DATA o la escritura MIME true
envia mensaje texto plano via mock smtp
envia mensaje html via mock smtp
envia con adjunto via mock smtp
functions/infra/smtp_send_test.go functions/infra/smtp_send.go

Ejemplo

cfg := SMTPConfig{Host: "smtp.gmail.com", Port: 587, Username: "u@gmail.com", Password: "pw", TLSMode: "starttls"}
client, err := SMTPConnect(cfg)
if err != nil { log.Fatal(err) }
defer client.Quit()

msg := EmailBuildHTML("u@gmail.com", []string{"dest@example.com"}, "Asunto", "<b>Hola</b>")
if err := SMTPSend(client, msg); err != nil { log.Fatal(err) }

Notas

Funcion impura — envia datos por red. El cliente debe estar autenticado (obtenido de SMTPConnect). BCC se incluye en RCPT TO pero no en las cabeceras MIME visibles. Los adjuntos se codifican en base64. Para HTML+texto usa multipart/alternative; con adjuntos usa multipart/mixed.