parent
e4ab7e281b
commit
e442cb6b1b
@ -0,0 +1,104 @@
|
|||||||
|
# tbotsend (Telegram Bot Send)
|
||||||
|
|
||||||
|
`tbotsend-rs` is a command-line tool written in Rust for sending messages via a Telegram bot. It allows you to send messages to a specified chat ID using a bot token, with support for configuration via files or command-line flags. The tool is designed to be simple, efficient, and easily integrated into scripts or automated workflows.
|
||||||
|
|
||||||
|
## Table of Contents
|
||||||
|
|
||||||
|
- [Features](#features)
|
||||||
|
- [Installation](#installation)
|
||||||
|
- [Usage](#usage)
|
||||||
|
- [Command-Line Options](#command-line-options)
|
||||||
|
- [Configuration Files](#configuration-files)
|
||||||
|
- [Examples](#examples)
|
||||||
|
- [Building from Source](#building-from-source)
|
||||||
|
- [License](#license)
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
- **Send Messages via Telegram Bot**: Easily send messages to any chat ID using your Telegram bot token.
|
||||||
|
- **Configuration Flexibility**: Configure the tool using command-line flags or YAML configuration files.
|
||||||
|
- **Silent Mode**: Option to disable notifications for messages sent.
|
||||||
|
- **Customizable Timeout**: Set custom timeout values for network requests.
|
||||||
|
- **Version Information**: Quickly check the tool's version with the `--version` flag.
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
You can eventually download the pre-built binary from the [releases page](https://git.skyfall.tech/skyfall/tbotsend-rs/releases), but as of this writing this is not yet an option. You may also build from source by following the [Building from Source](#building-from-source) section.
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
### Command-Line Options
|
||||||
|
|
||||||
|
| Option | Short | Description |
|
||||||
|
|---------------------------|-------|----------------------------------------------------|
|
||||||
|
| `--config <path>` | `-f` | Configuration file path. |
|
||||||
|
| `--chatid <id>` | `-c` | Chat ID value. |
|
||||||
|
| `--token <token>` | `-t` | Bot token value. |
|
||||||
|
| `--timeout <seconds>` | | Timeout value in seconds (default is 10). |
|
||||||
|
| `--silent` | `-s` | Disable notification sounds (for message receipt). |
|
||||||
|
| `--version` | `-v` | Print version information and exit. |
|
||||||
|
| `--help` | `-h` | Display help information. |
|
||||||
|
|
||||||
|
- **Note**: You cannot use both configuration flags (`--chatid`, `--token`) and a configuration file (`--config`) at the same time. Choose one method to provide your configuration.
|
||||||
|
|
||||||
|
### Configuration Files
|
||||||
|
|
||||||
|
`tbotsend` supports configuration via YAML files. By default, it looks for configuration files in the following order:
|
||||||
|
|
||||||
|
1. `${HOME}/.config/tbotsend.toml`
|
||||||
|
2. `${HOME}/.tbotsend.toml`
|
||||||
|
|
||||||
|
#### Configuration File Format
|
||||||
|
|
||||||
|
Create a TOML file with the following structure:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
chat_id = "your_chat_id"
|
||||||
|
token = "your_bot_token"
|
||||||
|
timeout = 10
|
||||||
|
```
|
||||||
|
|
||||||
|
- chat_id (string): The chat ID where the message will be sent. This can be obtained from Telegram.
|
||||||
|
- token (string): The bot token provided by the [BotFather](https://core.telegram.org/bots#6-botfather).
|
||||||
|
- timeout (integer, optional): Timeout value in seconds for the HTTP POST request. Default: 10
|
||||||
|
|
||||||
|
#### Specifying a Custom Configuration File
|
||||||
|
|
||||||
|
Use the `--config` of `-f` flag to specify a custom configuration file:
|
||||||
|
```sh
|
||||||
|
tbotsend-rs --config /path/to/your/config.toml "This is a message!"
|
||||||
|
```
|
||||||
|
|
||||||
|
### Examples
|
||||||
|
|
||||||
|
#### Sending a Message Using the Default Configuration File
|
||||||
|
```sh
|
||||||
|
tbotsend-rs "Здравствуйте, Telegram!"
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Sending a Message with Silent Mode Enabled
|
||||||
|
```sh
|
||||||
|
tbotsend-rs --silent "This message will not send a notification."
|
||||||
|
```
|
||||||
|
```sh
|
||||||
|
tbotsend-rs -s "Neither will this one."
|
||||||
|
```
|
||||||
|
```sh
|
||||||
|
tbotsend-rs "Or even this one!" -s
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Sending a Message Using Flags Instead of Conf File
|
||||||
|
```sh
|
||||||
|
tbotsend-rs -c "123456789" -t "123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11" "Message sent using flags."
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Display Version Information
|
||||||
|
```sh
|
||||||
|
tbotsend-rs -v
|
||||||
|
```
|
||||||
|
```sh
|
||||||
|
tbotsend-rs --version
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
----TO BE CONTINUED
|
Loading…
Reference in new issue