1topic "SMTP";
2[2 $$0,0#00000000000000000000000000000000:Default]
3[i448;a25;kKO9;2 $$1,0#37138531426314131252341829483380:class]
4[l288;2 $$2,2#27521748481378242620020725143825:desc]
5[0 $$3,0#96390100711032703541132217272105:end]
6[H6;0 $$4,0#05600065144404261032431302351956:begin]
7[i448;a25;kKO9;2 $$5,0#37138531426314131252341829483370:item]
8[l288;a4;*@5;1 $$6,6#70004532496200323422659154056402:requirement]
9[l288;i1121;b17;O9;~~~.1408;2 $$7,0#10431211400427159095818037425705:param]
10[i448;b42;O9;2 $$8,8#61672508125594000341940100500538:tparam]
11[b42;2 $$9,9#13035079074754324216151401829390:normal]
12[{_}%EN-US
13[ {{10000@(113.42.0) [s0; [*@7;4 Smtp]]}}&]
14[s0;i448;a25;kKO9;@(0.0.255)%- &]
15[s1;:Smtp`:`:class:%- [@(0.0.255)3 class][3 _][*3 Smtp][3 _:_][@(0.0.255)3 public][3 _][*@3;3 TcpSoc
16ket]&]
17[s2; Sends emails using SMTP protocol.&]
18[s9; &]
19[ {{10000F(128)G(128)@1 [s0; [* Public Method List]]}}&]
20[s3;%- &]
21[s5;:Smtp`:`:RequestTimeout`(int`):%- [_^Smtp^ Smtp][@(0.0.255) `&]_[* RequestTimeout]([@(0.0.255) i
22nt]_[*@3 ms])&]
23[s2; Total request timeout in milliseconds. Default is 120000 (2
24minutes).&]
25[s3; &]
26[s4; &]
27[s5;:Smtp`:`:Host`(const String`&`):%- [_^Smtp^ Smtp][@(0.0.255) `&]_[* Host]([@(0.0.255) con
28st]_[_^String^ String][@(0.0.255) `&]_[*@3 h])&]
29[s2; SMTP host.&]
30[s3; &]
31[s4; &]
32[s5;:Smtp`:`:Port`(int`):%- [_^Smtp^ Smtp][@(0.0.255) `&]_[* Port]([@(0.0.255) int]_[*@3 p])&]
33[s2; SMTP host port. If Null, 25 is used for normal SMTP, 465 for
34SMTPS (using SSL), and 587 for SMTPS (using STARTTLS).&]
35[s3; &]
36[s4; &]
37[s5;:Smtp`:`:SSL`(bool`):%- [_^Smtp^ Smtp][@(0.0.255) `&]_[* SSL]([@(0.0.255) bool]_[*@3 b]_`=_
38[@(0.0.255) true])&]
39[s2; Activates SMTPS mode (using SSL). &]
40[s6; Requires Core/SSL package.&]
41[s3; &]
42[s4;%- &]
43[s5;:Upp`:`:Smtp`:`:StartTLS`(bool`):%- [_^Upp`:`:Smtp^ Smtp][@(0.0.255) `&]_[* StartTLS]([@(0.0.255) b
44ool]_[*@3 b]_`=_[@(0.0.255) true])&]
45[s2; Activates SMTPS mode (using STARTTLS). &]
46[s6; Requires Core/SSL package.&]
47[s3; &]
48[s4;%- &]
49[s5;:Smtp`:`:Auth`(const String`&`,const String`&`):%- [_^Smtp^ Smtp][@(0.0.255) `&]_[* Aut
50h]([@(0.0.255) const]_[_^String^ String][@(0.0.255) `&]_[*@3 user], [@(0.0.255) const]_[_^String^ S
51tring][@(0.0.255) `&]_[*@3 pwd])&]
52[s2; Sets username and password.&]
53[s3; &]
54[s4;%- &]
55[s5;:Smtp`:`:From`(const String`&`,const String`&`,const String`&`):%- [_^Smtp^ Smtp][@(0.0.255) `&
56]_[* From]([@(0.0.255) const]_[_^String^ String][@(0.0.255) `&]_[*@3 email],
57[@(0.0.255) const]_[_^String^ String][@(0.0.255) `&]_[*@3 name]_`=_Null,
58[@(0.0.255) const]_[_^String^ String][@(0.0.255) `&]_[*@3 sender]_`=_Null)&]
59[s2; Sets the sender.&]
60[s3; &]
61[s4; &]
62[s5;:Smtp`:`:To`(const String`&`,const String`&`,AS`):%- [_^Smtp^ Smtp][@(0.0.255) `&]_[* T
63o]([@(0.0.255) const]_[_^String^ String][@(0.0.255) `&]_[*@3 email],
64[@(0.0.255) const]_[_^String^ String][@(0.0.255) `&]_[*@3 name], AS_[*@3 a]_`=_TO)&]
65[s2; Sets recipient. Can be called multiple times to add any number
66of recipients. Type of recipient is defined as [%-*@3 a], can be
67one of Smtp`::TO, Smtp`::BC and Smtp`::BCC, correspening to normal
68email recipient types.&]
69[s3; &]
70[s4; &]
71[s5;:Smtp`:`:To`(const String`&`,AS`):%- [_^Smtp^ Smtp][@(0.0.255) `&]_[* To]([@(0.0.255) con
72st]_[_^String^ String][@(0.0.255) `&]_[*@3 email], AS_[*@3 a]_`=_TO)&]
73[s2; Same as To([%-*@3 email], Null, [%-*@3 a]).&]
74[s3; &]
75[s4; &]
76[s5;:Smtp`:`:Cc`(const String`&`,const String`&`):%- [_^Smtp^ Smtp][@(0.0.255) `&]_[* Cc]([@(0.0.255) c
77onst]_[_^String^ String][@(0.0.255) `&]_[*@3 email], [@(0.0.255) const]_[_^String^ String][@(0.0.255) `&
78]_[*@3 name]_`=_Null)&]
79[s2; Same as To([%-*@3 email], [%-*@3 name], Smtp`::CC).&]
80[s3; &]
81[s4; &]
82[s5;:Smtp`:`:Bcc`(const String`&`,const String`&`):%- [_^Smtp^ Smtp][@(0.0.255) `&]_[* Bcc](
83[@(0.0.255) const]_[_^String^ String][@(0.0.255) `&]_[*@3 email], [@(0.0.255) const]_[_^String^ S
84tring][@(0.0.255) `&]_[*@3 name]_`=_Null)&]
85[s2; Same as To([%-*@3 email], [%-*@3 name], Smtp`::BCC).&]
86[s3; &]
87[s4; &]
88[s5;:Smtp`:`:ReplyTo`(const String`&`,const String`&`):%- [_^Smtp^ Smtp][@(0.0.255) `&]_[* R
89eplyTo]([@(0.0.255) const]_[_^String^ String][@(0.0.255) `&]_[*@3 email],
90[@(0.0.255) const]_[_^String^ String][@(0.0.255) `&]_[*@3 name]_`=_Null)&]
91[s2; Sets the reply address.&]
92[s3; &]
93[s4; &]
94[s5;:Smtp`:`:TimeSent`(Time`):%- [_^Smtp^ Smtp][@(0.0.255) `&]_[* TimeSent]([_^Time^ Time]_[*@3 t
95])&]
96[s2; Sets the sent time attribute of email.&]
97[s3; &]
98[s4; &]
99[s5;:Smtp`:`:Subject`(const String`&`):%- [_^Smtp^ Smtp][@(0.0.255) `&]_[* Subject]([@(0.0.255) c
100onst]_[_^String^ String][@(0.0.255) `&]_[*@3 s])&]
101[s2; Sets the subject of email.&]
102[s3; &]
103[s4; &]
104[s5;:Smtp`:`:Body`(const String`&`,const String`&`):%- [_^Smtp^ Smtp][@(0.0.255) `&]_[* Bod
105y]([@(0.0.255) const]_[_^String^ String][@(0.0.255) `&]_[*@3 s], [@(0.0.255) const]_[_^String^ S
106tring][@(0.0.255) `&]_[*@3 mime`_]_`=_Null)&]
107[s2; Adds email body with specified MIME time. Can be called multiple
108times to add multiple bodies. Null [%-*@3 mime`_] corresponds to
109`"text/plain`" with current default charset.&]
110[s3; &]
111[s4; &]
112[s5;:Smtp`:`:AttachFile`(const char`*`,const char`*`):%- [_^Smtp^ Smtp][@(0.0.255) `&]_[* A
113ttachFile]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 filename], [@(0.0.255) const]_[@(0.0.255) c
114har]_`*[*@3 mime]_`=_[@3 0])&]
115[s2; Attaches a file to email.&]
116[s3; &]
117[s4; &]
118[s5;:Smtp`:`:Attach`(const char`*`,const String`&`,const char`*`):%- [_^Smtp^ Smtp][@(0.0.255) `&
119]_[* Attach]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 name], [@(0.0.255) const]_[_^String^ S
120tring][@(0.0.255) `&]_[*@3 data], [@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 mime]_`=_[@3 0])
121&]
122[s2; Attaches a String as file attachment..&]
123[s3; &]
124[s4;%- &]
125[s5;:Smtp`:`:AddHeader`(const String`&`):%- Smpt[@(0.0.255) `&]_[* AddHeader]([@(0.0.255) c
126onst]_[_^String^ String][@(0.0.255) `&]_[*@3 text])&]
127[s2; Adds additional [%-*@3 text] message header. Text should [* not]
128be terminated by CRLF.&]
129[s3; &]
130[s4;%- &]
131[s5;:Smtp`:`:AddHeader`(const char`*`,const String`&`):%- [_^Smtp^ Smtp][@(0.0.255) `&]_[* A
132ddHeader]([@(0.0.255) const]_[@(0.0.255) char]_`*[*@3 id], [@(0.0.255) const]_[_^String^ St
133ring][@(0.0.255) `&]_[*@3 txt])&]
134[s2; Adds additional field [%-*@3 id] with value [%-*@3 txt] to header.&]
135[s3; &]
136[s4; &]
137[s5;:Smtp`:`:New`(`):%- [_^Smtp^ Smtp][@(0.0.255) `&]_[* New]()&]
138[s2; Restarts Smtp for sending of next email (resets all addresses,
139bodies, attachments, subject).&]
140[s3; &]
141[s4;%- &]
142[s5;:Smtp`:`:GetMessage`(`):%- [_^String^ String]_[* GetMessage]()&]
143[s2; Returns the message in RFC`-822 format, without sending it.&]
144[s3;%- &]
145[s4;%- &]
146[s5;:Smtp`:`:GetMessageID`(`):%- [_^String^ String]_[* GetMessageID]()&]
147[s2; Returns the `"Message`-ID`" header of current message, without
148`"<`", `">`" characters. New Message ID is generated by constructor
149or New method. Domain part is taken from message sender; correct
150result can therefore obtained only after `'From`' method was
151called.&]
152[s3;%- &]
153[s4;%- &]
154[s5;:Smtp`:`:Send`(const String`&`):%- [@(0.0.255) bool]_[* Send]([@(0.0.255) const]_[_^String^ S
155tring][@(0.0.255) `&]_[*@3 message])&]
156[s2; Send the raw message in RFC`-822 format. Note that sender and
157recipient of message has to be defined using From, To methods
158even as they are contained in message.&]
159[s3; &]
160[s4; &]
161[s5;:Smtp`:`:Send`(`):%- [@(0.0.255) bool]_[* Send]()&]
162[s2; Sends email. Returns true on success. Same as Send(GetMessage()),
163except that this form is able to send attachments in chunks.&]
164[s3; &]
165[s4; &]
166[s5;:Smtp`:`:GetError`(`)const:%- [_^String^ String]_[* GetError]()_[@(0.0.255) const]&]
167[s2; Returns description of last error.&]
168[s3; &]
169[s4; &]
170[s5;:Smtp`:`:Smtp`(`):%- [* Smtp]()&]
171[s2; Default constructor.&]
172[s3; &]
173[s4; &]
174[s5;:Smtp`:`:Trace`(bool`):%- [@(0.0.255) static] [@(0.0.255) void]_[* Trace]([@(0.0.255) boo
175l]_[*@3 b]_`=_[@(0.0.255) true])&]
176[s2; Activates logging of SMTP.&]
177[s3; &]
178[s0; ]]