summaryrefslogtreecommitdiff
path: root/docs/index.rst
diff options
context:
space:
mode:
Diffstat (limited to 'docs/index.rst')
-rw-r--r--docs/index.rst112
1 files changed, 48 insertions, 64 deletions
diff --git a/docs/index.rst b/docs/index.rst
index 6f6d8913..92e17eec 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -1,49 +1,36 @@
-SleekXMPP
+Slixmpp
#########
.. sidebar:: Get the Code
- .. code-block:: sh
+ The latest source code for Slixmpp may be found on the `Git repo
+ <http://git.poez.io/slixmpp>`_. ::
- pip install sleekxmpp
+ git clone git://git.poez.io/slixmpp
- The latest source code for SleekXMPP may be found on `Github
- <http://github.com/fritzy/SleekXMPP>`_. Releases can be found in the
- ``master`` branch, while the latest development version is in the
- ``develop`` branch.
-
- **Latest Stable Release**
- - `1.0 <http://github.com/fritzy/SleekXMPP/zipball/1.0>`_
-
- **Develop Releases**
- - `Latest Develop Version <http://github.com/fritzy/SleekXMPP/zipball/develop>`_
-
-
- A mailing list and XMPP chat room are available for discussing and getting
- help with SleekXMPP.
-
- **Mailing List**
- `SleekXMPP Discussion on Google Groups <http://groups.google.com/group/sleekxmpp-discussion>`_
+ An XMPP chat room is available for discussing and getting help with slixmpp.
**Chat**
- `sleek@conference.jabber.org <xmpp:sleek@conference.jabber.org?join>`_
+ `slixmpp@muc.poez.io <xmpp:slixmpp@muc.poez.io?join>`_
+ **Reporting bugs**
+ You can report bugs at http://dev.louiz.org/projects/slixmpp/issues.
-SleekXMPP 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>`_
-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 SleekXMPP.
+.. note::
+ slixmpp is a friendly fork of `SleekXMPP <https://github.com/fritzy/SleekXMPP>`_
+ which goal is to use asyncio instead of threads to handle networking. See
+ :ref:`differences`.
-SleekXMPP's design goals and philosphy are:
+Slixmpp is an :ref:`MIT licensed <license>` XMPP library for Python 3.4+,
+
+Slixmpp's design goals and philosphy are:
**Low number of dependencies**
- Installing and using SleekXMPP should be as simple as possible, without
+ Installing and using Slixmpp should be as simple as possible, without
having to deal with long dependency chains.
As part of reducing the number of dependencies, some third party
- modules are included with SleekXMPP in the ``thirdparty`` directory.
+ modules are included with Slixmpp in the ``thirdparty`` directory.
Imports from this module first try to import an existing installed
version before loading the packaged version, when possible.
@@ -55,19 +42,20 @@ SleekXMPP's design goals and philosphy are:
XEPs.
**Rewarding to work with**
- As much as possible, SleekXMPP should allow things to "just work" using
+ As much as possible, Slixmpp should allow things to "just work" using
sensible defaults and appropriate abstractions. XML can be ugly to work
with, but it doesn't have to be that way.
-Here's your first SleekXMPP Bot:
+
+Here's your first Slixmpp Bot:
--------------------------------
.. code-block:: python
+ import asyncio
import logging
- from sleekxmpp import ClientXMPP
- from sleekxmpp.exceptions import IqError, IqTimeout
+ from slixmpp import ClientXMPP
class EchoBot(ClientXMPP):
@@ -85,27 +73,13 @@ Here's your first SleekXMPP Bot:
# Here's how to access plugins once you've registered them:
# self['xep_0030'].add_feature('echo_demo')
- # If you are working with an OpenFire server, you will
- # need to use a different SSL version:
- # import ssl
- # self.ssl_version = ssl.PROTOCOL_SSLv3
-
def session_start(self, event):
self.send_presence()
self.get_roster()
# Most get_*/set_* methods from plugins use Iq stanzas, which
- # can generate IqError and IqTimeout exceptions
- #
- # try:
- # self.get_roster()
- # except IqError as err:
- # logging.error('There was an error getting the roster')
- # logging.error(err.iq['error']['condition'])
- # self.disconnect()
- # except IqTimeout:
- # logging.error('Server is taking too long to respond')
- # self.disconnect()
+ # are sent asynchronously. You can almost always provide a
+ # callback that will be executed when the reply is received.
def message(self, msg):
if msg['type'] in ('chat', 'normal'):
@@ -113,7 +87,7 @@ Here's your first SleekXMPP 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,
@@ -121,15 +95,24 @@ Here's your first SleekXMPP Bot:
xmpp = EchoBot('somejid@example.com', 'use_getpass')
xmpp.connect()
- xmpp.process(block=True)
+ xmpp.process()
+
+
+To read if you come from SleekXMPP
+----------------------------------
+.. toctree::
+ :maxdepth: 1
+
+ differences
+ using_asyncio
Getting Started (with Examples)
-------------------------------
.. toctree::
:maxdepth: 1
-
+
getting_started/echobot
getting_started/sendlogout
getting_started/component
@@ -144,8 +127,7 @@ Tutorials, FAQs, and How To Guides
----------------------------------
.. toctree::
:maxdepth: 1
-
- faq
+
xeps
xmpp_tdg
howto/stanzas
@@ -156,12 +138,12 @@ Tutorials, FAQs, and How To Guides
Plugin Guides
~~~~~~~~~~~~~
-.. toctree::
+.. toctree::
:maxdepth: 1
guide_xep_0030
-SleekXMPP Architecture and Design
+Slixmpp Architecture and Design
---------------------------------
.. toctree::
:maxdepth: 3
@@ -173,7 +155,7 @@ API Reference
-------------
.. toctree::
:maxdepth: 2
-
+
event_index
api/clientxmpp
api/componentxmpp
@@ -184,9 +166,7 @@ API Reference
api/xmlstream/handler
api/xmlstream/matcher
api/xmlstream/xmlstream
- api/xmlstream/scheduler
api/xmlstream/tostring
- api/xmlstream/filesocket
Core Stanzas
~~~~~~~~~~~~
@@ -197,8 +177,6 @@ Core Stanzas
api/stanza/message
api/stanza/presence
api/stanza/iq
- api/stanza/error
- api/stanza/stream_error
Plugins
~~~~~~~
@@ -220,8 +198,14 @@ Additional Info
* :ref:`modindex`
* :ref:`search`
-Credits
--------
+SleekXMPP Credits
+-----------------
+
+.. note::
+ Those people made SleekXMPP, so you should not bother them if
+ you have an issue with slixmpp. But it’s still fair to credit
+ them for their work.
+
**Main Author:** `Nathan Fritz <http://andyet.net/team/fritzy>`_
`fritzy@netflint.net <xmpp:fritzy@netflint.net?message>`_,