Mercurial > prosody-modules
annotate mod_alias/README.markdown @ 5173:460f78654864
mod_muc_rtbl: also filter messages
This was a bit tricky because we don't want to run the JIDs
through SHA256 on each message. Took a while to come up with this
simple plan of just caching the SHA256 of the JIDs on the
occupants.
This will leave some dirt in the occupants after unloading the
module, but that should be ok; once they cycle the room, the
hashes will be gone.
This is direly needed, otherwise, there is a tight race between
the moderation activities and the actors joining the room.
author | Jonas Schäfer <jonas@wielicki.name> |
---|---|
date | Tue, 21 Feb 2023 21:37:27 +0100 |
parents | ea6b5321db50 |
children |
rev | line source |
---|---|
1953
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
1 --- |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
2 summary: Point alias accounts or domains to correct XMPP user |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
3 ... |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
4 |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
5 Introduction |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
6 ============ |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
7 |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
8 This module allows you to set up aliases that alert people who try to |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
9 contact them or add them to their roster what your actual JID is. This |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
10 is useful for changing JIDs, or just in the case where you own both |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
11 example.com and example.net, and want people who contact you@example.com |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
12 to be alerted to contact you at you@example.net instead. |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
13 |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
14 This type of aliasing is well supported in the email world, but very hard |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
15 to handle with XMPP, this module sidesteps all the hard problems by just |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
16 sending the user a helpful message, requiring humans to decide what they |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
17 actually want to do. |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
18 |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
19 This doesn't require any special support on other clients or servers, |
2876 | 20 just the ability to receive messages. |
1953
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
21 |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
22 Configuration |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
23 ============= |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
24 |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
25 Add the module to the `modules_enabled` list. |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
26 |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
27 modules_enabled = { |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
28 ... |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
29 "alias"; |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
30 } |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
31 |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
32 Then set up your list of aliases, aliases can be full or bare JIDs, |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
33 or hosts: |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
34 |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
35 aliases = { |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
36 ["old@example.net"] = "new@example.net"; |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
37 ["you@example.com"] = "you@example.net"; |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
38 ["conference.example.com"] = "conference.example.net"; |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
39 } |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
40 |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
41 You can also set up a custom response, by default it is: |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
42 |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
43 alias_response = "User $alias can be contacted at $target"; |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
44 |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
45 A script named mod_alias_postfixadmin.sh is included in this directory to |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
46 generate the aliases array directly from a postfixadmin MySQL database. |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
47 Instructions for use are included in the script. |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
48 |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
49 Compatibility |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
50 ============= |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
51 |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
52 ------- -------------- |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
53 trunk Works |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
54 0.10 Works |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
55 0.9 Unknown |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
56 0.8 Unknown |
0c3ba5ff7a3b
mod_alias: New alias module
moparisthebest <admin@moparisthebest.com>
parents:
diff
changeset
|
57 ------- -------------- |