2021-12-20 02:01:49 +00:00
|
|
|
# Subscribe via ntfy CLI
|
|
|
|
In addition to subscribing via the [web UI](web.md), the [phone app](phone.md), or the [API](api.md), you can subscribe
|
|
|
|
to topics via the ntfy CLI. The CLI is included in the same `ntfy` binary that can be used to [self-host a server](../install.md).
|
2021-12-17 14:32:59 +00:00
|
|
|
|
2021-12-18 03:38:29 +00:00
|
|
|
!!! info
|
2021-12-20 02:01:49 +00:00
|
|
|
The **ntfy CLI is not required to send or receive messages**. You can instead [send messages with curl](../publish.md),
|
|
|
|
and even use it to [subscribe to topics](api.md). It may be a little more convenient to use the ntfy CLI than writing
|
|
|
|
your own script. Or it may not be. It all depends on the use case. 😀
|
|
|
|
|
|
|
|
## Install + configure
|
|
|
|
To install the ntfy CLI, simply follow the steps outlined on the [install page](../install.md). The ntfy server and
|
|
|
|
client are the same binary, so it's all very convenient. After installing, you can (optionally) configure the client
|
|
|
|
by creating `~/.config/ntfy/client.yml` (for the non-root user), or `/etc/ntfy/client.yml` (for the root user). You
|
|
|
|
can find a [skeleton config](https://github.com/binwiederhier/ntfy/blob/main/client/client.yml) on GitHub.
|
|
|
|
|
|
|
|
If you just want to use [ntfy.sh](https://ntfy.sh), you don't have to change anything. If you **self-host your own server**,
|
|
|
|
you may want to edit the `default-host` option:
|
|
|
|
|
|
|
|
``` yaml
|
|
|
|
# Base URL used to expand short topic names in the "ntfy publish" and "ntfy subscribe" commands.
|
|
|
|
# If you self-host a ntfy server, you'll likely want to change this.
|
|
|
|
#
|
|
|
|
default-host: https://ntfy.myhost.com
|
|
|
|
```
|
|
|
|
|
|
|
|
## Sending messages
|
|
|
|
You can send messages with the ntfy CLI using the `ntfy publish` command (or any of its aliases `pub`, `send` or
|
|
|
|
`trigger`). There are a lot of examples on the page about [publishing messages](../publish.md), but here are a few
|
|
|
|
quick ones:
|
|
|
|
|
|
|
|
=== "Simple send"
|
|
|
|
```
|
|
|
|
ntfy publish mytopic This is a message
|
|
|
|
ntfy publish mytopic "This is a message"
|
|
|
|
ntfy pub mytopic "This is a message"
|
|
|
|
```
|
|
|
|
|
|
|
|
=== "Send with title, priority, and tags"
|
|
|
|
```
|
|
|
|
ntfy publish \
|
|
|
|
--title="Thing sold on eBay" \
|
|
|
|
--priority=high \
|
|
|
|
--tags=partying_face \
|
|
|
|
mytopic \
|
|
|
|
"Somebody just bought the thing that you sell"
|
|
|
|
```
|
|
|
|
|
|
|
|
=== "Triggering a webhook"
|
|
|
|
```
|
|
|
|
ntfy trigger mywebhook
|
|
|
|
ntfy pub mywebhook
|
|
|
|
```
|
|
|
|
|
|
|
|
## Using the systemd service
|
|
|
|
|
|
|
|
```
|
|
|
|
[Service]
|
|
|
|
User=pheckel
|
|
|
|
Group=pheckel
|
|
|
|
Environment="DISPLAY=:0" "DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus"
|
|
|
|
```
|
|
|
|
|
|
|
|
Here's an example for a complete client config for a self-hosted server:
|
2021-12-18 03:38:29 +00:00
|
|
|
|