Mercurial > libervia-backend
annotate doc/libervia-cli/blocking.rst @ 4306:94e0968987cd
plugin XEP-0033: code modernisation, improve delivery, data validation:
- Code has been rewritten using Pydantic models and `async` coroutines for data validation
and cleaner element parsing/generation.
- Delivery has been completely rewritten. It now works even if server doesn't support
multicast, and send to local multicast service first. Delivering to local multicast
service first is due to bad support of XEP-0033 in server (notably Prosody which has an
incomplete implementation), and the current impossibility to detect if a sub-domain
service handles fully multicast or only for local domains. This is a workaround to have
a good balance between backward compatilibity and use of bandwith, and to make it work
with the incoming email gateway implementation (the gateway will only deliver to
entities of its own domain).
- disco feature checking now uses `async` corountines. `host` implementation still use
Deferred return values for compatibility with legacy code.
rel 450
author | Goffi <goffi@goffi.org> |
---|---|
date | Thu, 26 Sep 2024 16:12:01 +0200 |
parents | 29380ef68dbe |
children |
rev | line source |
---|---|
3810
29380ef68dbe
doc (components): AP item retraction + blocking:
Goffi <goffi@goffi.org>
parents:
3789
diff
changeset
|
1 .. _libervia-cli_blocking: |
29380ef68dbe
doc (components): AP item retraction + blocking:
Goffi <goffi@goffi.org>
parents:
3789
diff
changeset
|
2 |
3789
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
3 =========================== |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
4 blocking: entities blocking |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
5 =========================== |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
6 |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
7 ``blocking`` are commands to block or unblock users by their JIDs (as specified by |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
8 `XEP-0191`_). You server must implement this XEP to use those commands. |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
9 |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
10 A blocking is usually done using bare JID, however, you may specify a resource if you want |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
11 to block only this resource, or a domain if you want to block a whole domain. Please check |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
12 `XEP-0191 § JID Matching`_ for details. |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
13 |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
14 list |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
15 ==== |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
16 |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
17 List already blocked users. |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
18 |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
19 examples |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
20 -------- |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
21 |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
22 Check who has already been blocked:: |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
23 |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
24 $ li blocking list |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
25 |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
26 block |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
27 ===== |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
28 |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
29 Block one or more entities by specifying their JIDs. |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
30 |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
31 You just need to specify the bare JIDs of users that you want to block as positional |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
32 argument, specify only a domain if you want to block a whole domain. |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
33 |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
34 examples |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
35 -------- |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
36 |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
37 Louise wants to block ``spammer@example.com`` and the whole domain ``spammers.example``:: |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
38 |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
39 $ li blocking block spammer@example.com spammers.example |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
40 |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
41 unblock |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
42 ======= |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
43 |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
44 ``unblock`` works the same way as ``block``. |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
45 |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
46 If you want to unblock all blocked users at once, you can use the ``all`` keyword. In this |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
47 case, you'll have to confirm the action. If you don't want to confirm manually, you can |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
48 use the ``-f, --force`` flag. |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
49 |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
50 examples |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
51 -------- |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
52 |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
53 Pierre wants to unblock the domain ``example.com`` that he has blocked earlier:: |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
54 |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
55 $ li blocking unblock example.com |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
56 |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
57 Élysée want to unblock all blocked users, without confirmation:: |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
58 |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
59 $ li blocking unblock -f all |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
60 |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
61 |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
62 .. _XEP-0191: https://xmpp.org/extensions/xep-0191.html |
665f060fbecb
doc (cli/blocking): `blocking` command documentation:
Goffi <goffi@goffi.org>
parents:
diff
changeset
|
63 .. _XEP-0191 § JID Matching: https://xmpp.org/extensions/xep-0191.html#matching |