summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorEmmanuel Gil Peyrot <linkmauve@linkmauve.fr>2014-08-17 21:53:34 +0200
committerFlorent Le Coz <louiz@louiz.org>2014-09-01 02:47:15 +0200
commit17174016ec6603afe87a65282f9b7eb55f2eafeb (patch)
tree1e815d4ab942bf3b8ac932d3a1213b7a00659e26 /docs
parented37174a2b40d2d90aa6a0c7f778108687d39602 (diff)
downloadslixmpp-17174016ec6603afe87a65282f9b7eb55f2eafeb.tar.gz
slixmpp-17174016ec6603afe87a65282f9b7eb55f2eafeb.tar.bz2
slixmpp-17174016ec6603afe87a65282f9b7eb55f2eafeb.tar.xz
slixmpp-17174016ec6603afe87a65282f9b7eb55f2eafeb.zip
Remove all trailing whitespaces.
Diffstat (limited to 'docs')
-rw-r--r--docs/_static/nature.css68
-rw-r--r--docs/_static/sphinxdoc.css2
-rw-r--r--docs/api/exceptions.rst2
-rw-r--r--docs/api/xmlstream/stanzabase.rst2
-rw-r--r--docs/architecture.rst10
-rw-r--r--docs/create_plugin.rst8
-rw-r--r--docs/event_index.rst38
-rw-r--r--docs/getting_started/component.rst6
-rw-r--r--docs/getting_started/echobot.rst22
-rw-r--r--docs/getting_started/iq.rst8
-rw-r--r--docs/getting_started/proxy.rst2
-rw-r--r--docs/getting_started/sendlogout.rst8
-rw-r--r--docs/guide_xep_0030.rst4
-rw-r--r--docs/index.rst12
-rw-r--r--docs/license.rst2
-rw-r--r--docs/xeps.rst6
-rw-r--r--docs/xmpp_tdg.rst8
17 files changed, 104 insertions, 104 deletions
diff --git a/docs/_static/nature.css b/docs/_static/nature.css
index 52b328ea..b271ec97 100644
--- a/docs/_static/nature.css
+++ b/docs/_static/nature.css
@@ -8,11 +8,11 @@
* :license: BSD, see LICENSE for details.
*
*/
-
+
@import url("basic.css");
-
+
/* -- page layout ----------------------------------------------------------- */
-
+
body {
font-family: Arial, sans-serif;
font-size: 100%;
@@ -34,18 +34,18 @@ div.bodywrapper {
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%;
@@ -53,12 +53,12 @@ div.footer {
text-align: center;
font-size: 75%;
}
-
+
div.footer a {
color: #444;
text-decoration: underline;
}
-
+
div.related {
background-color: #6BA81E;
line-height: 32px;
@@ -66,11 +66,11 @@ div.related {
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;
@@ -79,7 +79,7 @@ div.sphinxsidebar {
div.sphinxsidebarwrapper{
padding: 20px 0;
}
-
+
div.sphinxsidebar h3,
div.sphinxsidebar h4 {
font-family: Arial, sans-serif;
@@ -95,30 +95,30 @@ div.sphinxsidebar h4 {
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;
@@ -128,19 +128,19 @@ div.sphinxsidebar input {
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,
@@ -155,30 +155,30 @@ div.body h6 {
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;
}
@@ -191,29 +191,29 @@ 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;
@@ -225,7 +225,7 @@ pre {
-webkit-box-shadow: 1px 1px 1px #d8d8d8;
-moz-box-shadow: 1px 1px 1px #d8d8d8;
}
-
+
tt {
background-color: #ecf0f3;
color: #222;
diff --git a/docs/_static/sphinxdoc.css b/docs/_static/sphinxdoc.css
index 0a428074..55c574f6 100644
--- a/docs/_static/sphinxdoc.css
+++ b/docs/_static/sphinxdoc.css
@@ -134,7 +134,7 @@ div.footer a {
/* -- body styles ----------------------------------------------------------- */
-p {
+p {
margin: 0.8em 0 0.5em 0;
}
diff --git a/docs/api/exceptions.rst b/docs/api/exceptions.rst
index 0736a09c..51e2e170 100644
--- a/docs/api/exceptions.rst
+++ b/docs/api/exceptions.rst
@@ -3,7 +3,7 @@ Exceptions
.. module:: slixmpp.exceptions
-
+
.. autoexception:: XMPPError
:members:
diff --git a/docs/api/xmlstream/stanzabase.rst b/docs/api/xmlstream/stanzabase.rst
index ec28bafe..216ceebe 100644
--- a/docs/api/xmlstream/stanzabase.rst
+++ b/docs/api/xmlstream/stanzabase.rst
@@ -101,7 +101,7 @@ of an interface defined by the parent.
- :ref:`create-stanza-plugins`
- :ref:`create-extension-plugins`
- :ref:`override-parent-interfaces`
-
+
Registering Stanza Plugins
--------------------------
diff --git a/docs/architecture.rst b/docs/architecture.rst
index 2d0170d2..cfc56f3e 100644
--- a/docs/architecture.rst
+++ b/docs/architecture.rst
@@ -88,7 +88,7 @@ when this bit of XML is received (with an assumed namespace of
callback, the callback function is executed with the stanza as its only
parameter.
- .. warning::
+ .. warning::
The callback, aka :term:`stream handler`, is executed in the main event
processing thread. If the handler blocks, event processing will also
block.
@@ -117,7 +117,7 @@ when this bit of XML is received (with an assumed namespace of
paired with an :term:`event handler`::
('event', 'message', msg_copy1, custom_event_handler_1)
- ('event', 'message', msg_copy2, custom_evetn_handler_2)
+ ('event', 'message', msg_copy2, custom_evetn_handler_2)
5. **Process Custom Events**
@@ -127,9 +127,9 @@ when this bit of XML is received (with an assumed namespace of
will be spawned for it.
.. note::
- Events may be raised without needing :term:`stanza objects <stanza object>`.
- For example, you could use ``self.event('custom', {'a': 'b'})``.
- You don't even need any arguments: ``self.event('no_parameters')``.
+ Events may be raised without needing :term:`stanza objects <stanza object>`.
+ For example, you could use ``self.event('custom', {'a': 'b'})``.
+ You don't even need any arguments: ``self.event('no_parameters')``.
However, every event handler MUST accept at least one argument.
Finally, after a long trek, our message is handed off to the user's
diff --git a/docs/create_plugin.rst b/docs/create_plugin.rst
index 7e082a7e..98d682eb 100644
--- a/docs/create_plugin.rst
+++ b/docs/create_plugin.rst
@@ -40,7 +40,7 @@ module. To do so, use the following form when registering the plugin:
self.register_plugin('myplugin', module=mod_containing_my_plugin)
The plugin name must be the same as the plugin's class name.
-
+
Now, we can open our favorite text editors and create ``xep_0077.py`` in
``Slixmpp/slixmpp/plugins``. We want to do some basic house-keeping and
declare the name and description of the XEP we are implementing. If you
@@ -535,9 +535,9 @@ with some additional registration fields implemented.
namespace = 'jabber:iq:register'
name = 'query'
plugin_attrib = 'register'
- interfaces = set(('username', 'password', 'email', 'nick', 'name',
- 'first', 'last', 'address', 'city', 'state', 'zip',
- 'phone', 'url', 'date', 'misc', 'text', 'key',
+ interfaces = set(('username', 'password', 'email', 'nick', 'name',
+ 'first', 'last', 'address', 'city', 'state', 'zip',
+ 'phone', 'url', 'date', 'misc', 'text', 'key',
'registered', 'remove', 'instructions'))
sub_interfaces = interfaces
diff --git a/docs/event_index.rst b/docs/event_index.rst
index b5f249f2..3dd45ce8 100644
--- a/docs/event_index.rst
+++ b/docs/event_index.rst
@@ -60,13 +60,13 @@ Event Index
disco_info
- **Data:** :py:class:`~slixmpp.plugins.xep_0030.stanza.DiscoInfo`
- **Source:** :py:class:`~slixmpp.plugins.xep_0030.disco.xep_0030`
-
+
Triggered whenever a ``disco#info`` result stanza is received.
disco_items
- **Data:** :py:class:`~slixmpp.plugins.xep_0030.stanza.DiscoItems`
- **Source:** :py:class:`~slixmpp.plugins.xep_0030.disco.xep_0030`
-
+
Triggered whenever a ``disco#items`` result stanza is received.
disconnected
@@ -88,13 +88,13 @@ Event Index
gmail_notify
- **Data:** ``{}``
- **Source:** :py:class:`~slixmpp.plugins.gmail_notify.gmail_notify`
-
+
Signal that there are unread emails for the Gmail account associated with the current XMPP account.
gmail_messages
- **Data:** :py:class:`~slixmpp.Iq`
- **Source:** :py:class:`~slixmpp.plugins.gmail_notify.gmail_notify`
-
+
Signal that there are unread emails for the Gmail account associated with the current XMPP account.
got_online
@@ -122,19 +122,19 @@ Event Index
groupchat_message
- **Data:** :py:class:`~slixmpp.Message`
- **Source:** :py:class:`~slixmpp.plugins.xep_0045.xep_0045`
-
+
Triggered whenever a message is received from a multi-user chat room.
groupchat_presence
- **Data:** :py:class:`~slixmpp.Presence`
- **Source:** :py:class:`~slixmpp.plugins.xep_0045.xep_0045`
-
+
Triggered whenever a presence stanza is received from a user in a multi-user chat room.
groupchat_subject
- **Data:** :py:class:`~slixmpp.Message`
- **Source:** :py:class:`~slixmpp.plugins.xep_0045.xep_0045`
-
+
Triggered whenever the subject of a multi-user chat room is changed, or announced when joining a room.
killed
@@ -148,7 +148,7 @@ Event Index
message
- **Data:** :py:class:`~slixmpp.Message`
- **Source:** :py:class:`BaseXMPP <slixmpp.BaseXMPP>`
-
+
Makes the contents of message stanzas available whenever one is received. Be
sure to check the message type in order to handle error messages.
@@ -183,67 +183,67 @@ Event Index
presence_available
- **Data:** :py:class:`~slixmpp.Presence`
- **Source:** :py:class:`~slixmpp.BaseXMPP`
-
+
A presence stanza with a type of '``available``' is received.
presence_error
- **Data:** :py:class:`~slixmpp.Presence`
- **Source:** :py:class:`~slixmpp.BaseXMPP`
-
+
A presence stanza with a type of '``error``' is received.
presence_form
- **Data:** :py:class:`~slixmpp.plugins.xep_0004.Form`
- **Source:** :py:class:`~slixmpp.plugins.xep_0004.xep_0004`
-
+
This event is present in the XEP-0004 plugin code, but is currently not used.
presence_probe
- **Data:** :py:class:`~slixmpp.Presence`
- **Source:** :py:class:`~slixmpp.BaseXMPP`
-
+
A presence stanza with a type of '``probe``' is received.
presence_subscribe
- **Data:** :py:class:`~slixmpp.Presence`
- **Source:** :py:class:`~slixmpp.BaseXMPP`
-
+
A presence stanza with a type of '``subscribe``' is received.
presence_subscribed
- **Data:** :py:class:`~slixmpp.Presence`
- **Source:** :py:class:`~slixmpp.BaseXMPP`
-
+
A presence stanza with a type of '``subscribed``' is received.
presence_unavailable
- **Data:** :py:class:`~slixmpp.Presence`
- **Source:** :py:class:`~slixmpp.BaseXMPP`
-
+
A presence stanza with a type of '``unavailable``' is received.
presence_unsubscribe
- **Data:** :py:class:`~slixmpp.Presence`
- **Source:** :py:class:`~slixmpp.BaseXMPP`
-
+
A presence stanza with a type of '``unsubscribe``' is received.
presence_unsubscribed
- **Data:** :py:class:`~slixmpp.Presence`
- **Source:** :py:class:`~slixmpp.BaseXMPP`
-
+
A presence stanza with a type of '``unsubscribed``' is received.
roster_update
- **Data:** :py:class:`~slixmpp.stanza.Roster`
- **Source:** :py:class:`~slixmpp.ClientXMPP`
-
+
An IQ result containing roster entries is received.
sent_presence
- **Data:** ``{}``
- **Source:** :py:class:`~slixmpp.roster.multi.Roster`
-
+
Signal that an initial presence stanza has been written to the XML stream.
session_end
diff --git a/docs/getting_started/component.rst b/docs/getting_started/component.rst
index efac7ad3..484a8e84 100644
--- a/docs/getting_started/component.rst
+++ b/docs/getting_started/component.rst
@@ -5,7 +5,7 @@ Create and Run a Server Component
=================================
.. note::
-
+
If you have any issues working through this quickstart guide
or the other tutorials here, please either send a message to the
`mailing list <http://groups.google.com/group/slixmpp-discussion>`_
@@ -21,8 +21,8 @@ or ``easy_install``.
pip install slixmpp # Or: easy_install slixmpp
-Many XMPP applications eventually graduate to requiring to run as a server
-component in order to meet scalability requirements. To demonstrate how to
+Many XMPP applications eventually graduate to requiring to run as a server
+component in order to meet scalability requirements. To demonstrate how to
turn an XMPP client bot into a component, we'll turn the echobot example
(:ref:`echobot`) into a component version.
diff --git a/docs/getting_started/echobot.rst b/docs/getting_started/echobot.rst
index df5aa2b0..0d0bab72 100644
--- a/docs/getting_started/echobot.rst
+++ b/docs/getting_started/echobot.rst
@@ -5,7 +5,7 @@ Slixmpp Quickstart - Echo Bot
===============================
.. note::
-
+
If you have any issues working through this quickstart guide
or the other tutorials here, please either send a message to the
`mailing list <http://groups.google.com/group/slixmpp-discussion>`_
@@ -93,7 +93,7 @@ as well.
.. code-block:: python
class EchoBot(slixmpp.ClientXMPP):
-
+
def __init__(self, jid, password):
super(EchoBot, self).__init__(jid, password)
@@ -102,7 +102,7 @@ Handling Session Start
The XMPP spec requires clients to broadcast its presence and retrieve its roster (buddy list) once
it connects and establishes a session with the XMPP server. Until these two tasks are completed,
some servers may not deliver or send messages or presence notifications to the client. So we now
-need to be sure that we retrieve our roster and send an initial presence once the session has
+need to be sure that we retrieve our roster and send an initial presence once the session has
started. To do that, we will register an event handler for the :term:`session_start` event.
.. code-block:: python
@@ -198,7 +198,7 @@ or ``chat``. (Other potential types are ``error``, ``headline``, and ``groupchat
Let's take a closer look at the ``.reply()`` method used above. For message stanzas,
``.reply()`` accepts the parameter ``body`` (also as the first positional argument),
-which is then used as the value of the ``<body />`` element of the message.
+which is then used as the value of the ``<body />`` element of the message.
Setting the appropriate ``to`` JID is also handled by ``.reply()``.
Another way to have sent the reply message would be to use :meth:`send_message <slixmpp.basexmpp.BaseXMPP.send_message>`,
@@ -242,7 +242,7 @@ the newer ``argparse`` module.
We want to accept three parameters: the JID for the echo bot, its password, and a flag for
displaying the debugging logs. We also want these to be optional parameters, since passing
-a password directly through the command line can be a security risk.
+a password directly through the command line can be a security risk.
.. code-block:: python
@@ -303,21 +303,21 @@ the ``EchoBot.__init__`` method instead.
.. note::
- If you are using the OpenFire server, you will need to include an additional
+ If you are using the OpenFire server, you will need to include an additional
configuration step. OpenFire supports a different version of SSL than what
most servers and Slixmpp support.
.. code-block:: python
-
+
import ssl
xmpp.ssl_version = ssl.PROTOCOL_SSLv3
Now we're ready to connect and begin echoing messages. If you have the package
``dnspython`` installed, then the :meth:`slixmpp.clientxmpp.ClientXMPP` method
will perform a DNS query to find the appropriate server to connect to for the
-given JID. If you do not have ``dnspython``, then Slixmpp will attempt to
+given JID. If you do not have ``dnspython``, then Slixmpp will attempt to
connect to the hostname used by the JID, unless an address tuple is supplied
-to :meth:`slixmpp.clientxmpp.ClientXMPP`.
+to :meth:`slixmpp.clientxmpp.ClientXMPP`.
.. code-block:: python
@@ -349,12 +349,12 @@ to :meth:`slixmpp.clientxmpp.ClientXMPP`.
To begin responding to messages, you'll see we called :meth:`slixmpp.basexmpp.BaseXMPP.process`
which will start the event handling, send queue, and XML reader threads. It will also call
the :meth:`slixmpp.plugins.base.base_plugin.post_init` method on all registered plugins. By
-passing ``block=True`` to :meth:`slixmpp.basexmpp.BaseXMPP.process` we are running the
+passing ``block=True`` to :meth:`slixmpp.basexmpp.BaseXMPP.process` we are running the
main processing loop in the main thread of execution. The :meth:`slixmpp.basexmpp.BaseXMPP.process`
call will not return until after Slixmpp disconnects. If you need to run the client in the background
for another program, use ``block=False`` to spawn the processing loop in its own thread.
-.. note::
+.. note::
Before 1.0, controlling the blocking behaviour of :meth:`slixmpp.basexmpp.BaseXMPP.process` was
done via the ``threaded`` argument. This arrangement was a source of confusion because some users
diff --git a/docs/getting_started/iq.rst b/docs/getting_started/iq.rst
index cbf3d476..be15e170 100644
--- a/docs/getting_started/iq.rst
+++ b/docs/getting_started/iq.rst
@@ -36,7 +36,7 @@ stanzas this way. The relevant methods are:
* :meth:`~slixmpp.basexmpp.BaseXMPP.make_iq_error`
* :meth:`~slixmpp.basexmpp.BaseXMPP.make_iq_query`
-These methods all follow the same pattern: create or modify an existing
+These methods all follow the same pattern: create or modify an existing
:class:`~slixmpp.stanza.iq.Iq` stanza, set the ``'type'`` value based
on the method name, and finally add a ``<query />`` element with the given
namespace. For example, to produce the query above, you would use:
@@ -74,7 +74,7 @@ These options are:
To change the timeout for a single call, the ``timeout`` parameter works:
.. code-block:: python
-
+
iq.send(timeout=60)
* ``callback``: When not using a blocking call, using the ``callback``
@@ -85,7 +85,7 @@ These options are:
.. code-block:: python
- cb_name = iq.send(callback=self.a_callback)
+ cb_name = iq.send(callback=self.a_callback)
# ... later if we need to cancel
self.remove_handler(cb_name)
@@ -133,7 +133,7 @@ interfacting with the :class:`~slixmpp.stanza.iq.Iq` payload.
* :ref:`create-plugin`
* :ref:`work-with-stanzas`
* :ref:`using-handlers-matchers`
-
+
The typical way to respond to :class:`~slixmpp.stanza.iq.Iq` requests is
to register stream handlers. As an example, suppose we create a stanza class
diff --git a/docs/getting_started/proxy.rst b/docs/getting_started/proxy.rst
index b5e74180..e45b2b3a 100644
--- a/docs/getting_started/proxy.rst
+++ b/docs/getting_started/proxy.rst
@@ -5,7 +5,7 @@ Enable HTTP Proxy Support
=========================
.. note::
-
+
If you have any issues working through this quickstart guide
or the other tutorials here, please either send a message to the
`mailing list <http://groups.google.com/group/slixmpp-discussion>`_
diff --git a/docs/getting_started/sendlogout.rst b/docs/getting_started/sendlogout.rst
index 5b23a469..7669e340 100644
--- a/docs/getting_started/sendlogout.rst
+++ b/docs/getting_started/sendlogout.rst
@@ -2,7 +2,7 @@ Sign in, Send a Message, and Disconnect
=======================================
.. note::
-
+
If you have any issues working through this quickstart guide
or the other tutorials here, please either send a message to the
`mailing list <http://groups.google.com/group/slixmpp-discussion>`_
@@ -10,7 +10,7 @@ Sign in, Send a Message, and Disconnect
<xmpp:sleek@conference.jabber.org?join>`_.
A common use case for Slixmpp is to send one-off messages from
-time to time. For example, one use case could be sending out a notice when
+time to time. For example, one use case could be sending out a notice when
a shell script finishes a task.
We will create our one-shot bot based on the pattern explained in :ref:`echobot`. To
@@ -24,7 +24,7 @@ for the JID that will receive our message, and the string content of the message
class SendMsgBot(slixmpp.ClientXMPP):
-
+
def __init__(self, jid, password, recipient, msg):
super(SendMsgBot, self).__init__(jid, password)
@@ -52,7 +52,7 @@ Finally, we need to disconnect the client using :meth:`disconnect <slixmpp.xmlst
Now, sent stanzas are placed in a queue to pass them to the send thread. If we were to call
:meth:`disconnect <slixmpp.xmlstream.XMLStream.disconnect>` without any parameters, then it is possible
for the client to disconnect before the send queue is processed and the message is actually
-sent on the wire. To ensure that our message is processed, we use
+sent on the wire. To ensure that our message is processed, we use
:meth:`disconnect(wait=True) <slixmpp.xmlstream.XMLStream.disconnect>`.
.. code-block:: python
diff --git a/docs/guide_xep_0030.rst b/docs/guide_xep_0030.rst
index cd0f4850..674b9eb5 100644
--- a/docs/guide_xep_0030.rst
+++ b/docs/guide_xep_0030.rst
@@ -159,7 +159,7 @@ item itself, and the JID and node that will own the item.
.. note::
In this case, the owning JID and node are provided with the
- parameters ``ijid`` and ``node``.
+ parameters ``ijid`` and ``node``.
Peforming Disco Queries
-----------------------
@@ -197,5 +197,5 @@ a full Iq stanza.
info = self['xep_0030'].get_info(node='foo', local=True)
items = self['xep_0030'].get_items(jid='somejid@mycomponent.example.com',
- node='bar',
+ node='bar',
local=True)
diff --git a/docs/index.rst b/docs/index.rst
index 33d6cd00..3e97fb09 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -31,7 +31,7 @@ Slixmpp
Slixmpp is an :ref:`MIT licensed <license>` XMPP library for Python 2.6/3.1+,
and is featured in examples in
-`XMPP: The Definitive Guide <http://oreilly.com/catalog/9780596521271>`_
+`XMPP: The Definitive Guide <http://oreilly.com/catalog/9780596521271>`_
by Kevin Smith, Remko Tronçon, and Peter Saint-Andre. If you've arrived
here from reading the Definitive Guide, please see the notes on updating
the examples to the latest version of Slixmpp.
@@ -113,7 +113,7 @@ Here's your first Slixmpp Bot:
if __name__ == '__main__':
- # Ideally use optparse or argparse to get JID,
+ # Ideally use optparse or argparse to get JID,
# password, and log level.
logging.basicConfig(level=logging.DEBUG,
@@ -129,7 +129,7 @@ Getting Started (with Examples)
-------------------------------
.. toctree::
:maxdepth: 1
-
+
getting_started/echobot
getting_started/sendlogout
getting_started/component
@@ -144,7 +144,7 @@ Tutorials, FAQs, and How To Guides
----------------------------------
.. toctree::
:maxdepth: 1
-
+
faq
xeps
xmpp_tdg
@@ -156,7 +156,7 @@ Tutorials, FAQs, and How To Guides
Plugin Guides
~~~~~~~~~~~~~
-.. toctree::
+.. toctree::
:maxdepth: 1
guide_xep_0030
@@ -173,7 +173,7 @@ API Reference
-------------
.. toctree::
:maxdepth: 2
-
+
event_index
api/clientxmpp
api/componentxmpp
diff --git a/docs/license.rst b/docs/license.rst
index cbcf5c11..d9505344 100644
--- a/docs/license.rst
+++ b/docs/license.rst
@@ -1,4 +1,4 @@
-.. _license:
+.. _license:
License (MIT)
=============
diff --git a/docs/xeps.rst b/docs/xeps.rst
index 3653d10a..c5b4592d 100644
--- a/docs/xeps.rst
+++ b/docs/xeps.rst
@@ -4,9 +4,9 @@ Supported XEPS
======= ============================= ================
XEP Description Notes
======= ============================= ================
-`0004`_ Data forms
-`0009`_ Jabber RPC
-`0012`_ Last Activity
+`0004`_ Data forms
+`0009`_ Jabber RPC
+`0012`_ Last Activity
`0030`_ Service Discovery
`0033`_ Extended Stanza Addressing
`0045`_ Multi-User Chat (MUC) Client-side only
diff --git a/docs/xmpp_tdg.rst b/docs/xmpp_tdg.rst
index c0d85196..dc921f8f 100644
--- a/docs/xmpp_tdg.rst
+++ b/docs/xmpp_tdg.rst
@@ -1,7 +1,7 @@
Following *XMPP: The Definitive Guide*
======================================
-Slixmpp was featured in the first edition of the O'Reilly book
+Slixmpp was featured in the first edition of the O'Reilly book
`XMPP: The Definitive Guide <http://oreilly.com/catalog/9780596521271/>`_
by Peter Saint-Andre, Kevin Smith, and Remko Tronçon. The original source code
for the book's examples can be found at http://github.com/remko/xmpp-tdg. An
@@ -79,7 +79,7 @@ Updated Code
user = self.backend.getUserFromJID(event["from"].jid)
if user is not None:
self.backend.addMessageFromUser(message, user)
-
+
def handleMessageAddedToBackend(self, message) :
body = message.user + ": " + message.text
htmlBody = "<p><a href='%(uri)s'>%(user)s</a>: %(message)s</p>" % {
@@ -203,7 +203,7 @@ Example 14-7. (Page 225)
**Extended CheshiR IM server component implementation.**
.. note::
- Since the CheshiR examples build on each other, see previous
+ Since the CheshiR examples build on each other, see previous
sections for corrections to code that is not marked as new in the book
example.
@@ -246,4 +246,4 @@ Updated Code
self.sendAllContactSubscriptionRequestsToUser(userJID)
`View full source <http://github.com/legastero/xmpp-tdg/blob/master/code/CheshiR/Component.py>`_ |
-`View original code <http://github.com/remko/xmpp-tdg/blob/master/code/CheshiR/Component.py>`_
+`View original code <http://github.com/remko/xmpp-tdg/blob/master/code/CheshiR/Component.py>`_