MatriX is the successor of the agsXMPP library. For commercial projects we recommend to use MatriX.
agsXMPP is a SDK / library for the eXtensibleMessaging and Presence Protocol (XMPP) protocol written in managed C# dedicated to .NET and Mono technologies. The SDK is released as open source under a dual license.
Our SDK could be used for XMPP client, server and component development.
Here is a small sample how easy you can login to a XMPP Server and send a simple chat-message to another user in only 3 lines of code with agsXMPP:
XmppClientConnection xmpp = new XmppClientConnection("jabber.org"); xmpp.Open("myusername", "mysecret"); xmpp.OnLogin += delegate(object o) { xmpp.Send(new Message("test@jabber.org", MessageType.chat, "Hello, how are you?")); };
Features:
-
cross platform, designed for:
- Microsoft .NET Framework
- Microsoft .NET Compact Framework (Pocket PC, Smartphone, Windows CE)
- Mono
- Portable .NET
- compatible with .NET 1.1 and .NET 2.0
- Multi OS (Windows, Linux, Mac…)
- for client, server and web applications
- fast and lightweight
- uses its own simple and fast XML-Parser
- open source
- easy to use
XMPP Features:
- SSL, TLS
- StartTLS
- SASL (PLAIN, DIGEST-MD5)
- SRV-Records
- Stringprep
- Agents
- Roster
- Presence
- Message
- Single Sign On (SSO, GSSAPI, Kerberos)
- Transporting XML-RPC over Jabber (XEP-0009)
- Jabber Browsing (XEP-0011)
- Last Activity (XEP-0012)
- Message Events (XEP-0022)
- HTTP-Polling (XEP-0025)
- Service Discovery (XEP-0030)
- Multi-User Chat (XEP-0045)
- Ad-Hoc Commands (XEP-0050)
- Vcard (XEP-0054)
- Jabber Search (XEP-0055)
- Publish Subscribe (XEP-0060)
- Out of Band Data (XEP-0066)
- XHTML-IM (XEP-0071)
- In-Band Registration (XEP-0077)
- Non-SASL Authentication (XEP-0078)
- Geographical Location (XEP-0080)
- Chat State Notifications (XEP-0085)
- Software Version (XEP-0092)
- JID Escaping (XEP-0106)
- Jabber Component Protocol (XEP-0114)
- Stream Compression (XEP-0138)
- …