-
Notifications
You must be signed in to change notification settings - Fork 0
/
contact-form.py
101 lines (75 loc) · 2.42 KB
/
contact-form.py
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
import json
import smtplib
from email.mime.text import MIMEText
from email.utils import formatdate
import textwrap
import os
adminMailAddress = os.environ['MAIL_ADDRESS']
def lambda_handler(event, context):
try:
msgToUser = createMessageToUser(event)
msgToAdmin = createMessageToAdmin(event)
server = smtplib.SMTP(os.environ['MAIL_SERVER'], os.environ['PORT'])
server.starttls()
server.login(os.environ['ACCOUNT'], os.environ['PASSWORD'])
server.send_message(msgToUser)
server.send_message(msgToAdmin)
server.close()
return {
'statusCode': 200
}
except Exception as e:
return {
'statusCode': 500,
'body': e
}
def createMessageToUser(event):
body = textwrap.dedent(f'''
お問い合わせありがとうございます。
お名前:
{event['name']}
フリガナ:
{event['furigana']}
法人名:
{event['company']}
メールアドレス:
{event['email']}
電話番号:
{event['tel']}
お問い合わせ種別:
{event['category']}
お問い合わせ内容:
{event['content']}
''').strip()
msg = MIMEText(body)
msg['Subject'] = 'お問い合わせありがとうございます'
msg['From'] = adminMailAddress
msg['To'] = '{} 様 <{}>'.format(event['name'], event['email'])
msg['Date'] = formatdate()
return msg
def createMessageToAdmin(event):
body = textwrap.dedent(f'''
この度はお問い合わせありがとうございます。
いただいた情報は以下の通りです。
お名前:
{event['name']}
フリガナ:
{event['furigana']}
法人名:
{event['company']}
メールアドレス:
{event['email']}
電話番号:
{event['tel']}
お問い合わせ種別:
{event['category']}
お問い合わせ内容:
{event['content']}
''').strip()
print(body)
msg = MIMEText(body)
msg['Subject'] = 'サイトからの問い合わせ'
msg['From'] = '{} <{}>'.format(event['name'], event['email'])
msg['To'] = adminMailAddress
msg['Date'] = formatdate()
return msg