All Projects → qxmpp-project → Qxmpp

qxmpp-project / Qxmpp

Licence: lgpl-2.1
Cross-platform C++ XMPP client and server library

Projects that are alternatives of or similar to Qxmpp

Kaidan
[Replaced by https://invent.kde.org/network/kaidan] Kaidan, a simple and user-friendly Jabber/XMPP client for every device and platform.
Stars: ✭ 67 (-77.67%)
Mutual labels:  cmake, xmpp, qt5
Swift
Swift XMPP client and Swiften XMPP library
Stars: ✭ 190 (-36.67%)
Mutual labels:  xmpp, qt, qt5
Notepanda
📃 A simple cross-platform notepad. Based on Qt and C++.
Stars: ✭ 134 (-55.33%)
Mutual labels:  cmake, qt, qt5
Screencloud
Screenshot sharing application for Windows, Mac and Linux.
Stars: ✭ 537 (+79%)
Mutual labels:  cmake, qt, qt5
Nitroshare Desktop
Network file transfer application for Windows, OS X, & Linux
Stars: ✭ 1,150 (+283.33%)
Mutual labels:  cmake, qt, qt5
Qhttpengine
HTTP server for Qt applications
Stars: ✭ 112 (-62.67%)
Mutual labels:  cmake, qt, qt5
Mini Cmake Qt
A minimal CMake template for Qt 5 & 6 projects
Stars: ✭ 156 (-48%)
Mutual labels:  cmake, qt, qt5
Swiftly
Swiftly is an easy to use Qt/C++ web framework
Stars: ✭ 20 (-93.33%)
Mutual labels:  qt, qt5
dannyAVgleDownloader
知名網站avgle下載器
Stars: ✭ 27 (-91%)
Mutual labels:  qt, qt5
Log4qt
Log4Qt - Logging for the Qt cross-platform application framework
Stars: ✭ 292 (-2.67%)
Mutual labels:  cmake, qt5
tenplayer
Modern Music Player for Linux
Stars: ✭ 18 (-94%)
Mutual labels:  qt, qt5
QUaServer
Qt C++ wrapper for open62541 server stack
Stars: ✭ 78 (-74%)
Mutual labels:  qt, qt5
psimedia
Audio/video RTP abstraction library
Stars: ✭ 19 (-93.67%)
Mutual labels:  qt, xmpp
qSIP
VoIP/SIP client (softphone)
Stars: ✭ 20 (-93.33%)
Mutual labels:  qt, qt5
Segs
💪 SEGS - Super Entity Game Server
Stars: ✭ 190 (-36.67%)
Mutual labels:  cmake, qt5
QtExamples
Translations of the official Qt examples into PyQt5 (also PySide2) and more.
Stars: ✭ 39 (-87%)
Mutual labels:  qt, qt5
Anms Codes
Efficient adaptive non-maximal suppression algorithms for homogeneous spatial keypoint distribution
Stars: ✭ 174 (-42%)
Mutual labels:  cmake, qt
screenshotgun
Open cross-platform screenshoter with cloud support and server part
Stars: ✭ 23 (-92.33%)
Mutual labels:  qt, qt5
asn1scc.IDE
Qt Creator plugin for asn1scc - ASN.1/ACN compiler for embedded systems
Stars: ✭ 15 (-95%)
Mutual labels:  qt, qt5
QtDemos
This is the collection of Qt demos to solve the problem from StackOverflow or I faced.
Stars: ✭ 23 (-92.33%)
Mutual labels:  qt, qt5

QXmpp XMPP:2021 Client IM Mobile+ Compliance Badge Build Status Code Coverage Latest release Website

QXmpp is a cross-platform C++ XMPP client and server library. It is written in C++ and uses Qt framework.

QXmpp strives to be as easy to use as possible, the underlying TCP socket, the core XMPP RFCs (RFC6120 and RFC6121) and XMPP extensions have been nicely encapsulated into classes. QXmpp is ready to build XMPP clients complying with the XMPP Compliance Suites 2021 for IM and Advanced Mobile. It comes with full API documentation, automatic tests and some examples.

QXmpp uses Qt extensively, and as such users need to a have working knowledge of C++ and Qt basics (Signals and Slots and Qt data types).

Qt is the only third party library which is required to build QXmpp, but libraries such as GStreamer enable additional features.

QXmpp is released under the terms of the GNU Lesser General Public License, version 2.1 or later.

Building QXmpp

QXmpp requires Qt 5.9 or higher with SSL enabled. It uses CMake as build system.

Build from command line:

mkdir build
cd build
cmake ..
cmake --build .

You can pass the following arguments to CMake:

BUILD_SHARED                  to build with shared type library, otherwise static (default: true)
BUILD_DOCUMENTATION           to build the documentation (default: false)
BUILD_EXAMPLES                to build the examples (default: true)
BUILD_TESTS                   to build the unit tests (default: true)
WITH_GSTREAMER                to enable audio/video over jingle (default: false)

Installing QXmpp

After building QXmpp, you can install the Headers, Libraries and Documentation using the following command:

Install from command line:

cmake --build . --target install

Examples

Look at the example directory for various examples. Here is a description of a few.

  • example_0_connected This example just connects to the xmpp server and start receiving presences (updates) from the server. After running this example, you can see this user online, if it's added in your roster (friends list).

  • example_1_echoClient This is a very simple bot which echoes the message sent to it. Run this example, send it a message from a friend of this bot and you will receive the message back. This example shows how to receive and send messages.

Documentation

You can find the API documentation for the latest stable QXmpp version here:

https://doc.qxmpp.org/

The API documentation of the master branch is also available:

https://doc.qxmpp.org/qxmpp-dev/

Supported Platforms

It should work on all the platforms supported by Qt. For a complete list of platforms support by Qt, see:

https://doc.qt.io/qt-5/supported-platforms.html

How to report a bug

If you think you have found a bug in QXmpp, we would like to hear about it so that we can fix it. Before reporting a bug, please check if the issue is already know at:

https://github.com/qxmpp-project/qxmpp/issues

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].