summaryrefslogtreecommitdiff
path: root/docs/api/plugins/xep_0047.rst
diff options
context:
space:
mode:
authormathieui <mathieui@mathieui.net>2021-02-27 13:16:18 +0100
committermathieui <mathieui@mathieui.net>2021-02-27 13:16:18 +0100
commit059cb290d8ae567ef189d83c45a1e38b1f3ab9dc (patch)
treeb8a85ab9a91bf7663701a077607a67a07fcc485a /docs/api/plugins/xep_0047.rst
parent5f9ab45a5e161c3035a844184736b3180dae6047 (diff)
parent3cdec464a550b775d8c251f37b863a6e2212c5d5 (diff)
downloadslixmpp-059cb290d8ae567ef189d83c45a1e38b1f3ab9dc.tar.gz
slixmpp-059cb290d8ae567ef189d83c45a1e38b1f3ab9dc.tar.bz2
slixmpp-059cb290d8ae567ef189d83c45a1e38b1f3ab9dc.tar.xz
slixmpp-059cb290d8ae567ef189d83c45a1e38b1f3ab9dc.zip
Merge branch 'async-interal-api-break-everything' into 'master'
Make the internal "api" async See merge request poezio/slixmpp!128
Diffstat (limited to 'docs/api/plugins/xep_0047.rst')
-rw-r--r--docs/api/plugins/xep_0047.rst71
1 files changed, 69 insertions, 2 deletions
diff --git a/docs/api/plugins/xep_0047.rst b/docs/api/plugins/xep_0047.rst
index c8aea741..0e81ae10 100644
--- a/docs/api/plugins/xep_0047.rst
+++ b/docs/api/plugins/xep_0047.rst
@@ -8,11 +8,78 @@ XEP-0047: In-band Bytestreams
:members:
:exclude-members: session_bind, plugin_init, plugin_end
-.. module:: slixmpp.plugins.xep_0047
-
.. autoclass:: IBBytestream
:members:
+.. _api-0047:
+
+Internal API methods
+--------------------
+
+The API here is used to manage streams and authorize. The default handlers
+work with the config parameters.
+
+.. glossary::
+
+ authorized_sid (0047 version)
+ - **jid**: :class:`~.JID` receiving the stream initiation.
+ - **node**: stream id
+ - **ifrom**: who the stream is from.
+ - **args**: :class:`~.Iq` of the stream request.
+ - **returns**: ``True`` if the stream should be accepted,
+ ``False`` otherwise.
+
+ Check if the stream should be accepted. Uses
+ the information setup by :term:`preauthorize_sid (0047 version)`
+ by default.
+
+ authorized (0047 version)
+ - **jid**: :class:`~.JID` receiving the stream initiation.
+ - **node**: stream id
+ - **ifrom**: who the stream is from.
+ - **args**: :class:`~.Iq` of the stream request.
+ - **returns**: ``True`` if the stream should be accepted,
+ ``False`` otherwise.
+
+ A fallback handler (run after :term:`authorized_sid (0047 version)`)
+ to check if a stream should be accepted. Uses the ``auto_accept``
+ parameter by default.
+
+ preauthorize_sid (0047 version)
+ - **jid**: :class:`~.JID` receiving the stream initiation.
+ - **node**: stream id
+ - **ifrom**: who the stream will be from.
+ - **args**: Unused.
+
+ Register a stream id to be accepted automatically (called from
+ other plugins such as XEP-0095).
+
+ get_stream
+ - **jid**: :class:`~.JID` of local receiver.
+ - **node**: stream id
+ - **ifrom**: who the stream is from.
+ - **args**: unused
+ - **returns**: :class:`~.IBBytestream`
+
+ Return a currently opened stream between two JIDs.
+
+ set_stream
+ - **jid**: :class:`~.JID` of local receiver.
+ - **node**: stream id
+ - **ifrom**: who the stream is from.
+ - **args**: unused
+
+ Register an opened stream between two JIDs.
+
+ del_stream
+ - **jid**: :class:`~.JID` of local receiver.
+ - **node**: stream id
+ - **ifrom**: who the stream is from.
+ - **args**: unused
+
+ Delete a stream between two JIDs.
+
+
Stanza elements
---------------