Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Switch to XMPP library gloox #114

Merged
merged 13 commits into from
Jul 30, 2017
Merged

Switch to XMPP library gloox #114

merged 13 commits into from
Jul 30, 2017

Conversation

lnjX
Copy link
Member

@lnjX lnjX commented Jun 19, 2017

  • Add CMake dependency
  • Add gloox client in the Kaidan class
  • Rewrite MessageController
  • Rewrite RosterController
  • Rewrite PresenceController (including software version / entity identity)
  • Rewrite Kaidan class
  • Rewrite everything else
  • Remove Swift Client
  • Remove Swift/Boost dependencies
  • Update dependencies in the README
  • Update QML API documentation
  • Add Logger for incoming/outgoing XML
  • Add Delayed Delivery (messages with timestamp)

@lnjX lnjX added the back-end label Jun 19, 2017
@lnjX lnjX added this to the 0.3 milestone Jun 19, 2017
@lnjX
Copy link
Member Author

lnjX commented Jun 19, 2017

This will be merged using rebase/fast-forward and the commit history in here will be kept.

@lnjX lnjX changed the title Switch to XMPP library gloox [WIP] Switch to XMPP library gloox Jun 23, 2017
@lnjX
Copy link
Member Author

lnjX commented Jul 28, 2017

Now also Message Delivery Receipts work again! :)
The rest is not much work, probably will do this tomorrow and then the gloox rewrite is finished. 😃

@lnjX
Copy link
Member Author

lnjX commented Jul 29, 2017

Now we have nearly everything in gloox again. :)
Still missing: Delayed Delivery, XML Logger and documentation

@lnjX
Copy link
Member Author

lnjX commented Jul 29, 2017

Does anyone want to try out if compiling Kaidan still works with the new dependencies (and the gloox rewrite). Before I push this to master ...

LNJ added 12 commits July 29, 2017 20:12
Rewrote the MessageController into a MessageSessionHandler and a MessageHandler.
It still supports everything as before (e.g. Message Receipts).
The Sub/Unsub management in gloox is done in the Roster/RosterListener/RosterUpdater.
Therefore the PresenceHandler is currently useless. (Probably will change in the future)
Sub requests are accepted automatically and the user will be unsubbed on incoming unsub
requests (when the other entity unsubs from the user).
This rewrites the service discovery manager using gloox.
XMPP Ping and Software Version are automatically anounced by gloox.
These classes need to be revised (besides the gloox rewrite). They
are currently not used anyway. The gloox rewrite can be finished before
these classes are redone.
This new XmlLogHandler will print all incoming and outgoing
XML in a pretty format onto the console. It's using the QXml module.
It covers both implementations: XEP-0091 (deprecated) and the new XEP-0203.
Now the QML API documentation is up to date again with the gloox rewrite.
Updated all dependecies and the description.
@lnjX
Copy link
Member Author

lnjX commented Jul 29, 2017

I tried to compile Kaidan in a chroot with the new dependencies in the README - It works. :)

The management of the lastMessage and the unreadMessageCount for each contact are now
located in the MessageHandler. This fixes that these functions were not called and the
features were not usable.
@lnjX lnjX changed the title [WIP] Switch to XMPP library gloox Switch to XMPP library gloox Jul 30, 2017
@lnjX lnjX merged commit 8b36766 into KaidanIM:master Jul 30, 2017
@lnjX lnjX deleted the gloox-rewrite branch July 30, 2017 15:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant