Last indexation completed on 2024-12-22 05:37:20 UTC
Writing a plugin for KDE Connect
For the desktop client (this project):
1. Enter the "plugins" directory.
2. Copy the "ping" under a different name ("findmyphone" in this example).
3. Add "add_subdirectory(findmyphone)" to CMakeLists.txt after the others "add_subdirectory".
4. Enter the new "findmyphone" directory.
5. Edit CMakeLists.txt by replacing "ping" with "findmyphone".
6. Rename other files in this directory by replacing "ping" with "findmyphone"
7. Write a description of your plugin into "README"
8. Edit findmyphoneplugin.cpp and findmyphoneplugin.h.
A. Change license header.
B. Replace (case sensitive) "ping" with "findmyphone", "PingPlugin" with "FindMyPhonePlugin" and "PING" with "FINDMYPHONE".
9. Edit kdeconnect_findmyphone.json file:
A. Replace "ping" with "findmyphone".
B. Change name, description, icon, author, email, version, website, license info.
C. Remove all the translations
D. Set X-KDEConnect-SupportedPacketType and X-KDEConnect-OutgoingPacketType to the packet type your plugin will receive
and send, respectively. In this example this is "kdeconnect.findmyphone". Make sure that this matches what is defined in
the findmyphoneplugin.h file (in the line "#define PACKET_TYPE_..."), and also in Android.
10. Now you have an empty skeleton to implement your new plugin logic.
SEE ALSO: README.txt
Name | Size | Date (UTC) | Last indexed | Description | |
---|---|---|---|---|---|
Name | Size | Date (UTC) | Last indexed | Description | |
Parent directory | - | 2024-02-11 01:50:27 | |||
battery/ | - | 2024-02-11 01:50:27 |
This plugins receives packages with type "kdeconnect.battery" and reads the
following fields:
SEE ALSO: README |
||
bigscreen/ | - | 2024-02-11 01:50:27 | |||
clipboard/ | - | 2024-02-11 01:50:27 |
When the clipboard changes, it sends a package with type kdeconnect.clipboard
and the field "content" (string) containing the new clipboard content.
|
||
connectivity-report/ | - | 2024-02-11 01:50:27 |
This plugins receives packages with type "kdeconnect.connectivity_report" and reads the
following fields:
|
||
contacts/ | - | 2024-02-11 01:50:27 | |||
findmyphone/ | - | 2024-02-11 01:50:27 | |||
findthisdevice/ | - | 2024-02-11 01:50:27 | |||
lockdevice/ | - | 2024-02-11 01:50:27 | |||
mmtelephony/ | - | 2024-02-11 01:50:27 |
This plugin will display a notification each time a package with type
"kdeconnect.telephony" is received. The type of notification will change
depending on the contents of the field "event" (string).
|
||
mousepad/ | - | 2024-02-11 01:50:27 |
When the user moves his on the phone, dx and dy (The difference between the last movement and the current movement of the X and Y Axis respectively)
is sent inside a NetworkPackage QCursor is used to move mouse cursor according to its relative position.
|
||
mpriscontrol/ | - | 2024-02-11 01:50:27 |
This plugin controls the playback of mpris-enabled applications in this device,
commanded by its counterpart in the other device that acts as a remote control.
That means both plugins are not symmetrical.
SEE ALSO: README |
||
mprisremote/ | - | 2024-02-11 01:50:27 | |||
notifications/ | - | 2024-02-11 01:50:27 |
This plugin listens to packages with type "kdeconnect.notification" that will
contain all the information of the other device notifications.
SEE ALSO: README |
||
pausemusic/ | - | 2024-02-11 01:50:27 | This simple plugin will just listen to "kdeconnect.telephony" like the telephony plugin does. It reads the field "event", to see if it is "ringing" or "talking" and then pauses all the music/video players reachable through MPRIS. When the same kind of package is received but the boolean "isCancel" is set to true, it will resume the playback of all the paused sources. |
||
ping/ | - | 2024-02-11 01:50:27 | This plugin displays a notification to the user each time a package with type "kdeconnect.ping" is received. If the package has something in the "message" field, that will be displayed in the notification body. |
||
presenter/ | - | 2024-02-11 01:50:27 | |||
remotecommands/ | - | 2024-02-11 01:50:27 | |||
remotecontrol/ | - | 2024-02-11 01:50:27 | |||
remotekeyboard/ | - | 2024-02-11 01:50:27 | |||
remotesystemvolume/ | - | 2024-02-11 01:50:27 | |||
runcommand/ | - | 2024-02-11 01:50:27 | |||
screensaver-inhibit/ | - | 2024-02-11 01:50:27 | This plugin inhibits the screensaver from kicking in when the device is connected to kdeconnect, it then uninhibits the screensaver if the device was to go out of range or be disconnected. |
||
sendnotifications/ | - | 2024-02-11 01:50:27 | |||
sftp/ | - | 2024-02-11 01:50:27 |
This plugin receives packages with type "kdeconnect.sftp" and reads the
following fields:
|
||
share/ | - | 2024-02-11 01:50:27 |
It receives a packages with type kdeconnect.share. If they have a payload
attached, it will download it as a file with the filename set in the field
"filename" (string). If that field is not set it should generate a filename.
|
||
sms/ | - | 2024-02-11 01:50:27 | |||
systemvolume/ | - | 2024-02-11 01:50:27 | |||
telephony/ | - | 2024-02-11 01:50:27 |
This plugin will display a notification each time a package with type
"kdeconnect.telephony" is received. The type of notification will change
depending on the contents of the field "event" (string).
|
||
virtualmonitor/ | - | 2024-02-11 01:50:27 |
This plugin will allow users to use other kde connect devices as external displays.
|
||
CMakeLists.txt | 1739 bytes | 2024-02-11 01:50:27 | - | ||
kdeconnect.notifyrc | 38812 bytes | 2024-02-11 01:50:27 | - | ||
Messages.sh | 146 bytes | 2024-02-11 01:50:27 | 2024-12-22 04:41:56 | ||
README.txt | 2184 bytes | 2024-02-11 01:50:27 | - |