kdeconnect-kde/plugins/notifications
l10n daemon script 2d2cf7444a SVN_SILENT made messages (.desktop file) - always resolve ours
In case of conflict in i18n, keep the version of the branch "ours"
To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
2019-08-07 05:00:07 +02:00
..
CMakeLists.txt Clean-up requirements: cmake 3.0, qt 5.7, use min versions, deduplicate KF5 2018-03-17 23:34:33 +01:00
kdeconnect_notifications.json SVN_SILENT made messages (.desktop file) - always resolve ours 2019-08-07 05:00:07 +02:00
notification.cpp Use QDir::setPath 2019-07-20 13:09:35 +02:00
notification.h Use notification hints from new Plasma notification system 2019-06-02 14:03:11 +00:00
notification_debug.h Replace http GNU urls with https 2019-03-23 17:29:26 +01:00
notificationsdbusinterface.cpp Don't update new notifications 2019-06-17 21:31:00 +00:00
notificationsdbusinterface.h Replace http GNU urls with https 2019-03-23 17:29:26 +01:00
notificationsplugin.cpp Use K_PLUGIN_CLASS_WITH_JSON 2019-06-12 22:16:54 +02:00
notificationsplugin.h Remove unused member 2019-07-04 18:16:48 +02:00
README Improve notificationsplugin README 2018-06-30 23:05:38 +02:00
sendreplydialog.cpp Force usage of QStringLiteral and port remaining offenders 2019-06-10 14:40:28 +00:00
sendreplydialog.h Replace http GNU urls with https 2019-03-23 17:29:26 +01:00
sendreplydialog.ui Improvements on the SendReplyDialog 2017-08-03 17:26:29 +02:00

This plugin listens to packages with type "kdeconnect.notification" that will
contain all the information of the other device notifications.

The other device will report us every notification that is created or dismissed,
so we can keep in sync a local list of notifications.

At the beginning we can request the already existing notifications by sending a
package with the boolean "request" set to true.

The received packages will contain the following fields:

"id" (string): A unique notification id.
"appName" (string): The app that generated the notification
"ticker" (string): The title or headline of the notification, for compatibility with older Android versions.
"isClearable" (boolean): True if we can request to dismiss the notification.
"isCancel" (boolean): True if the notification was dismissed in the peer device.
"requestAnswer" (boolean): True if this is an answer to a "request" package.
"title" (string): The title of the notification.
"text" (string): The text/content of the notification.
"requestReplyId" (string): Used to reply to messages.
"silent" (bool): Handle this notification silent, i.e. don't show a notification, but show it in the plasmoid.

Additionally the package can contain a payload with the icon of the notification
in PNG format. If there another field will be present:

"payloadHash" (string): MD5 hash of the payload. Used as a filename to store the payload.

The content of these fields is used to display the notifications to the user.
Note that if we receive a second notification with the same "id", the existing notification is updated.

If the user dismisses a notification from this device, we have to request the
other device to remove it. This is done by sending a package with the fields
"id" set to the id of the notification we want to dismiss and a boolean "cancel"
set to true. The other device will answer with a notification package with
"isCancel" set to true when it is dismissed.