Software /
code /
prosody-modules
Annotate
mod_http_muc_log/README.markdown @ 4677:823370bc2e4c
mod_http_muc_log: Sort rooms with a description before those without
The listing looks nicer when rooms have proper titles and descriptions,
therefore those that have this should be rewarded.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sun, 12 Sep 2021 00:28:46 +0200 |
parent | 4676:a2cf3b69a3d6 |
child | 4970:8c7b7db69f5b |
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 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
9 ... |
1782 | 10 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
11 Introduction |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
12 ============ |
1782 | 13 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
14 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
|
15 stored by [mod\_mam\_muc]. |
1782 | 16 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
17 Installation |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
18 ============ |
1782 | 19 |
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
|
20 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
|
21 `http_muc_log.html` alongside `mod_http_muc_log.lua`. |
1782 | 22 |
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
|
23 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
|
24 ============= |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
25 |
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
|
26 For example: |
1782 | 27 |
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
|
28 ``` 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
|
29 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
|
30 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
|
31 "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
|
32 "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
|
33 } |
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 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
|
35 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
|
36 } |
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 ``` |
1782 | 38 |
39 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
|
40 |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
41 http://conference.example.com:5280/muc_log/ |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
42 |
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
|
43 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
|
44 address. |
1782 | 45 |
2589
89a3f049689f
mod_http_muc_log/README: Add some text about the HTML template
Kim Alvefur <zash@zash.se>
parents:
1977
diff
changeset
|
46 ## Styling |
89a3f049689f
mod_http_muc_log/README: Add some text about the HTML template
Kim Alvefur <zash@zash.se>
parents:
1977
diff
changeset
|
47 |
89a3f049689f
mod_http_muc_log/README: Add some text about the HTML template
Kim Alvefur <zash@zash.se>
parents:
1977
diff
changeset
|
48 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
|
49 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
|
50 `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
|
51 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
|
52 |
89a3f049689f
mod_http_muc_log/README: Add some text about the HTML template
Kim Alvefur <zash@zash.se>
parents:
1977
diff
changeset
|
53 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
|
54 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
|
55 escaping enabled. |
89a3f049689f
mod_http_muc_log/README: Add some text about the HTML template
Kim Alvefur <zash@zash.se>
parents:
1977
diff
changeset
|
56 |
3596
6e529f53b3c3
mod_http_muc_log: Allow specifying the default view
Kim Alvefur <zash@zash.se>
parents:
3582
diff
changeset
|
57 ## Default view |
6e529f53b3c3
mod_http_muc_log: Allow specifying the default view
Kim Alvefur <zash@zash.se>
parents:
3582
diff
changeset
|
58 |
6e529f53b3c3
mod_http_muc_log: Allow specifying the default view
Kim Alvefur <zash@zash.se>
parents:
3582
diff
changeset
|
59 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
|
60 page: |
6e529f53b3c3
mod_http_muc_log: Allow specifying the default view
Kim Alvefur <zash@zash.se>
parents:
3582
diff
changeset
|
61 |
6e529f53b3c3
mod_http_muc_log: Allow specifying the default view
Kim Alvefur <zash@zash.se>
parents:
3582
diff
changeset
|
62 ```lua |
6e529f53b3c3
mod_http_muc_log: Allow specifying the default view
Kim Alvefur <zash@zash.se>
parents:
3582
diff
changeset
|
63 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
|
64 ``` |
6e529f53b3c3
mod_http_muc_log: Allow specifying the default view
Kim Alvefur <zash@zash.se>
parents:
3582
diff
changeset
|
65 |
3582
444e2306c99a
mod_http_muc_log: Add option to show OOB images
Kim Alvefur <zash@zash.se>
parents:
3581
diff
changeset
|
66 ## Inline images |
444e2306c99a
mod_http_muc_log: Add option to show OOB images
Kim Alvefur <zash@zash.se>
parents:
3581
diff
changeset
|
67 |
444e2306c99a
mod_http_muc_log: Add option to show OOB images
Kim Alvefur <zash@zash.se>
parents:
3581
diff
changeset
|
68 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
|
69 privacy reasons. |
444e2306c99a
mod_http_muc_log: Add option to show OOB images
Kim Alvefur <zash@zash.se>
parents:
3581
diff
changeset
|
70 |
444e2306c99a
mod_http_muc_log: Add option to show OOB images
Kim Alvefur <zash@zash.se>
parents:
3581
diff
changeset
|
71 ``` {.lua} |
444e2306c99a
mod_http_muc_log: Add option to show OOB images
Kim Alvefur <zash@zash.se>
parents:
3581
diff
changeset
|
72 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
|
73 ``` |
444e2306c99a
mod_http_muc_log: Add option to show OOB images
Kim Alvefur <zash@zash.se>
parents:
3581
diff
changeset
|
74 |
3581
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
75 ## Calendar optimization |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
76 |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
77 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
|
78 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
|
79 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
|
80 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
|
81 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
|
82 |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
83 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
|
84 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
|
85 |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
86 ``` {.lua} |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
87 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
|
88 ``` |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
89 |
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
|
90 ## 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
|
91 |
4677
823370bc2e4c
mod_http_muc_log: Sort rooms with a description before those without
Kim Alvefur <zash@zash.se>
parents:
4676
diff
changeset
|
92 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
|
93 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
|
94 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
|
95 |
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 ``` 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
|
97 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
|
98 "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
|
99 "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
|
100 } |
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 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
103 Compatibility |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
104 ============= |
1782 | 105 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
106 Requires Prosody 0.10 or above 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
|
107 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
|
108 [mod\_muc\_log]. |