diff --git a/docs/config.md b/docs/config.md index ff045912..3093ca41 100644 --- a/docs/config.md +++ b/docs/config.md @@ -208,7 +208,7 @@ or the root domain: ProxyPass / http://127.0.0.1:2586/ ProxyPassReverse / http://127.0.0.1:2586/ - # Higher than the max message size of 512k + # Higher than the max message size of 4096 bytes LimitRequestBody 102400 # Redirect HTTP to HTTPS, but only for GET topic addresses, since we want @@ -232,7 +232,7 @@ or the root domain: ProxyPass / http://127.0.0.1:2586/ ProxyPassReverse / http://127.0.0.1:2586/ - # Higher than the max message size of 512k + # Higher than the max message size of 4096 bytes LimitRequestBody 102400 # Redirect HTTP to HTTPS, but only for GET topic addresses, since we want diff --git a/docs/publish.md b/docs/publish.md index c75ea941..ec017e05 100644 --- a/docs/publish.md +++ b/docs/publish.md @@ -866,7 +866,7 @@ but just in case, let's list them all: | Limit | Description | |---|---| -| **Message length** | Each message can be up to 512 bytes long. Longer messages are truncated. | +| **Message length** | Each message can be up to 4096 bytes long. Longer messages are truncated. | | **Requests** | By default, the server is configured to allow 60 requests at once, and then refills the your allowed requests bucket at a rate of one request per 10 seconds. You can read more about this in the [rate limiting](config.md#rate-limiting) section. | | **E-mails** | By default, the server is configured to allow sending 16 e-mails at once, and then refills the your allowed e-mail bucket at a rate of one per hour. You can read more about this in the [rate limiting](config.md#rate-limiting) section. | | **Subscription limits** | By default, the server allows each visitor to keep 30 connections to the server open. | diff --git a/docs/static/css/extra.css b/docs/static/css/extra.css index c2be793c..20b339c3 100644 --- a/docs/static/css/extra.css +++ b/docs/static/css/extra.css @@ -8,6 +8,12 @@ width: unset !important; } +.md-typeset h4 { + font-weight: 500 !important; + margin: 0 !important; + font-size: 1.1em !important; +} + .admonition { font-size: .74rem !important; } diff --git a/docs/static/img/android-screenshot-unifiedpush-fluffychat.jpg b/docs/static/img/android-screenshot-unifiedpush-fluffychat.jpg new file mode 100644 index 00000000..a4334ad4 Binary files /dev/null and b/docs/static/img/android-screenshot-unifiedpush-fluffychat.jpg differ diff --git a/docs/static/img/android-screenshot-unifiedpush-settings.jpg b/docs/static/img/android-screenshot-unifiedpush-settings.jpg new file mode 100644 index 00000000..bfcc7a54 Binary files /dev/null and b/docs/static/img/android-screenshot-unifiedpush-settings.jpg differ diff --git a/docs/static/img/android-screenshot-unifiedpush-subscription.jpg b/docs/static/img/android-screenshot-unifiedpush-subscription.jpg new file mode 100644 index 00000000..e3a19b84 Binary files /dev/null and b/docs/static/img/android-screenshot-unifiedpush-subscription.jpg differ diff --git a/docs/subscribe/phone.md b/docs/subscribe/phone.md index 7a649cc7..8051cb9e 100644 --- a/docs/subscribe/phone.md +++ b/docs/subscribe/phone.md @@ -81,11 +81,28 @@ The ntfy Android app uses Firebase only for the main host `ntfy.sh`, and only in It won't use Firebase for any self-hosted servers, and not at all in the the F-Droid flavor. ## Integrations + +### UnifiedPush +[UnifiedPush](https://unifiedpush.org) is a standard for receiving push notifications without using the Google-owned +[Firebase Cloud Messaging (FCM)](https://firebase.google.com/docs/cloud-messaging) service. It puts push notifications +in the control of the user. ntfy can act as a **UnifiedPush distributor**, forwarding messages to apps that support it. + +To use ntfy as a distributor, simply select it in one of the [supported apps](https://unifiedpush.org/users/apps/). +That's it. It's a one-step installation 😀. If desired, you can select your own [selfhosted ntfy server](../install.md) +to handle messages. Here's an example with [FluffyChat](https://fluffychat.im/): + +
+ + + +
+ +### Automation apps The ntfy Android app integrates nicely with automation apps such as [MacroDroid](https://play.google.com/store/apps/details?id=com.arlosoft.macrodroid) or [Tasker](https://play.google.com/store/apps/details?id=net.dinglisch.android.taskerm). Using Android intents, you can **react to incoming messages**, as well as **send messages**. -### React to incoming messages +#### React to incoming messages To react on incoming notifications, you have to register to intents with the `io.heckel.ntfy.MESSAGE_RECEIVED` action (see [code for details](https://github.com/binwiederhier/ntfy-android/blob/main/app/src/main/java/io/heckel/ntfy/msg/BroadcastService.kt)). Here's an example using [MacroDroid](https://play.google.com/store/apps/details?id=com.arlosoft.macrodroid) @@ -127,7 +144,7 @@ Here's a list of extras you can access. Most likely, you'll want to filter for ` | `tags_map` | *string* | `0=tag1,1=tag2,..` | Map of tags to make it easier to map first, second, ... tag | | `priority` | *int (between 1-5)* | `4` | Message [priority](../publish.md#message-priority) with 1=min, 3=default and 5=max | -### Send messages using intents +#### Send messages using intents To send messages from other apps (such as [MacroDroid](https://play.google.com/store/apps/details?id=com.arlosoft.macrodroid) and [Tasker](https://play.google.com/store/apps/details?id=net.dinglisch.android.taskerm)), you can broadcast an intent with the `io.heckel.ntfy.SEND_MESSAGE` action. The ntfy Android app will forward the intent as a HTTP