Posted to tcl by venks at Wed Aug 05 18:17:33 GMT 2009view raw
- proc smtp_email {name to subj body} {
- set smtp_server 10.0.0.158; # change this to your server.
- set my_email me@domain.com; # change this to your email address.
- set s [socket $smtp_server 25]
- gets $s answer
- if {[lindex $answer 0] != 220} {error $answer}
- puts $s "MAIL FROM:<$my_email>";flush $s
- gets $s answer
- if {[lindex $answer 0] != 250} {error $answer}
- puts $s "RCPT TO:<$my_email>";flush $s
- gets $s answer
- if {[lindex $answer 0] != 250} {error $answer}
- puts $s DATA;flush $s
- gets $s answer
- if {[lindex $answer 0] != 354} {error $answer}
- puts $s "From: $name <$my_email>"
- puts $s "Return-Path: $name <$my_email>"
- puts $s "To: $to"
- puts $s "Subject: $subj"
- puts $s "\n."
- flush $s
- gets $s answer
- if {[lindex $answer 0] != 250} {error $answer}
- close $s
- }
- # I pass in a different name from each caller. e.g.
- # smtp_email "Nightly Backup" sysadmin@domain.com "Backup OK" "At [clock format [clock seconds]]"