%global _empty_manifest_terminate_build 0
Name:		python-telegram-handler
Version:	1.4.4
Release:	1
Summary:	Small package for working with config files
License:	MIT License
URL:		https://github.com/guyshe/telegram_handler
Source0:	https://mirrors.nju.edu.cn/pypi/web/packages/2e/bf/349e55b84e28aecaf79fe4c6db863406f245d12dbdb012734d447919dccf/telegram-handler-1.4.4.tar.gz
BuildArch:	noarch

Requires:	python3-requests
Requires:	python3-retry

%description
# telegram_handler
Telegram logging handler for logging library in python.

The Telegram log handler sends log messages directly to either a Telegram channel or chat of your choice.

## Installation
`pip install telegram-handler`


## Motivation
Tracking program execution state remotely - directly from your Telegram account.

## Screenshots
![screenshot](https://github.com/guyshe/telegram_handler/blob/master/screenshot.png?raw=true)

## Code Examples
Basic usage example:
```python
import logging

from telegram_handler import TelegramLoggingHandler

BOT_TOKEN = '1612485124:AAFW9JXxjqY9d-XayMKh8Q4-_iyHkXSw3N8'
CHANNEL_NAME = 'example_channel_logger'


def main():
    telegram_log_handler = TelegramLoggingHandler(BOT_TOKEN, CHANNEL_NAME)
    my_logger = logging.getLogger('My-Logger')
    my_logger.setLevel(logging.INFO)
    my_logger.addHandler(logging.StreamHandler())
    my_logger.addHandler(telegram_log_handler)

    for i in range(5):
        my_logger.error(f'iterating {i}..')


if __name__ == '__main__':
    main()
```

Another option is to add the handler to the root logger:
```python
import logging

from telegram_handler import TelegramLoggingHandler

BOT_TOKEN = '1612485124:AAFW9JXxjqY9d-XayMKh8Q4-_iyHkXSw3N8'
CHANNEL_NAME = 'example_channel_logger'


def main():
    telegram_log_handler = TelegramLoggingHandler(BOT_TOKEN, CHANNEL_NAME)
    logging.basicConfig(
        handlers = [
            telegram_log_handler
        ],
        level=logging.INFO,
        format='%(asctime)s | %(levelname)s | %(name)s | %(message)s'
    )
    my_logger = logging.getLogger('My-Logger')
    for i in range(5):
        my_logger.error(f'iterating {i}..')


if __name__ == '__main__':
    main()

```


## Preparation
In order to use the package you should:
- Create a bot, you can see how this is done
  [here](https://core.telegram.org/bots#3-how-do-i-create-a-bot).
- Create a channel, you can see how this is done
  [here](https://www.logaster.com/blog/how-create-telegram-channel/).

## How to use?
- Use `TelegramLoggingHandler` and send messages from a different thread (__recommended__)
  
### Parameters:
- `bot_token` - The token that returns from the `BotFather` when creating the bot.  
![bot_token](https://github.com/guyshe/telegram_handler/blob/master/bot%20token.png?raw=true)
- `channel_name` - Each chat in Telegram have `chat ID`. 
  - Channel name is the `chat ID` for public channels. 
    So for the __public channel__ `example_channel_logger` the `chat id` will be `example_channel_logger`
  - The `channel_name` can be any `chat id`, you can see how to obtain chat id 
    [here](http://techblog.sillifish.co.uk/2020/03/30/telegram-chat-id-and-token-id/).


%package -n python3-telegram-handler
Summary:	Small package for working with config files
Provides:	python-telegram-handler
BuildRequires:	python3-devel
BuildRequires:	python3-setuptools
BuildRequires:	python3-pip
%description -n python3-telegram-handler
# telegram_handler
Telegram logging handler for logging library in python.

The Telegram log handler sends log messages directly to either a Telegram channel or chat of your choice.

## Installation
`pip install telegram-handler`


## Motivation
Tracking program execution state remotely - directly from your Telegram account.

## Screenshots
![screenshot](https://github.com/guyshe/telegram_handler/blob/master/screenshot.png?raw=true)

## Code Examples
Basic usage example:
```python
import logging

from telegram_handler import TelegramLoggingHandler

BOT_TOKEN = '1612485124:AAFW9JXxjqY9d-XayMKh8Q4-_iyHkXSw3N8'
CHANNEL_NAME = 'example_channel_logger'


def main():
    telegram_log_handler = TelegramLoggingHandler(BOT_TOKEN, CHANNEL_NAME)
    my_logger = logging.getLogger('My-Logger')
    my_logger.setLevel(logging.INFO)
    my_logger.addHandler(logging.StreamHandler())
    my_logger.addHandler(telegram_log_handler)

    for i in range(5):
        my_logger.error(f'iterating {i}..')


if __name__ == '__main__':
    main()
```

Another option is to add the handler to the root logger:
```python
import logging

from telegram_handler import TelegramLoggingHandler

BOT_TOKEN = '1612485124:AAFW9JXxjqY9d-XayMKh8Q4-_iyHkXSw3N8'
CHANNEL_NAME = 'example_channel_logger'


def main():
    telegram_log_handler = TelegramLoggingHandler(BOT_TOKEN, CHANNEL_NAME)
    logging.basicConfig(
        handlers = [
            telegram_log_handler
        ],
        level=logging.INFO,
        format='%(asctime)s | %(levelname)s | %(name)s | %(message)s'
    )
    my_logger = logging.getLogger('My-Logger')
    for i in range(5):
        my_logger.error(f'iterating {i}..')


if __name__ == '__main__':
    main()

```


## Preparation
In order to use the package you should:
- Create a bot, you can see how this is done
  [here](https://core.telegram.org/bots#3-how-do-i-create-a-bot).
- Create a channel, you can see how this is done
  [here](https://www.logaster.com/blog/how-create-telegram-channel/).

## How to use?
- Use `TelegramLoggingHandler` and send messages from a different thread (__recommended__)
  
### Parameters:
- `bot_token` - The token that returns from the `BotFather` when creating the bot.  
![bot_token](https://github.com/guyshe/telegram_handler/blob/master/bot%20token.png?raw=true)
- `channel_name` - Each chat in Telegram have `chat ID`. 
  - Channel name is the `chat ID` for public channels. 
    So for the __public channel__ `example_channel_logger` the `chat id` will be `example_channel_logger`
  - The `channel_name` can be any `chat id`, you can see how to obtain chat id 
    [here](http://techblog.sillifish.co.uk/2020/03/30/telegram-chat-id-and-token-id/).


%package help
Summary:	Development documents and examples for telegram-handler
Provides:	python3-telegram-handler-doc
%description help
# telegram_handler
Telegram logging handler for logging library in python.

The Telegram log handler sends log messages directly to either a Telegram channel or chat of your choice.

## Installation
`pip install telegram-handler`


## Motivation
Tracking program execution state remotely - directly from your Telegram account.

## Screenshots
![screenshot](https://github.com/guyshe/telegram_handler/blob/master/screenshot.png?raw=true)

## Code Examples
Basic usage example:
```python
import logging

from telegram_handler import TelegramLoggingHandler

BOT_TOKEN = '1612485124:AAFW9JXxjqY9d-XayMKh8Q4-_iyHkXSw3N8'
CHANNEL_NAME = 'example_channel_logger'


def main():
    telegram_log_handler = TelegramLoggingHandler(BOT_TOKEN, CHANNEL_NAME)
    my_logger = logging.getLogger('My-Logger')
    my_logger.setLevel(logging.INFO)
    my_logger.addHandler(logging.StreamHandler())
    my_logger.addHandler(telegram_log_handler)

    for i in range(5):
        my_logger.error(f'iterating {i}..')


if __name__ == '__main__':
    main()
```

Another option is to add the handler to the root logger:
```python
import logging

from telegram_handler import TelegramLoggingHandler

BOT_TOKEN = '1612485124:AAFW9JXxjqY9d-XayMKh8Q4-_iyHkXSw3N8'
CHANNEL_NAME = 'example_channel_logger'


def main():
    telegram_log_handler = TelegramLoggingHandler(BOT_TOKEN, CHANNEL_NAME)
    logging.basicConfig(
        handlers = [
            telegram_log_handler
        ],
        level=logging.INFO,
        format='%(asctime)s | %(levelname)s | %(name)s | %(message)s'
    )
    my_logger = logging.getLogger('My-Logger')
    for i in range(5):
        my_logger.error(f'iterating {i}..')


if __name__ == '__main__':
    main()

```


## Preparation
In order to use the package you should:
- Create a bot, you can see how this is done
  [here](https://core.telegram.org/bots#3-how-do-i-create-a-bot).
- Create a channel, you can see how this is done
  [here](https://www.logaster.com/blog/how-create-telegram-channel/).

## How to use?
- Use `TelegramLoggingHandler` and send messages from a different thread (__recommended__)
  
### Parameters:
- `bot_token` - The token that returns from the `BotFather` when creating the bot.  
![bot_token](https://github.com/guyshe/telegram_handler/blob/master/bot%20token.png?raw=true)
- `channel_name` - Each chat in Telegram have `chat ID`. 
  - Channel name is the `chat ID` for public channels. 
    So for the __public channel__ `example_channel_logger` the `chat id` will be `example_channel_logger`
  - The `channel_name` can be any `chat id`, you can see how to obtain chat id 
    [here](http://techblog.sillifish.co.uk/2020/03/30/telegram-chat-id-and-token-id/).


%prep
%autosetup -n telegram-handler-1.4.4

%build
%py3_build

%install
%py3_install
install -d -m755 %{buildroot}/%{_pkgdocdir}
if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
pushd %{buildroot}
if [ -d usr/lib ]; then
	find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/lib64 ]; then
	find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/bin ]; then
	find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/sbin ]; then
	find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
fi
touch doclist.lst
if [ -d usr/share/man ]; then
	find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
fi
popd
mv %{buildroot}/filelist.lst .
mv %{buildroot}/doclist.lst .

%files -n python3-telegram-handler -f filelist.lst
%dir %{python3_sitelib}/*

%files help -f doclist.lst
%{_docdir}/*

%changelog
* Mon May 15 2023 Python_Bot <Python_Bot@openeuler.org> - 1.4.4-1
- Package Spec generated