aboutsummaryrefslogtreecommitdiff
path: root/v_windows/v/examples/smtp/mail.v
blob: c26be33bdd08a97351c651fea8192f7519f62656 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
// Creator: nedimf (07/2020)
import os
import net.smtp

fn main() {
	println('Hi, this is sample of how to send email trough net.smtp library in V, which is really easy using the net.smtp module.')
	println('We are going to create a simple email client, that takes some arguments. and then sends email with an HTML body.')
	println('To fully test email sending, I suggest using the mailtrap.io service, which is free and acts like a really nice mail server sandbox.')
	println('')
	println('V Email client')
	println('')
	mailserver := os.input('Mail server: ')
	mailport := os.input('Mail server port: ').int()
	println('Login')
	username := os.input('Username: ')
	password := os.input('Password: ')
	from := os.input('From: ')
	to := os.input('To: ')
	subject := os.input('Subject: ')
	body := os.input('Body: ')
	client_cfg := smtp.Client{
		server: mailserver
		from: from
		port: mailport
		username: username
		password: password
	}
	send_cfg := smtp.Mail{
		to: to
		subject: subject
		body_type: .html
		body: body
	}
	mut client := smtp.new_client(client_cfg) or { panic('Error configuring smtp') }
	client.send(send_cfg) or { panic('Error resolving email address') }
}