Software / code / prosody-modules
Annotate
mod_invites_register_web/README.md @ 6273:8ceedc336d0d
Merge update
| author | Trần H. Trung <xmpp:trần.h.trung@trung.fun> |
|---|---|
| date | Sun, 01 Jun 2025 13:51:38 +0700 |
| parent | 6262:a72388da5cd4 |
| parent | 6265:22b5b744fc78 |
| rev | line source |
|---|---|
|
4093
a2116f5a7c8f
mod_invites_register_web: New module to allow web registration with an invite token
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
1 --- |
|
a2116f5a7c8f
mod_invites_register_web: New module to allow web registration with an invite token
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
2 labels: |
|
a2116f5a7c8f
mod_invites_register_web: New module to allow web registration with an invite token
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
3 - 'Stage-Beta' |
|
a2116f5a7c8f
mod_invites_register_web: New module to allow web registration with an invite token
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
4 summary: 'Register accounts via the web using invite tokens' |
|
4104
476afcbfb3e9
various: Add some dependency metadata
Kim Alvefur <zash@zash.se>
parents:
4093
diff
changeset
|
5 rockspec: |
|
476afcbfb3e9
various: Add some dependency metadata
Kim Alvefur <zash@zash.se>
parents:
4093
diff
changeset
|
6 dependencies: |
|
4105
233e170eb027
various: Dependency metadata needs the mod_ prefix
Kim Alvefur <zash@zash.se>
parents:
4104
diff
changeset
|
7 - mod_invites_page |
|
4833
15cf32e666da
mod_invites_register_web: Add mod_password_policy checks for web registration
Matthew Wild <mwild1@gmail.com>
parents:
4224
diff
changeset
|
8 - mod_password_policy |
|
4105
233e170eb027
various: Dependency metadata needs the mod_ prefix
Kim Alvefur <zash@zash.se>
parents:
4104
diff
changeset
|
9 - mod_register_apps |
|
4135
ed0c7044b00f
mod_invites_register_web: Include html resources in rock
Kim Alvefur <zash@zash.se>
parents:
4109
diff
changeset
|
10 build: |
|
ed0c7044b00f
mod_invites_register_web: Include html resources in rock
Kim Alvefur <zash@zash.se>
parents:
4109
diff
changeset
|
11 copy_directories: |
|
ed0c7044b00f
mod_invites_register_web: Include html resources in rock
Kim Alvefur <zash@zash.se>
parents:
4109
diff
changeset
|
12 - html |
|
4093
a2116f5a7c8f
mod_invites_register_web: New module to allow web registration with an invite token
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
13 ... |
|
a2116f5a7c8f
mod_invites_register_web: New module to allow web registration with an invite token
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
14 |
|
a2116f5a7c8f
mod_invites_register_web: New module to allow web registration with an invite token
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
15 Introduction |
|
a2116f5a7c8f
mod_invites_register_web: New module to allow web registration with an invite token
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
16 ============ |
|
a2116f5a7c8f
mod_invites_register_web: New module to allow web registration with an invite token
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
17 |
|
a2116f5a7c8f
mod_invites_register_web: New module to allow web registration with an invite token
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
18 This module is part of the suite of modules that implement invite-based |
|
a2116f5a7c8f
mod_invites_register_web: New module to allow web registration with an invite token
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
19 account registration for Prosody. The other modules are: |
|
a2116f5a7c8f
mod_invites_register_web: New module to allow web registration with an invite token
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
20 |
|
4223
4ec755c13e9b
mod_invites*: Link to each other
Kim Alvefur <zash@zash.se>
parents:
4167
diff
changeset
|
21 - [mod_invites] |
|
4ec755c13e9b
mod_invites*: Link to each other
Kim Alvefur <zash@zash.se>
parents:
4167
diff
changeset
|
22 - [mod_invites_adhoc] |
|
4ec755c13e9b
mod_invites*: Link to each other
Kim Alvefur <zash@zash.se>
parents:
4167
diff
changeset
|
23 - [mod_invites_page] |
|
4ec755c13e9b
mod_invites*: Link to each other
Kim Alvefur <zash@zash.se>
parents:
4167
diff
changeset
|
24 - [mod_invites_register] |
|
4224
816c2fa1ca84
mod_invites*: Also link to mod_invites_api
Kim Alvefur <zash@zash.se>
parents:
4223
diff
changeset
|
25 - [mod_invites_api] |
|
4223
4ec755c13e9b
mod_invites*: Link to each other
Kim Alvefur <zash@zash.se>
parents:
4167
diff
changeset
|
26 - [mod_register_apps] |
|
4093
a2116f5a7c8f
mod_invites_register_web: New module to allow web registration with an invite token
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
27 |
|
4223
4ec755c13e9b
mod_invites*: Link to each other
Kim Alvefur <zash@zash.se>
parents:
4167
diff
changeset
|
28 For details and a full overview, start with the [mod_invites] documentation. |
|
4093
a2116f5a7c8f
mod_invites_register_web: New module to allow web registration with an invite token
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
29 |
|
a2116f5a7c8f
mod_invites_register_web: New module to allow web registration with an invite token
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
30 Details |
|
a2116f5a7c8f
mod_invites_register_web: New module to allow web registration with an invite token
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
31 ======= |
|
a2116f5a7c8f
mod_invites_register_web: New module to allow web registration with an invite token
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
32 |
|
a2116f5a7c8f
mod_invites_register_web: New module to allow web registration with an invite token
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
33 mod_invites_register_web implements a web-based registration form that |
|
a2116f5a7c8f
mod_invites_register_web: New module to allow web registration with an invite token
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
34 validates invite tokens. It also supports guiding the user through client |
|
a2116f5a7c8f
mod_invites_register_web: New module to allow web registration with an invite token
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
35 download and configuration via mod_register_apps. |
|
a2116f5a7c8f
mod_invites_register_web: New module to allow web registration with an invite token
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
36 |
| 6273 | 37 This module depends on [mod_invites_page] solely for the case where an invalid |
| 38 invite token is received - it will redirect to [mod_invites_page] so that an | |
|
4093
a2116f5a7c8f
mod_invites_register_web: New module to allow web registration with an invite token
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
39 appropriate error can be served to the user. |
|
4833
15cf32e666da
mod_invites_register_web: Add mod_password_policy checks for web registration
Matthew Wild <mwild1@gmail.com>
parents:
4224
diff
changeset
|
40 |
|
15cf32e666da
mod_invites_register_web: Add mod_password_policy checks for web registration
Matthew Wild <mwild1@gmail.com>
parents:
4224
diff
changeset
|
41 The module also depends on [mod_password_policy] (which will be automatically |
|
15cf32e666da
mod_invites_register_web: Add mod_password_policy checks for web registration
Matthew Wild <mwild1@gmail.com>
parents:
4224
diff
changeset
|
42 loaded). As a consequence of this module being loaded, the default password |
|
15cf32e666da
mod_invites_register_web: Add mod_password_policy checks for web registration
Matthew Wild <mwild1@gmail.com>
parents:
4224
diff
changeset
|
43 policies will be enforced for all registrations on the server if not |
|
15cf32e666da
mod_invites_register_web: Add mod_password_policy checks for web registration
Matthew Wild <mwild1@gmail.com>
parents:
4224
diff
changeset
|
44 explicitly loaded or configured. |
|
6090
2e358c105f64
mod_invites_register_web: Add compability-section
Menel <menel@snikket.de>
parents:
6003
diff
changeset
|
45 |
|
5590
d5a31a13c357
mod_invites_register_web: Update doc on how to use `invites_html_template`.
Trần H. Trung <work@trung.fun>
parents:
5141
diff
changeset
|
46 Configuration |
|
d5a31a13c357
mod_invites_register_web: Update doc on how to use `invites_html_template`.
Trần H. Trung <work@trung.fun>
parents:
5141
diff
changeset
|
47 ============= |
|
d5a31a13c357
mod_invites_register_web: Update doc on how to use `invites_html_template`.
Trần H. Trung <work@trung.fun>
parents:
5141
diff
changeset
|
48 |
|
6264
29a646bad096
mod_invites_register_web: Allow pointing other HTML templates
Kim Alvefur <zash@zash.se>
parents:
6090
diff
changeset
|
49 The optional `site_name` setting can be used to override the displayed site name. |
|
29a646bad096
mod_invites_register_web: Allow pointing other HTML templates
Kim Alvefur <zash@zash.se>
parents:
6090
diff
changeset
|
50 |
|
29a646bad096
mod_invites_register_web: Allow pointing other HTML templates
Kim Alvefur <zash@zash.se>
parents:
6090
diff
changeset
|
51 ```lua |
|
29a646bad096
mod_invites_register_web: Allow pointing other HTML templates
Kim Alvefur <zash@zash.se>
parents:
6090
diff
changeset
|
52 site_name = "My Chat Service" |
|
29a646bad096
mod_invites_register_web: Allow pointing other HTML templates
Kim Alvefur <zash@zash.se>
parents:
6090
diff
changeset
|
53 ``` |
|
29a646bad096
mod_invites_register_web: Allow pointing other HTML templates
Kim Alvefur <zash@zash.se>
parents:
6090
diff
changeset
|
54 |
|
5590
d5a31a13c357
mod_invites_register_web: Update doc on how to use `invites_html_template`.
Trần H. Trung <work@trung.fun>
parents:
5141
diff
changeset
|
55 You can set `webchat_url` to the URL of a web chat that will be linked |
| 6273 | 56 to after successful registration. If not specified but [mod_conversejs] is loaded |
|
5590
d5a31a13c357
mod_invites_register_web: Update doc on how to use `invites_html_template`.
Trần H. Trung <work@trung.fun>
parents:
5141
diff
changeset
|
57 on the current host, it will default to the URL of that module. |
|
d5a31a13c357
mod_invites_register_web: Update doc on how to use `invites_html_template`.
Trần H. Trung <work@trung.fun>
parents:
5141
diff
changeset
|
58 |
| 6273 | 59 HTML templates can be overridden by using `invites_register_template_path`, see |
| 60 the `html/` directory in the sources for the files needed. | |
|
6264
29a646bad096
mod_invites_register_web: Allow pointing other HTML templates
Kim Alvefur <zash@zash.se>
parents:
6090
diff
changeset
|
61 |
|
29a646bad096
mod_invites_register_web: Allow pointing other HTML templates
Kim Alvefur <zash@zash.se>
parents:
6090
diff
changeset
|
62 ```lua |
|
29a646bad096
mod_invites_register_web: Allow pointing other HTML templates
Kim Alvefur <zash@zash.se>
parents:
6090
diff
changeset
|
63 invites_register_template_path = "/path/to/templates/html" |
|
29a646bad096
mod_invites_register_web: Allow pointing other HTML templates
Kim Alvefur <zash@zash.se>
parents:
6090
diff
changeset
|
64 ``` |
|
29a646bad096
mod_invites_register_web: Allow pointing other HTML templates
Kim Alvefur <zash@zash.se>
parents:
6090
diff
changeset
|
65 |
| 6273 | 66 Names of the files MUST match the default. More over, you can offer multiple (human) |
|
5590
d5a31a13c357
mod_invites_register_web: Update doc on how to use `invites_html_template`.
Trần H. Trung <work@trung.fun>
parents:
5141
diff
changeset
|
67 languages by adding the `&l=` to the URL. Meaning this module will serve |
|
d5a31a13c357
mod_invites_register_web: Update doc on how to use `invites_html_template`.
Trần H. Trung <work@trung.fun>
parents:
5141
diff
changeset
|
68 `register.html` for your default URL: |
|
4093
a2116f5a7c8f
mod_invites_register_web: New module to allow web registration with an invite token
Matthew Wild <mwild1@gmail.com>
parents:
diff
changeset
|
69 |
| 6273 | 70 ```lua |
| 71 https://prosody.example.net/register?t=aowiefjoaij | |
|
5590
d5a31a13c357
mod_invites_register_web: Update doc on how to use `invites_html_template`.
Trần H. Trung <work@trung.fun>
parents:
5141
diff
changeset
|
72 ``` |
|
d5a31a13c357
mod_invites_register_web: Update doc on how to use `invites_html_template`.
Trần H. Trung <work@trung.fun>
parents:
5141
diff
changeset
|
73 |
|
d5a31a13c357
mod_invites_register_web: Update doc on how to use `invites_html_template`.
Trần H. Trung <work@trung.fun>
parents:
5141
diff
changeset
|
74 And if you have a `register.en.html` in the directory you have specified in |
|
d5a31a13c357
mod_invites_register_web: Update doc on how to use `invites_html_template`.
Trần H. Trung <work@trung.fun>
parents:
5141
diff
changeset
|
75 your config file, it will be served at: |
|
4167
3a03ae9a0882
mod_invites_register_web: Support linking to a web chat after successful registration
Matthew Wild <mwild1@gmail.com>
parents:
4135
diff
changeset
|
76 |
| 6273 | 77 ```lua |
| 78 https://prosody.example.net/register?t=aowiefjoaij&l=en | |
|
5590
d5a31a13c357
mod_invites_register_web: Update doc on how to use `invites_html_template`.
Trần H. Trung <work@trung.fun>
parents:
5141
diff
changeset
|
79 ``` |
|
d5a31a13c357
mod_invites_register_web: Update doc on how to use `invites_html_template`.
Trần H. Trung <work@trung.fun>
parents:
5141
diff
changeset
|
80 |
|
d5a31a13c357
mod_invites_register_web: Update doc on how to use `invites_html_template`.
Trần H. Trung <work@trung.fun>
parents:
5141
diff
changeset
|
81 So in your `register.html`, you can point to the English version by using an |
|
d5a31a13c357
mod_invites_register_web: Update doc on how to use `invites_html_template`.
Trần H. Trung <work@trung.fun>
parents:
5141
diff
changeset
|
82 `<a>` tag like this: |
|
4833
15cf32e666da
mod_invites_register_web: Add mod_password_policy checks for web registration
Matthew Wild <mwild1@gmail.com>
parents:
4224
diff
changeset
|
83 |
| 6273 | 84 ```lua |
| 85 <a href="/register?t={token}&l=en">English</a> | |
|
5590
d5a31a13c357
mod_invites_register_web: Update doc on how to use `invites_html_template`.
Trần H. Trung <work@trung.fun>
parents:
5141
diff
changeset
|
86 ``` |
|
d5a31a13c357
mod_invites_register_web: Update doc on how to use `invites_html_template`.
Trần H. Trung <work@trung.fun>
parents:
5141
diff
changeset
|
87 |
|
d5a31a13c357
mod_invites_register_web: Update doc on how to use `invites_html_template`.
Trần H. Trung <work@trung.fun>
parents:
5141
diff
changeset
|
88 You can further customize your URL with [mod_invites_page] too. |
|
d5a31a13c357
mod_invites_register_web: Update doc on how to use `invites_html_template`.
Trần H. Trung <work@trung.fun>
parents:
5141
diff
changeset
|
89 |
|
6090
2e358c105f64
mod_invites_register_web: Add compability-section
Menel <menel@snikket.de>
parents:
6003
diff
changeset
|
90 |
|
2e358c105f64
mod_invites_register_web: Add compability-section
Menel <menel@snikket.de>
parents:
6003
diff
changeset
|
91 Compatibility |
|
2e358c105f64
mod_invites_register_web: Add compability-section
Menel <menel@snikket.de>
parents:
6003
diff
changeset
|
92 ============= |
|
2e358c105f64
mod_invites_register_web: Add compability-section
Menel <menel@snikket.de>
parents:
6003
diff
changeset
|
93 |
|
2e358c105f64
mod_invites_register_web: Add compability-section
Menel <menel@snikket.de>
parents:
6003
diff
changeset
|
94 Prosody-Version Status |
|
2e358c105f64
mod_invites_register_web: Add compability-section
Menel <menel@snikket.de>
parents:
6003
diff
changeset
|
95 --------------- --------------------- |
|
2e358c105f64
mod_invites_register_web: Add compability-section
Menel <menel@snikket.de>
parents:
6003
diff
changeset
|
96 trunk Works as of 24-12-08 |
|
2e358c105f64
mod_invites_register_web: Add compability-section
Menel <menel@snikket.de>
parents:
6003
diff
changeset
|
97 0.12 Works |