![](/style/images/good.png)
![](/style/images/bad.png)
GitHub - gotify/cli: A command line interface for pushing messages to gotify/ser...
source link: https://github.com/gotify/cli
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
README.md
Gotify-CLI
![badge-release](https://camo.githubusercontent.com/4a55d6c6e04a865b7f8f40b9884243a05a84aa37/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f72656c656173652f676f746966792f636c692e737667)
Gotify-CLI is a command line client for pushing messages to gotify/server. It is not required to push messages. See alternatives.
Features
- stores token/url in a config file
- initialization wizard
- piping support (
echo message | gotify push
) - simple to use
Alternatives
You can simply use curl, HTTPie or any other http-client to push messages.
$ curl -X POST "https://push.example.de/message?token=<apptoken>" -F "title=my title" -F "message=my message" $ http -f POST "https://push.example.de/message?token=<apptoken>" title="my title" message="my message"
Installation
Download the latest release for your os: (this example uses version v1.2.0
)
$ wget -O gotify https://github.com/gotify/cli/releases/download/v1.2.0/gotify-cli-linux-amd64
# or
$ curl -Lo gotify https://github.com/gotify/cli/releases/download/v1.2.0/gotify-cli-linux-amd64
Make gotify
executable:
$ chmod +x gotify
Test if the Gotify-CLI works: (When it doesn't work, you may have downloaded the wrong file or your device/os isn't supported)
$ gotify version
It should output something like this:
Version: 1.2.0 Commit: ec4a598f124c149802038c74571aa704a6660c4a BuildDate: 2018-11-24-19:41:36
(optional) Move the executable to a folder on your $PATH
:
$ mv gotify /usr/bin/gotify
Now you can either run the initialization wizard or create a config manually. This tutorial uses the wizard.
$ gotify init
When you've finished initializing Gotify-CLI, you are ready to push messages to gotify/server.
Here are some examples commands, you can view the "push help" via gotify help push
(or have a look at push help).
$ gotify push my message $ gotify push "my message" $ echo my message | gotify push $ gotify push < somefile $ gotify push -t "my title" -p 10 "my message"
Help
Uses version v1.2.0
$ gotify help NAME: Gotify - The official Gotify-CLI USAGE: gotify [global options] command [command options] [arguments...] VERSION: 1.2.0 COMMANDS: init Initializes the Gotify-CLI version, v Shows the version config Shows the config push, p Pushes a message help, h Shows a list of commands or help for one command GLOBAL OPTIONS: --help, -h show help --version, -v print the version
Push help
$ gotify help push NAME: gotify push - Pushes a message USAGE: gotify push [command options] <message-text> DESCRIPTION: the message can also provided in stdin f.ex: echo my text | gotify push OPTIONS: --priority value, -p value Set the priority (default: 0) --title value, -t value Set the title (empty for app name) --token value Override the app token --url value Override the Gotify URL --quiet, -q Do not output anything (on success)
Configuration
Note: The config can be created by gotify init
.
Gotify-CLI will search the following paths for a config file:
/etc/gotify/cli.json
~/.gotify/cli.json
./cli.json
Structure
name description example token an application token (a client token will not work)A4ZudDRdLT40L5X
url
the URL to your gotify/server
https://gotify.example.com
Config example
{ "token": "A4ZudDRdLT40L5X", "url": "https://gotify.example.com" }
Dockerfile
The Dockerfile contains the steps necessary to build a new version of the CLI and then run it in a minimal Alpine container.
Build:
docker build -t gotify/gotify-cli .
Run (this assumes your cli.json
file is in the current working directory):
docker run -it -v "$PWD/cli.json:/home/app/cli.json" gotify/gotify-cli:latest push -p 5 "Test from Gotify CLI"
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK