blob: 2b5cc36aab167f5d8da2f0fa5433d19df657090a (
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
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
|
<!--
$FML$
$jaFML: chapter.sgml,v 1.12 2003/04/15 14:51:37 fukachan Exp $
-->
<chapter id="delivery">
<TITLE>
&fmldevel; mail delivery system
</TITLE>
<sect1 id="fmldevel-delivery">
<title>
The difference between &fml4; and &fmldevel;
</title>
<para>
One of puposes of &fmldevel; is unification and abstraction of member
list operations. Mail distribution is based on the following module
Mail::Delivery.
</para>
<para>
Mail::Delivery class provides SMTP, ESMTP and LMTP delivery library
interface. Mail::Delivery is an adapter layer for Mail::Delivery
subclass ( SMTP ESMTP LMTP ).
</para>
<para>
For example,
<screen>
use Mail::Delivery::SMTP;
my $service = new Mail::Delivery::SMTP;
if ($service->error) { Log($service->error); return;}
$service->deliver(
{
mta => '127.0.0.1:25',
smtp_sender => 'rudo@nuinui.net',
recipient_maps => $recipient_maps,
recipient_limit => 1000,
mesage => $message
});
</screen>
where $message is a
<link linkend="module.mail.message">
Mail::Message
</link>
object.
</para>
</sect1>
<sect1>
<title>
<link linkend="module.mail.message">
Mail::Message
</link>
object
</title>
<para>
This object provies message analyzer.
It analyzes a message and build the following object chains
<screen>
header -> body
header -> preamble -> part1 -> part2 -> trailor (multipart)
</screen>
</para>
<para>
<link linkend="module.mail.message">
Mail::Message
</link>
class provides such data structure described above.
</para>
</sect1>
<!-- mail queue -->
§.mailqueue;
<sect1>
<title>
Discussion: FML::Mailer is apropriate ?
</title>
<para>
Only FML::Process::QueueManager uses FML::Mailer.
So, independent FML::Mailer class is needed ?
</para>
<para>
In usual codes, reply_message() handles all message operations.
FML::Mailer is always behind it.
But modules other than reply_message() is created in the future ?
Hmm, ...
</para>
<para>
FML::Mailer should be merged into FML::Process::QueueManager class?
</para>
</sect1>
<sect1 id="recipes.delivery">
<title>
Delivery TIPS
</title>
<qandaset>
&recipe.delivery.forward;
</qandaset>
</sect1>
</chapter>
|