ews
ews copied to clipboard
quick and dirty Go package to send emails via Exchange using EWS instead of SMTP
very dumb, hacky, possibly flaky package to send emails from an Exchange server via EWS (in the event yours doesn't expose a SMTP server)
usage:
b, err := ews.BuildTextEmail(
"[email protected]",
[]string{"[email protected]", "[email protected]"},
"An email subject",
[]byte("The email body, as plain text"))
if err != nil {
// handle err
}
resp, err := ews.Issue(
"https://exhange.server.com/ews/Exchange.asmx",
"domain\\username",
"password",
b)
if err != nil {
// handle err
}
if resp.StatusCode != 200 {
// read body and figure out what happened
}
// read or ignore body; the email was sent
the other exported types are just the raw data structures for the request XML; you can ignore them
I'm not sure if I'll develop this further; feel free to (warning: here be SOAP) some resources I used are in comments in the code
TODOs
- figure out why UTF-8 isn't used for email bodies, or how to force the encoding