]> Cypherpunks.ru repositories - nncp.git/blob - doc/call.texi
Merge branch 'develop'
[nncp.git] / doc / call.texi
1 @node Call
2 @unnumbered Call configuration
3
4 Call is a rule when and how node can be called by @ref{nncp-caller}.
5
6 Example list of call structures:
7
8 @verbatim
9 calls: [
10     {
11         cron: "*/1 * * * MON-FRI"
12         onlinedeadline: 3600
13         nice: PRIORITY+10
14
15         autotoss: true
16         autotoss-doseen: true
17     }
18     {
19         cron: "30 * * * SAT,SUN"
20         onlinedeadline: 1800
21         maxonlinetime: 1750
22         nice: NORMAL
23         rxrate: 10
24         txrate: 20
25     }
26     {
27         cron: "0 * * * SAT,SUN"
28         xx: rx
29         addr: lan
30     }
31     {
32         cron: "*/5 * * * * * *"
33         when-tx-exists: true
34         nock: true
35         mcd-ignore: true
36     }
37 ]
38 @end verbatim
39
40 tells that on work days of the week call that node every minute,
41 disconnect after an hour of inactivity and process only relatively high
42 priority packets (presumably mail ones). So we connect and hold
43 connection for very long time to pass only emails. On weekends call that
44 node only each half-hour for processing high-priority packets. Also only
45 on weekends try to connect to that node every hour only using LAN
46 address and only receiving any (any priority) packets (assume that low
47 priority huge file transmission are done additionally via offline
48 connections).
49
50 It contains the following fields (only @emph{cron} is required):
51
52 @table @emph
53
54 @item cron
55 @include cronexpr.texi
56
57 @item nice
58 Optional. Use that @ref{Niceness, niceness} during the call (255 is used
59 otherwise).
60
61 @item xx
62 Optional. Either @verb{|rx|} or @verb{|tx|}. Tells only to either to
63 receive or to transmit data during that call.
64
65 @item addr
66 Optional. Call only that address, instead of trying all from
67 @ref{CfgAddrs, @emph{addrs}} configuration option. It can be either key
68 from @emph{addrs} dictionary, or an ordinary @option{addr:port}.
69
70 @item rxrate/txrate
71 Optional. Override @ref{CfgXxRate, @emph{rxrate/txrate}} configuration
72 option when calling.
73
74 @item onlinedeadline
75 Optional. Override @ref{CfgOnlineDeadline, @emph{onlinedeadline}}
76 configuration option when calling.
77
78 @item maxonlinetime
79 Optional. Override @ref{CfgMaxOnlineTime, @emph{maxonlinetime}}
80 configuration option when calling.
81
82 @item autotoss, -doseen, -nofile, -nofreq, -noexec, -notrns
83 Optionally enable auto tossing: run tosser on node's spool every second
84 during the call. You can control either are @file{.seen} files must be
85 created, or skip any kind of packet processing.
86
87 @item when-tx-exists
88 Call only if packets for sending exists.
89
90 @anchor{CfgNoCK}
91 @item nock
92 NoCK (no-checksumming) tells not to do checksumming of received files,
93 assuming that it will be done for example with @ref{nncp-check} command
94 later. That can help minimizing time spent online, because HDD won't do
95 simultaneous reading of the data for checksumming and writing of the
96 received one, but just sequential writing of the file. Pay attention
97 that you have to make a call to remote node after checksumming is done,
98 to send notification about successful packet reception.
99
100 @anchor{CfgMCDIgnore}
101 @item mcd-ignore
102 Ignore @ref{MCD} announcements: do not add MCD addresses for possible
103 connection attempts.
104
105 @end table