https://github.com/sixlive/telegrammer
Minimal app to use Telegram from the CLI for notifications
https://github.com/sixlive/telegrammer
Last synced: 9 months ago
JSON representation
Minimal app to use Telegram from the CLI for notifications
- Host: GitHub
- URL: https://github.com/sixlive/telegrammer
- Owner: sixlive
- Created: 2024-03-02T16:11:18.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-10-17T19:57:55.000Z (over 1 year ago)
- Last Synced: 2025-04-23T12:15:09.700Z (about 1 year ago)
- Language: Go
- Homepage:
- Size: 6.89 MB
- Stars: 6
- Watchers: 1
- Forks: 2
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
Awesome Lists containing this project
README
# Telegrammer

Telegrammer is a command-line interface (CLI) tool written in Go that allows you to send messages or documents to a specified user on Telegram, as well as retrieve your user ID for configuration by running in server mode. It uses the Telegram Bot API to send messages and documents.
## Features
- Send text messages to a specified user on Telegram.
- Send documents to a specified user on Telegram.
- Retrieve your user ID for configuration by running in server mode.
- Configurable through environment variables or a configuration file.
- Provides visual feedback on successful message delivery.
## Installation
You can download Telegrammer from the [releases](https://github.com/sixlive/telegrammer/releases) page.
Or install with `go`:
```
go install github.com/sixlive/telegrammer@latest
```
## Usage
To use Telegrammer, you need to have a Telegram bot token and the user ID of the recipient. You can set these through environment variables or in a YAML configuration file. Additionally, you can run Telegrammer in server mode to listen for new messages and find your user ID for configuration.
### Environment Variables
- `TELEGRAMMER_BOT_KEY` - Your Telegram bot token.
- `TELEGRAMMER_USER_ID` - The user ID of the recipient.
### Configuration File
You can also provide a configuration file in YAML format. The file should have the following structure:
```yaml
bot_key: your_bot_token
user_id: recipient_user_id
```
You can place the configuration file in the following locations:
- `$HOME/.config/telegrammer/config.yaml`
- `./config.yaml` (in the same directory as the Telegrammer binary)
### Command-Line Flags
- `-f, --file` - Path to the file you want to send.
- `--server` - Run in server mode to listen for new messages and find your user ID.
### Examples
Send a text message:
`telegrammer "Hello, world!"`
Send a document:
`telegrammer -f /path/to/document.pdf "Here's the document you requested."`
Find your user ID by running in server mode:
`telegrammer --server`
Send a request via STDIN:
`echo "foo" | telegrammer`
or with both:
`echo "foo" | telegrammer "bar"`
## Contributing
Contributions to Telegrammer are welcome! Please submit a pull request or create an issue if you have any features you'd like to add or bugs you've found.
## License
Telegrammer is licensed under the MIT License. See [LICENSE](LICENSE) for more information.