]> woffs.de Git - fd/haskell-amqp-utils.git/blob - doc/callbacks.md
release 0.6.5.0
[fd/haskell-amqp-utils.git] / doc / callbacks.md
1 <!--
2 SPDX-FileCopyrightText: 2022 Frank Doepper
3
4 SPDX-License-Identifier: FSFAP
5 -->
6 # FILES
7
8 ## callbacks
9
10 `konsum` and `arbeite` can execute programs (`-Xprogram`) on reception of a message.
11
12 ### normal (old) mode
13
14 The callback is called with the following arguments:
15
16     -f filename
17     -n messagenumber
18
19 Optionally are added:
20
21     -r routingkey
22     -m contenttype
23     -e encoding
24     -i messageid
25     -t timestamp
26     -p priority
27     -R redelivered
28
29 Message headers are added through several -h options:
30
31     -h HEADER=VALUE
32
33 Any additional arguments provided by `-a arg` options are appended.
34
35 ### simple (new) mode
36
37 Wenn called with `-i` (`--simple`), the callback is called with only the filename
38 as argument. Any additional arguments provided by `-a arg` options are prepended.
39
40 # ENVIRONMENT
41
42 The arguments provided in normal (old) mode are also available as environment
43 variables in both modes in the callback:
44
45     AMQP_FILE
46     AMQP_NUMBER
47
48     AMQP_ROUTINGKEY
49     AMQP_CONTENTTYPE
50     AMQP_ENCODING
51     AMQP_MSGID
52     AMQP_TIMESTAMP
53     AMQP_PRIORITY
54     AMQP_REDELIVERED
55
56 And the remaining message properties, too:
57
58     AMQP_SIZE
59     AMQP_TYPE
60     AMQP_USERID
61     AMQP_APPID
62     AMQP_CLUSTERID
63     AMQP_REPLYTO
64     AMQP_CORRID
65     AMQP_EXPIRATION
66     AMQP_DELIVERYMODE
67
68 Message headers, if any, are available as
69
70     AMQP_HEADER_KEY_0
71     AMQP_HEADER_VALUE_0
72     AMQP_HEADER_KEY_1
73     AMQP_HEADER_VALUE_1
74
75 etc.
76