Software /
code /
prosody-modules
Annotate
mod_http_muc_log/README.markdown @ 5776:3730992d0c7c
mod_client_management: Include session in new-client event
Needed by mod_audit_auth
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sat, 02 Dec 2023 11:06:47 +0100 |
parent | 5105:2402ddabe7f7 |
child | 5929:02657e8693bc |
rev | line source |
---|---|
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
1 --- |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
2 labels: |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
3 - 'Stage-Beta' |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
4 summary: Provides a web interface to stored chatroom logs |
4182
1890115b2773
mod_http_muc_log: Move template into a directory to ease packaging
Kim Alvefur <zash@zash.se>
parents:
3596
diff
changeset
|
5 rockspec: |
1890115b2773
mod_http_muc_log: Move template into a directory to ease packaging
Kim Alvefur <zash@zash.se>
parents:
3596
diff
changeset
|
6 build: |
1890115b2773
mod_http_muc_log: Move template into a directory to ease packaging
Kim Alvefur <zash@zash.se>
parents:
3596
diff
changeset
|
7 copy_directories: |
1890115b2773
mod_http_muc_log: Move template into a directory to ease packaging
Kim Alvefur <zash@zash.se>
parents:
3596
diff
changeset
|
8 - res |
5105
2402ddabe7f7
mod_http_muc_log: Include static resources (css & js) in plugin package
Kim Alvefur <zash@zash.se>
parents:
4970
diff
changeset
|
9 - static |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
10 ... |
1782 | 11 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
12 Introduction |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
13 ============ |
1782 | 14 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
15 This module provides a built-in web interface to view chatroom logs |
1977
cc29ec49776d
mod_http_muc_log/README: Replace text that seems to have been copied from mod_muc_log_http
Kim Alvefur <zash@zash.se>
parents:
1976
diff
changeset
|
16 stored by [mod\_mam\_muc]. |
1782 | 17 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
18 Installation |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
19 ============ |
1782 | 20 |
1977
cc29ec49776d
mod_http_muc_log/README: Replace text that seems to have been copied from mod_muc_log_http
Kim Alvefur <zash@zash.se>
parents:
1976
diff
changeset
|
21 Same as any other module, be sure to include the HTML template |
cc29ec49776d
mod_http_muc_log/README: Replace text that seems to have been copied from mod_muc_log_http
Kim Alvefur <zash@zash.se>
parents:
1976
diff
changeset
|
22 `http_muc_log.html` alongside `mod_http_muc_log.lua`. |
1782 | 23 |
1977
cc29ec49776d
mod_http_muc_log/README: Replace text that seems to have been copied from mod_muc_log_http
Kim Alvefur <zash@zash.se>
parents:
1976
diff
changeset
|
24 Configuration |
cc29ec49776d
mod_http_muc_log/README: Replace text that seems to have been copied from mod_muc_log_http
Kim Alvefur <zash@zash.se>
parents:
1976
diff
changeset
|
25 ============= |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
26 |
1977
cc29ec49776d
mod_http_muc_log/README: Replace text that seems to have been copied from mod_muc_log_http
Kim Alvefur <zash@zash.se>
parents:
1976
diff
changeset
|
27 For example: |
1782 | 28 |
1977
cc29ec49776d
mod_http_muc_log/README: Replace text that seems to have been copied from mod_muc_log_http
Kim Alvefur <zash@zash.se>
parents:
1976
diff
changeset
|
29 ``` lua |
cc29ec49776d
mod_http_muc_log/README: Replace text that seems to have been copied from mod_muc_log_http
Kim Alvefur <zash@zash.se>
parents:
1976
diff
changeset
|
30 Component "conference.example.com" "muc" |
cc29ec49776d
mod_http_muc_log/README: Replace text that seems to have been copied from mod_muc_log_http
Kim Alvefur <zash@zash.se>
parents:
1976
diff
changeset
|
31 modules_enabled = { |
cc29ec49776d
mod_http_muc_log/README: Replace text that seems to have been copied from mod_muc_log_http
Kim Alvefur <zash@zash.se>
parents:
1976
diff
changeset
|
32 "mam_muc"; |
cc29ec49776d
mod_http_muc_log/README: Replace text that seems to have been copied from mod_muc_log_http
Kim Alvefur <zash@zash.se>
parents:
1976
diff
changeset
|
33 "http_muc_log"; |
cc29ec49776d
mod_http_muc_log/README: Replace text that seems to have been copied from mod_muc_log_http
Kim Alvefur <zash@zash.se>
parents:
1976
diff
changeset
|
34 } |
cc29ec49776d
mod_http_muc_log/README: Replace text that seems to have been copied from mod_muc_log_http
Kim Alvefur <zash@zash.se>
parents:
1976
diff
changeset
|
35 storage = { |
cc29ec49776d
mod_http_muc_log/README: Replace text that seems to have been copied from mod_muc_log_http
Kim Alvefur <zash@zash.se>
parents:
1976
diff
changeset
|
36 muc_log = "sql"; -- for example |
cc29ec49776d
mod_http_muc_log/README: Replace text that seems to have been copied from mod_muc_log_http
Kim Alvefur <zash@zash.se>
parents:
1976
diff
changeset
|
37 } |
cc29ec49776d
mod_http_muc_log/README: Replace text that seems to have been copied from mod_muc_log_http
Kim Alvefur <zash@zash.se>
parents:
1976
diff
changeset
|
38 ``` |
1782 | 39 |
40 The web interface would then be reachable at the address: | |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
41 |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
42 http://conference.example.com:5280/muc_log/ |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
43 |
1977
cc29ec49776d
mod_http_muc_log/README: Replace text that seems to have been copied from mod_muc_log_http
Kim Alvefur <zash@zash.se>
parents:
1976
diff
changeset
|
44 See [the page about Prosodys HTTP server][doc:http] for info about the |
cc29ec49776d
mod_http_muc_log/README: Replace text that seems to have been copied from mod_muc_log_http
Kim Alvefur <zash@zash.se>
parents:
1976
diff
changeset
|
45 address. |
1782 | 46 |
2589
89a3f049689f
mod_http_muc_log/README: Add some text about the HTML template
Kim Alvefur <zash@zash.se>
parents:
1977
diff
changeset
|
47 ## Styling |
89a3f049689f
mod_http_muc_log/README: Add some text about the HTML template
Kim Alvefur <zash@zash.se>
parents:
1977
diff
changeset
|
48 |
89a3f049689f
mod_http_muc_log/README: Add some text about the HTML template
Kim Alvefur <zash@zash.se>
parents:
1977
diff
changeset
|
49 The default HTML template lives in `http_muc_log.html` in the same |
89a3f049689f
mod_http_muc_log/README: Add some text about the HTML template
Kim Alvefur <zash@zash.se>
parents:
1977
diff
changeset
|
50 directory as the module, but can be changed by setting |
89a3f049689f
mod_http_muc_log/README: Add some text about the HTML template
Kim Alvefur <zash@zash.se>
parents:
1977
diff
changeset
|
51 `http_muc_log_template` to point to a different file. The same template, |
89a3f049689f
mod_http_muc_log/README: Add some text about the HTML template
Kim Alvefur <zash@zash.se>
parents:
1977
diff
changeset
|
52 with different input is used for every view. |
89a3f049689f
mod_http_muc_log/README: Add some text about the HTML template
Kim Alvefur <zash@zash.se>
parents:
1977
diff
changeset
|
53 |
89a3f049689f
mod_http_muc_log/README: Add some text about the HTML template
Kim Alvefur <zash@zash.se>
parents:
1977
diff
changeset
|
54 The module uses [util.interpolation][doc:developers:util:interpolation] |
89a3f049689f
mod_http_muc_log/README: Add some text about the HTML template
Kim Alvefur <zash@zash.se>
parents:
1977
diff
changeset
|
55 for rendering templates, with the pattern `"%b{}"` and HTML / XML |
89a3f049689f
mod_http_muc_log/README: Add some text about the HTML template
Kim Alvefur <zash@zash.se>
parents:
1977
diff
changeset
|
56 escaping enabled. |
89a3f049689f
mod_http_muc_log/README: Add some text about the HTML template
Kim Alvefur <zash@zash.se>
parents:
1977
diff
changeset
|
57 |
3596
6e529f53b3c3
mod_http_muc_log: Allow specifying the default view
Kim Alvefur <zash@zash.se>
parents:
3582
diff
changeset
|
58 ## Default view |
6e529f53b3c3
mod_http_muc_log: Allow specifying the default view
Kim Alvefur <zash@zash.se>
parents:
3582
diff
changeset
|
59 |
6e529f53b3c3
mod_http_muc_log: Allow specifying the default view
Kim Alvefur <zash@zash.se>
parents:
3582
diff
changeset
|
60 To link to the latest day instead of calendar from the room listing |
6e529f53b3c3
mod_http_muc_log: Allow specifying the default view
Kim Alvefur <zash@zash.se>
parents:
3582
diff
changeset
|
61 page: |
6e529f53b3c3
mod_http_muc_log: Allow specifying the default view
Kim Alvefur <zash@zash.se>
parents:
3582
diff
changeset
|
62 |
6e529f53b3c3
mod_http_muc_log: Allow specifying the default view
Kim Alvefur <zash@zash.se>
parents:
3582
diff
changeset
|
63 ```lua |
6e529f53b3c3
mod_http_muc_log: Allow specifying the default view
Kim Alvefur <zash@zash.se>
parents:
3582
diff
changeset
|
64 http_muc_log_default_view = "latest" |
6e529f53b3c3
mod_http_muc_log: Allow specifying the default view
Kim Alvefur <zash@zash.se>
parents:
3582
diff
changeset
|
65 ``` |
6e529f53b3c3
mod_http_muc_log: Allow specifying the default view
Kim Alvefur <zash@zash.se>
parents:
3582
diff
changeset
|
66 |
3582
444e2306c99a
mod_http_muc_log: Add option to show OOB images
Kim Alvefur <zash@zash.se>
parents:
3581
diff
changeset
|
67 ## Inline images |
444e2306c99a
mod_http_muc_log: Add option to show OOB images
Kim Alvefur <zash@zash.se>
parents:
3581
diff
changeset
|
68 |
444e2306c99a
mod_http_muc_log: Add option to show OOB images
Kim Alvefur <zash@zash.se>
parents:
3581
diff
changeset
|
69 Inline images can optionally be shown. This is disabled by default for |
444e2306c99a
mod_http_muc_log: Add option to show OOB images
Kim Alvefur <zash@zash.se>
parents:
3581
diff
changeset
|
70 privacy reasons. |
444e2306c99a
mod_http_muc_log: Add option to show OOB images
Kim Alvefur <zash@zash.se>
parents:
3581
diff
changeset
|
71 |
444e2306c99a
mod_http_muc_log: Add option to show OOB images
Kim Alvefur <zash@zash.se>
parents:
3581
diff
changeset
|
72 ``` {.lua} |
444e2306c99a
mod_http_muc_log: Add option to show OOB images
Kim Alvefur <zash@zash.se>
parents:
3581
diff
changeset
|
73 http_muc_log_show_images = true |
444e2306c99a
mod_http_muc_log: Add option to show OOB images
Kim Alvefur <zash@zash.se>
parents:
3581
diff
changeset
|
74 ``` |
444e2306c99a
mod_http_muc_log: Add option to show OOB images
Kim Alvefur <zash@zash.se>
parents:
3581
diff
changeset
|
75 |
3581
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
76 ## Calendar optimization |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
77 |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
78 The calendar view relies on an optional part of the Prosody archive |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
79 storage API that provides a list of every valid date. If this is |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
80 unavailable then the module queries for the first and the last messages |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
81 and assumes that every date between those is valid. This may lead to |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
82 many empty pages in case the logs are sparse. |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
83 |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
84 This optimization can be turned off, to get a more accurate calendar |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
85 view, but it will likely be very slow. |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
86 |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
87 ``` {.lua} |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
88 http_muc_log_lazy_calendar = false |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
89 ``` |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
90 |
4676
a2cf3b69a3d6
mod_http_muc_log: Add way to list certain rooms in a specified order
Kim Alvefur <zash@zash.se>
parents:
4182
diff
changeset
|
91 ## Pinned chatrooms |
a2cf3b69a3d6
mod_http_muc_log: Add way to list certain rooms in a specified order
Kim Alvefur <zash@zash.se>
parents:
4182
diff
changeset
|
92 |
4677
823370bc2e4c
mod_http_muc_log: Sort rooms with a description before those without
Kim Alvefur <zash@zash.se>
parents:
4676
diff
changeset
|
93 The room list page is normally sorted by address, rooms having a |
823370bc2e4c
mod_http_muc_log: Sort rooms with a description before those without
Kim Alvefur <zash@zash.se>
parents:
4676
diff
changeset
|
94 description before those that don't. To override this, or pin certain |
823370bc2e4c
mod_http_muc_log: Sort rooms with a description before those without
Kim Alvefur <zash@zash.se>
parents:
4676
diff
changeset
|
95 rooms to the top: |
4676
a2cf3b69a3d6
mod_http_muc_log: Add way to list certain rooms in a specified order
Kim Alvefur <zash@zash.se>
parents:
4182
diff
changeset
|
96 |
a2cf3b69a3d6
mod_http_muc_log: Add way to list certain rooms in a specified order
Kim Alvefur <zash@zash.se>
parents:
4182
diff
changeset
|
97 ``` lua |
a2cf3b69a3d6
mod_http_muc_log: Add way to list certain rooms in a specified order
Kim Alvefur <zash@zash.se>
parents:
4182
diff
changeset
|
98 http_muc_log_list_order = { |
a2cf3b69a3d6
mod_http_muc_log: Add way to list certain rooms in a specified order
Kim Alvefur <zash@zash.se>
parents:
4182
diff
changeset
|
99 "general@channels.example.com", |
a2cf3b69a3d6
mod_http_muc_log: Add way to list certain rooms in a specified order
Kim Alvefur <zash@zash.se>
parents:
4182
diff
changeset
|
100 "support@channels.example.com", |
a2cf3b69a3d6
mod_http_muc_log: Add way to list certain rooms in a specified order
Kim Alvefur <zash@zash.se>
parents:
4182
diff
changeset
|
101 } |
a2cf3b69a3d6
mod_http_muc_log: Add way to list certain rooms in a specified order
Kim Alvefur <zash@zash.se>
parents:
4182
diff
changeset
|
102 ``` |
a2cf3b69a3d6
mod_http_muc_log: Add way to list certain rooms in a specified order
Kim Alvefur <zash@zash.se>
parents:
4182
diff
changeset
|
103 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
104 Compatibility |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
105 ============= |
1782 | 106 |
4970
8c7b7db69f5b
mod_http_muc_log: Drop support for pre-0.11 MUC API
Kim Alvefur <zash@zash.se>
parents:
4677
diff
changeset
|
107 Requires Prosody 0.11 or later and a storage backend with support for |
1977
cc29ec49776d
mod_http_muc_log/README: Replace text that seems to have been copied from mod_muc_log_http
Kim Alvefur <zash@zash.se>
parents:
1976
diff
changeset
|
108 stanza archives. See [mod\_storage\_muc\_log] for using legacy data from |
cc29ec49776d
mod_http_muc_log/README: Replace text that seems to have been copied from mod_muc_log_http
Kim Alvefur <zash@zash.se>
parents:
1976
diff
changeset
|
109 [mod\_muc\_log]. |