Compare commits
No commits in common. "master" and "exp_idle_call" have entirely different histories.
master
...
exp_idle_c
3
.gitignore
vendored
3
.gitignore
vendored
@ -12,6 +12,3 @@ slixmpp.egg-info/
|
|||||||
*~
|
*~
|
||||||
.baboon/
|
.baboon/
|
||||||
.DS_STORE
|
.DS_STORE
|
||||||
.idea/
|
|
||||||
.vscode/
|
|
||||||
venv/
|
|
@ -1,22 +0,0 @@
|
|||||||
# .readthedocs.yaml
|
|
||||||
# Read the Docs configuration file
|
|
||||||
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
|
|
||||||
|
|
||||||
# Required
|
|
||||||
version: 2
|
|
||||||
|
|
||||||
# Set the version of Python and other tools you might need
|
|
||||||
build:
|
|
||||||
os: ubuntu-22.04
|
|
||||||
tools:
|
|
||||||
python: "3.11"
|
|
||||||
|
|
||||||
# Build documentation in the docs/ directory with Sphinx
|
|
||||||
sphinx:
|
|
||||||
configuration: docs/conf.py
|
|
||||||
|
|
||||||
# We recommend specifying your dependencies to enable reproducible builds:
|
|
||||||
# https://docs.readthedocs.io/en/stable/guides/reproducible-builds.html
|
|
||||||
python:
|
|
||||||
install:
|
|
||||||
- requirements: docs/requirements.txt
|
|
@ -1,9 +0,0 @@
|
|||||||
when:
|
|
||||||
event: [ push, pull_request ]
|
|
||||||
|
|
||||||
steps:
|
|
||||||
mypy:
|
|
||||||
image: python:3
|
|
||||||
commands:
|
|
||||||
- pip3 install mypy types-setuptools
|
|
||||||
- mypy slixmpp
|
|
@ -1,23 +0,0 @@
|
|||||||
when:
|
|
||||||
event: [ push, pull_request ]
|
|
||||||
|
|
||||||
steps:
|
|
||||||
test_integration:
|
|
||||||
image: "python:3.11"
|
|
||||||
environment:
|
|
||||||
CI_ACCOUNT1:
|
|
||||||
from_secret: ci_account1
|
|
||||||
CI_ACCOUNT1_PASSWORD:
|
|
||||||
from_secret: ci_account1_password
|
|
||||||
CI_ACCOUNT2:
|
|
||||||
from_secret: ci_account2
|
|
||||||
CI_ACCOUNT2_PASSWORD:
|
|
||||||
from_secret: ci_account2_password
|
|
||||||
CI_MUC_SERVER:
|
|
||||||
from_secret: ci_muc_server
|
|
||||||
commands:
|
|
||||||
- apt-get update
|
|
||||||
- apt-get install -y python3-pip cython3 gpg idn libidn-dev
|
|
||||||
- pip3 install emoji aiohttp aiodns
|
|
||||||
- python3 setup.py build_ext --inplace
|
|
||||||
- ./run_integration_tests.py
|
|
@ -1,19 +0,0 @@
|
|||||||
when:
|
|
||||||
event: [ push, pull_request ]
|
|
||||||
|
|
||||||
steps:
|
|
||||||
unit_tests:
|
|
||||||
image: "python:${TAG}"
|
|
||||||
commands:
|
|
||||||
- apt-get update
|
|
||||||
- apt-get install -y python3 python3-pip cython3 gpg
|
|
||||||
- pip3 install emoji aiohttp cryptography setuptools
|
|
||||||
- ./run_tests.py
|
|
||||||
|
|
||||||
matrix:
|
|
||||||
TAG:
|
|
||||||
- "3.9"
|
|
||||||
- "3.10"
|
|
||||||
- "3.11"
|
|
||||||
- "3.12"
|
|
||||||
- "3.13"
|
|
@ -1,14 +0,0 @@
|
|||||||
Contributing to the Slixmpp project
|
|
||||||
===================================
|
|
||||||
|
|
||||||
To contribute, the preferred way is to commit your changes on some
|
|
||||||
publicly-available git repository (on a fork `on github
|
|
||||||
<https://github.com/poezio/slixmpp>`_ or on your own repository) and to
|
|
||||||
notify the developers with either:
|
|
||||||
- a ticket `on the bug tracker <https://codeberg.org/poezio/slixmpp/issues/new>`_
|
|
||||||
- a pull request on github
|
|
||||||
- a simple message on `the XMPP MUC <xmpp:slixmpp@muc.poez.io>`_
|
|
||||||
|
|
||||||
Even though Slixmpp’s github repository is just a read-only mirror, we can
|
|
||||||
still be notified of the pull requests and fetch your mirror manually to
|
|
||||||
integrate your changes.
|
|
6
INSTALL
6
INSTALL
@ -1,7 +1,5 @@
|
|||||||
Pre-requisites:
|
Pre-requisites:
|
||||||
- Python 3.7+
|
- Python 3.1 or 2.6
|
||||||
- Cython 0.22 and libidn, optionally (making JID faster by compiling the stringprep module)
|
|
||||||
- GnuPG, for testing
|
|
||||||
|
|
||||||
Install:
|
Install:
|
||||||
> python3 setup.py install
|
> python3 setup.py install
|
||||||
@ -11,4 +9,4 @@ Root install:
|
|||||||
|
|
||||||
To test:
|
To test:
|
||||||
> cd examples
|
> cd examples
|
||||||
> python3 echo_client.py -d -j [USER@example.com] -p [PASSWORD]
|
> python echo_client.py -v -j [USER@example.com] -p [PASSWORD]
|
||||||
|
53
LICENSE
53
LICENSE
@ -86,6 +86,34 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
OrderedDict - A port of the Python 2.7+ OrderedDict to Python 2.6
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
Copyright (c) 2009 Raymond Hettinger
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person
|
||||||
|
obtaining a copy of this software and associated documentation files
|
||||||
|
(the "Software"), to deal in the Software without restriction,
|
||||||
|
including without limitation the rights to use, copy, modify, merge,
|
||||||
|
publish, distribute, sublicense, and/or sell copies of the Software,
|
||||||
|
and to permit persons to whom the Software is furnished to do so,
|
||||||
|
subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be
|
||||||
|
included in all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
||||||
|
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||||
|
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
||||||
|
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||||
|
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||||
|
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||||
|
OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
SUELTA – A PURE-PYTHON SASL CLIENT LIBRARY
|
SUELTA – A PURE-PYTHON SASL CLIENT LIBRARY
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
@ -139,3 +167,28 @@ PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
|||||||
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
|
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
|
||||||
OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
||||||
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
|
socksipy: A Python SOCKS client module.
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
Copyright 2006 Dan-Haim. All rights reserved.
|
||||||
|
|
||||||
|
Redistribution and use in source and binary forms, with or without modification,
|
||||||
|
are permitted provided that the following conditions are met:
|
||||||
|
1. Redistributions of source code must retain the above copyright notice, this
|
||||||
|
list of conditions and the following disclaimer.
|
||||||
|
2. Redistributions in binary form must reproduce the above copyright notice,
|
||||||
|
this list of conditions and the following disclaimer in the documentation
|
||||||
|
and/or other materials provided with the distribution.
|
||||||
|
3. Neither the name of Dan Haim nor the names of his contributors may be used
|
||||||
|
to endorse or promote products derived from this software without specific
|
||||||
|
prior written permission.
|
||||||
|
|
||||||
|
THIS SOFTWARE IS PROVIDED BY DAN HAIM "AS IS" AND ANY EXPRESS OR IMPLIED
|
||||||
|
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||||
|
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
|
||||||
|
EVENT SHALL DAN HAIM OR HIS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||||
|
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||||
|
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA
|
||||||
|
OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||||
|
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
|
||||||
|
OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMANGE.
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
include README.rst
|
include README.rst
|
||||||
include LICENSE
|
include LICENSE
|
||||||
include run_tests.py
|
include testall.py
|
||||||
include slixmpp/stringprep.pyx
|
|
||||||
recursive-include docs Makefile *.bat *.py *.rst *.css *.ttf *.png
|
recursive-include docs Makefile *.bat *.py *.rst *.css *.ttf *.png
|
||||||
recursive-include examples *.py
|
recursive-include examples *.py
|
||||||
recursive-include tests *.py
|
recursive-include tests *.py
|
||||||
|
49
README.rst
49
README.rst
@ -1,21 +1,13 @@
|
|||||||
Slixmpp
|
Slixmpp
|
||||||
#########
|
#########
|
||||||
|
|
||||||
Slixmpp is an MIT licensed XMPP library for Python 3.7+. It is a fork of
|
Slixmpp is an MIT licensed XMPP library for Python 3.4+. It is a fork of
|
||||||
SleekXMPP.
|
SleekXMPP.
|
||||||
|
|
||||||
Slixmpp's goals is to only rewrite the core of the library (the low level
|
Slixmpp's goals is to only rewrite the core of the library (the low level
|
||||||
socket handling, the timers, the events dispatching) in order to remove all
|
socket handling, the timers, the events dispatching) in order to remove all
|
||||||
threads.
|
threads.
|
||||||
|
|
||||||
Building
|
|
||||||
--------
|
|
||||||
|
|
||||||
Slixmpp can make use of cython to improve performance on critical modules.
|
|
||||||
To do that, **cython3** is necessary along with **libidn** headers.
|
|
||||||
Otherwise, no compilation is needed. Building is done by running setup.py::
|
|
||||||
|
|
||||||
python3 setup.py build_ext --inplace
|
|
||||||
|
|
||||||
Documentation and Testing
|
Documentation and Testing
|
||||||
-------------------------
|
-------------------------
|
||||||
@ -29,29 +21,14 @@ be in ``docs/_build/html``::
|
|||||||
|
|
||||||
To run the test suite for Slixmpp::
|
To run the test suite for Slixmpp::
|
||||||
|
|
||||||
python run_tests.py
|
python testall.py
|
||||||
|
|
||||||
Integration tests require the following environment variables to be set:::
|
|
||||||
|
|
||||||
$CI_ACCOUNT1
|
|
||||||
$CI_ACCOUNT1_PASSWORD
|
|
||||||
$CI_ACCOUNT2
|
|
||||||
$CI_ACCOUNT2_PASSWORD
|
|
||||||
$CI_MUC_SERVER
|
|
||||||
|
|
||||||
where the account variables are JIDs of valid, existing accounts, and
|
|
||||||
the passwords are the account passwords. The MUC server must allow room
|
|
||||||
creation from those JIDs.
|
|
||||||
|
|
||||||
To run the integration test suite for Slixmpp::
|
|
||||||
|
|
||||||
python run_integration_tests.py
|
|
||||||
|
|
||||||
The Slixmpp Boilerplate
|
The Slixmpp Boilerplate
|
||||||
-------------------------
|
-------------------------
|
||||||
Projects using Slixmpp tend to follow a basic pattern for setting up client/component
|
Projects using Slixmpp tend to follow a basic pattern for setting up client/component
|
||||||
connections and configuration. Here is the gist of the boilerplate needed for a Slixmpp
|
connections and configuration. Here is the gist of the boilerplate needed for a Slixmpp
|
||||||
based project. See the documentation or examples directory for more detailed archetypes for
|
based project. See the documetation or examples directory for more detailed archetypes for
|
||||||
Slixmpp projects::
|
Slixmpp projects::
|
||||||
|
|
||||||
import logging
|
import logging
|
||||||
@ -111,27 +88,17 @@ Slixmpp projects::
|
|||||||
|
|
||||||
xmpp = EchoBot('somejid@example.com', 'use_getpass')
|
xmpp = EchoBot('somejid@example.com', 'use_getpass')
|
||||||
xmpp.connect()
|
xmpp.connect()
|
||||||
xmpp.process(forever=True)
|
xmpp.process(block=True)
|
||||||
|
|
||||||
|
|
||||||
Slixmpp Credits
|
Slixmpp Credits
|
||||||
---------------
|
---------------
|
||||||
|
|
||||||
**Maintainers:**
|
**Maintainer of the slixmpp fork:** Florent Le Coz
|
||||||
- Florent Le Coz (`louiz@louiz.org <xmpp:louiz@louiz.org?message>`_),
|
`louiz@louiz.org <xmpp:louiz@louiz.org?message>`_,
|
||||||
- Mathieu Pasquet (`mathieui@mathieui.net <xmpp:mathieui@mathieui.net?message>`_),
|
|
||||||
|
|
||||||
**Contributors:**
|
Credits
|
||||||
- Emmanuel Gil Peyrot (`Link mauve <xmpp:linkmauve@linkmauve.fr?message>`_)
|
-------
|
||||||
- Sam Whited (`Sam Whited <mailto:sam@samwhited.com>`_)
|
|
||||||
- Dan Sully (`Dan Sully <mailto:daniel@electricalrain.com>`_)
|
|
||||||
- Gasper Zejn (`Gasper Zejn <mailto:zejn@kiberpipa.org>`_)
|
|
||||||
- Krzysztof Kotlenga (`Krzysztof Kotlenga <mailto:pocek@users.sf.net>`_)
|
|
||||||
- Tsukasa Hiiragi (`Tsukasa Hiiragi <mailto:bakalolka@gmail.com>`_)
|
|
||||||
- Maxime Buquet (`pep <xmpp:pep@bouah.net?message>`_)
|
|
||||||
|
|
||||||
Credits (SleekXMPP)
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
**Main Author:** Nathan Fritz
|
**Main Author:** Nathan Fritz
|
||||||
`fritzy@netflint.net <xmpp:fritzy@netflint.net?message>`_,
|
`fritzy@netflint.net <xmpp:fritzy@netflint.net?message>`_,
|
||||||
|
452
docs/_static/agogo.css
vendored
Normal file
452
docs/_static/agogo.css
vendored
Normal file
@ -0,0 +1,452 @@
|
|||||||
|
/*
|
||||||
|
* agogo.css_t
|
||||||
|
* ~~~~~~~~~~~
|
||||||
|
*
|
||||||
|
* Sphinx stylesheet -- agogo theme.
|
||||||
|
*
|
||||||
|
* :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS.
|
||||||
|
* :license: BSD, see LICENSE for details.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
* {
|
||||||
|
margin: 0px;
|
||||||
|
padding: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
font-family: "Verdana", Arial, sans-serif;
|
||||||
|
line-height: 1.4em;
|
||||||
|
color: black;
|
||||||
|
background-color: #eeeeec;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Page layout */
|
||||||
|
|
||||||
|
div.header, div.content, div.footer {
|
||||||
|
width: 70em;
|
||||||
|
margin-left: auto;
|
||||||
|
margin-right: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.header-wrapper {
|
||||||
|
background: url(bgtop.png) top left repeat-x;
|
||||||
|
border-bottom: 3px solid #2e3436;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Default body styles */
|
||||||
|
a {
|
||||||
|
color: #ce5c00;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.bodywrapper a, div.footer a {
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
|
.clearer {
|
||||||
|
clear: both;
|
||||||
|
}
|
||||||
|
|
||||||
|
.left {
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.right {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
.line-block {
|
||||||
|
display: block;
|
||||||
|
margin-top: 1em;
|
||||||
|
margin-bottom: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.line-block .line-block {
|
||||||
|
margin-top: 0;
|
||||||
|
margin-bottom: 0;
|
||||||
|
margin-left: 1.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1, h2, h3, h4 {
|
||||||
|
font-family: "Georgia", "Times New Roman", serif;
|
||||||
|
font-weight: normal;
|
||||||
|
color: #3465a4;
|
||||||
|
margin-bottom: .8em;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
color: #204a87;
|
||||||
|
}
|
||||||
|
|
||||||
|
h2 {
|
||||||
|
padding-bottom: .5em;
|
||||||
|
border-bottom: 1px solid #3465a4;
|
||||||
|
}
|
||||||
|
|
||||||
|
a.headerlink {
|
||||||
|
visibility: hidden;
|
||||||
|
color: #dddddd;
|
||||||
|
padding-left: .3em;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1:hover > a.headerlink,
|
||||||
|
h2:hover > a.headerlink,
|
||||||
|
h3:hover > a.headerlink,
|
||||||
|
h4:hover > a.headerlink,
|
||||||
|
h5:hover > a.headerlink,
|
||||||
|
h6:hover > a.headerlink,
|
||||||
|
dt:hover > a.headerlink {
|
||||||
|
visibility: visible;
|
||||||
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.admonition {
|
||||||
|
margin-top: 10px;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
padding: 2px 7px 1px 7px;
|
||||||
|
border-left: 0.2em solid black;
|
||||||
|
}
|
||||||
|
|
||||||
|
p.admonition-title {
|
||||||
|
margin: 0px 10px 5px 0px;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
dt:target, .highlighted {
|
||||||
|
background-color: #fbe54e;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Header */
|
||||||
|
|
||||||
|
div.header {
|
||||||
|
padding-top: 10px;
|
||||||
|
padding-bottom: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.header h1 {
|
||||||
|
font-family: "Georgia", "Times New Roman", serif;
|
||||||
|
font-weight: normal;
|
||||||
|
font-size: 180%;
|
||||||
|
letter-spacing: .08em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.header h1 a {
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.header div.rel {
|
||||||
|
margin-top: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.header div.rel a {
|
||||||
|
color: #fcaf3e;
|
||||||
|
letter-spacing: .1em;
|
||||||
|
text-transform: uppercase;
|
||||||
|
}
|
||||||
|
|
||||||
|
p.logo {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
img.logo {
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Content */
|
||||||
|
div.content-wrapper {
|
||||||
|
background-color: white;
|
||||||
|
padding-top: 20px;
|
||||||
|
padding-bottom: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.document {
|
||||||
|
width: 50em;
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.body {
|
||||||
|
padding-right: 2em;
|
||||||
|
text-align: justify;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.document ul {
|
||||||
|
margin: 1.5em;
|
||||||
|
list-style-type: square;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.document dd {
|
||||||
|
margin-left: 1.2em;
|
||||||
|
margin-top: .4em;
|
||||||
|
margin-bottom: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.document .section {
|
||||||
|
margin-top: 1.7em;
|
||||||
|
}
|
||||||
|
div.document .section:first-child {
|
||||||
|
margin-top: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.document div.highlight {
|
||||||
|
padding: 3px;
|
||||||
|
background-color: #eeeeec;
|
||||||
|
border-top: 2px solid #dddddd;
|
||||||
|
border-bottom: 2px solid #dddddd;
|
||||||
|
margin-top: .8em;
|
||||||
|
margin-bottom: .8em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.document h2 {
|
||||||
|
margin-top: .7em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.document p {
|
||||||
|
margin-bottom: .5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.document li.toctree-l1 {
|
||||||
|
margin-bottom: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.document .descname {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.document .docutils.literal {
|
||||||
|
background-color: #eeeeec;
|
||||||
|
padding: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.document .docutils.xref.literal {
|
||||||
|
background-color: transparent;
|
||||||
|
padding: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.document blockquote {
|
||||||
|
margin: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.document ol {
|
||||||
|
margin: 1.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Sidebar */
|
||||||
|
|
||||||
|
div.sidebar {
|
||||||
|
width: 20em;
|
||||||
|
float: right;
|
||||||
|
font-size: .9em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sidebar a, div.header a {
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sidebar a:hover, div.header a:hover {
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sidebar h3 {
|
||||||
|
color: #2e3436;
|
||||||
|
text-transform: uppercase;
|
||||||
|
font-size: 130%;
|
||||||
|
letter-spacing: .1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sidebar ul {
|
||||||
|
list-style-type: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sidebar li.toctree-l1 a {
|
||||||
|
display: block;
|
||||||
|
padding: 1px;
|
||||||
|
border: 1px solid #dddddd;
|
||||||
|
background-color: #eeeeec;
|
||||||
|
margin-bottom: .4em;
|
||||||
|
padding-left: 3px;
|
||||||
|
color: #2e3436;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sidebar li.toctree-l2 a {
|
||||||
|
background-color: transparent;
|
||||||
|
border: none;
|
||||||
|
margin-left: 1em;
|
||||||
|
border-bottom: 1px solid #dddddd;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sidebar li.toctree-l3 a {
|
||||||
|
background-color: transparent;
|
||||||
|
border: none;
|
||||||
|
margin-left: 2em;
|
||||||
|
border-bottom: 1px solid #dddddd;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sidebar li.toctree-l2:last-child a {
|
||||||
|
border-bottom: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sidebar li.toctree-l1.current a {
|
||||||
|
border-right: 5px solid #fcaf3e;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sidebar li.toctree-l1.current li.toctree-l2 a {
|
||||||
|
border-right: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Footer */
|
||||||
|
|
||||||
|
div.footer-wrapper {
|
||||||
|
background: url(bgfooter.png) top left repeat-x;
|
||||||
|
border-top: 4px solid #babdb6;
|
||||||
|
padding-top: 10px;
|
||||||
|
padding-bottom: 10px;
|
||||||
|
min-height: 80px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.footer, div.footer a {
|
||||||
|
color: #888a85;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.footer .right {
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.footer .left {
|
||||||
|
text-transform: uppercase;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Styles copied from basic theme */
|
||||||
|
|
||||||
|
img.align-left, .figure.align-left, object.align-left {
|
||||||
|
clear: left;
|
||||||
|
float: left;
|
||||||
|
margin-right: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
img.align-right, .figure.align-right, object.align-right {
|
||||||
|
clear: right;
|
||||||
|
float: right;
|
||||||
|
margin-left: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
img.align-center, .figure.align-center, object.align-center {
|
||||||
|
display: block;
|
||||||
|
margin-left: auto;
|
||||||
|
margin-right: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.align-left {
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.align-center {
|
||||||
|
clear: both;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.align-right {
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -- search page ----------------------------------------------------------- */
|
||||||
|
|
||||||
|
ul.search {
|
||||||
|
margin: 10px 0 0 20px;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
ul.search li {
|
||||||
|
padding: 5px 0 5px 20px;
|
||||||
|
background-image: url(file.png);
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-position: 0 7px;
|
||||||
|
}
|
||||||
|
|
||||||
|
ul.search li a {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
ul.search li div.context {
|
||||||
|
color: #888;
|
||||||
|
margin: 2px 0 0 30px;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
ul.keywordmatches li.goodmatch a {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -- index page ------------------------------------------------------------ */
|
||||||
|
|
||||||
|
table.contentstable {
|
||||||
|
width: 90%;
|
||||||
|
}
|
||||||
|
|
||||||
|
table.contentstable p.biglink {
|
||||||
|
line-height: 150%;
|
||||||
|
}
|
||||||
|
|
||||||
|
a.biglink {
|
||||||
|
font-size: 1.3em;
|
||||||
|
}
|
||||||
|
|
||||||
|
span.linkdescr {
|
||||||
|
font-style: italic;
|
||||||
|
padding-top: 5px;
|
||||||
|
font-size: 90%;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -- general index --------------------------------------------------------- */
|
||||||
|
|
||||||
|
table.indextable td {
|
||||||
|
text-align: left;
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
|
||||||
|
table.indextable dl, table.indextable dd {
|
||||||
|
margin-top: 0;
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
table.indextable tr.pcap {
|
||||||
|
height: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
table.indextable tr.cap {
|
||||||
|
margin-top: 10px;
|
||||||
|
background-color: #f2f2f2;
|
||||||
|
}
|
||||||
|
|
||||||
|
img.toggler {
|
||||||
|
margin-right: 3px;
|
||||||
|
margin-top: 3px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -- viewcode extension ---------------------------------------------------- */
|
||||||
|
|
||||||
|
.viewcode-link {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
.viewcode-back {
|
||||||
|
float: right;
|
||||||
|
font-family:: "Verdana", Arial, sans-serif;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.viewcode-block:target {
|
||||||
|
margin: -1px -3px;
|
||||||
|
padding: 0 3px;
|
||||||
|
background-color: #f4debf;
|
||||||
|
border-top: 1px solid #ac9;
|
||||||
|
border-bottom: 1px solid #ac9;
|
||||||
|
}
|
532
docs/_static/basic.css
vendored
Normal file
532
docs/_static/basic.css
vendored
Normal file
@ -0,0 +1,532 @@
|
|||||||
|
/*
|
||||||
|
* basic.css
|
||||||
|
* ~~~~~~~~~
|
||||||
|
*
|
||||||
|
* Sphinx stylesheet -- basic theme.
|
||||||
|
*
|
||||||
|
* :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS.
|
||||||
|
* :license: BSD, see LICENSE for details.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* -- main layout ----------------------------------------------------------- */
|
||||||
|
|
||||||
|
div.clearer {
|
||||||
|
clear: both;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -- relbar ---------------------------------------------------------------- */
|
||||||
|
|
||||||
|
div.related {
|
||||||
|
width: 100%;
|
||||||
|
font-size: 90%;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.related h3 {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.related ul {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0 0 0 10px;
|
||||||
|
list-style: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.related li {
|
||||||
|
display: inline;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.related li.right {
|
||||||
|
float: right;
|
||||||
|
margin-right: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -- sidebar --------------------------------------------------------------- */
|
||||||
|
|
||||||
|
div.sphinxsidebarwrapper {
|
||||||
|
padding: 10px 5px 0 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar {
|
||||||
|
float: left;
|
||||||
|
width: 230px;
|
||||||
|
margin-left: -100%;
|
||||||
|
font-size: 90%;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar ul {
|
||||||
|
list-style: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar ul ul,
|
||||||
|
div.sphinxsidebar ul.want-points {
|
||||||
|
margin-left: 20px;
|
||||||
|
list-style: square;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar ul ul {
|
||||||
|
margin-top: 0;
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar form {
|
||||||
|
margin-top: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar input {
|
||||||
|
border: 1px solid #98dbcc;
|
||||||
|
font-family: sans-serif;
|
||||||
|
font-size: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -- search page ----------------------------------------------------------- */
|
||||||
|
|
||||||
|
ul.search {
|
||||||
|
margin: 10px 0 0 20px;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
ul.search li {
|
||||||
|
padding: 5px 0 5px 20px;
|
||||||
|
background-image: url(file.png);
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-position: 0 7px;
|
||||||
|
}
|
||||||
|
|
||||||
|
ul.search li a {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
ul.search li div.context {
|
||||||
|
color: #888;
|
||||||
|
margin: 2px 0 0 30px;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
ul.keywordmatches li.goodmatch a {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -- index page ------------------------------------------------------------ */
|
||||||
|
|
||||||
|
table.contentstable {
|
||||||
|
width: 90%;
|
||||||
|
}
|
||||||
|
|
||||||
|
table.contentstable p.biglink {
|
||||||
|
line-height: 150%;
|
||||||
|
}
|
||||||
|
|
||||||
|
a.biglink {
|
||||||
|
font-size: 1.3em;
|
||||||
|
}
|
||||||
|
|
||||||
|
span.linkdescr {
|
||||||
|
font-style: italic;
|
||||||
|
padding-top: 5px;
|
||||||
|
font-size: 90%;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -- general index --------------------------------------------------------- */
|
||||||
|
|
||||||
|
table.indextable {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
table.indextable td {
|
||||||
|
text-align: left;
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
|
||||||
|
table.indextable dl, table.indextable dd {
|
||||||
|
margin-top: 0;
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
table.indextable tr.pcap {
|
||||||
|
height: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
table.indextable tr.cap {
|
||||||
|
margin-top: 10px;
|
||||||
|
background-color: #f2f2f2;
|
||||||
|
}
|
||||||
|
|
||||||
|
img.toggler {
|
||||||
|
margin-right: 3px;
|
||||||
|
margin-top: 3px;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.modindex-jumpbox {
|
||||||
|
border-top: 1px solid #ddd;
|
||||||
|
border-bottom: 1px solid #ddd;
|
||||||
|
margin: 1em 0 1em 0;
|
||||||
|
padding: 0.4em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.genindex-jumpbox {
|
||||||
|
border-top: 1px solid #ddd;
|
||||||
|
border-bottom: 1px solid #ddd;
|
||||||
|
margin: 1em 0 1em 0;
|
||||||
|
padding: 0.4em;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -- general body styles --------------------------------------------------- */
|
||||||
|
|
||||||
|
a.headerlink {
|
||||||
|
visibility: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1:hover > a.headerlink,
|
||||||
|
h2:hover > a.headerlink,
|
||||||
|
h3:hover > a.headerlink,
|
||||||
|
h4:hover > a.headerlink,
|
||||||
|
h5:hover > a.headerlink,
|
||||||
|
h6:hover > a.headerlink,
|
||||||
|
dt:hover > a.headerlink {
|
||||||
|
visibility: visible;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.body p.caption {
|
||||||
|
text-align: inherit;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.body td {
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.field-list ul {
|
||||||
|
padding-left: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.first {
|
||||||
|
margin-top: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
p.rubric {
|
||||||
|
margin-top: 30px;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
img.align-left, .figure.align-left, object.align-left {
|
||||||
|
clear: left;
|
||||||
|
float: left;
|
||||||
|
margin-right: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
img.align-right, .figure.align-right, object.align-right {
|
||||||
|
clear: right;
|
||||||
|
float: right;
|
||||||
|
margin-left: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
img.align-center, .figure.align-center, object.align-center {
|
||||||
|
display: block;
|
||||||
|
margin-left: auto;
|
||||||
|
margin-right: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.align-left {
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
.align-center {
|
||||||
|
clear: both;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.align-right {
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -- sidebars -------------------------------------------------------------- */
|
||||||
|
|
||||||
|
div.sidebar {
|
||||||
|
margin: 0 0 0.5em 1em;
|
||||||
|
border: 1px solid #ddb;
|
||||||
|
padding: 7px 7px 0 7px;
|
||||||
|
background-color: #efefef;
|
||||||
|
width: 40%;
|
||||||
|
float: right;
|
||||||
|
-mox-border-radius: 4px;
|
||||||
|
-webkit-border-radius: 4px;
|
||||||
|
border-radius: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
p.sidebar-title {
|
||||||
|
font-weight: bold;
|
||||||
|
text-transform: uppercase;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -- topics ---------------------------------------------------------------- */
|
||||||
|
|
||||||
|
div.topic {
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
padding: 7px 7px 0 7px;
|
||||||
|
margin: 10px 0 10px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
p.topic-title {
|
||||||
|
font-size: 1.1em;
|
||||||
|
font-weight: bold;
|
||||||
|
margin-top: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -- admonitions ----------------------------------------------------------- */
|
||||||
|
|
||||||
|
div.admonition {
|
||||||
|
margin-top: 10px;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
padding: 7px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.admonition dt {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.admonition dl {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
p.admonition-title {
|
||||||
|
margin: 0px 10px 5px 0px;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.body p.centered {
|
||||||
|
text-align: center;
|
||||||
|
margin-top: 25px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -- tables ---------------------------------------------------------------- */
|
||||||
|
|
||||||
|
table.docutils {
|
||||||
|
border: 0;
|
||||||
|
border-collapse: collapse;
|
||||||
|
}
|
||||||
|
|
||||||
|
table.docutils td, table.docutils th {
|
||||||
|
padding: 1px 8px 1px 5px;
|
||||||
|
border-top: 0;
|
||||||
|
border-left: 0;
|
||||||
|
border-right: 0;
|
||||||
|
border-bottom: 1px solid #aaa;
|
||||||
|
}
|
||||||
|
|
||||||
|
table.field-list td, table.field-list th {
|
||||||
|
border: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
table.footnote td, table.footnote th {
|
||||||
|
border: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
th {
|
||||||
|
text-align: left;
|
||||||
|
padding-right: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
table.citation {
|
||||||
|
border-left: solid 1px gray;
|
||||||
|
margin-left: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
table.citation td {
|
||||||
|
border-bottom: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -- other body styles ----------------------------------------------------- */
|
||||||
|
|
||||||
|
ol.arabic {
|
||||||
|
list-style: decimal;
|
||||||
|
}
|
||||||
|
|
||||||
|
ol.loweralpha {
|
||||||
|
list-style: lower-alpha;
|
||||||
|
}
|
||||||
|
|
||||||
|
ol.upperalpha {
|
||||||
|
list-style: upper-alpha;
|
||||||
|
}
|
||||||
|
|
||||||
|
ol.lowerroman {
|
||||||
|
list-style: lower-roman;
|
||||||
|
}
|
||||||
|
|
||||||
|
ol.upperroman {
|
||||||
|
list-style: upper-roman;
|
||||||
|
}
|
||||||
|
|
||||||
|
dl {
|
||||||
|
margin-bottom: 15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
dd p {
|
||||||
|
margin-top: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
dd ul, dd table {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
dd {
|
||||||
|
margin-top: 3px;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
margin-left: 30px;
|
||||||
|
}
|
||||||
|
|
||||||
|
dt:target, .highlighted {
|
||||||
|
}
|
||||||
|
|
||||||
|
dl.glossary dt {
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 1.1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.field-list ul {
|
||||||
|
margin: 0;
|
||||||
|
padding-left: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.field-list p {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.refcount {
|
||||||
|
color: #060;
|
||||||
|
}
|
||||||
|
|
||||||
|
.optional {
|
||||||
|
font-size: 1.3em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.versionmodified {
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
|
||||||
|
.system-message {
|
||||||
|
background-color: #fda;
|
||||||
|
padding: 5px;
|
||||||
|
border: 3px solid red;
|
||||||
|
}
|
||||||
|
|
||||||
|
.footnote:target {
|
||||||
|
background-color: #ffa;
|
||||||
|
}
|
||||||
|
|
||||||
|
.line-block {
|
||||||
|
display: block;
|
||||||
|
margin-top: 1em;
|
||||||
|
margin-bottom: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.line-block .line-block {
|
||||||
|
margin-top: 0;
|
||||||
|
margin-bottom: 0;
|
||||||
|
margin-left: 1.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.guilabel, .menuselection {
|
||||||
|
font-family: sans-serif;
|
||||||
|
}
|
||||||
|
|
||||||
|
.accelerator {
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
|
.classifier {
|
||||||
|
font-style: oblique;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -- code displays --------------------------------------------------------- */
|
||||||
|
|
||||||
|
pre {
|
||||||
|
overflow: auto;
|
||||||
|
overflow-y: hidden; /* fixes display issues on Chrome browsers */
|
||||||
|
}
|
||||||
|
|
||||||
|
td.linenos pre {
|
||||||
|
padding: 5px 0px;
|
||||||
|
border: 0;
|
||||||
|
background-color: transparent;
|
||||||
|
color: #aaa;
|
||||||
|
}
|
||||||
|
|
||||||
|
table.highlighttable {
|
||||||
|
margin-left: 0.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
table.highlighttable td {
|
||||||
|
padding: 0 0.5em 0 0.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
tt.descname {
|
||||||
|
background-color: transparent;
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 1.2em;
|
||||||
|
}
|
||||||
|
|
||||||
|
tt.descclassname {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
tt.xref, a tt {
|
||||||
|
background-color: transparent;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1 tt, h2 tt, h3 tt, h4 tt, h5 tt, h6 tt {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
.viewcode-link {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
.viewcode-back {
|
||||||
|
float: right;
|
||||||
|
font-family: sans-serif;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.viewcode-block:target {
|
||||||
|
margin: -1px -10px;
|
||||||
|
padding: 0 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -- math display ---------------------------------------------------------- */
|
||||||
|
|
||||||
|
img.math {
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.body div.math p {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
span.eqno {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -- printout stylesheet --------------------------------------------------- */
|
||||||
|
|
||||||
|
@media print {
|
||||||
|
div.document,
|
||||||
|
div.documentwrapper,
|
||||||
|
div.bodywrapper {
|
||||||
|
margin: 0 !important;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar,
|
||||||
|
div.related,
|
||||||
|
div.footer,
|
||||||
|
#top-link {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
256
docs/_static/default.css
vendored
Normal file
256
docs/_static/default.css
vendored
Normal file
@ -0,0 +1,256 @@
|
|||||||
|
/*
|
||||||
|
* default.css_t
|
||||||
|
* ~~~~~~~~~~~~~
|
||||||
|
*
|
||||||
|
* Sphinx stylesheet -- default theme.
|
||||||
|
*
|
||||||
|
* :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS.
|
||||||
|
* :license: BSD, see LICENSE for details.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
@import url("basic.css");
|
||||||
|
|
||||||
|
/* -- page layout ----------------------------------------------------------- */
|
||||||
|
|
||||||
|
body {
|
||||||
|
font-family: sans-serif;
|
||||||
|
font-size: 100%;
|
||||||
|
background-color: #11303d;
|
||||||
|
color: #000;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.document {
|
||||||
|
background-color: #1c4e63;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.documentwrapper {
|
||||||
|
float: left;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.bodywrapper {
|
||||||
|
margin: 0 0 0 230px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.body {
|
||||||
|
background-color: #ffffff;
|
||||||
|
color: #000000;
|
||||||
|
padding: 0 20px 30px 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.footer {
|
||||||
|
color: #ffffff;
|
||||||
|
width: 100%;
|
||||||
|
padding: 9px 0 9px 0;
|
||||||
|
text-align: center;
|
||||||
|
font-size: 75%;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.footer a {
|
||||||
|
color: #ffffff;
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.related {
|
||||||
|
background-color: #133f52;
|
||||||
|
line-height: 30px;
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.related a {
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar {
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar h3 {
|
||||||
|
font-family: 'Trebuchet MS', sans-serif;
|
||||||
|
color: #ffffff;
|
||||||
|
font-size: 1.4em;
|
||||||
|
font-weight: normal;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar h3 a {
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar h4 {
|
||||||
|
font-family: 'Trebuchet MS', sans-serif;
|
||||||
|
color: #ffffff;
|
||||||
|
font-size: 1.3em;
|
||||||
|
font-weight: normal;
|
||||||
|
margin: 5px 0 0 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar p {
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar p.topless {
|
||||||
|
margin: 5px 10px 10px 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar ul {
|
||||||
|
margin: 10px;
|
||||||
|
padding: 0;
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar a {
|
||||||
|
color: #98dbcc;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar input {
|
||||||
|
border: 1px solid #98dbcc;
|
||||||
|
font-family: sans-serif;
|
||||||
|
font-size: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* -- hyperlink styles ------------------------------------------------------ */
|
||||||
|
|
||||||
|
a {
|
||||||
|
color: #355f7c;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
a:visited {
|
||||||
|
color: #355f7c;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
a:hover {
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/* -- body styles ----------------------------------------------------------- */
|
||||||
|
|
||||||
|
div.body h1,
|
||||||
|
div.body h2,
|
||||||
|
div.body h3,
|
||||||
|
div.body h4,
|
||||||
|
div.body h5,
|
||||||
|
div.body h6 {
|
||||||
|
font-family: 'Trebuchet MS', sans-serif;
|
||||||
|
background-color: #f2f2f2;
|
||||||
|
font-weight: normal;
|
||||||
|
color: #20435c;
|
||||||
|
border-bottom: 1px solid #ccc;
|
||||||
|
margin: 20px -20px 10px -20px;
|
||||||
|
padding: 3px 0 3px 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.body h1 { margin-top: 0; font-size: 200%; }
|
||||||
|
div.body h2 { font-size: 160%; }
|
||||||
|
div.body h3 { font-size: 140%; }
|
||||||
|
div.body h4 { font-size: 120%; }
|
||||||
|
div.body h5 { font-size: 110%; }
|
||||||
|
div.body h6 { font-size: 100%; }
|
||||||
|
|
||||||
|
a.headerlink {
|
||||||
|
color: #c60f0f;
|
||||||
|
font-size: 0.8em;
|
||||||
|
padding: 0 4px 0 4px;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
a.headerlink:hover {
|
||||||
|
background-color: #c60f0f;
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.body p, div.body dd, div.body li {
|
||||||
|
text-align: justify;
|
||||||
|
line-height: 130%;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.admonition p.admonition-title + p {
|
||||||
|
display: inline;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.admonition p {
|
||||||
|
margin-bottom: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.admonition pre {
|
||||||
|
margin-bottom: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.admonition ul, div.admonition ol {
|
||||||
|
margin-bottom: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.note {
|
||||||
|
background-color: #eee;
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.seealso {
|
||||||
|
background-color: #ffc;
|
||||||
|
border: 1px solid #ff6;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.topic {
|
||||||
|
background-color: #eee;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.warning {
|
||||||
|
background-color: #ffe4e4;
|
||||||
|
border: 1px solid #f66;
|
||||||
|
}
|
||||||
|
|
||||||
|
p.admonition-title {
|
||||||
|
display: inline;
|
||||||
|
}
|
||||||
|
|
||||||
|
p.admonition-title:after {
|
||||||
|
content: ":";
|
||||||
|
}
|
||||||
|
|
||||||
|
pre {
|
||||||
|
padding: 5px;
|
||||||
|
background-color: #eeffcc;
|
||||||
|
color: #333333;
|
||||||
|
line-height: 120%;
|
||||||
|
border: 1px solid #ac9;
|
||||||
|
border-left: none;
|
||||||
|
border-right: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
tt {
|
||||||
|
background-color: #ecf0f3;
|
||||||
|
padding: 0 1px 0 1px;
|
||||||
|
font-size: 0.95em;
|
||||||
|
}
|
||||||
|
|
||||||
|
th {
|
||||||
|
background-color: #ede;
|
||||||
|
}
|
||||||
|
|
||||||
|
.warning tt {
|
||||||
|
background: #efc2c2;
|
||||||
|
}
|
||||||
|
|
||||||
|
.note tt {
|
||||||
|
background: #d6d6d6;
|
||||||
|
}
|
||||||
|
|
||||||
|
.viewcode-back {
|
||||||
|
font-family: sans-serif;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.viewcode-block:target {
|
||||||
|
background-color: #f4debf;
|
||||||
|
border-top: 1px solid #ac9;
|
||||||
|
border-bottom: 1px solid #ac9;
|
||||||
|
}
|
BIN
docs/_static/fonts/Museo_Slab_500.otf
vendored
Normal file
BIN
docs/_static/fonts/Museo_Slab_500.otf
vendored
Normal file
Binary file not shown.
BIN
docs/_static/fonts/Museo_Slab_500italic.otf
vendored
Normal file
BIN
docs/_static/fonts/Museo_Slab_500italic.otf
vendored
Normal file
Binary file not shown.
BIN
docs/_static/fonts/OFLGoudyStMTT-Italic.ttf
vendored
Normal file
BIN
docs/_static/fonts/OFLGoudyStMTT-Italic.ttf
vendored
Normal file
Binary file not shown.
BIN
docs/_static/fonts/OFLGoudyStMTT.ttf
vendored
Normal file
BIN
docs/_static/fonts/OFLGoudyStMTT.ttf
vendored
Normal file
Binary file not shown.
BIN
docs/_static/fonts/YanoneKaffeesatz-Bold.ttf
vendored
Normal file
BIN
docs/_static/fonts/YanoneKaffeesatz-Bold.ttf
vendored
Normal file
Binary file not shown.
BIN
docs/_static/fonts/YanoneKaffeesatz-Light.ttf
vendored
Normal file
BIN
docs/_static/fonts/YanoneKaffeesatz-Light.ttf
vendored
Normal file
Binary file not shown.
BIN
docs/_static/fonts/YanoneKaffeesatz-Regular.ttf
vendored
Normal file
BIN
docs/_static/fonts/YanoneKaffeesatz-Regular.ttf
vendored
Normal file
Binary file not shown.
BIN
docs/_static/fonts/YanoneKaffeesatz-Thin.ttf
vendored
Normal file
BIN
docs/_static/fonts/YanoneKaffeesatz-Thin.ttf
vendored
Normal file
Binary file not shown.
431
docs/_static/haiku.css
vendored
Normal file
431
docs/_static/haiku.css
vendored
Normal file
@ -0,0 +1,431 @@
|
|||||||
|
/*
|
||||||
|
* haiku.css_t
|
||||||
|
* ~~~~~~~~~~~
|
||||||
|
*
|
||||||
|
* Sphinx stylesheet -- haiku theme.
|
||||||
|
*
|
||||||
|
* Adapted from http://haiku-os.org/docs/Haiku-doc.css.
|
||||||
|
* Original copyright message:
|
||||||
|
*
|
||||||
|
* Copyright 2008-2009, Haiku. All rights reserved.
|
||||||
|
* Distributed under the terms of the MIT License.
|
||||||
|
*
|
||||||
|
* Authors:
|
||||||
|
* Francois Revol <revol@free.fr>
|
||||||
|
* Stephan Assmus <superstippi@gmx.de>
|
||||||
|
* Braden Ewing <brewin@gmail.com>
|
||||||
|
* Humdinger <humdingerb@gmail.com>
|
||||||
|
*
|
||||||
|
* :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS.
|
||||||
|
* :license: BSD, see LICENSE for details.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
@import url("basic.css");
|
||||||
|
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: "Museo Slab";
|
||||||
|
font-weight: normal;
|
||||||
|
font-style: normal;
|
||||||
|
src: local("Museo Slab"),
|
||||||
|
url("fonts/Museo_Slab_500.otf") format("opentype");
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: "Yanone Kaffeesatz";
|
||||||
|
font-weight: bold;
|
||||||
|
font-style: normal;
|
||||||
|
src: local("Yanone Kaffeesatz"),
|
||||||
|
url("fonts/YanoneKaffeesatz-Bold.ttf") format("truetype");
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: "Yanone Kaffeesatz";
|
||||||
|
font-weight: lighter;
|
||||||
|
font-style: normal;
|
||||||
|
src: local("Yanone Kaffeesatz"),
|
||||||
|
url("fonts/YanoneKaffeesatz-Regular.ttf") format("truetype");
|
||||||
|
}
|
||||||
|
|
||||||
|
html {
|
||||||
|
margin: 0px;
|
||||||
|
padding: 0px;
|
||||||
|
background: #FFF url(header.png) top left repeat-x;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
line-height: 1.5;
|
||||||
|
margin: auto;
|
||||||
|
padding: 0px;
|
||||||
|
font-family: "Helvetica Neueu", Helvetica, sans-serif;
|
||||||
|
min-width: 30em;
|
||||||
|
max-width: 70em;
|
||||||
|
color: #444;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.footer {
|
||||||
|
padding: 8px;
|
||||||
|
font-size: 11px;
|
||||||
|
text-align: center;
|
||||||
|
letter-spacing: 0.5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* link colors and text decoration */
|
||||||
|
|
||||||
|
a:link {
|
||||||
|
font-weight: bold;
|
||||||
|
text-decoration: none;
|
||||||
|
color: #00ADEE;
|
||||||
|
}
|
||||||
|
|
||||||
|
a:visited {
|
||||||
|
font-weight: bold;
|
||||||
|
text-decoration: none;
|
||||||
|
color: #00ADEE;
|
||||||
|
}
|
||||||
|
|
||||||
|
a:hover, a:active {
|
||||||
|
text-decoration: underline;
|
||||||
|
color: #F46DBA;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Some headers act as anchors, don't give them a hover effect */
|
||||||
|
|
||||||
|
h1 a:hover, a:active {
|
||||||
|
text-decoration: none;
|
||||||
|
color: #CFCFCF;
|
||||||
|
}
|
||||||
|
|
||||||
|
h2 a:hover, a:active {
|
||||||
|
text-decoration: none;
|
||||||
|
color: #CFCFCF;
|
||||||
|
}
|
||||||
|
|
||||||
|
h3 a:hover, a:active {
|
||||||
|
text-decoration: none;
|
||||||
|
color: #CFCFCF;
|
||||||
|
}
|
||||||
|
|
||||||
|
h4 a:hover, a:active {
|
||||||
|
text-decoration: none;
|
||||||
|
color: #CFCFCF;
|
||||||
|
}
|
||||||
|
|
||||||
|
a.headerlink {
|
||||||
|
color: #a7ce38;
|
||||||
|
padding-left: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
a.headerlink:hover {
|
||||||
|
color: #a7ce38;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* basic text elements */
|
||||||
|
|
||||||
|
div.content {
|
||||||
|
margin: auto;
|
||||||
|
margin-top: 20px;
|
||||||
|
margin-bottom: 50px;
|
||||||
|
font-size: 0.9em;
|
||||||
|
width: 700px;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* heading and navigation */
|
||||||
|
|
||||||
|
div.header {
|
||||||
|
position: relative;
|
||||||
|
margin: auto;
|
||||||
|
margin-top: 125px;
|
||||||
|
height: 85px;
|
||||||
|
padding: 0 40px;
|
||||||
|
font-family: "Yanone Kaffeesatz";
|
||||||
|
text-align: left;
|
||||||
|
width: 750px;
|
||||||
|
}
|
||||||
|
div.header h1 {
|
||||||
|
font-size: 2.6em;
|
||||||
|
font-weight: normal;
|
||||||
|
letter-spacing: 1px;
|
||||||
|
color: #CFCFCF;
|
||||||
|
border: 0;
|
||||||
|
margin: 0;
|
||||||
|
padding-top: 15px;
|
||||||
|
font-family: "Yanone Kaffeesatz";
|
||||||
|
text-shadow: 1px 1px 1px rgba(175, 175, 175, .8);
|
||||||
|
font-variant: small-caps;
|
||||||
|
}
|
||||||
|
div.header h1 a {
|
||||||
|
font-weight: normal;
|
||||||
|
color: #00ADEE;
|
||||||
|
}
|
||||||
|
div.header h2 {
|
||||||
|
font-size: 1.3em;
|
||||||
|
font-weight: normal;
|
||||||
|
letter-spacing: 1px;
|
||||||
|
text-transform: uppercase;
|
||||||
|
color: #aaa;
|
||||||
|
border: 0;
|
||||||
|
margin-top: -3px;
|
||||||
|
padding: 0;
|
||||||
|
font-family: "Yanone Kaffeesatz";
|
||||||
|
}
|
||||||
|
|
||||||
|
div.header img.rightlogo {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
div.title {
|
||||||
|
font-size: 1.3em;
|
||||||
|
font-weight: bold;
|
||||||
|
color: #CFCFCF;
|
||||||
|
border-bottom: dotted thin #e0e0e0;
|
||||||
|
margin-bottom: 25px;
|
||||||
|
}
|
||||||
|
div.topnav {
|
||||||
|
position: relative;
|
||||||
|
z-index: 0;
|
||||||
|
}
|
||||||
|
div.topnav p {
|
||||||
|
margin: auto;
|
||||||
|
margin-top: 0;
|
||||||
|
margin-bottom: 0px;
|
||||||
|
text-align: right;
|
||||||
|
font-size: 0.8em;
|
||||||
|
width: 750px;
|
||||||
|
}
|
||||||
|
div.bottomnav {
|
||||||
|
background: #eeeeee;
|
||||||
|
}
|
||||||
|
div.bottomnav p {
|
||||||
|
margin-right: 40px;
|
||||||
|
text-align: right;
|
||||||
|
font-size: 0.8em;
|
||||||
|
}
|
||||||
|
|
||||||
|
a.uplink {
|
||||||
|
font-weight: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* contents box */
|
||||||
|
|
||||||
|
table.index {
|
||||||
|
margin: 0px 0px 30px 30px;
|
||||||
|
padding: 1px;
|
||||||
|
border-width: 1px;
|
||||||
|
border-style: dotted;
|
||||||
|
border-color: #e0e0e0;
|
||||||
|
}
|
||||||
|
table.index tr.heading {
|
||||||
|
background-color: #e0e0e0;
|
||||||
|
text-align: center;
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 1.1em;
|
||||||
|
}
|
||||||
|
table.index tr.index {
|
||||||
|
background-color: #eeeeee;
|
||||||
|
}
|
||||||
|
table.index td {
|
||||||
|
padding: 5px 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
table.index a:link, table.index a:visited {
|
||||||
|
font-weight: normal;
|
||||||
|
text-decoration: none;
|
||||||
|
color: #4A7389;
|
||||||
|
}
|
||||||
|
table.index a:hover, table.index a:active {
|
||||||
|
text-decoration: underline;
|
||||||
|
color: #ff4500;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* Haiku User Guide styles and layout */
|
||||||
|
|
||||||
|
/* Rounded corner boxes */
|
||||||
|
/* Common declarations */
|
||||||
|
div.admonition {
|
||||||
|
-webkit-border-radius: 10px;
|
||||||
|
-khtml-border-radius: 10px;
|
||||||
|
-moz-border-radius: 10px;
|
||||||
|
border-radius: 10px;
|
||||||
|
border-style: dotted;
|
||||||
|
border-width: thin;
|
||||||
|
border-color: #dcdcdc;
|
||||||
|
padding: 10px 15px 10px 15px;
|
||||||
|
margin-bottom: 15px;
|
||||||
|
margin-top: 15px;
|
||||||
|
}
|
||||||
|
div.note {
|
||||||
|
padding: 10px 15px 10px 15px;
|
||||||
|
background-color: #e4ffde;
|
||||||
|
/*background: #e4ffde url(alert_info_32.png) 15px 15px no-repeat;*/
|
||||||
|
min-height: 42px;
|
||||||
|
}
|
||||||
|
div.warning {
|
||||||
|
padding: 10px 15px 10px 15px;
|
||||||
|
background-color: #fffbc6;
|
||||||
|
/*background: #fffbc6 url(alert_warning_32.png) 15px 15px no-repeat;*/
|
||||||
|
min-height: 42px;
|
||||||
|
}
|
||||||
|
div.seealso {
|
||||||
|
background: #e4ffde;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* More layout and styles */
|
||||||
|
h1 {
|
||||||
|
font-size: 1.6em;
|
||||||
|
color: #aaa;
|
||||||
|
border-bottom: dotted thin #e0e0e0;
|
||||||
|
margin-top: 30px;
|
||||||
|
font-family: "Museo Slab";
|
||||||
|
text-shadow: 1px 1px 1px rgba(175, 175, 175, .25);
|
||||||
|
}
|
||||||
|
|
||||||
|
h2 {
|
||||||
|
font-size: 1.5em;
|
||||||
|
font-weight: normal;
|
||||||
|
color: #aaa;
|
||||||
|
border-bottom: dotted thin #e0e0e0;
|
||||||
|
margin-top: 30px;
|
||||||
|
font-family: "Museo Slab";
|
||||||
|
text-shadow: 1px 1px 1px rgba(175, 175, 175, .25);
|
||||||
|
}
|
||||||
|
|
||||||
|
h3 {
|
||||||
|
font-size: 1.4em;
|
||||||
|
font-weight: normal;
|
||||||
|
color: #aaa;
|
||||||
|
margin-top: 30px;
|
||||||
|
font-family: "Museo Slab";
|
||||||
|
text-shadow: 1px 1px 1px rgba(175, 175, 175, .25);
|
||||||
|
}
|
||||||
|
|
||||||
|
h4 {
|
||||||
|
font-size: 1.3em;
|
||||||
|
font-weight: normal;
|
||||||
|
color: #CFCFCF;
|
||||||
|
margin-top: 30px;
|
||||||
|
}
|
||||||
|
|
||||||
|
p {
|
||||||
|
text-align: justify;
|
||||||
|
}
|
||||||
|
|
||||||
|
p.last {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
ol {
|
||||||
|
padding-left: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
ul {
|
||||||
|
padding-left: 5px;
|
||||||
|
margin-top: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
li {
|
||||||
|
line-height: 1.3;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.content ul > li {
|
||||||
|
-moz-background-clip:border;
|
||||||
|
-moz-background-inline-policy:continuous;
|
||||||
|
-moz-background-origin:padding;
|
||||||
|
background: transparent url(bullet_orange.png) no-repeat scroll left 0.45em;
|
||||||
|
list-style-image: none;
|
||||||
|
list-style-type: none;
|
||||||
|
padding: 0 0 0 1.666em;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
td {
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
|
||||||
|
tt {
|
||||||
|
background-color: #e2e2e2;
|
||||||
|
font-size: 1.0em;
|
||||||
|
font-family: monospace;
|
||||||
|
}
|
||||||
|
|
||||||
|
pre {
|
||||||
|
font-size: 1.1em;
|
||||||
|
margin: 0 0 12px 0;
|
||||||
|
padding: 0.8em;
|
||||||
|
background-image: url(noise_dk.png);
|
||||||
|
background-color: #222;
|
||||||
|
}
|
||||||
|
|
||||||
|
hr {
|
||||||
|
border-top: 1px solid #ccc;
|
||||||
|
border-bottom: 0;
|
||||||
|
border-right: 0;
|
||||||
|
border-left: 0;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
margin-top: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* printer only pretty stuff */
|
||||||
|
@media print {
|
||||||
|
.noprint {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
/* for acronyms we want their definitions inlined at print time */
|
||||||
|
acronym[title]:after {
|
||||||
|
font-size: small;
|
||||||
|
content: " (" attr(title) ")";
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
/* and not have mozilla dotted underline */
|
||||||
|
acronym {
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
div.topnav, div.bottomnav, div.header, table.index {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
div.content {
|
||||||
|
margin: 0px;
|
||||||
|
padding: 0px;
|
||||||
|
}
|
||||||
|
html {
|
||||||
|
background: #FFF;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.viewcode-back {
|
||||||
|
font-family: "DejaVu Sans", Arial, Helvetica, sans-serif;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.viewcode-block:target {
|
||||||
|
border-top: 1px solid #ac9;
|
||||||
|
border-bottom: 1px solid #ac9;
|
||||||
|
margin: -1px -12px;
|
||||||
|
padding: 0 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#from_andyet {
|
||||||
|
-webkit-box-shadow: #CCC 0px 0px 3px;
|
||||||
|
background: rgba(255, 255, 255, 1);
|
||||||
|
bottom: 0px;
|
||||||
|
right: 17px;
|
||||||
|
padding: 3px 10px;
|
||||||
|
position: fixed;
|
||||||
|
}
|
||||||
|
|
||||||
|
#from_andyet h2 {
|
||||||
|
background-image: url("images/from_&yet.png");
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
height: 29px;
|
||||||
|
line-height: 0;
|
||||||
|
text-indent: -9999em;
|
||||||
|
width: 79px;
|
||||||
|
margin-top: 0;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 0px;
|
||||||
|
}
|
BIN
docs/_static/header.png
vendored
Normal file
BIN
docs/_static/header.png
vendored
Normal file
Binary file not shown.
After Width: | Height: | Size: 16 KiB |
70
docs/_static/ir_black.css
vendored
Normal file
70
docs/_static/ir_black.css
vendored
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #000000; color: #f6f3e8; }
|
||||||
|
.highlight .c { color: #7C7C7C; } /* Comment */
|
||||||
|
.highlight .err { color: #f6f3e8; } /* Error */
|
||||||
|
.highlight .g { color: #f6f3e8; } /* Generic */
|
||||||
|
.highlight .k { color: #00ADEE; } /* Keyword */
|
||||||
|
.highlight .l { color: #f6f3e8; } /* Literal */
|
||||||
|
.highlight .n { color: #f6f3e8; } /* Name */
|
||||||
|
.highlight .o { color: #f6f3e8; } /* Operator */
|
||||||
|
.highlight .x { color: #f6f3e8; } /* Other */
|
||||||
|
.highlight .p { color: #f6f3e8; } /* Punctuation */
|
||||||
|
.highlight .cm { color: #7C7C7C; } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #96CBFE; } /* Comment.Preproc */
|
||||||
|
.highlight .c1 { color: #7C7C7C; } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #7C7C7C; } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #f6f3e8; } /* Generic.Deleted */
|
||||||
|
.highlight .ge { color: #f6f3e8; } /* Generic.Emph */
|
||||||
|
.highlight .gr { color: #ffffff; background-color: #ff0000 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #f6f3e8; font-weight: bold; } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #f6f3e8; } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #070707; } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #f6f3e8; } /* Generic.Prompt */
|
||||||
|
.highlight .gs { color: #f6f3e8; } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #f6f3e8; font-weight: bold; } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #ffffff; font-weight: bold; background-color: #FF6C60 } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #6699CC; } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #6699CC; } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #6699CC; } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #6699CC; } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #6699CC; } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #FFFFB6; } /* Keyword.Type */
|
||||||
|
.highlight .ld { color: #f6f3e8; } /* Literal.Date */
|
||||||
|
.highlight .m { color: #FF73FD; } /* Literal.Number */
|
||||||
|
.highlight .s { color: #F46DBA;/*#A8FF60;*/ } /* Literal.String */
|
||||||
|
.highlight .na { color: #f6f3e8; } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #f6f3e8; } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #f6f3e8; } /* Name.Class */
|
||||||
|
.highlight .no { color: #99CC99; } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #f6f3e8; } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #E18964; } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #f6f3e8; } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #F64DBA; } /* Name.Function */
|
||||||
|
.highlight .nl { color: #f6f3e8; } /* Name.Label */
|
||||||
|
.highlight .nn { color: #f6f3e8; } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #f6f3e8; } /* Name.Other */
|
||||||
|
.highlight .py { color: #f6f3e8; } /* Name.Property */
|
||||||
|
.highlight .nt { color: #00ADEE; } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #C6C5FE; } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #ffffff; } /* Operator.Word */
|
||||||
|
.highlight .w { color: #f6f3e8; } /* Text.Whitespace */
|
||||||
|
.highlight .mf { color: #FF73FD; } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #FF73FD; } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #FF73FD; } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #FF73FD; } /* Literal.Number.Oct */
|
||||||
|
.highlight .sb { color: #A8FF60; } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #A8FF60; } /* Literal.String.Char */
|
||||||
|
.highlight .sd { color: #A8FF60; } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #A8FF60; } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #A8FF60; } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #A8FF60; } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #A8FF60; } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #A8FF60; } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #A8FF60; } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #A8FF60; } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #A8FF60; } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #f6f3e8; } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .vc { color: #C6C5FE; } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #C6C5FE; } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #C6C5FE; } /* Name.Variable.Instance */
|
||||||
|
.highlight .il { color: #FF73FD; } /* Literal.Number.Integer.Long */
|
245
docs/_static/nature.css
vendored
Normal file
245
docs/_static/nature.css
vendored
Normal file
@ -0,0 +1,245 @@
|
|||||||
|
/*
|
||||||
|
* nature.css_t
|
||||||
|
* ~~~~~~~~~~~~
|
||||||
|
*
|
||||||
|
* Sphinx stylesheet -- nature theme.
|
||||||
|
*
|
||||||
|
* :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS.
|
||||||
|
* :license: BSD, see LICENSE for details.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
@import url("basic.css");
|
||||||
|
|
||||||
|
/* -- page layout ----------------------------------------------------------- */
|
||||||
|
|
||||||
|
body {
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
font-size: 100%;
|
||||||
|
background-color: #111;
|
||||||
|
color: #555;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.documentwrapper {
|
||||||
|
float: left;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.bodywrapper {
|
||||||
|
margin: 0 0 0 230px;
|
||||||
|
}
|
||||||
|
|
||||||
|
hr {
|
||||||
|
border: 1px solid #B1B4B6;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.document {
|
||||||
|
background-color: #eee;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.body {
|
||||||
|
background-color: #ffffff;
|
||||||
|
color: #3E4349;
|
||||||
|
padding: 0 30px 30px 30px;
|
||||||
|
font-size: 0.9em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.footer {
|
||||||
|
color: #555;
|
||||||
|
width: 100%;
|
||||||
|
padding: 13px 0;
|
||||||
|
text-align: center;
|
||||||
|
font-size: 75%;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.footer a {
|
||||||
|
color: #444;
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.related {
|
||||||
|
background-color: #6BA81E;
|
||||||
|
line-height: 32px;
|
||||||
|
color: #fff;
|
||||||
|
text-shadow: 0px 1px 0 #444;
|
||||||
|
font-size: 0.9em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.related a {
|
||||||
|
color: #E2F3CC;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar {
|
||||||
|
font-size: 0.75em;
|
||||||
|
line-height: 1.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebarwrapper{
|
||||||
|
padding: 20px 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar h3,
|
||||||
|
div.sphinxsidebar h4 {
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
color: #222;
|
||||||
|
font-size: 1.2em;
|
||||||
|
font-weight: normal;
|
||||||
|
margin: 0;
|
||||||
|
padding: 5px 10px;
|
||||||
|
background-color: #ddd;
|
||||||
|
text-shadow: 1px 1px 0 white
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar h4{
|
||||||
|
font-size: 1.1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar h3 a {
|
||||||
|
color: #444;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
div.sphinxsidebar p {
|
||||||
|
color: #888;
|
||||||
|
padding: 5px 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar p.topless {
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar ul {
|
||||||
|
margin: 10px 20px;
|
||||||
|
padding: 0;
|
||||||
|
color: #000;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar a {
|
||||||
|
color: #444;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar input {
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
font-family: sans-serif;
|
||||||
|
font-size: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar input[type=text]{
|
||||||
|
margin-left: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -- body styles ----------------------------------------------------------- */
|
||||||
|
|
||||||
|
a {
|
||||||
|
color: #005B81;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
a:hover {
|
||||||
|
color: #E32E00;
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.body h1,
|
||||||
|
div.body h2,
|
||||||
|
div.body h3,
|
||||||
|
div.body h4,
|
||||||
|
div.body h5,
|
||||||
|
div.body h6 {
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
background-color: #BED4EB;
|
||||||
|
font-weight: normal;
|
||||||
|
color: #212224;
|
||||||
|
margin: 30px 0px 10px 0px;
|
||||||
|
padding: 5px 0 5px 10px;
|
||||||
|
text-shadow: 0px 1px 0 white
|
||||||
|
}
|
||||||
|
|
||||||
|
div.body h1 { border-top: 20px solid white; margin-top: 0; font-size: 200%; }
|
||||||
|
div.body h2 { font-size: 150%; background-color: #C8D5E3; }
|
||||||
|
div.body h3 { font-size: 120%; background-color: #D8DEE3; }
|
||||||
|
div.body h4 { font-size: 110%; background-color: #D8DEE3; }
|
||||||
|
div.body h5 { font-size: 100%; background-color: #D8DEE3; }
|
||||||
|
div.body h6 { font-size: 100%; background-color: #D8DEE3; }
|
||||||
|
|
||||||
|
a.headerlink {
|
||||||
|
color: #c60f0f;
|
||||||
|
font-size: 0.8em;
|
||||||
|
padding: 0 4px 0 4px;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
a.headerlink:hover {
|
||||||
|
background-color: #c60f0f;
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.body p, div.body dd, div.body li {
|
||||||
|
line-height: 1.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.admonition p.admonition-title + p {
|
||||||
|
display: inline;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.highlight{
|
||||||
|
background-color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.note {
|
||||||
|
background-color: #eee;
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.seealso {
|
||||||
|
background-color: #ffc;
|
||||||
|
border: 1px solid #ff6;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.topic {
|
||||||
|
background-color: #eee;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.warning {
|
||||||
|
background-color: #ffe4e4;
|
||||||
|
border: 1px solid #f66;
|
||||||
|
}
|
||||||
|
|
||||||
|
p.admonition-title {
|
||||||
|
display: inline;
|
||||||
|
}
|
||||||
|
|
||||||
|
p.admonition-title:after {
|
||||||
|
content: ":";
|
||||||
|
}
|
||||||
|
|
||||||
|
pre {
|
||||||
|
padding: 10px;
|
||||||
|
background-color: White;
|
||||||
|
color: #222;
|
||||||
|
line-height: 1.2em;
|
||||||
|
border: 1px solid #C6C9CB;
|
||||||
|
font-size: 1.1em;
|
||||||
|
margin: 1.5em 0 1.5em 0;
|
||||||
|
-webkit-box-shadow: 1px 1px 1px #d8d8d8;
|
||||||
|
-moz-box-shadow: 1px 1px 1px #d8d8d8;
|
||||||
|
}
|
||||||
|
|
||||||
|
tt {
|
||||||
|
background-color: #ecf0f3;
|
||||||
|
color: #222;
|
||||||
|
/* padding: 1px 2px; */
|
||||||
|
font-size: 1.1em;
|
||||||
|
font-family: monospace;
|
||||||
|
}
|
||||||
|
|
||||||
|
.viewcode-back {
|
||||||
|
font-family: Arial, sans-serif;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.viewcode-block:target {
|
||||||
|
background-color: #f4debf;
|
||||||
|
border-top: 1px solid #ac9;
|
||||||
|
border-bottom: 1px solid #ac9;
|
||||||
|
}
|
BIN
docs/_static/noise_dk.png
vendored
Normal file
BIN
docs/_static/noise_dk.png
vendored
Normal file
Binary file not shown.
After Width: | Height: | Size: 22 KiB |
70
docs/_static/pygments.css
vendored
Normal file
70
docs/_static/pygments.css
vendored
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
.highlight .hll { background-color: #ffffcc }
|
||||||
|
.highlight { background: #000000; color: #f6f3e8; }
|
||||||
|
.highlight .c { color: #7C7C7C; } /* Comment */
|
||||||
|
.highlight .err { color: #f6f3e8; } /* Error */
|
||||||
|
.highlight .g { color: #f6f3e8; } /* Generic */
|
||||||
|
.highlight .k { color: #00ADEE; } /* Keyword */
|
||||||
|
.highlight .l { color: #f6f3e8; } /* Literal */
|
||||||
|
.highlight .n { color: #f6f3e8; } /* Name */
|
||||||
|
.highlight .o { color: #f6f3e8; } /* Operator */
|
||||||
|
.highlight .x { color: #f6f3e8; } /* Other */
|
||||||
|
.highlight .p { color: #f6f3e8; } /* Punctuation */
|
||||||
|
.highlight .cm { color: #7C7C7C; } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #96CBFE; } /* Comment.Preproc */
|
||||||
|
.highlight .c1 { color: #7C7C7C; } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #7C7C7C; } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #f6f3e8; } /* Generic.Deleted */
|
||||||
|
.highlight .ge { color: #f6f3e8; } /* Generic.Emph */
|
||||||
|
.highlight .gr { color: #ffffff; background-color: #ff0000 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #f6f3e8; font-weight: bold; } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #f6f3e8; } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #070707; } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #f6f3e8; } /* Generic.Prompt */
|
||||||
|
.highlight .gs { color: #f6f3e8; } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #f6f3e8; font-weight: bold; } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #ffffff; font-weight: bold; background-color: #FF6C60 } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #6699CC; } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #6699CC; } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { color: #6699CC; } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { color: #6699CC; } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #6699CC; } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #FFFFB6; } /* Keyword.Type */
|
||||||
|
.highlight .ld { color: #f6f3e8; } /* Literal.Date */
|
||||||
|
.highlight .m { color: #FF73FD; } /* Literal.Number */
|
||||||
|
.highlight .s { color: #F46DBA;/*#A8FF60;*/ } /* Literal.String */
|
||||||
|
.highlight .na { color: #f6f3e8; } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #f6f3e8; } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #f6f3e8; } /* Name.Class */
|
||||||
|
.highlight .no { color: #99CC99; } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #f6f3e8; } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #E18964; } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #f6f3e8; } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #F64DBA; } /* Name.Function */
|
||||||
|
.highlight .nl { color: #f6f3e8; } /* Name.Label */
|
||||||
|
.highlight .nn { color: #f6f3e8; } /* Name.Namespace */
|
||||||
|
.highlight .nx { color: #f6f3e8; } /* Name.Other */
|
||||||
|
.highlight .py { color: #f6f3e8; } /* Name.Property */
|
||||||
|
.highlight .nt { color: #00ADEE; } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #C6C5FE; } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #ffffff; } /* Operator.Word */
|
||||||
|
.highlight .w { color: #f6f3e8; } /* Text.Whitespace */
|
||||||
|
.highlight .mf { color: #FF73FD; } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #FF73FD; } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #FF73FD; } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #FF73FD; } /* Literal.Number.Oct */
|
||||||
|
.highlight .sb { color: #A8FF60; } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #A8FF60; } /* Literal.String.Char */
|
||||||
|
.highlight .sd { color: #A8FF60; } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #A8FF60; } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #A8FF60; } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #A8FF60; } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #A8FF60; } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #A8FF60; } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #A8FF60; } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #A8FF60; } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #A8FF60; } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #f6f3e8; } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .vc { color: #C6C5FE; } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #C6C5FE; } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #C6C5FE; } /* Name.Variable.Instance */
|
||||||
|
.highlight .il { color: #FF73FD; } /* Literal.Number.Integer.Long */
|
339
docs/_static/sphinxdoc.css
vendored
Normal file
339
docs/_static/sphinxdoc.css
vendored
Normal file
@ -0,0 +1,339 @@
|
|||||||
|
/*
|
||||||
|
* sphinxdoc.css_t
|
||||||
|
* ~~~~~~~~~~~~~~~
|
||||||
|
*
|
||||||
|
* Sphinx stylesheet -- sphinxdoc theme. Originally created by
|
||||||
|
* Armin Ronacher for Werkzeug.
|
||||||
|
*
|
||||||
|
* :copyright: Copyright 2007-2011 by the Sphinx team, see AUTHORS.
|
||||||
|
* :license: BSD, see LICENSE for details.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
@import url("basic.css");
|
||||||
|
|
||||||
|
/* -- page layout ----------------------------------------------------------- */
|
||||||
|
|
||||||
|
body {
|
||||||
|
font-family: 'Lucida Grande', 'Lucida Sans Unicode', 'Geneva',
|
||||||
|
'Verdana', sans-serif;
|
||||||
|
font-size: 14px;
|
||||||
|
letter-spacing: -0.01em;
|
||||||
|
line-height: 150%;
|
||||||
|
text-align: center;
|
||||||
|
background-color: #BFD1D4;
|
||||||
|
color: black;
|
||||||
|
padding: 0;
|
||||||
|
border: 1px solid #aaa;
|
||||||
|
|
||||||
|
margin: 0px 80px 0px 80px;
|
||||||
|
min-width: 740px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.document {
|
||||||
|
background-color: white;
|
||||||
|
text-align: left;
|
||||||
|
background-image: url(contents.png);
|
||||||
|
background-repeat: repeat-x;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.bodywrapper {
|
||||||
|
margin: 0 240px 0 0;
|
||||||
|
border-right: 1px solid #ccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.body {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0.5em 20px 20px 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.related {
|
||||||
|
font-size: 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.related ul {
|
||||||
|
background-image: url(navigation.png);
|
||||||
|
height: 2em;
|
||||||
|
border-top: 1px solid #ddd;
|
||||||
|
border-bottom: 1px solid #ddd;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.related ul li {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
height: 2em;
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.related ul li.right {
|
||||||
|
float: right;
|
||||||
|
margin-right: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.related ul li a {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0 5px 0 5px;
|
||||||
|
line-height: 1.75em;
|
||||||
|
color: #EE9816;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.related ul li a:hover {
|
||||||
|
color: #3CA8E7;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebarwrapper {
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0.5em 15px 15px 0;
|
||||||
|
width: 210px;
|
||||||
|
float: right;
|
||||||
|
font-size: 1em;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar h3, div.sphinxsidebar h4 {
|
||||||
|
margin: 1em 0 0.5em 0;
|
||||||
|
font-size: 1em;
|
||||||
|
padding: 0.1em 0 0.1em 0.5em;
|
||||||
|
color: white;
|
||||||
|
border: 1px solid #86989B;
|
||||||
|
background-color: #AFC1C4;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar h3 a {
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar ul {
|
||||||
|
padding-left: 1.5em;
|
||||||
|
margin-top: 7px;
|
||||||
|
padding: 0;
|
||||||
|
line-height: 130%;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.sphinxsidebar ul ul {
|
||||||
|
margin-left: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.footer {
|
||||||
|
background-color: #E3EFF1;
|
||||||
|
color: #86989B;
|
||||||
|
padding: 3px 8px 3px 0;
|
||||||
|
clear: both;
|
||||||
|
font-size: 0.8em;
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.footer a {
|
||||||
|
color: #86989B;
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* -- body styles ----------------------------------------------------------- */
|
||||||
|
|
||||||
|
p {
|
||||||
|
margin: 0.8em 0 0.5em 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
a {
|
||||||
|
color: #CA7900;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
a:hover {
|
||||||
|
color: #2491CF;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.body a {
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0.7em 0 0.3em 0;
|
||||||
|
font-size: 1.5em;
|
||||||
|
color: #11557C;
|
||||||
|
}
|
||||||
|
|
||||||
|
h2 {
|
||||||
|
margin: 1.3em 0 0.2em 0;
|
||||||
|
font-size: 1.35em;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
h3 {
|
||||||
|
margin: 1em 0 -0.3em 0;
|
||||||
|
font-size: 1.2em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.body h1 a, div.body h2 a, div.body h3 a, div.body h4 a, div.body h5 a, div.body h6 a {
|
||||||
|
color: black!important;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1 a.anchor, h2 a.anchor, h3 a.anchor, h4 a.anchor, h5 a.anchor, h6 a.anchor {
|
||||||
|
display: none;
|
||||||
|
margin: 0 0 0 0.3em;
|
||||||
|
padding: 0 0.2em 0 0.2em;
|
||||||
|
color: #aaa!important;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1:hover a.anchor, h2:hover a.anchor, h3:hover a.anchor, h4:hover a.anchor,
|
||||||
|
h5:hover a.anchor, h6:hover a.anchor {
|
||||||
|
display: inline;
|
||||||
|
}
|
||||||
|
|
||||||
|
h1 a.anchor:hover, h2 a.anchor:hover, h3 a.anchor:hover, h4 a.anchor:hover,
|
||||||
|
h5 a.anchor:hover, h6 a.anchor:hover {
|
||||||
|
color: #777;
|
||||||
|
background-color: #eee;
|
||||||
|
}
|
||||||
|
|
||||||
|
a.headerlink {
|
||||||
|
color: #c60f0f!important;
|
||||||
|
font-size: 1em;
|
||||||
|
margin-left: 6px;
|
||||||
|
padding: 0 4px 0 4px;
|
||||||
|
text-decoration: none!important;
|
||||||
|
}
|
||||||
|
|
||||||
|
a.headerlink:hover {
|
||||||
|
background-color: #ccc;
|
||||||
|
color: white!important;
|
||||||
|
}
|
||||||
|
|
||||||
|
cite, code, tt {
|
||||||
|
font-family: 'Consolas', 'Deja Vu Sans Mono',
|
||||||
|
'Bitstream Vera Sans Mono', monospace;
|
||||||
|
font-size: 0.95em;
|
||||||
|
letter-spacing: 0.01em;
|
||||||
|
}
|
||||||
|
|
||||||
|
tt {
|
||||||
|
background-color: #f2f2f2;
|
||||||
|
border-bottom: 1px solid #ddd;
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
|
||||||
|
tt.descname, tt.descclassname, tt.xref {
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
hr {
|
||||||
|
border: 1px solid #abc;
|
||||||
|
margin: 2em;
|
||||||
|
}
|
||||||
|
|
||||||
|
a tt {
|
||||||
|
border: 0;
|
||||||
|
color: #CA7900;
|
||||||
|
}
|
||||||
|
|
||||||
|
a tt:hover {
|
||||||
|
color: #2491CF;
|
||||||
|
}
|
||||||
|
|
||||||
|
pre {
|
||||||
|
font-family: 'Consolas', 'Deja Vu Sans Mono',
|
||||||
|
'Bitstream Vera Sans Mono', monospace;
|
||||||
|
font-size: 0.95em;
|
||||||
|
letter-spacing: 0.015em;
|
||||||
|
line-height: 120%;
|
||||||
|
padding: 0.5em;
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
background-color: #f8f8f8;
|
||||||
|
}
|
||||||
|
|
||||||
|
pre a {
|
||||||
|
color: inherit;
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
|
td.linenos pre {
|
||||||
|
padding: 0.5em 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.quotebar {
|
||||||
|
background-color: #f8f8f8;
|
||||||
|
max-width: 250px;
|
||||||
|
float: right;
|
||||||
|
padding: 2px 7px;
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.topic {
|
||||||
|
background-color: #f8f8f8;
|
||||||
|
}
|
||||||
|
|
||||||
|
table {
|
||||||
|
border-collapse: collapse;
|
||||||
|
margin: 0 -0.5em 0 -0.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
table td, table th {
|
||||||
|
padding: 0.2em 0.5em 0.2em 0.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.admonition, div.warning {
|
||||||
|
font-size: 0.9em;
|
||||||
|
margin: 1em 0 1em 0;
|
||||||
|
border: 1px solid #86989B;
|
||||||
|
background-color: #f7f7f7;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.admonition p, div.warning p {
|
||||||
|
margin: 0.5em 1em 0.5em 1em;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.admonition pre, div.warning pre {
|
||||||
|
margin: 0.4em 1em 0.4em 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.admonition p.admonition-title,
|
||||||
|
div.warning p.admonition-title {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0.1em 0 0.1em 0.5em;
|
||||||
|
color: white;
|
||||||
|
border-bottom: 1px solid #86989B;
|
||||||
|
font-weight: bold;
|
||||||
|
background-color: #AFC1C4;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.warning {
|
||||||
|
border: 1px solid #940000;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.warning p.admonition-title {
|
||||||
|
background-color: #CF0000;
|
||||||
|
border-bottom-color: #940000;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.admonition ul, div.admonition ol,
|
||||||
|
div.warning ul, div.warning ol {
|
||||||
|
margin: 0.1em 0.5em 0.5em 3em;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.versioninfo {
|
||||||
|
margin: 1em 0 0 0;
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
background-color: #DDEAF0;
|
||||||
|
padding: 8px;
|
||||||
|
line-height: 1.3em;
|
||||||
|
font-size: 0.9em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.viewcode-back {
|
||||||
|
font-family: 'Lucida Grande', 'Lucida Sans Unicode', 'Geneva',
|
||||||
|
'Verdana', sans-serif;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.viewcode-block:target {
|
||||||
|
background-color: #f4debf;
|
||||||
|
border-top: 1px solid #ac9;
|
||||||
|
border-bottom: 1px solid #ac9;
|
||||||
|
}
|
70
docs/_templates/layout.html
vendored
Normal file
70
docs/_templates/layout.html
vendored
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
{#
|
||||||
|
haiku/layout.html
|
||||||
|
~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
|
Sphinx layout template for the haiku theme.
|
||||||
|
|
||||||
|
:copyright: Copyright 2007-2010 by the Sphinx team, see AUTHORS.
|
||||||
|
:license: BSD, see LICENSE for details.
|
||||||
|
#}
|
||||||
|
{% extends "basic/layout.html" %}
|
||||||
|
{% set script_files = script_files + ['_static/theme_extras.js'] %}
|
||||||
|
{% set css_files = css_files + ['_static/print.css'] %}
|
||||||
|
|
||||||
|
{# do not display relbars #}
|
||||||
|
{% block relbar1 %}{% endblock %}
|
||||||
|
{% block relbar2 %}{% endblock %}
|
||||||
|
|
||||||
|
{% macro nav() %}
|
||||||
|
<p>
|
||||||
|
{%- block haikurel1 %}
|
||||||
|
{%- endblock %}
|
||||||
|
{%- if prev %}
|
||||||
|
«  <a href="{{ prev.link|e }}">{{ prev.title }}</a>
|
||||||
|
  ::  
|
||||||
|
{%- endif %}
|
||||||
|
<a class="uplink" href="{{ pathto(master_doc) }}">{{ _('Contents') }}</a>
|
||||||
|
{%- if next %}
|
||||||
|
  ::  
|
||||||
|
<a href="{{ next.link|e }}">{{ next.title }}</a>  »
|
||||||
|
{%- endif %}
|
||||||
|
{%- block haikurel2 %}
|
||||||
|
{%- endblock %}
|
||||||
|
</p>
|
||||||
|
{% endmacro %}
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
|
<div class="header">
|
||||||
|
{%- block haikuheader %}
|
||||||
|
{%- if theme_full_logo != "false" %}
|
||||||
|
<a href="{{ pathto('index') }}">
|
||||||
|
<img class="logo" src="{{ pathto('_static/' + logo, 1) }}" alt="Logo"/>
|
||||||
|
</a>
|
||||||
|
{%- else %}
|
||||||
|
{%- if logo -%}
|
||||||
|
<img class="rightlogo" src="{{ pathto('_static/' + logo, 1) }}" alt="Logo"/>
|
||||||
|
{%- endif -%}
|
||||||
|
<h1 class="heading"><a href="{{ pathto('index') }}">
|
||||||
|
<span>{{ title|striptags }}</span></a></h1>
|
||||||
|
<h2 class="heading"><span>{{ shorttitle|e }}</span></h2>
|
||||||
|
{%- endif %}
|
||||||
|
{%- endblock %}
|
||||||
|
</div>
|
||||||
|
<div class="topnav">
|
||||||
|
{{ nav() }}
|
||||||
|
</div>
|
||||||
|
<div class="content">
|
||||||
|
{#{%- if display_toc %}
|
||||||
|
<div id="toc">
|
||||||
|
<h3>Table Of Contents</h3>
|
||||||
|
{{ toc }}
|
||||||
|
</div>
|
||||||
|
{%- endif %}#}
|
||||||
|
{% block body %}{% endblock %}
|
||||||
|
</div>
|
||||||
|
<div class="bottomnav">
|
||||||
|
{{ nav() }}
|
||||||
|
</div>
|
||||||
|
<a id="from_andyet" href="http://andyet.net"><h2>From &yet</h2></a>
|
||||||
|
{% endblock %}
|
||||||
|
|
@ -1,88 +0,0 @@
|
|||||||
.. _internal-api:
|
|
||||||
|
|
||||||
Internal "API"
|
|
||||||
==============
|
|
||||||
|
|
||||||
Slixmpp has a generic API registry that can be used by its plugins to allow
|
|
||||||
access control, redefinition of behaviour, without having to inherit from the
|
|
||||||
plugin or do more dark magic.
|
|
||||||
|
|
||||||
The idea is that each api call can be replaced, most of them use a form
|
|
||||||
of in-memory storage that can be, for example, replaced with database
|
|
||||||
or file-based storaged.
|
|
||||||
|
|
||||||
|
|
||||||
Each plugin is assigned an API proxy bound to itself, but only a few make use
|
|
||||||
of it.
|
|
||||||
|
|
||||||
See also :ref:`api-simple-tuto`.
|
|
||||||
|
|
||||||
Description of a generic API call
|
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
.. code-block:: python
|
|
||||||
|
|
||||||
def get_toto(jid, node, ifrom, args):
|
|
||||||
return 'toto'
|
|
||||||
|
|
||||||
self.xmpp.plugin['xep_XXXX'].api.register(handler, 'get_toto')
|
|
||||||
|
|
||||||
Each API call will receive 4 parameters (which can be ``None`` if data
|
|
||||||
is not relevant to the operation), which are ``jid`` (``Optional[JID]``),
|
|
||||||
``node`` (``Optional[str]``), ``ifrom`` (``Optional[JID]``), and ``args``
|
|
||||||
(``Any``).
|
|
||||||
|
|
||||||
- ``jid``, if relevant, represents the JID targeted by that operation
|
|
||||||
- ``node``, if relevant is an arbitrary string, but was thought for, e.g.,
|
|
||||||
a pubsub or disco node.
|
|
||||||
- ``ifrom``, if relevant, is the JID the event is coming from.
|
|
||||||
- ``args`` is the event-specific data passed on by the plugin, often a dict
|
|
||||||
of arguments (can be None as well).
|
|
||||||
|
|
||||||
.. note::
|
|
||||||
Since 1.8.0, API calls can be coroutines.
|
|
||||||
|
|
||||||
|
|
||||||
Handler hierarchy
|
|
||||||
~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
The ``self.api.register()`` signature is as follows:
|
|
||||||
|
|
||||||
.. code-block:: python
|
|
||||||
|
|
||||||
def register(handler, op, jid=None, node=None, default=False):
|
|
||||||
pass
|
|
||||||
|
|
||||||
As you can see, :meth:`~.APIRegistry.register` takes an additional ctype
|
|
||||||
parameter, but the :class:`~.APIWrapper` takes care of that for us (in most
|
|
||||||
cases, it is the name of the XEP plugin, such as ``'xep_0XXX'``).
|
|
||||||
|
|
||||||
When you register a handler, you register it for an ``op``, for **operation**.
|
|
||||||
For example, ``get_vcard``.
|
|
||||||
|
|
||||||
``handler`` and ``op`` are the only two required parameters (and in many cases,
|
|
||||||
all you will ever need). You can, however, go further and register handlers
|
|
||||||
for specific values of the ``jid`` and ``node`` parameters of the calls.
|
|
||||||
|
|
||||||
The priority of the execution of handlers is as follows:
|
|
||||||
|
|
||||||
- Check if a handler for both values of ``node`` and ``jid`` has been defined
|
|
||||||
- If not found, check if a handler for this value of ``jid`` has been defined
|
|
||||||
- If not found, check if a handler for this value of ``node`` has been defined
|
|
||||||
- If still not found, get the global handler (no parameter registered)
|
|
||||||
|
|
||||||
|
|
||||||
Raw documentation
|
|
||||||
~~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
This documentation is provided for reference, but :meth:`~.APIRegistry.register`
|
|
||||||
should be all you need.
|
|
||||||
|
|
||||||
|
|
||||||
.. module:: slixmpp.api
|
|
||||||
|
|
||||||
.. autoclass:: APIRegistry
|
|
||||||
:members:
|
|
||||||
|
|
||||||
.. autoclass:: APIWrapper
|
|
||||||
|
|
@ -1,17 +0,0 @@
|
|||||||
API Reference
|
|
||||||
-------------
|
|
||||||
|
|
||||||
.. toctree::
|
|
||||||
:maxdepth: 3
|
|
||||||
|
|
||||||
clientxmpp
|
|
||||||
componentxmpp
|
|
||||||
basexmpp
|
|
||||||
exceptions
|
|
||||||
xmlstream/jid
|
|
||||||
xmlstream/stanzabase
|
|
||||||
xmlstream/handler
|
|
||||||
xmlstream/matcher
|
|
||||||
xmlstream/xmlstream
|
|
||||||
xmlstream/tostring
|
|
||||||
api
|
|
@ -1,111 +0,0 @@
|
|||||||
Plugin index
|
|
||||||
============
|
|
||||||
|
|
||||||
.. toctree::
|
|
||||||
:maxdepth: 2
|
|
||||||
|
|
||||||
xep_0004
|
|
||||||
xep_0009
|
|
||||||
xep_0012
|
|
||||||
xep_0013
|
|
||||||
xep_0020
|
|
||||||
xep_0027
|
|
||||||
xep_0030
|
|
||||||
xep_0033
|
|
||||||
xep_0045
|
|
||||||
xep_0047
|
|
||||||
xep_0049
|
|
||||||
xep_0050
|
|
||||||
xep_0054
|
|
||||||
xep_0055
|
|
||||||
xep_0059
|
|
||||||
xep_0060
|
|
||||||
xep_0065
|
|
||||||
xep_0066
|
|
||||||
xep_0070
|
|
||||||
xep_0071
|
|
||||||
xep_0077
|
|
||||||
xep_0079
|
|
||||||
xep_0080
|
|
||||||
xep_0082
|
|
||||||
xep_0084
|
|
||||||
xep_0085
|
|
||||||
xep_0086
|
|
||||||
xep_0092
|
|
||||||
xep_0100
|
|
||||||
xep_0106
|
|
||||||
xep_0107
|
|
||||||
xep_0108
|
|
||||||
xep_0115
|
|
||||||
xep_0118
|
|
||||||
xep_0122
|
|
||||||
xep_0128
|
|
||||||
xep_0131
|
|
||||||
xep_0133
|
|
||||||
xep_0152
|
|
||||||
xep_0153
|
|
||||||
xep_0163
|
|
||||||
xep_0172
|
|
||||||
xep_0184
|
|
||||||
xep_0186
|
|
||||||
xep_0191
|
|
||||||
xep_0196
|
|
||||||
xep_0198
|
|
||||||
xep_0199
|
|
||||||
xep_0202
|
|
||||||
xep_0203
|
|
||||||
xep_0221
|
|
||||||
xep_0222
|
|
||||||
xep_0223
|
|
||||||
xep_0224
|
|
||||||
xep_0231
|
|
||||||
xep_0235
|
|
||||||
xep_0249
|
|
||||||
xep_0256
|
|
||||||
xep_0257
|
|
||||||
xep_0258
|
|
||||||
xep_0264
|
|
||||||
xep_0279
|
|
||||||
xep_0280
|
|
||||||
xep_0292
|
|
||||||
xep_0297
|
|
||||||
xep_0300
|
|
||||||
xep_0308
|
|
||||||
xep_0313
|
|
||||||
xep_0317
|
|
||||||
xep_0319
|
|
||||||
xep_0332
|
|
||||||
xep_0333
|
|
||||||
xep_0334
|
|
||||||
xep_0335
|
|
||||||
xep_0352
|
|
||||||
xep_0353
|
|
||||||
xep_0356
|
|
||||||
xep_0359
|
|
||||||
xep_0363
|
|
||||||
xep_0369
|
|
||||||
xep_0372
|
|
||||||
xep_0377
|
|
||||||
xep_0380
|
|
||||||
xep_0382
|
|
||||||
xep_0385
|
|
||||||
xep_0394
|
|
||||||
xep_0402
|
|
||||||
xep_0403
|
|
||||||
xep_0404
|
|
||||||
xep_0405
|
|
||||||
xep_0421
|
|
||||||
xep_0422
|
|
||||||
xep_0424
|
|
||||||
xep_0425
|
|
||||||
xep_0428
|
|
||||||
xep_0437
|
|
||||||
xep_0439
|
|
||||||
xep_0441
|
|
||||||
xep_0444
|
|
||||||
xep_0446
|
|
||||||
xep_0447
|
|
||||||
xep_0461
|
|
||||||
xep_0469
|
|
||||||
xep_0490
|
|
||||||
xep_0492
|
|
@ -1,21 +0,0 @@
|
|||||||
|
|
||||||
XEP-0004: Data Forms
|
|
||||||
====================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0004
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0004
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0004.stanza.field
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0004.stanza.form
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0009: Jabber-RPC
|
|
||||||
====================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0009
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0009
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0009.stanza.RPC
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,56 +0,0 @@
|
|||||||
|
|
||||||
XEP-0012: Last Activity
|
|
||||||
=======================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0012
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0012
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
.. _api-0012:
|
|
||||||
|
|
||||||
Internal API methods
|
|
||||||
--------------------
|
|
||||||
|
|
||||||
This plugin uses an in-memory storage by default to keep track of the
|
|
||||||
received and sent last activities.
|
|
||||||
|
|
||||||
.. glossary::
|
|
||||||
|
|
||||||
get_last_activity
|
|
||||||
- **jid**: :class:`~.JID` of whom to retrieve the last activity
|
|
||||||
- **node**: unused
|
|
||||||
- **ifrom**: who the request is from (None = local)
|
|
||||||
- **args**: ``None`` or an :class:`~.Iq` that is requesting the
|
|
||||||
- **returns**
|
|
||||||
information.
|
|
||||||
|
|
||||||
Get the last activity of a JID from the storage.
|
|
||||||
|
|
||||||
set_last_activity
|
|
||||||
- **jid**: :class:`~.JID` of whom to set the last activity
|
|
||||||
- **node**: unused
|
|
||||||
- **ifrom**: unused
|
|
||||||
- **args**: A dict containing ``'seconds'`` and ``'status'``
|
|
||||||
``{'seconds': Optional[int], 'status': Optional[str]}``
|
|
||||||
|
|
||||||
Set the last activity of a JID in the storage.
|
|
||||||
|
|
||||||
del_last_activity
|
|
||||||
- **jid**: :class:`~.JID` to delete from the storage
|
|
||||||
- **node**: unused
|
|
||||||
- **ifrom**: unused
|
|
||||||
- **args**: unused
|
|
||||||
|
|
||||||
Remove the last activity of a JID from the storage.
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0012.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0013: Flexible Offline Message Retrieval
|
|
||||||
============================================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0013
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0013
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0013.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0020: Feature Negotiation
|
|
||||||
=============================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0020
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0020
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0020.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,62 +0,0 @@
|
|||||||
|
|
||||||
XEP-0027: Current Jabber OpenPGP Usage
|
|
||||||
======================================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0027
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0027
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
.. _api-0027:
|
|
||||||
|
|
||||||
Internal API methods
|
|
||||||
--------------------
|
|
||||||
|
|
||||||
The default API here is managing a JID→Keyid dict in-memory.
|
|
||||||
|
|
||||||
.. glossary::
|
|
||||||
|
|
||||||
get_keyid
|
|
||||||
- **jid**: :class:`~.JID` to get.
|
|
||||||
- **node**: unused
|
|
||||||
- **ifrom**: unused
|
|
||||||
- **args**: unused
|
|
||||||
- **returns**: ``Optional[str]``, the keyid or None
|
|
||||||
|
|
||||||
Get the KeyiD for a JID, None if it is not found.
|
|
||||||
|
|
||||||
set_keyid
|
|
||||||
- **jid**: :class:`~.JID` to set the id for.
|
|
||||||
- **node**: unused
|
|
||||||
- **ifrom**: unused
|
|
||||||
- **args**: ``str``, keyid to set
|
|
||||||
|
|
||||||
Set the KeyiD for a JID.
|
|
||||||
|
|
||||||
del_keyid
|
|
||||||
- **jid**: :class:`~.JID` to delete from the mapping.
|
|
||||||
- **node**: unused
|
|
||||||
- **ifrom**: unused
|
|
||||||
- **args**: unused
|
|
||||||
|
|
||||||
Delete the KeyiD for a JID.
|
|
||||||
|
|
||||||
get_keyids
|
|
||||||
- **jid**: unused
|
|
||||||
- **node**: unused
|
|
||||||
- **ifrom**: unused
|
|
||||||
- **args**: unused
|
|
||||||
- **returns**: ``Dict[JID, str]`` the full internal mapping
|
|
||||||
|
|
||||||
Get all currently stored KeyIDs.
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0027.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,39 +0,0 @@
|
|||||||
|
|
||||||
XEP-0030: Service Discovery
|
|
||||||
===========================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0030
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0030
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
.. _api-0030:
|
|
||||||
|
|
||||||
Internal API Methods
|
|
||||||
--------------------
|
|
||||||
|
|
||||||
All ``api`` operations supported by the 0030 plugin are implemented as part of
|
|
||||||
the :class:`~.StaticDisco` class which implement an in-memory cache for disco
|
|
||||||
info and items.
|
|
||||||
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0030.static
|
|
||||||
:members:
|
|
||||||
:member-order: bysource
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0030.stanza.info
|
|
||||||
:members:
|
|
||||||
:member-order: bysource
|
|
||||||
:undoc-members:
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0030.stanza.items
|
|
||||||
:members:
|
|
||||||
:member-order: bysource
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0033: Extended Stanza Addressing
|
|
||||||
====================================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0033
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0033
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0033.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,19 +0,0 @@
|
|||||||
|
|
||||||
XEP-0045: Multi-User Chat
|
|
||||||
=========================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0045
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0045
|
|
||||||
:member-order: bysource
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0045.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,89 +0,0 @@
|
|||||||
|
|
||||||
XEP-0047: In-band Bytestreams
|
|
||||||
=============================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0047
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0047
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
.. 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
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0047.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0049: Private XML Storage
|
|
||||||
=============================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0049
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0049
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0049.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0050: Ad-Hoc Commands
|
|
||||||
=========================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0050
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0050
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0050.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,52 +0,0 @@
|
|||||||
|
|
||||||
XEP-0054: vcard-temp
|
|
||||||
====================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0054
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0054
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
.. _api-0054:
|
|
||||||
|
|
||||||
Internal API methods
|
|
||||||
--------------------
|
|
||||||
|
|
||||||
This plugin maintains by default an in-memory cache of the received
|
|
||||||
VCards.
|
|
||||||
|
|
||||||
.. glossary::
|
|
||||||
|
|
||||||
set_vcard
|
|
||||||
- **jid**: :class:`~.JID` of whom to set the vcard
|
|
||||||
- **node**: unused
|
|
||||||
- **ifrom**: unused
|
|
||||||
- **args**: :class:`~.VCardTemp` object to store for this JID.
|
|
||||||
|
|
||||||
Set a VCard for a JID.
|
|
||||||
|
|
||||||
get_vcard
|
|
||||||
- **jid**: :class:`~.JID` of whom to set the vcard
|
|
||||||
- **node**: unused
|
|
||||||
- **ifrom**: :class:`~.JID` the request is coming from
|
|
||||||
- **args**: unused
|
|
||||||
- **returns**: :class:`~.VCardTemp` object for this JID or None.
|
|
||||||
|
|
||||||
Get a stored VCard for a JID.
|
|
||||||
|
|
||||||
del_vcard
|
|
||||||
- **jid**: :class:`~.JID` of whom to set the vcard
|
|
||||||
- **node**: unused
|
|
||||||
- **ifrom**: unused
|
|
||||||
- **args**: unused
|
|
||||||
|
|
||||||
Delete a stored VCard for a JID.
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0054.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0055: Jabber search
|
|
||||||
=======================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0055
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0055
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0055.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,21 +0,0 @@
|
|||||||
|
|
||||||
XEP-0059: Result Set Management
|
|
||||||
===============================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0059
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0059
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
.. autoclass:: ResultIterator
|
|
||||||
:members:
|
|
||||||
:member-order: bysource
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0059.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,37 +0,0 @@
|
|||||||
|
|
||||||
XEP-0060: Publish-Subscribe
|
|
||||||
===========================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0060
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0060
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0060.stanza.base
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0060.stanza.pubsub
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0060.stanza.pubsub_errors
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0060.stanza.pubsub_owner
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0060.stanza.pubsub_event
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
@ -1,60 +0,0 @@
|
|||||||
|
|
||||||
XEP-0065: SOCKS5 Bytestreams
|
|
||||||
============================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0065
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0065
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
.. _api-0065:
|
|
||||||
|
|
||||||
Internal API methods
|
|
||||||
--------------------
|
|
||||||
|
|
||||||
The internal API is used here to authorize or pre-authorize streams.
|
|
||||||
|
|
||||||
.. glossary::
|
|
||||||
|
|
||||||
authorized_sid (0065 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 (0065 version)`
|
|
||||||
by default.
|
|
||||||
|
|
||||||
authorized (0065 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 (0065 version)`)
|
|
||||||
to check if a stream should be accepted. Uses the ``auto_accept``
|
|
||||||
parameter by default.
|
|
||||||
|
|
||||||
preauthorize_sid (0065 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).
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0065.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0066: Out of Band Data
|
|
||||||
==========================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0066
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0066
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0066.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0070: Verifying HTTP Requests via XMPP
|
|
||||||
==========================================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0070
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0070
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0070.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0071: XHTML-IM
|
|
||||||
==================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0071
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0071
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0071.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,65 +0,0 @@
|
|||||||
|
|
||||||
XEP-0077: In-Band Registration
|
|
||||||
==============================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0077
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0077
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
Internal APi methods
|
|
||||||
--------------------
|
|
||||||
|
|
||||||
The API here is made to allow components to manage registered users.
|
|
||||||
The default handlers make use of the plugin options and store users
|
|
||||||
in memory.
|
|
||||||
|
|
||||||
.. glossary::
|
|
||||||
|
|
||||||
user_get
|
|
||||||
- **jid**: unused
|
|
||||||
- **node**: unused
|
|
||||||
- **ifrom**: who the request is coming from
|
|
||||||
- **args**: :class:`~.Iq` registration request.
|
|
||||||
- **returns**: ``dict`` containing user data or None.
|
|
||||||
|
|
||||||
Get user data for a user.
|
|
||||||
|
|
||||||
user_validate
|
|
||||||
- **jid**: unused
|
|
||||||
- **node**: unused
|
|
||||||
- **ifrom**: who the request is coming from
|
|
||||||
- **args**: :class:`~.Iq` registration request, 'register' payload.
|
|
||||||
- **raises**: ValueError if some fields are invalid
|
|
||||||
|
|
||||||
Validate form fields and save user data.
|
|
||||||
|
|
||||||
user_remove
|
|
||||||
- **jid**: unused
|
|
||||||
- **node**: unused
|
|
||||||
- **ifrom**: who the request is coming from
|
|
||||||
- **args**: :class:`~.Iq` registration removal request.
|
|
||||||
- **raises**: KeyError if the user is not found.
|
|
||||||
|
|
||||||
Remove a user from the store.
|
|
||||||
|
|
||||||
make_registration_form
|
|
||||||
- **jid**: unused
|
|
||||||
- **node**: unused
|
|
||||||
- **ifrom**: who the request is coming from
|
|
||||||
- **args**: :class:`~.Iq` registration request.
|
|
||||||
- **raises**: KeyError if the user is not found.
|
|
||||||
|
|
||||||
Return an :class:`~.Iq` reply for the request, with a form and
|
|
||||||
options set. By default, use ``form_fields`` and ``form_instructions``
|
|
||||||
plugin config options.
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0077.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0079: Advanced Message Processing
|
|
||||||
=====================================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0079
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0079
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0079.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0080: User Location
|
|
||||||
=======================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0080
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0080
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0080.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,9 +0,0 @@
|
|||||||
|
|
||||||
XEP-0082: XMPP Date and Time Profiles
|
|
||||||
=====================================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0082
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0082
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0084: User Avatar
|
|
||||||
=====================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0084
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0084
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0084.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0085: Chat State Notifications
|
|
||||||
==================================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0085
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0085
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0085.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0086: Error Condition Mappings
|
|
||||||
==================================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0086
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0086
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0086.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0092: Software Version
|
|
||||||
==========================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0092
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0092
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0092.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,9 +0,0 @@
|
|||||||
|
|
||||||
XEP-0100: Gateway interaction
|
|
||||||
=============================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0100
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0100
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
@ -1,9 +0,0 @@
|
|||||||
|
|
||||||
XEP-0106: JID Escaping
|
|
||||||
======================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0106
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0106
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0107: User Mood
|
|
||||||
===================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0107
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0107
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0107.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0108: User Activity
|
|
||||||
=======================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0108
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0108
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0108.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,66 +0,0 @@
|
|||||||
|
|
||||||
XEP-0115: Entity Capabilities
|
|
||||||
=============================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0115
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0115
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
.. _api-0115:
|
|
||||||
|
|
||||||
Internal API methods
|
|
||||||
--------------------
|
|
||||||
|
|
||||||
This internal API extends the Disco internal API, and also manages an
|
|
||||||
in-memory cache of verstring→disco info, and fulljid→verstring.
|
|
||||||
|
|
||||||
.. glossary::
|
|
||||||
|
|
||||||
cache_caps
|
|
||||||
- **jid**: unused
|
|
||||||
- **node**: unused
|
|
||||||
- **ifrom**: unused
|
|
||||||
- **args**: a ``dict`` containing the verstring and
|
|
||||||
:class:`~.DiscoInfo` payload (
|
|
||||||
``{'verstring': Optional[str], 'info': Optional[DiscoInfo]}``)
|
|
||||||
|
|
||||||
Cache a verification string with its payload.
|
|
||||||
|
|
||||||
get_caps
|
|
||||||
- **jid**: JID to retrieve the verstring for (unused with the default
|
|
||||||
handler)
|
|
||||||
- **node**: unused
|
|
||||||
- **ifrom**: unused
|
|
||||||
- **args**: a ``dict`` containing the verstring
|
|
||||||
``{'verstring': str}``
|
|
||||||
- **returns**: The :class:`~.DiscoInfo` payload for that verstring.
|
|
||||||
|
|
||||||
Get a disco payload from a verstring.
|
|
||||||
|
|
||||||
assign_verstring
|
|
||||||
- **jid**: :class:`~.JID` (full) to assign the verstring to
|
|
||||||
- **node**: unused
|
|
||||||
- **ifrom**: unused
|
|
||||||
- **args**: a ``dict`` containing the verstring
|
|
||||||
``{'verstring': str}``
|
|
||||||
|
|
||||||
Cache JID→verstring information.
|
|
||||||
|
|
||||||
get_verstring
|
|
||||||
- **jid**: :class:`~.JID` to use for fetching the verstring
|
|
||||||
- **node**: unused
|
|
||||||
- **ifrom**: unused
|
|
||||||
- **args**: unused
|
|
||||||
- **returns**: ``str``, the verstring
|
|
||||||
|
|
||||||
Retrieve a verstring for a JID.
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0115.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0118: User Tune
|
|
||||||
===================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0118
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0118
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0118.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0122: Data Forms Validation
|
|
||||||
===============================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0122
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0122
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0122.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,44 +0,0 @@
|
|||||||
|
|
||||||
XEP-0128: Service Discovery Extensions
|
|
||||||
======================================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0128
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0128
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
.. _api-0128:
|
|
||||||
|
|
||||||
Internal API methods
|
|
||||||
--------------------
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
.. glossary::
|
|
||||||
|
|
||||||
add_extended_info
|
|
||||||
- **jid**: JID to set the extended info for
|
|
||||||
- **node**: note to set the info at
|
|
||||||
- **ifrom**: unused
|
|
||||||
- **args**: A :class:`~.Form` or list of forms to add to the disco
|
|
||||||
extended info for this JID/node.
|
|
||||||
|
|
||||||
Add extended info for a JID/node.
|
|
||||||
|
|
||||||
set_extended_info
|
|
||||||
- **jid**: JID to set the extended info for
|
|
||||||
- **node**: note to set the info at
|
|
||||||
- **ifrom**: unused
|
|
||||||
- **args**: A :class:`~.Form` or list of forms to set as the disco
|
|
||||||
extended info for this JID/node.
|
|
||||||
|
|
||||||
Set extended info for a JID/node.
|
|
||||||
|
|
||||||
del_extended_info
|
|
||||||
- **jid**: JID to delete the extended info from
|
|
||||||
- **node**: note to delete the info from
|
|
||||||
- **ifrom**: unused
|
|
||||||
- **args**: unused
|
|
||||||
|
|
||||||
Delete extended info for a JID/node.
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0131: Stanza Headers and Internet Metadata
|
|
||||||
==============================================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0131
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0131
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0131.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,9 +0,0 @@
|
|||||||
|
|
||||||
XEP-0133: Service Administration
|
|
||||||
================================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0133
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0133
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0152: Reachability Addresses
|
|
||||||
================================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0152
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0152
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0152.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,55 +0,0 @@
|
|||||||
|
|
||||||
XEP-0153: vCard-Based Avatars
|
|
||||||
=============================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0153
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0153
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
.. _api-0153:
|
|
||||||
|
|
||||||
Internal API methods
|
|
||||||
--------------------
|
|
||||||
|
|
||||||
The internal API is used here to maintain an in-memory JID→avatar hash
|
|
||||||
cache.
|
|
||||||
|
|
||||||
.. glossary::
|
|
||||||
|
|
||||||
set_hash
|
|
||||||
- **jid**: :class:`~.JID` of whom to retrieve the last activity
|
|
||||||
- **node**: unused
|
|
||||||
- **ifrom**: unused
|
|
||||||
- **args**: ``str``, avatar hash
|
|
||||||
|
|
||||||
Set the avatar hash for a JID.
|
|
||||||
|
|
||||||
reset_hash
|
|
||||||
- **jid**: :class:`~.JID` of whom to retrieve the last activity
|
|
||||||
- **node**: unused
|
|
||||||
- **ifrom**: :class:`~.JID` of the entity requesting the reset.
|
|
||||||
- **args**: unused
|
|
||||||
- **returns**
|
|
||||||
information.
|
|
||||||
|
|
||||||
Reset the avatar hash for a JID. This downloads the vcard and computes
|
|
||||||
the hash.
|
|
||||||
|
|
||||||
get_hash
|
|
||||||
- **jid**: :class:`~.JID` of whom to retrieve the last activity
|
|
||||||
- **node**: unused
|
|
||||||
- **ifrom**: unused
|
|
||||||
- **args**: unused
|
|
||||||
- **returns**: ``Optional[str]``, the avatar hash
|
|
||||||
|
|
||||||
Get the avatar hash for a JID.
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0153.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,9 +0,0 @@
|
|||||||
|
|
||||||
XEP-0163: Personal Eventing Protocol (PEP)
|
|
||||||
==========================================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0163
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0163
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0172: User Nickname
|
|
||||||
=======================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0172
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0172
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0172.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0184: Message Delivery Receipts
|
|
||||||
===================================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0184
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0184
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0184.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0186: Invisible Command
|
|
||||||
===========================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0186
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0186
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0186.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0191: Blocking Command
|
|
||||||
==========================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0191
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0191
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0191.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0196: User Gaming
|
|
||||||
=====================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0196
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0196
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0196.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0198: Stream Management
|
|
||||||
===========================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0198
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0198
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0198.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0199: XMPP Ping
|
|
||||||
===================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0199
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0199
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0199.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0202: Entity Time
|
|
||||||
=====================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0202
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0202
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0202.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0203: Delayed Delivery
|
|
||||||
==========================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0203
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0203
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0203.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0221: Data Forms Media Element
|
|
||||||
==================================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0221
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0221
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0221.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,9 +0,0 @@
|
|||||||
|
|
||||||
XEP-0222: Persistent Storage of Public Data via PubSub
|
|
||||||
======================================================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0222
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0222
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
@ -1,9 +0,0 @@
|
|||||||
|
|
||||||
XEP-0223: Persistent Storage of Private Data via PubSub
|
|
||||||
=======================================================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0223
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0223
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0224: Attention
|
|
||||||
===================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0224
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0224
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0224.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,53 +0,0 @@
|
|||||||
|
|
||||||
XEP-0231: Bits of Binary
|
|
||||||
========================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0231
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0231
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
.. _api-0231:
|
|
||||||
|
|
||||||
Internal API methods
|
|
||||||
--------------------
|
|
||||||
|
|
||||||
The default API handlers for this plugin manage an in-memory cache of
|
|
||||||
bits of binary by content-id.
|
|
||||||
|
|
||||||
.. glossary::
|
|
||||||
|
|
||||||
set_bob
|
|
||||||
- **jid**: :class:`~.JID` sending the bob
|
|
||||||
- **node**: unused
|
|
||||||
- **ifrom**: :class:`~JID` receiving the bob
|
|
||||||
- **args**: :class:`~.BitsOfBinary` element.
|
|
||||||
|
|
||||||
Set a BoB in the cache.
|
|
||||||
|
|
||||||
get_bob
|
|
||||||
- **jid**: :class:`~.JID` receiving the bob
|
|
||||||
- **node**: unused
|
|
||||||
- **ifrom**: :class:`~JID` sending the bob
|
|
||||||
- **args**: ``str`` content-id of the bob
|
|
||||||
- **returns**: :class:`~.BitsOfBinary` element.
|
|
||||||
|
|
||||||
Get a BoB from the cache.
|
|
||||||
|
|
||||||
del_bob
|
|
||||||
- **jid**: unused
|
|
||||||
- **node**: unused
|
|
||||||
- **ifrom**: :class:`~JID` sending the bob
|
|
||||||
- **args**: ``str`` content-id of the bob
|
|
||||||
|
|
||||||
Delete a BoB from the cache.
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0231.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0235: OAuth Over XMPP
|
|
||||||
=========================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0235
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0235
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0235.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0249: Direct MUC Invitations
|
|
||||||
================================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0249
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0249
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0249.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,9 +0,0 @@
|
|||||||
|
|
||||||
XEP-0256: Last Activity in Presence
|
|
||||||
===================================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0256
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0256
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0257: Client Certificate Management for SASL EXTERNAL
|
|
||||||
=========================================================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0257
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0257
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0257.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0258: Security Labels in XMPP
|
|
||||||
=================================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0258
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0258
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0258.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0264: Jingle Content Thumbnails
|
|
||||||
===================================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0264
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0264
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0264.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0279: Server IP Check
|
|
||||||
=========================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0279
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0279
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0279.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0280: Message Carbons
|
|
||||||
=========================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0280
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0280
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0280.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,17 +0,0 @@
|
|||||||
|
|
||||||
XEP-0292: vCard4 Over XMPP
|
|
||||||
==========================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0292
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0292
|
|
||||||
:members:
|
|
||||||
:exclude-members: plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0292.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0297: Stanza Forwarding
|
|
||||||
===========================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0297
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0297
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0297.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0300: Use of Cryptographic Hash Functions in XMPP
|
|
||||||
=====================================================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0300
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0300
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0300.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
|||||||
|
|
||||||
XEP-0308: Last Message Correction
|
|
||||||
=================================
|
|
||||||
|
|
||||||
.. module:: slixmpp.plugins.xep_0308
|
|
||||||
|
|
||||||
.. autoclass:: XEP_0308
|
|
||||||
:members:
|
|
||||||
:exclude-members: session_bind, plugin_init, plugin_end
|
|
||||||
|
|
||||||
|
|
||||||
Stanza elements
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. automodule:: slixmpp.plugins.xep_0308.stanza
|
|
||||||
:members:
|
|
||||||
:undoc-members:
|
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user