Software /
code /
prosody-modules
Annotate
mod_http_muc_log/README.markdown @ 3581:dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sun, 05 May 2019 14:05:00 +0200 |
parent | 2589:89a3f049689f |
child | 3582:444e2306c99a |
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 |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
5 ... |
1782 | 6 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
7 Introduction |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
8 ============ |
1782 | 9 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
10 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
|
11 stored by [mod\_mam\_muc]. |
1782 | 12 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
13 Installation |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
14 ============ |
1782 | 15 |
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 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
|
17 `http_muc_log.html` alongside `mod_http_muc_log.lua`. |
1782 | 18 |
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
|
19 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
|
20 ============= |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
21 |
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
|
22 For example: |
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 ``` 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
|
25 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
|
26 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
|
27 "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
|
28 "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
|
29 } |
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 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
|
31 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
|
32 } |
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 ``` |
1782 | 34 |
35 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
|
36 |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
37 http://conference.example.com:5280/muc_log/ |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
38 |
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
|
39 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
|
40 address. |
1782 | 41 |
2589
89a3f049689f
mod_http_muc_log/README: Add some text about the HTML template
Kim Alvefur <zash@zash.se>
parents:
1977
diff
changeset
|
42 ## Styling |
89a3f049689f
mod_http_muc_log/README: Add some text about the HTML template
Kim Alvefur <zash@zash.se>
parents:
1977
diff
changeset
|
43 |
89a3f049689f
mod_http_muc_log/README: Add some text about the HTML template
Kim Alvefur <zash@zash.se>
parents:
1977
diff
changeset
|
44 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
|
45 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
|
46 `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
|
47 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
|
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 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
|
50 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
|
51 escaping enabled. |
89a3f049689f
mod_http_muc_log/README: Add some text about the HTML template
Kim Alvefur <zash@zash.se>
parents:
1977
diff
changeset
|
52 |
3581
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
53 ## Calendar optimization |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
54 |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
55 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
|
56 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
|
57 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
|
58 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
|
59 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
|
60 |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
61 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
|
62 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
|
63 |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
64 ``` {.lua} |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
65 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
|
66 ``` |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
67 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
68 Compatibility |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
69 ============= |
1782 | 70 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
71 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
|
72 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
|
73 [mod\_muc\_log]. |