Mercurial > prosody-modules
annotate mod_http_muc_log/README.markdown @ 3866:c0df50ce96f0
mod_rest: Handle internal http request errors early and then return
Skips over attempted parsing of the payload which usually failed since
the body is an error string like "connection refused", so this produced
useless errors.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sat, 25 Jan 2020 20:22:12 +0100 |
parents | 6e529f53b3c3 |
children | 1890115b2773 |
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 |
3596
6e529f53b3c3
mod_http_muc_log: Allow specifying the default view
Kim Alvefur <zash@zash.se>
parents:
3582
diff
changeset
|
53 ## Default view |
6e529f53b3c3
mod_http_muc_log: Allow specifying the default view
Kim Alvefur <zash@zash.se>
parents:
3582
diff
changeset
|
54 |
6e529f53b3c3
mod_http_muc_log: Allow specifying the default view
Kim Alvefur <zash@zash.se>
parents:
3582
diff
changeset
|
55 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
|
56 page: |
6e529f53b3c3
mod_http_muc_log: Allow specifying the default view
Kim Alvefur <zash@zash.se>
parents:
3582
diff
changeset
|
57 |
6e529f53b3c3
mod_http_muc_log: Allow specifying the default view
Kim Alvefur <zash@zash.se>
parents:
3582
diff
changeset
|
58 ```lua |
6e529f53b3c3
mod_http_muc_log: Allow specifying the default view
Kim Alvefur <zash@zash.se>
parents:
3582
diff
changeset
|
59 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
|
60 ``` |
6e529f53b3c3
mod_http_muc_log: Allow specifying the default view
Kim Alvefur <zash@zash.se>
parents:
3582
diff
changeset
|
61 |
3582
444e2306c99a
mod_http_muc_log: Add option to show OOB images
Kim Alvefur <zash@zash.se>
parents:
3581
diff
changeset
|
62 ## Inline images |
444e2306c99a
mod_http_muc_log: Add option to show OOB images
Kim Alvefur <zash@zash.se>
parents:
3581
diff
changeset
|
63 |
444e2306c99a
mod_http_muc_log: Add option to show OOB images
Kim Alvefur <zash@zash.se>
parents:
3581
diff
changeset
|
64 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
|
65 privacy reasons. |
444e2306c99a
mod_http_muc_log: Add option to show OOB images
Kim Alvefur <zash@zash.se>
parents:
3581
diff
changeset
|
66 |
444e2306c99a
mod_http_muc_log: Add option to show OOB images
Kim Alvefur <zash@zash.se>
parents:
3581
diff
changeset
|
67 ``` {.lua} |
444e2306c99a
mod_http_muc_log: Add option to show OOB images
Kim Alvefur <zash@zash.se>
parents:
3581
diff
changeset
|
68 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
|
69 ``` |
444e2306c99a
mod_http_muc_log: Add option to show OOB images
Kim Alvefur <zash@zash.se>
parents:
3581
diff
changeset
|
70 |
3581
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
71 ## Calendar optimization |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
72 |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
73 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
|
74 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
|
75 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
|
76 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
|
77 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
|
78 |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
79 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
|
80 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
|
81 |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
82 ``` {.lua} |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
83 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
|
84 ``` |
dbc67120097f
mod_http_muc_log: Document optimization for storage modules lacking :dates API
Kim Alvefur <zash@zash.se>
parents:
2589
diff
changeset
|
85 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
86 Compatibility |
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
87 ============= |
1782 | 88 |
1803
4d73a1a6ba68
Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents:
1782
diff
changeset
|
89 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
|
90 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
|
91 [mod\_muc\_log]. |