Getting error while sending mail via smtp

Hi All,
I used before a simple routine code in tcl to send mail.

package require smtp
package require mime
package require Tcl

proc send_simple_message {recipient email_server subject body} {

    set token [mime::initialize -canonical text/plain \
    -string $body]
    mime::setheader $token Subject $subject
    smtp::sendmessage $token \
    -recipients $recipient -servers $email_server -header 
[list From "FROM"] -header 
[list To "TO"]
    mime::finalize $token
}

send_simple_message someone@somewhere.com ENBMAIL01 "This is the subject." "This is the message."

I get errors about key-message id

key message-id not in header
    while executing
"error "key $mixed not in header""
    ("default" arm line 5)
    invoked from within
"switch -- $key {
        "" {
            set result ""
            foreach lower $state(lowerL) mixed $state(mixedL) {
                lappend result..."
    (procedure "::mime::getheader" line 7)
    invoked from within
"::mime::getheader $part ${message-idL} "
    invoked from within
"smtp::sendmessage $token  -recipients $recipient -servers $email_server -header 
[list From "FROM"] -header 
[list To "TO"]"
    (procedure "send_simple_message" line 7)
    invoked from within
"send_simple_message someone@somewhere.com ENBMAIL01 "This is the subject." "This is the message.""
    (file "test_mail.tcl" line 17)

Can someone help please,
Regards,
Ziv:eek: