mirror of
https://github.com/vanitasvitae/Smack.git
synced 2025-09-09 09:09:38 +02:00
Add support for XEP-0382: Spoiler Messages
Fixes SMACK-795.
This commit is contained in:
parent
a729a7c43b
commit
ce19ea4114
11 changed files with 530 additions and 0 deletions
|
@ -94,6 +94,7 @@ Experimental Smack Extensions and currently supported XEPs of smack-experimental
|
|||
| [Push Notifications](pushnotifications.md) | [XEP-0357](http://xmpp.org/extensions/xep-0357.html) | Defines a way to manage push notifications from an XMPP Server. |
|
||||
| Stable and Unique Stanza IDs | [XEP-0359](http://xmpp.org/extensions/xep-0359.html) | This specification describes unique and stable IDs for messages. |
|
||||
| HTTP File Upload | [XEP-0363](http://xmpp.org/extensions/xep-0363.html) | Protocol to request permissions to upload a file to an HTTP server and get a shareable URL. |
|
||||
| [Spoiler Messages](spoiler.md) | [XEP-0382](http://xmpp.org/extensions/xep-0382.html) | Indicate that the body of a message should be treated as a spoiler |
|
||||
| [Multi-User Chat Light](muclight.md) | [XEP-xxxx](http://mongooseim.readthedocs.io/en/latest/open-extensions/xeps/xep-muc-light.html) | Multi-User Chats for mobile XMPP applications and specific enviroment. |
|
||||
| [OMEMO Multi End Message and Object Encryption](omemo.md) | [XEP-XXXX](https://conversations.im/omemo/xep-omemo.html) | Encrypt messages using OMEMO encryption (currently only with smack-omemo-signal -> GPLv3). |
|
||||
| [Consistent Color Generation](consistent_colors.md) | [XEP-0392](http://xmpp.org/extensions/xep-0392.html) | Generate consistent colors for identifiers like usernames to provide a consistent user experience. |
|
||||
|
|
33
documentation/extensions/spoiler.md
Normal file
33
documentation/extensions/spoiler.md
Normal file
|
@ -0,0 +1,33 @@
|
|||
Spoiler Messages
|
||||
================
|
||||
|
||||
[Back](index.md)
|
||||
|
||||
Spoiler Messages can be used to indicate that the body of a message is a spoiler and should be displayed as such.
|
||||
|
||||
## Usage
|
||||
|
||||
To get an instance of the SpoilerManager, call
|
||||
```
|
||||
SpoilerManager manager = SpoilerManager.getInstanceFor(connection);
|
||||
```
|
||||
This will automatically add Spoilers to the list of supported features of your client.
|
||||
|
||||
The manager can then be used to add SpoilerElements to messages like follows:
|
||||
```
|
||||
Message message = new Message();
|
||||
|
||||
// spoiler without hint
|
||||
SpoilerElement.addSpoiler(message);
|
||||
|
||||
// spoiler with hint about content
|
||||
SpoilerElement.addSpoiler(message, "End of Love Story");
|
||||
|
||||
// spoiler with localized hint
|
||||
SpoilerElement.addSpoiler(message, "de", "Der Kuchen ist eine Lüge");
|
||||
```
|
||||
|
||||
To get Spoilers from a message call
|
||||
```
|
||||
Map<String, String> spoilers = SpoilerElement.getSpoilers(message);
|
||||
```
|
Loading…
Add table
Add a link
Reference in a new issue