Kali ini kita akan membahas tentang SMTP tetapi khusus untuk
client. Simple Mail Transfer Protocol (SMTP) adalah sebuah standar Internet
untuk surat elektronik (e-mail) transmisi internet (IP) jaringan Protokol. SMTP
pertama kali didefinisikan oleh RFC 821 (1982, akhirnya menyatakan STD 10), dan
terakhir diperbarui oleh RFC 5321 (2008) yang meliputi SMTP diperpanjang
(ESMTP) penambahan, dan merupakan protokol yang digunakan secara luas saat ini.
Listing Program :
import java.io.*;
import java.net.*;
public class smtpClient{
public static void main (String[] argv)
{
BufferedReader is=null;
try
{
smtpSocket= new Socket("mail.uajy.ac.id",25);
os=new DataOutputStream (smtpSocket.getOutputStream());
is=new BufferedReader (new
InputStreamReader (smtpSocket.getInputStream()));
}
catch(UnknownHostException e){
System.err.println("Nama komputer tidak
dikenali");
}
catch (IOException e){
System.err.println("Tidak dapat melakukan operasi
io");
}
if(smtpSocket!=null && os!=null && is!=null)
{
try{
//mengirim dan mencetak pesan
System.out.println(is.readLine());
os.writeBytes("HELLO\r\n");
System.out.print("HELLO\n");
System.out.println(is.readLine());
os.writeBytes("MAIL FROM:any@mail\r\n");
System.out.print("MAIL FROM:any@mail\n");
System.out.println(is.readLine());
os.writeBytes("RCPT
To:kusnadi@mail.uajy.ac.id\r\n");
System.out.print("RCPT
To:kusnadi@mail.uajy.ac.id\n");
System.out.println(is.readLine());
os.writeBytes("DATA\r\n");
System.out.print("DATA\n");
System.out.println(is.readLine());
os.writeBytes("From: any@mail\r\n");
System.out.print("From: any@mail\n");
System.out.println(is.readLine());
os.writeBytes("Subject: testing\r\n");
System.out.print("Subject: testing\n");
System.out.println(is.readLine());
os.writeBytes("Hi, ini percobaan kirim
email.\r\n");
System.out.print("Hi, ini percobaan kirim
email.\n");
System.out.println(is.readLine());
os.writeBytes("\r\n\r\n");
System.out.print(".\n");
System.out.println(is.readLine());
os.writeBytes("QUIT\r\n");
System.out.print("QUIT\n");
System.out.println(is.readLine());
//menutup semua object
os.close();
is.close();
smtpSocket.close();
}catch(UnknownHostException e){
System.err.println("Nama komputer tidak
dikenali");
}catch(IOException e){
System.err.println("Tidak dapat melakukan operasi
io");
}
}
}
}