forked from Taisiias/formmailer
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconfig.schema.json
169 lines (169 loc) · 5.38 KB
/
config.schema.json
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
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "Configuration file schema",
"type": "object",
"properties": {
"httpsCertificatePath": {
"description": "Path to the certificate",
"type": "string"
},
"databaseFileName": {
"description": "Path to SQLite database",
"type": "string"
},
"enableHtmlEmail": {
"description": "Determines if HTML email should be sent",
"type": "boolean",
"default": true
},
"enableHttp": {
"description": "Determines if HTTP is enabled",
"type": "boolean"
},
"enableHttps": {
"description": "Determines if HTTPS is enabled",
"type": "boolean"
},
"httpListenIP": {
"description": "HTTP listen IP",
"type": "string"
},
"httpsListenIP": {
"description": "HTTPS listen IP",
"type": "string"
},
"httpListenPort": {
"description": "HTTP listen port",
"type": "integer"
},
"httpsListenPort": {
"description": "HTTPS listen port",
"type": "integer"
},
"enableWebInterface": {
"description": "Determines if sent email history should be accessible for view",
"type": "boolean"
},
"webInterfaceIP": {
"description": "Web Interface IP",
"type": "string"
},
"webInterfacePort": {
"description": "Web Interface port",
"type": "integer"
},
"recipientEmails": {
"description": "Recipient emails",
"type": [
"string",
"array"
]
},
"smtpOptions": {
"description": "Nodemailer SMTP options",
"type": "object",
"properties": {
"port": {
"description": "SMTP Port",
"type": "integer"
},
"host": {
"description": "SMTP Host",
"type": "string"
},
"tls": {
"description": "Defines additional node.js TLSSocket options to be passed to the socket constructor",
"type": "object",
"properties": {
"rejectUnauthorized": {
"description": "If not false, the server certificate is verified against the list of supplied CAs",
"type": "boolean"
}
}
},
"auth": {
"description": "Defines authentication data",
"type": "object",
"properties": {
"user": {
"description": "User name",
"type": "string"
},
"pass": {
"description": "The password for the user if normal login is used"
}
}
}
}
},
"formTargets": {
"description": "Form keys",
"type": "object",
"patternProperties": {
".*": {
"oneOf": [
{
"type": "object",
"properties": {
"subject": {
"type": "string"
},
"recipient": {
"type": [
"array",
"string"
]
}
}
},
{
"type": "array"
},
{
"type": "string"
}
]
}
}
},
"fromEmail": {
"description": "Sender's email",
"type": "string"
},
"subject": {
"description": "Email subject",
"type": "string"
},
"maxHttpRequestSize": {
"description": "Maximum HTTP Request Size",
"type": "string"
},
"httpsPrivateKeyPath": {
"description": "Path to the certificate private key",
"type": "string"
},
"logLevel": {
"description": "Log level",
"type": "string"
},
"redirectFieldName": {
"description": "Page to be redirected after the form is submitted.",
"type": "string"
},
"reCaptchaSiteKey": {
"description": "Recaptcha Site Key.",
"type": "string"
},
"reCaptchaSecret": {
"description": "Recaptcha Secret Key",
"type": "string"
},
"enableRecaptcha": {
"description": "Determines if g-recaptcha-response checking should be enabled.",
"type": "boolean"
}
},
"required": [
"recipientEmails"
]
}