Skip to main content

A Python XMPP server

Project description

https://img.shields.io/pypi/v/pyjabber.svg https://img.shields.io/github/actions/workflow/status/dinothor/pyjabber/python-app.yml Documentation Status

PyJabber is a server for Jabber/XMPP entirely written in Python, with minimal reliance on external libraries.
It strives to provide a simple, lightweight, and comprehensible codebase, featuring a modular structure that facilitates extension through the implementation of necessary XEPs for specific use cases.
While initially designed to fulfill the requirements of the multi-agent system SPADE, it can be easily customized to suit any other purpose.

Installation

pip install pyjabber

Quick start

from pyjabber import Server

my_server = Server()
my_server.start()

or

python -m pyjabber --help
Usage: python -m pyjabber [OPTIONS]

Options:
  --host TEXT               Host name  [default: localhost]
  --client_port INTEGER     Server-to-client port  [default: 5222]
  --server_port INTEGER     Server-to-server port  [default: 5269]
  --family [ipv4|ipv6]      (ipv4 / ipv6)  [default: ipv4]
  --timeout INTEGER         Timeout for connection  [default: 60]
  --log_level [INFO|DEBUG]  Log level alert  [default: INFO]
  --log_path TEXT           Path to log dumpfile.
  -D, --debug               Enables debug mode in Asyncio.
  --help                    Show this message and exit.

Features

Status

Description

TLS

Implemented

v1.2, with localhost certificate and CA included

SASL

Implemented

PLAIN

Roster

Implemented

CRUD avaliable

Presence

Partialy implemented

Subscribe, Unsubscribed, Initial presence and Unavailable

Plugins

Status

Description

XEP-0077

IMPLEMENTED

XEP-0199

IMPLEMENTED

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyjabber-0.1.2.tar.gz (1.2 MB view details)

Uploaded Source

Built Distribution

pyjabber-0.1.2-py3-none-any.whl (1.0 MB view details)

Uploaded Python 3

File details

Details for the file pyjabber-0.1.2.tar.gz.

File metadata

  • Download URL: pyjabber-0.1.2.tar.gz
  • Upload date:
  • Size: 1.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.11.6

File hashes

Hashes for pyjabber-0.1.2.tar.gz
Algorithm Hash digest
SHA256 3038cb68c71fb421e0eeccd7053000fffb3125cd3dd53bfb590f344c0256d8c5
MD5 82226431fe22b7c6be5c81d07306c418
BLAKE2b-256 a00516346199499c7f7325d8178bbcd7551d811c69cb893a4a81ec2aa590d704

See more details on using hashes here.

File details

Details for the file pyjabber-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: pyjabber-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.11.6

File hashes

Hashes for pyjabber-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 e5516b92766342882fa7b79e0ec3133f235f30db033de81e2d43ef77a3ff4e8b
MD5 c7ce968ef2a51c19b133208a38813fc3
BLAKE2b-256 aea6bd099d5d1eb16c997b0f07bb64760486751af17d7963885e7a699305b87f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page