Docs
This commit is contained in:
		
							parent
							
								
									a160da3ad9
								
							
						
					
					
						commit
						26fda847ca
					
				
					 5 changed files with 75 additions and 1 deletions
				
			
		|  | @ -35,7 +35,7 @@ var flagsPublish = append( | ||||||
| 	&cli.StringFlag{Name: "email", Aliases: []string{"mail", "e"}, EnvVars: []string{"NTFY_EMAIL"}, Usage: "also send to e-mail address"}, | 	&cli.StringFlag{Name: "email", Aliases: []string{"mail", "e"}, EnvVars: []string{"NTFY_EMAIL"}, Usage: "also send to e-mail address"}, | ||||||
| 	&cli.StringFlag{Name: "user", Aliases: []string{"u"}, EnvVars: []string{"NTFY_USER"}, Usage: "username[:password] used to auth against the server"}, | 	&cli.StringFlag{Name: "user", Aliases: []string{"u"}, EnvVars: []string{"NTFY_USER"}, Usage: "username[:password] used to auth against the server"}, | ||||||
| 	&cli.IntFlag{Name: "wait-pid", Aliases: []string{"pid"}, EnvVars: []string{"NTFY_WAIT_PID"}, Usage: "wait until PID exits before publishing"}, | 	&cli.IntFlag{Name: "wait-pid", Aliases: []string{"pid"}, EnvVars: []string{"NTFY_WAIT_PID"}, Usage: "wait until PID exits before publishing"}, | ||||||
| 	&cli.BoolFlag{Name: "wait-cmd", Aliases: []string{"cmd", "done"}, EnvVars: []string{"NTFY_WAIT_CMD"}, Usage: "run and wait until command finishes before publishing"}, | 	&cli.BoolFlag{Name: "wait-cmd", Aliases: []string{"cmd", "done"}, EnvVars: []string{"NTFY_WAIT_CMD"}, Usage: "run command and wait until it finishes before publishing"}, | ||||||
| 	&cli.BoolFlag{Name: "no-cache", Aliases: []string{"C"}, EnvVars: []string{"NTFY_NO_CACHE"}, Usage: "do not cache message server-side"}, | 	&cli.BoolFlag{Name: "no-cache", Aliases: []string{"C"}, EnvVars: []string{"NTFY_NO_CACHE"}, Usage: "do not cache message server-side"}, | ||||||
| 	&cli.BoolFlag{Name: "no-firebase", Aliases: []string{"F"}, EnvVars: []string{"NTFY_NO_FIREBASE"}, Usage: "do not forward message to Firebase"}, | 	&cli.BoolFlag{Name: "no-firebase", Aliases: []string{"F"}, EnvVars: []string{"NTFY_NO_FIREBASE"}, Usage: "do not forward message to Firebase"}, | ||||||
| 	&cli.BoolFlag{Name: "env-topic", Aliases: []string{"P"}, EnvVars: []string{"NTFY_ENV_TOPIC"}, Usage: "use topic from NTFY_TOPIC env variable"}, | 	&cli.BoolFlag{Name: "env-topic", Aliases: []string{"P"}, EnvVars: []string{"NTFY_ENV_TOPIC"}, Usage: "use topic from NTFY_TOPIC env variable"}, | ||||||
|  |  | ||||||
							
								
								
									
										8
									
								
								cmd/publish_linux.go
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								cmd/publish_linux.go
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,8 @@ | ||||||
|  | package cmd | ||||||
|  | 
 | ||||||
|  | import "syscall" | ||||||
|  | 
 | ||||||
|  | func processExists(pid int) bool { | ||||||
|  | 	err := syscall.Kill(pid, syscall.Signal(0)) | ||||||
|  | 	return err == nil | ||||||
|  | } | ||||||
|  | @ -8,6 +8,7 @@ and the [ntfy Android app](https://github.com/binwiederhier/ntfy-android/release | ||||||
| 
 | 
 | ||||||
| **Features:** | **Features:** | ||||||
| 
 | 
 | ||||||
|  | * ntfy CLI can now [wait for a command or PID](https://ntfy.sh/docs/subscribe/cli/#wait-for-pidcommand) before publishing ([#263](https://github.com/binwiederhier/ntfy/issues/263), thanks to the [original ntfy](https://github.com/dschep/ntfy) for the idea)  | ||||||
| * Trace: Log entire HTTP request to simplify debugging (no ticket) | * Trace: Log entire HTTP request to simplify debugging (no ticket) | ||||||
| * Allow setting user password via `NTFY_PASSWORD` env variable ([#327](https://github.com/binwiederhier/ntfy/pull/327), thanks to [@Kenix3](https://github.com/Kenix3)) | * Allow setting user password via `NTFY_PASSWORD` env variable ([#327](https://github.com/binwiederhier/ntfy/pull/327), thanks to [@Kenix3](https://github.com/Kenix3)) | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -56,6 +56,71 @@ quick ones: | ||||||
|     ntfy pub mywebhook |     ntfy pub mywebhook | ||||||
|     ``` |     ``` | ||||||
| 
 | 
 | ||||||
|  | ### Attaching a local file | ||||||
|  | You can easily upload and attach a local file to a notification: | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | $ ntfy pub --file README.md mytopic | jq . | ||||||
|  | { | ||||||
|  |   "id": "meIlClVLABJQ", | ||||||
|  |   "time": 1655825460, | ||||||
|  |   "event": "message", | ||||||
|  |   "topic": "mytopic", | ||||||
|  |   "message": "You received a file: README.md", | ||||||
|  |   "attachment": { | ||||||
|  |     "name": "README.md", | ||||||
|  |     "type": "text/plain; charset=utf-8", | ||||||
|  |     "size": 2892, | ||||||
|  |     "expires": 1655836260, | ||||||
|  |     "url": "https://ntfy.sh/file/meIlClVLABJQ.txt" | ||||||
|  |   } | ||||||
|  | } | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | ### Wait for PID/command | ||||||
|  | If you have a long-running command, you may wrap it directly with `ntfy publish --wait-cmd`, | ||||||
|  | or if you forgot to wrap it and it's already running, wait for the process to complete with | ||||||
|  | `ntfy publish --wait-pid`. | ||||||
|  | 
 | ||||||
|  | Run a command and wait for it to complete (here: `rsync ...`): | ||||||
|  | 
 | ||||||
|  | ``` | ||||||
|  | $ ntfy pub --wait-cmd mytopic rsync -av ./ root@example.com:/backups/ | jq . | ||||||
|  | { | ||||||
|  |   "id": "Re0rWXZQM8WB", | ||||||
|  |   "time": 1655825624, | ||||||
|  |   "event": "message", | ||||||
|  |   "topic": "mytopic", | ||||||
|  |   "message": "Command succeeded after 56.553s: rsync -av ./ root@example.com:/backups/" | ||||||
|  | } | ||||||
|  | ``` | ||||||
|  | 
 | ||||||
|  | Or, if you already started the long-running process and want to wait for it, you can do this: | ||||||
|  | 
 | ||||||
|  | === "Using a PID directly" | ||||||
|  |     ``` | ||||||
|  |     $ ntfy pub --wait-pid 8458 mytopic | jq . | ||||||
|  |     { | ||||||
|  |       "id": "orM6hJKNYkWb", | ||||||
|  |       "time": 1655825827, | ||||||
|  |       "event": "message", | ||||||
|  |       "topic": "mytopic", | ||||||
|  |       "message": "Process with PID 8458 exited after 2.003s" | ||||||
|  |     } | ||||||
|  |     ``` | ||||||
|  | 
 | ||||||
|  | === "Using a `pidof`" | ||||||
|  |     ``` | ||||||
|  |     $ ntfy pub --wait-pid $(pidof rsync) mytopic | jq . | ||||||
|  |     { | ||||||
|  |       "id": "orM6hJKNYkWb", | ||||||
|  |       "time": 1655825827, | ||||||
|  |       "event": "message", | ||||||
|  |       "topic": "mytopic", | ||||||
|  |       "message": "Process with PID 8458 exited after 2.003s" | ||||||
|  |     } | ||||||
|  |     ``` | ||||||
|  | 
 | ||||||
| ## Subscribe to topics | ## Subscribe to topics | ||||||
| You can subscribe to topics using `ntfy subscribe`. Depending on how it is called, this command | You can subscribe to topics using `ntfy subscribe`. Depending on how it is called, this command | ||||||
| will either print or execute a command for every arriving message. There are a few different ways  | will either print or execute a command for every arriving message. There are a few different ways  | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue