HaskellNet-0.2.5: network related libraries such as POP3, SMTP, IMAP

Portabilityportable
Stabilitystable
Maintainermukai@jmuk.org

Network.HaskellNet.SMTP

Contents

Description

SMTP client implementation

Synopsis

Types

Establishing Connection

connectSMTPPortSource

Arguments

:: String

name of the server

-> PortNumber

port number

-> IO (SMTPConnection Handle) 

connecting SMTP server with the specified name and port number.

connectSMTPSource

Arguments

:: String

name of the server

-> IO (SMTPConnection Handle) 

connecting SMTP server with the specified name and port 25.

connectStream :: BSStream s => s -> IO (SMTPConnection s)Source

create SMTPConnection from already connected Stream

Operation to a Connection

sendCommand :: BSStream s => SMTPConnection s -> Command -> IO (ReplyCode, ByteString)Source

send a method to a server

closeSMTP :: BSStream s => SMTPConnection s -> IO ()Source

close the connection. This function send the QUIT method, so you do not have to QUIT method explicitly.

Other Useful Operations

sendMailSource

Arguments

:: BSStream s 
=> String

sender mail

-> [String]

receivers

-> ByteString

data

-> SMTPConnection s 
-> IO () 

sending a mail to a server. This is achieved by sendMessage. If something is wrong, it raises an IOexception.

doSMTPPort :: String -> PortNumber -> (SMTPConnection Handle -> IO a) -> IO aSource

doSMTPPort open a connection, and do an IO action with the connection, and then close it.

doSMTP :: String -> (SMTPConnection Handle -> IO a) -> IO aSource

doSMTP is similar to doSMTPPort, except that it does not require port number but connects to the server with port 25.

doSMTPStream :: BSStream s => s -> (SMTPConnection s -> IO a) -> IO aSource

doSMTPStream is similar to doSMTPPort, except that its argument is a Stream data instead of hostname and port number.