yaxim Features
yaxim (Yet Another XMPP Instant Messenger) is an Open Source (GPLv3) chat application for Android. yaxim supports:
- Connection with a single XMPP server
- Security popup on self-signed/invalid TLS certificates
- Automatic (re)connection after turning on your phone and when changing between mobile/WiFi networks
- Chatting with friends and in group chats
- Sending and receiving of text messages, images and files
- Managing of your contact list
The yaxim design goals are, in their order of importance:
- Usability for normal people (by following and advancing the Easy XMPP guidelines)
- Low overhead: yaxim works on low-end Android devices starting with Android 4.0 “Ice Cream Sandwich”
- Security: the goal is to provide a pragmatic security level suitable for normal users
Implemented XEPs
- XEP-0030: Service Discovery
- XEP-0045: Multi-User Chat
- XEP-0077: In-Band Registration (no forms support)
- XEP-0091: Legacy Delayed Delivery (supported, obsoleted by XEP-0203)
- XEP-0092: Software Version
- XEP-0115: Entity Capabilities
- XEP-0147: XMPP URI Scheme Query Components (since 0.9.0)
- XEP-0184: Message Delivery Receipts (green checkmark for acknowledged messages)
- XEP-0198: Stream Management (acknowledges and fast reconnects on 3G/WiFi switching)
- XEP-0199: XMPP Ping (automatic server pinging every 15 minutes)
- XEP-0203: Delayed Delivery
- XEP-0249: Direct MUC Invitations (receive-only since 0.9.0)
- XEP-0279: Stanza Forwarding (used for XEP-0280)
- XEP-0280: Message Carbons
- XEP-0308: Last Message Correction (receiving since 0.9.0, sending since 0.9.3)
- XEP-0313: Message Archive Management (since 0.9.9)
- XEP-0352: Client State Indications (0.9.0: only using
google:queue
, needsmod_csi_compat
) - XEP-0363: HTTP File Upload: (since 0.9.3)
- XEP-0379: Pre-Authenticated Roster Subscription (since 0.9.0)
- XEP-0392: Consistent Color Generation (since 0.9.3)
- XEP-0393: Message Styling (since 0.9.3)
- XEP-0410: MUC Self-Ping (since 0.9.0; automatic pinging of MUCs every 15 minutes)
An XMPP client can also be described by means of the Description Of A Project project, using this extended syntax:
Roadmap
Features planned for the mid-term future, starting with a cleanup and refactoring of the backend:
- XEP-0384: OMEMO: #197
- XEP-0237: Roster Versioning: #40
- XEP-0138: Stream Compression deferred due to security issues
Nice to Have
Things to be implemented in the far future:
- XEP-0080: User Location
- XEP-0224: Attention: #75
- #80: Tablet UI
- #15: Multi-account support
- #82: OTR encryption
- encrypted file transfers
- Avatars (XEP-0084 or XEP-0153): #25