aboutsummaryrefslogtreecommitdiff
path: root/src/base/QXmppMessage.h
Commit message (Collapse)AuthorAgeFilesLines
* Implement XEP-0444: Message Reactions (#492)Melvin Keskin2022-10-161-0/+5
| | | https://xmpp.org/extensions/xep-0444.html
* Rename Encryption to EncryptionMethod to avoid conflicts with namespaceLinus Jahn2022-09-291-3/+3
| | | | | There's QXmpp::Private::Encryption. This renames QXmpp::Encryption to QXmpp::EncryptionMethod to avoid conflicts.
* Allow adding multiple oob urls and a descriptionJonah Brüchert2022-09-281-0/+4
|
* Implement XEP-0447: Stateless file sharing: File sharing element (#448)Linus Jahn2022-09-131-0/+5
| | | | | | | | Implements parsing for the file sharing element from XEP-0447: Stateless files sharing version 0.2. https://xmpp.org/extensions/xep-0447.html Co-authored-by: Jonah Brüchert <jbb@kaidan.im>
* Message: Add isCarbonForwarded attributeLinus Jahn2022-08-141-0/+2
| | | | | It's now also possible to see which messages were carbon forwarded when using the CarbonManagerV2.
* Implement XEP-0384: OMEMO Encryption v0.8Melvin Keskin2022-08-131-4/+8
| | | | | | | | | | | | | | | This implements XEP-0384 in version v0.8 with a manager and storage classes to be user-implemented for persistant storage. The license of the code is LGPL-2.1-or-later as usual. However since libomemo-c (libsignal-protocol-c) is GPL-3.0, the built binary is always licensed under GPL-3.0. Having our code LGPL licensed will make it avoids relicensing in the future in case we port it to an LGPL compatible omemo library. Closes #133. Co-authored-by: Linus Jahn <lnj@kaidan.im>
* Rename Encryption::Omemo to Omemo0 to allow namespace OmemoLinus Jahn2022-07-101-1/+1
| | | | Allows it to create a namespace QXmpp::Omemo.
* Add move constructors and move assignment operators everywhereLinus Jahn2022-06-181-0/+2
| | | | | This is so std::move() on implicitly-shared types actually moves the content and doesn't call the copy ctor/assignment operator.
* Message: Add parseExtensions() for parsing additional extensionsMelvin Keskin2022-06-141-0/+1
| | | | Useful for encryption when parsing decrypted elements.
* Message: Apply clang-formatMelvin Keskin2022-04-201-2/+2
|
* Message: Replace QXmppMessage::EncryptionMethod with QXmpp::EncryptionMelvin Keskin2022-04-061-20/+15
|
* Message: Add end-to-end encryption fallback bodyMelvin Keskin2022-03-171-0/+3
|
* Add QXmppE2eeMetadata used by QXmppStanzaMelvin Keskin2022-03-031-3/+0
| | | | | | That class contains addtional data needed for end-to-end encryption purposes. 'senderKey' is moved from QXmppMessage to QXmppE2eeMetadata. 'sceTimestamp' is introduced.
* Convert copyright headers to REUSELinus Jahn2022-01-141-25/+6
|
* Update copyright years (2022 edition)Linus Jahn2022-01-091-1/+1
|
* XEP-0380: Add new encryptions (#384)Melvin Keskin2021-12-191-5/+7
| | | Updates to version 0.4.
* Update to OMEMO 0.8, TM 0.6 and ATM 0.4Melvin Keskin2021-10-101-2/+3
| | | | | | * OMEMO has namespace 'urn:xmpp:omemo:2' and uses SCE 0.4 now * TM has namespace 'urn:xmpp:tm:1' and uses Base64 for key identifiers * ATM uses Base64 for key identifiers
* Implement stanza parsing for Stanza Content EncryptionLinus Jahn2021-09-281-7/+8
|
* Add QXmppAtmManagerMelvin Keskin2021-09-161-0/+3
|
* Add QXmppOmemoElementMelvin Keskin2021-09-031-0/+5
| | | | Co-authored-by: Germán Márquez Mejía <mancho@olomono.de>
* Add QXmppTrustMessageElementMelvin Keskin2021-07-061-0/+5
|
* Refactor QXmppMessage to support parsing with inheritanceLinus Jahn2021-07-011-3/+4
| | | | Required for PubSub event notifications with templates.
* Implement MIX-MISC XEP-0407: Invitation message extension (#329)Melvin Keskin2021-03-081-1/+8
| | | | | | | This implements the message extension for MIX invitations from XEP-0407: Mediated Information eXchange (MIX): Miscellaneous Capabilities in version 0.1.2. https://xmpp.org/extensions/xep-0407.html#usecase-user-invite
* Update copyright headers to 2021Linus Jahn2021-02-191-1/+1
|
* Add unit tests for QXmppAttentionManagerLinus Jahn2020-04-071-0/+2
|
* Clean up QXmppMessageLinus Jahn2020-04-061-38/+57
|
* QXmppMessage: Add parent thread attribute from RFC6121Linus Jahn2020-04-051-0/+3
| | | | | | The 'parent' attribute for <thread/> element in messages has been introduced in RFC6121. This commit adds parsing and serialization for it, including unit tests.
* Implement XEP-0245: The /me CommandLinus Jahn2020-03-311-0/+6
| | | | | | | This adds parsing for recognizing /me commands in message bodies. It complies with version 1.0 of XEP-0245: The /me Command. https://xmpp.org/extensions/xep-0245.html
* Update parameter of 'QXmppMessage::parseExtension()' in header fileMelvin Keskin2020-03-291-1/+1
|
* doc: Use XEP links everywhereLinus Jahn2020-02-111-8/+8
|
* Implement XEP-0359: Unique and Stable Stanza IDsLinus Jahn2020-02-111-0/+10
| | | | | This adds support of XEP-0359: Unique and Stable Stanza IDs in version 0.6.0.
* Implement XEP-0428: Fallback IndicationLinus Jahn2020-02-101-0/+4
| | | | | | This adds support of XEP-0428: Fallback Indication in version 0.1.0. https://xmpp.org/extensions/xep-0428.html
* clang-format: Enable regrouping and sorting of includesLinus Jahn2020-02-031-2/+2
|
* Bump copyright year to 2020Linus Jahn2020-01-061-1/+1
|
* Add a .clang-format somewhat close to the current style0xd34df00d2019-12-231-23/+23
|
* Implement XEP-0231: Bits of Binary: message extensionLinus Jahn2019-12-061-0/+6
| | | | This adds support for XEP-0231: Bits of Binary attachments in messages.
* Add \since QXmpp 1.1 to all new methods and classesLinus Jahn2019-10-231-0/+4
| | | | Methods of new classes have no \since tag.
* QXmppMessage: Add back QDateTime include to keep source compatibility (#221)JBB2019-10-201-0/+3
| | | Introduced by 98f2fd04b0a95840584320858ff54cd5caff8f70 (#213).
* Refactor & clean up QXmppMessageLinus Jahn2019-10-191-9/+11
| | | | | | | | | | | | | | | This simplifies parsing and fixes a possible bug: The bug case looks like this: - We have one element we want to parse (e,g, "attachment" with namespace xyz) - There is another element called "attachment" in the stanza and it's located before the other element. - QXmppMessage tries to parse the attachment element using firstChildElement("attachment") and checks the namespace - The namespace (of the first) element doesn't match - The actual "attachment" element is not parsed This also fixes the "constructor does not initialize these fields: […]" warnings for QXmppMessagePrivate.
* Modernize codebase using clang-tidyJonah Brüchert2019-09-081-4/+4
| | | | | | | | Using the following checks: * modernize-use-nullptr * modernize-use-override * modernize-use-using * modernize-use-bool-literals
* Implement XEP-0334: Message Processing HintsLinus Jahn2019-09-081-0/+14
| | | | | | | | | | This implements parsing and serialization of XEP-0334: Message Processing Hints in version 0.3.0. https://xmpp.org/extensions/xep-0334.html Co-authored-by: Juan Aragon <jaaragont@gmail.com> Co-authored-by: Sam Truscott <sam@wumpus.co.uk>
* Implement XEP-0380: Explicit Message EncryptionLinus Jahn2019-09-061-0/+21
| | | | | | | This adds parsing and serialization for XEP-0380: Explicit Message Encryption in version 0.3.0. https://xmpp.org/extensions/xep-0380.html
* Implement XEP-0367: Message AttachingLinus Jahn2019-09-061-7/+8
| | | | | This adds parsing and serialization for XEP-0367: Message Attaching in version 0.3.0.
* Implement XEP-0382: Spoiler messages (v0.2.0)Linus Jahn2019-05-041-0/+7
| | | | This adds parsing and serialization of spoilers in the QXmppMessage class.
* Implement MIX-CORE XEP-0396: Message extensionLinus Jahn2019-05-011-0/+7
| | | | | | | This implements the new message extension specified by XEP-0369: Mediated Information eXchange (MIX) in version 0.14.2. https://xmpp.org/extensions/xep-0369.html#usecase-user-message
* Bump copyright year to 2019Jeremy Lainé2019-01-081-1/+1
|
* Implement XEP-0308: Last Message CorrectionLinus Jahn2018-12-301-0/+4
|
* Add partial support of XEP-0066: Out of Band DataLinus Jahn2018-12-191-0/+4
| | | | | Today this is most important for attaching URLs generated by XEP-0363: HTTP File Upload for a very basic form of media/file sharing.
* Implement XEP-0198: Stream Management (client only) (#99)Niels Ole Salscheider2017-02-121-0/+2
| | | | | | | | | | | | | | * Some features can be available with different namespaces (e.g. SM) * Provide static functions to convert between strings and stream errors Stream management will reuse this for <failed />. * [travis] test builds using clang * Implement XEP-0198: Stream Management (client only) * QXmppOutgoingClient: Move private methods to QXmppOutgoingClientPrivate
* Merge pull request #88 from fbeutel/carbonsfbeutel2016-09-041-0/+4
| | | * Implemented XEP-0280: Message Carbons