Profanity is a console based XMPP client written in C using ncurses and libstrophe, inspired by Irssi. Cross platform, lightweight, very handy. Takes a bit of fiddling to manage multiple accounts, though.
TinyXMPP is a small XMPP client library for Python applications. It allows developers to easily connect to XMPP servers and exchange messages in a fast and secure way.
The only demo code seems to be in the README right now.
sendxmpp is the XMPP equivalent of sendmail. It is an alternative to the old sendxmpp written in Perl.
Dependencies:
qXMPPconsole is a browser based XMPP console. It is writen with the purpose to aid in learning the XMPP protocol. So far it is tested only over websockets and connecting to localhost. Comments, issues, pull requests are welcome.
The application is a single static web page.
A script that downloads and decrypts OMEMO-encrypted files sent over XMPP. Useful when your XMPP client supports OMEMO-encrypted messages, but not files.
A CLI based XMPP client. Useful for sending one-shot messages or in conjunction with a long-running process (e.g., tail -f /var/log/message | grep blah
). Written in Go so it's statically compiled and surprisingly portable.
Pull the dependencies into $GOPATH: go get salsa.debian.org/mdosch/go-sendxmpp
Cross compiling for OpenWRT running on MIPS: GOOS=linux GOARCH=mipsle GOMIPS=softfloat go build -ldflags "-s -w" salsa.debian.org/mdosch/go-sendxmpp
Cross compiling for OpenWRT running on ARM v7: GOOS=linux GOARCH=arm GOARM=7 go build salsa.debian.org/mdosch/go-sendxmpp
Compiling for the native host: go build
The resulting executable will be ~/go-sendxmpp/go-sendxmpp
. Upload to the box in question and enjoy.
I rename the executables so that the destination architecture is explicit:
A friendly lightweight wrapper around slixmpp for writing XMPP bots in Python. The goal is to make writing and running XMPP bots easy and fun. xbotlib is a single file implementation which can easily be understood and extended. It provides a small API surface which reflects the slixmpp way of doing things.
The xbotlib source code and ideas are largely borrowed/stolen/adapted/reimagined from the XMPP bot experiments that have gone on and are still going on in Varia.
Xabber for Web is an open-source XMPP client built to provide first-class chat experience in any modern browser. It looks and works great and is meant to provide seamless convergence with other versions of Xabber for different platforms.
Looks like more node.js webshit. Strongly resembles Discord's UI. An account's Xabber settings are synched from the server.
black-hole is a configurable XMPP ↔ Discord bridge written in Python 3.6.
It uses Discord.py@rewrite and aioxmpp.
Worth reading through just because it demonstrates how to use aioxmpp.
XMPP Bot to provide version/uptime/contact information for federated XMPP servers. !commands. Uses documented XEPs for its functionality, so make sure they're enabled on the server side. MUC enabled. "Federated" is the key here - the has to be able to contact other servers on the XMPP network.
Written using Python3.
Forked the repo: https://github.com/virtadpt/xmpp-chatbot
This repository contains a blacklist.txt of XMPP domains that are used by spammers and do not react to abuse complaints. Servers are added and removed according to the following rules. The track record leading to addition or removal is documented in the respective git commit.
A customized XMPP server. Seems very early in development.
Movim is a decentralized social platform, written in PHP and HTML5 and based on XMPP. Database backend for caching. Seems suited for not-shared hosting because php-fpm is recommended, as well as Websockets and a long-running daemon (which shared hosting providers like Dreamhost don't like and kill automatically). Seems to require experienced webapp admins because knowledge of the application architecture is required.
Requires that the server support XEP-0060 (pubsub) because message transfer is built on top of it.
Python utility, which decrypts TLS encrypted XMPP traffic by acting as an active MiTM and looking for STARTTLS requests.
An XMPP echo bot written with sed and a shell script. Maybe something that I could tinker with to run on embedded devices? Not needing libstrophe is a plus.
A simple postfix mail filter ("milter") that converts emails to XMPP messages. The main use-case is converting monitoring system email alerts into XMPP messages. This is useful because email support in monitoring systems is universal, but XMPP support is very spotty. Posts to XMPP MUCs.
A simple, self-contained implementation of XMPP in Go. Has a small XMPP server for testing, debugging, and probably mocking. Designed to be pluggable and extensible. Supports just a few XEPs so it's probably not general purpose right now.
An XMPP library for use with Python 3.4+ asyncio. Can be used with v3.3 if you install the asyncio module (it comes with v3.4 and later). Tries to shield you from working with XML. Requires TLS by default.
Please note that this does not point to the Github repo, but the maintained Codeberg repo.
A module for Prosody that implements a REST API. Meant for building bots. Can both accept and transmit XML and JSON. Can be configured to send replies to a callback URL. HTTP status codes 202 and 204 are interpreted as "message accepted" without needing to send an XMPP reply stanza.