Philipp Heckel %!s(int64=4) %!d(string=hai) anos
pai
achega
4a3a0de198
Modificáronse 3 ficheiros con 24 adicións e 185 borrados
  1. 8 1
      Makefile
  2. 7 175
      README.md
  3. 9 9
      docs/install.md

+ 8 - 1
Makefile

@@ -116,7 +116,14 @@ clean: .PHONY
 
 
 # Releasing targets
 # Releasing targets
 
 
-release: build-deps
+release-check-tags:
+	$(eval LATEST_TAG := $(shell git describe --abbrev=0 --tags | cut -c2-))
+	if grep -q $(LATEST_TAG) docs/install.md; then\
+	 	echo "ERROR: Must update docs/install.md with latest tag first.";\
+	 	exit 1;\
+	fi
+
+release: build-deps release-check-tags
 	goreleaser release --rm-dist --debug
 	goreleaser release --rm-dist --debug
 
 
 release-snapshot: build-deps
 release-snapshot: build-deps

+ 7 - 175
README.md

@@ -1,6 +1,6 @@
 ![ntfy](server/static/img/ntfy.png)
 ![ntfy](server/static/img/ntfy.png)
 
 
-# ntfy.sh | simple HTTP-based pub-sub
+# ntfy.sh | Send push notifications to your phone or desktop via PUT/POST
 [![Release](https://img.shields.io/github/release/binwiederhier/ntfy.svg?color=success&style=flat-square)](https://github.com/binwiederhier/ntfy/releases/latest)
 [![Release](https://img.shields.io/github/release/binwiederhier/ntfy.svg?color=success&style=flat-square)](https://github.com/binwiederhier/ntfy/releases/latest)
 [![Slack channel](https://img.shields.io/badge/slack-@gophers/binwiederhier-success.svg?logo=slack)](https://gophers.slack.com/archives/C01JMTPGF2Q)
 [![Slack channel](https://img.shields.io/badge/slack-@gophers/binwiederhier-success.svg?logo=slack)](https://gophers.slack.com/archives/C01JMTPGF2Q)
 
 
@@ -19,181 +19,13 @@ too.
   <img src="server/static/img/screenshot-phone-notification.jpg" height="180">
   <img src="server/static/img/screenshot-phone-notification.jpg" height="180">
 </p>
 </p>
 
 
-## Usage
+## **[Documentation](https://ntfy.sh/docs/)**
 
 
-### Publishing messages
-
-Publishing messages can be done via PUT or POST using. Topics are created on the fly by subscribing or publishing to them.
-Because there is no sign-up, **the topic is essentially a password**, so pick something that's not easily guessable.
-
-Here's an example showing how to publish a message using `curl`:
-
-```
-curl -d "long process is done" ntfy.sh/mytopic
-```
-
-Here's an example in JS with `fetch()` (see [full example](examples)):
-
-```
-fetch('https://ntfy.sh/mytopic', {
-  method: 'POST', // PUT works too
-  body: 'Hello from the other side.'
-})
-```
-
-### Subscribe to a topic
-You can create and subscribe to a topic either in this web UI, or in your own app by subscribing to an
-[EventSource](https://developer.mozilla.org/en-US/docs/Web/API/EventSource), a JSON feed, or raw feed.
-
-#### Subscribe via web
-If you subscribe to a topic via this web UI in the field below, messages published to any subscribed topic
-will show up as **desktop notification**.
-
-You can try this easily on **[ntfy.sh](https://ntfy.sh)**.
-
-#### Subscribe via phone
-You can use the [Ntfy Android App](https://play.google.com/store/apps/details?id=io.heckel.ntfy) to receive 
-notifications directly on your phone. Just like the server, this app is also [open source](https://github.com/binwiederhier/ntfy-android).
-
-#### Subscribe via your app, or via the CLI
-Using [EventSource](https://developer.mozilla.org/en-US/docs/Web/API/EventSource) in JS, you can consume
-notifications like this (see [full example](examples)):
-
-```javascript
-const eventSource = new EventSource('https://ntfy.sh/mytopic/sse');<br/>
-eventSource.onmessage = (e) => {<br/>
-  // Do something with e.data<br/>
-};
-```
-
-You can also use the same `/sse` endpoint via `curl` or any other HTTP library:
-
-```
-$ curl -s ntfy.sh/mytopic/sse
-event: open
-data: {"id":"weSj9RtNkj","time":1635528898,"event":"open","topic":"mytopic"}
-
-data: {"id":"p0M5y6gcCY","time":1635528909,"event":"message","topic":"mytopic","message":"Hi!"}
-
-event: keepalive
-data: {"id":"VNxNIg5fpt","time":1635528928,"event":"keepalive","topic":"test"}
-```
-
-To consume JSON instead, use the `/json` endpoint, which prints one message per line:
-
-```
-$ curl -s ntfy.sh/mytopic/json
-{"id":"SLiKI64DOt","time":1635528757,"event":"open","topic":"mytopic"}
-{"id":"hwQ2YpKdmg","time":1635528741,"event":"message","topic":"mytopic","message":"Hi!"}
-{"id":"DGUDShMCsc","time":1635528787,"event":"keepalive","topic":"mytopic"}
-```
-
-Or use the `/raw` endpoint if you need something super simple (empty lines are keepalive messages):
-
-```
-$ curl -s ntfy.sh/mytopic/raw
-
-This is a notification
-```
-
-#### Message buffering and polling
-Messages are buffered in memory for a few hours to account for network interruptions of subscribers.
-You can read back what you missed by using the `since=...` query parameter. It takes either a
-duration (e.g. `10m` or `30s`) or a Unix timestamp (e.g. `1635528757`):
-
-```
-$ curl -s "ntfy.sh/mytopic/json?since=10m"
-# Same output as above, but includes messages from up to 10 minutes ago
-```
-
-You can also just poll for messages if you don't like the long-standing connection using the `poll=1`
-query parameter. The connection will end after all available messages have been read. This parameter has to be
-combined with `since=`.
-
-```
-$ curl -s "ntfy.sh/mytopic/json?poll=1&since=10m"
-# Returns messages from up to 10 minutes ago and ends the connection
-```
-
-## Examples
-There are a few usage examples in the [examples](examples) directory. I'm sure there are tons of other ways to use it.
-
-## Installation
-Please check out the [releases page](https://github.com/binwiederhier/ntfy/releases) for binaries and
-deb/rpm packages.
-
-1. Install ntfy using one of the methods described below
-2. Then (optionally) edit `/etc/ntfy/config.yml`
-3. Then just run it with `ntfy` (or `systemctl start ntfy` when using the deb/rpm).
-
-### Binaries and packages
-**Debian/Ubuntu** (*from a repository*)**:**
-```bash
-curl -sSL https://archive.heckel.io/apt/pubkey.txt | sudo apt-key add -
-sudo apt install apt-transport-https
-sudo sh -c "echo 'deb [arch=amd64] https://archive.heckel.io/apt debian main' > /etc/apt/sources.list.d/archive.heckel.io.list"  
-sudo apt update
-sudo apt install ntfy
-```
-
-**Debian/Ubuntu** (*manual install*)**:**
-```bash
-wget https://github.com/binwiederhier/ntfy/releases/download/v1.5.0/ntfy_1.5.0_amd64.deb
-dpkg -i ntfy_1.5.0_amd64.deb
-```
-
-**Fedora/RHEL/CentOS:**
-```bash
-rpm -ivh https://github.com/binwiederhier/ntfy/releases/download/v1.5.0/ntfy_1.5.0_amd64.rpm
-```
-
-**Docker:**
-Without cache:
-```
-docker run -p 80:80 -it binwiederhier/ntfy
-```
-
-With cache:
-```bash
-docker run \
-  -v /var/cache/ntfy:/var/cache/ntfy \
-  -p 80:80 \
-  -it \
-  binwiederhier/ntfy \
-    --cache-file /var/cache/ntfy/cache.db
-```
-
-**Go:**
-```bash
-go get -u heckel.io/ntfy
-```
-
-**Manual install:**
-```bash
-# x86_64/amd64
-wget https://github.com/binwiederhier/ntfy/releases/download/v1.5.0/ntfy_1.5.0_linux_x86_64.tar.gz
-
-# armv7
-wget https://github.com/binwiederhier/ntfy/releases/download/v1.5.0/ntfy_1.5.0_linux_armv7.tar.gz
-
-# arm64/v8
-wget https://github.com/binwiederhier/ntfy/releases/download/v1.5.0/ntfy_1.5.0_linux_arm64.tar.gz
-
-# Extract and run
-sudo tar -C /usr/bin -zxf ntfy_*.tar.gz ntfy
-./ntfy
-```
-
-## Building
-Building `ntfy` is simple. Here's how you do it:
-
-```
-make build-simple
-# Builds to dist/ntfy_linux_amd64/ntfy
-``` 
-
-To build releases, I use [GoReleaser](https://goreleaser.com/). If you have that installed, you can run `make build` or
-`make build-snapshot`.
+[Getting started](https://ntfy.sh/docs/) |
+[Android/iOS](https://ntfy.sh/docs/subscribe/phone/) |
+[API](https://ntfy.sh/docs/publish/) |
+[Install / Self-hosting](https://ntfy.sh/docs/install/) |
+[Building](https://ntfy.sh/docs/develop/)
 
 
 ## Contributing
 ## Contributing
 I welcome any and all contributions. Just create a PR or an issue.
 I welcome any and all contributions. Just create a PR or an issue.

+ 9 - 9
docs/install.md

@@ -20,21 +20,21 @@ deb/rpm packages.
 
 
 === "x86_64/amd64"
 === "x86_64/amd64"
     ```bash
     ```bash
-    wget https://github.com/binwiederhier/ntfy/releases/download/v1.5.0/ntfy_1.5.0_linux_x86_64.tar.gz
+    wget https://github.com/binwiederhier/ntfy/releases/download/v1.5.1/ntfy_1.5.1_linux_x86_64.tar.gz
     sudo tar -C /usr/bin -zxf ntfy_*.tar.gz ntfy
     sudo tar -C /usr/bin -zxf ntfy_*.tar.gz ntfy
     sudo ./ntfy
     sudo ./ntfy
     ```
     ```
 
 
 === "armv7/armhf"
 === "armv7/armhf"
     ```bash
     ```bash
-    wget https://github.com/binwiederhier/ntfy/releases/download/v1.5.0/ntfy_1.5.0_linux_armv7.tar.gz
+    wget https://github.com/binwiederhier/ntfy/releases/download/v1.5.1/ntfy_1.5.1_linux_armv7.tar.gz
     sudo tar -C /usr/bin -zxf ntfy_*.tar.gz ntfy
     sudo tar -C /usr/bin -zxf ntfy_*.tar.gz ntfy
     sudo ./ntfy
     sudo ./ntfy
     ```
     ```
 
 
 === "arm64"
 === "arm64"
     ```bash
     ```bash
-    wget https://github.com/binwiederhier/ntfy/releases/download/v1.5.0/ntfy_1.5.0_linux_arm64.tar.gz
+    wget https://github.com/binwiederhier/ntfy/releases/download/v1.5.1/ntfy_1.5.1_linux_arm64.tar.gz
     sudo tar -C /usr/bin -zxf ntfy_*.tar.gz ntfy
     sudo tar -C /usr/bin -zxf ntfy_*.tar.gz ntfy
     sudo ./ntfy
     sudo ./ntfy
     ```
     ```
@@ -82,7 +82,7 @@ Manually installing the .deb file:
 
 
 === "x86_64/amd64"
 === "x86_64/amd64"
     ```bash
     ```bash
-    wget https://github.com/binwiederhier/ntfy/releases/download/v1.5.0/ntfy_1.5.0_linux_amd64.deb
+    wget https://github.com/binwiederhier/ntfy/releases/download/v1.5.1/ntfy_1.5.1_linux_amd64.deb
     sudo dpkg -i ntfy_*.deb
     sudo dpkg -i ntfy_*.deb
     sudo systemctl enable ntfy
     sudo systemctl enable ntfy
     sudo systemctl start ntfy
     sudo systemctl start ntfy
@@ -90,7 +90,7 @@ Manually installing the .deb file:
 
 
 === "armv7/armhf"
 === "armv7/armhf"
     ```bash
     ```bash
-    wget https://github.com/binwiederhier/ntfy/releases/download/v1.5.0/ntfy_1.5.0_linux_armv7.deb
+    wget https://github.com/binwiederhier/ntfy/releases/download/v1.5.1/ntfy_1.5.1_linux_armv7.deb
     sudo dpkg -i ntfy_*.deb
     sudo dpkg -i ntfy_*.deb
     sudo systemctl enable ntfy
     sudo systemctl enable ntfy
     sudo systemctl start ntfy
     sudo systemctl start ntfy
@@ -98,7 +98,7 @@ Manually installing the .deb file:
 
 
 === "arm64"
 === "arm64"
     ```bash
     ```bash
-    wget https://github.com/binwiederhier/ntfy/releases/download/v1.5.0/ntfy_1.5.0_linux_arm64.deb
+    wget https://github.com/binwiederhier/ntfy/releases/download/v1.5.1/ntfy_1.5.1_linux_arm64.deb
     sudo dpkg -i ntfy_*.deb
     sudo dpkg -i ntfy_*.deb
     sudo systemctl enable ntfy
     sudo systemctl enable ntfy
     sudo systemctl start ntfy
     sudo systemctl start ntfy
@@ -108,21 +108,21 @@ Manually installing the .deb file:
 
 
 === "x86_64/amd64"
 === "x86_64/amd64"
     ```bash
     ```bash
-    sudo rpm -ivh https://github.com/binwiederhier/ntfy/releases/download/v1.5.0/ntfy_1.5.0_linux_amd64.rpm
+    sudo rpm -ivh https://github.com/binwiederhier/ntfy/releases/download/v1.5.1/ntfy_1.5.1_linux_amd64.rpm
     sudo systemctl enable ntfy 
     sudo systemctl enable ntfy 
     sudo systemctl start ntfy
     sudo systemctl start ntfy
     ```
     ```
 
 
 === "armv7/armhf"
 === "armv7/armhf"
     ```bash
     ```bash
-    sudo rpm -ivh https://github.com/binwiederhier/ntfy/releases/download/v1.5.0/ntfy_1.5.0_linux_armv7.rpm
+    sudo rpm -ivh https://github.com/binwiederhier/ntfy/releases/download/v1.5.1/ntfy_1.5.1_linux_armv7.rpm
     sudo systemctl enable ntfy 
     sudo systemctl enable ntfy 
     sudo systemctl start ntfy
     sudo systemctl start ntfy
     ```
     ```
 
 
 === "arm64"
 === "arm64"
     ```bash
     ```bash
-    sudo rpm -ivh https://github.com/binwiederhier/ntfy/releases/download/v1.5.0/ntfy_1.5.0_linux_arm64.rpm
+    sudo rpm -ivh https://github.com/binwiederhier/ntfy/releases/download/v1.5.1/ntfy_1.5.1_linux_arm64.rpm
     sudo systemctl enable ntfy 
     sudo systemctl enable ntfy 
     sudo systemctl start ntfy
     sudo systemctl start ntfy
     ```
     ```