Warning, /libraries/kunifiedpush/README.md is written in an unsupported language. File is not indexed.

0001 # KUnifiedPush
0002 
0003 [UnifiedPush](https://unifiedpush.org) client library and distributor daemon.
0004 
0005 ## Client Library
0006 
0007 ### Getting Started
0008 
0009 How to register for push notifications:
0010 - Register on D-Bus with a service name
0011 - Make your application D-Bus activatable
0012 - Create an instance of KUnifiedPush::Connector.
0013 - Communicate the endpoint URL provided by this to the corresponding server-side application.
0014 - Connect to its `messageReceived` signal.
0015 
0016 ### Supported Distributors
0017 
0018 For the basic functionality any standard compliant D-Bus distributor should work.
0019 The graphical status and configuration user interface however only works with
0020 the `kunifiedpush-distributor`, as that needs a lot more access to distributor
0021 internal details than the standard interfaces provide.
0022 
0023 ## D-Bus Distributor
0024 
0025 UnifiedPush only specifies the protocol between distributor and client as well as
0026 between the server-side application and the push provider, but not the one between
0027 the push provider and the distributor. Supporting different push providers therefore
0028 requires provider specific code and configuration.
0029 
0030 ### Configuration
0031 
0032 There is a configuration KCM, alternatively this can be configured via
0033 the `~/.config/KDE/kunifiedpush-distributor.conf` configuration file.
0034 
0035 ```
0036 [PushProvider]
0037 Type=[Gotify|NextPush|Ntfy]
0038 ```
0039 
0040 ### Supported push providers
0041 
0042 #### Gotify
0043 
0044 https://gotify.net/
0045 
0046 Configuration:
0047 
0048 ```
0049 [Gotify]
0050 ClientToken=xxx
0051 Url=https://my.server.org
0052 ```
0053 
0054 #### NextPush
0055 
0056 https://github.com/UP-NextPush/server-app
0057 
0058 Configuration:
0059 
0060 ```
0061 [NextPush]
0062 AppPassword=xxx
0063 Url=https://my.server.org
0064 Username=user
0065 ```
0066 
0067 #### Ntfy
0068 
0069 https://ntfy.sh/
0070 
0071 Configuration:
0072 
0073 ```
0074 [Ntfy]
0075 Url=https://ntfy.sh
0076 ```
0077 
0078 Ntfy can be self-hosted, but also provides a hosted instance at `https://ntfy.sh` that
0079 works without requiring an account.
0080 
0081 ## Push Notification KCM
0082 
0083 In combination with our own distributor this allows configuring the push provider to use
0084 in System Settings, check the distributor status, and see all apps currently using push
0085 notifications.