XMPP Communication Service

This is the mattrude.com communication service. This XMPP service provides text messaging via a local client. Many XMPP servers (like this one) are federated, meaning they are able to connect to diffrent XMPP servers on diffrent domains, similer to how email allows you to send messages to users on other domains/servers. This service is in complete compliance with XEP-0387.

This service requires the use of a client to connect to the server with. Please see the client list for a small list of available clients that may be used. My personal preferred clients are Gajim or Swift for desktop/laptops and Conversations or ChatSecure for mobile.


  • Port: 5222
  • Domain: mattrude.com
  • Server Name: im.mattrude.com
  • Rooms: conference.mattrude.com
  • Socks 5 Proxy: proxy.mattrude.com
  • File Uploads: upload.mattrude.com
XMPP Compliance Tester score check.messaging.one server score

Server Features

XMPP (previous known as jabber) is an instant messaging system that is free, standard, and open; allowing you to chat live with your family, friends and professional contacts, and be warned of the presence of your contacts, while keeping your independence vis-à-vis your software and service providers.

Archiving / Storage
File Sharing

Archiving / Storage

Offline Storage

Offline Storage allows for the storage of offline messages to disk, ready to be delivered to users when the next log in. This is implement using XEP-0160, XEP-0203 and XEP-0091 for backwards compatibility with older clients.

Message Archive Management

It is a common desire for users of XMPP to want to store their messages in a central archive on their server. This feature allows them to record conversations that take place on clients that do not support local history storage, to synchronise conversation history seamlessly between multiple clients, to read the history of a MUC room, or to view old items in a pubsub node.

Message Carbons

Message Carbons allow users to maintain a shared and synchronized view of all conversations across all their online clients and devices.


vCards are a online version of a business card, as implemented in XEP-0054. Users are not required to fill in a vCard and can supply as much or as little as they like.


The roster allows users to keep and manage a contact list or addressbook. Any modifications made by a user to their roster is shared between all clients but some clients may need to log out and back in or manually request the updated roster before the changes are displayed.

Personal Eventing Protocal

Often users will want to publish details about their mood, the music they are listening to or the activity they are currently taking part in. Personal Eventing Protocal will allow users to publish that information and have interested parties receive it.

File Sharing

HTTP File Upload

HTTP File Upload (XEP-0363) allows a user to upload a file to the server, the server will then provide a URL link back to that file that anyone may view.

The max upload file size limit is currenly set at 500 MBytes, with a quota size of 2 GBytes; files will be stored for 90 days.

File Transfer

File Transfer (XEP-0065) allows the server to proxy file transfers between 2 clients that are behind NAT routers or firewalls, and otherwise wouldn’t be able to transfer files.

Web Presence

Web Presence provides the status of a user via a image URL. Please see the page Web Presence for more infromation on how to use the web presence service.


Optimized for mobile use, this server allows clients to use low power idle while waiting for messaages.


While the bandwidth usage of XMPP isn’t great, compressing the data sent to/from your server can give significant benefits to those on slow connections, such as dial-up or mobile networks.

Compression is enabled via mod_compression that implements XEP-0138, and supports the zlib compression algorithm.

Push Notifications

The purpose of push notifications (XEP-0357) is to inform users of new messages or other pertinent information even when they have no XMPP clients online.

Typically, these notifications are delivered to a user’s mobile device, displaying a notice that can trigger opening an XMPP client to continue a conversation or answer a Jingle session request.

Client State Indication

Client State Indication or CSI (XEP-0352) is a way for mobile clients to tell the server that they are sitting in someones pocket and would rather not get some less urgent things pushed to it.



  • SSL/TLS encryption is required between clients and servers (C2S) and server to server (S2S) connections
  • The backend is configured to store hashed and salted authentication data
  • Use OMEMO or Off-the-Record (OTR) in your chat client to have fully encrypted chats
  • You may also validate the servers TLS Certificates.


No more information is collected and stored than what is absolutely necessary. This includes rosters, vCards, offline messages, etc.

Spam and abuse including advertisements of any kind will not be tolerated on this network. For spam or abuse please contact us with the full details.

Please see the Privacy Policy for a more detailed explanation.

This server keeps minimal logs of users connections. Error logs are kept for 48 hours.


Contact Information

This site is maintained by Matt Rude (0x7fd07a5124cd67c8). If you would like to report any problems or bugs, please send a email or XMPP messsage to the email address listed in one of my public keys.

See my contact.txt file for my omemo keys.

ipv6 ready

This Service

This service is running a clustered configuration, of two servers, running ejabberd version 20.04.40 on Ubuntu version 19.10. The source code for ejabberd may be found on github in the processone/ejabberd repository. The program ejabberd is licensed under the GNU General Public License, version 2.0.

Website Source

The source for this website may be found in the github repository xmpp-site-lite. The site is licensed under the GNU General Public License, version 3.0, and may be used or modified under the terms of that license.