summaryrefslogtreecommitdiff
path: root/python-telegrambot.spec
blob: 110ac718278ad8a0b8e24433659dc64b72788307 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
%global _empty_manifest_terminate_build 0
Name:		python-telegrambot
Version:	2.4.0.dev12
Release:	1
Summary:	Pluggable Python Telegram Bot
License:	License :: OSI Approved :: Apache Software License
URL:		https://www.github.com/wrboyce/telegrambot
Source0:	https://mirrors.aliyun.com/pypi/web/packages/d0/c2/64ac235f2e9ffd7d1dbaf68c9c071987d867e7fe41c3d663466d238be5b5/telegrambot-2.4.0.dev12.tar.gz
BuildArch:	noarch


%description
|Build Status| |Coverage Status| |Code Quality| |Current Version|
|Python Versions|
Despite this code having been in production in quite a heavy use
environment for a good few months, I really wouldn't class it as an
example of great code.
It would be fair to say I got sidetracked, and decided to see how much I
could abuse certain aspects of Python (such as metaclasses/class
creation).
You have been warned!
With that out of the way, ``telegrambot`` is pretty easy to get up and
running.
    % pip install telegrambot
    % cat mybot.cfg
    [core]
    bot_id = <telegram_bot_id>
    token = <telegram_bot_token>
    [bing]
    key = <bing_api_key>
    % telegrambot mybot.cfg
As it stands the framework exposes three commands; ``/crash`` and
``/hang`` were used to test error handling and threading during
development whereas ``/get`` is a bring-your-own-api-key bing image
searcher.
Adding plugins aims to be really easy, just create a namespace package
under ``telegrambot.plugins`` and subclass
``telegrambot.plugins.base.BasePlugin`` (now that I think about it, the
namespace package may not be necessary - I will have to re-think my
motivation on that one).

%package -n python3-telegrambot
Summary:	Pluggable Python Telegram Bot
Provides:	python-telegrambot
BuildRequires:	python3-devel
BuildRequires:	python3-setuptools
BuildRequires:	python3-pip
%description -n python3-telegrambot
|Build Status| |Coverage Status| |Code Quality| |Current Version|
|Python Versions|
Despite this code having been in production in quite a heavy use
environment for a good few months, I really wouldn't class it as an
example of great code.
It would be fair to say I got sidetracked, and decided to see how much I
could abuse certain aspects of Python (such as metaclasses/class
creation).
You have been warned!
With that out of the way, ``telegrambot`` is pretty easy to get up and
running.
    % pip install telegrambot
    % cat mybot.cfg
    [core]
    bot_id = <telegram_bot_id>
    token = <telegram_bot_token>
    [bing]
    key = <bing_api_key>
    % telegrambot mybot.cfg
As it stands the framework exposes three commands; ``/crash`` and
``/hang`` were used to test error handling and threading during
development whereas ``/get`` is a bring-your-own-api-key bing image
searcher.
Adding plugins aims to be really easy, just create a namespace package
under ``telegrambot.plugins`` and subclass
``telegrambot.plugins.base.BasePlugin`` (now that I think about it, the
namespace package may not be necessary - I will have to re-think my
motivation on that one).

%package help
Summary:	Development documents and examples for telegrambot
Provides:	python3-telegrambot-doc
%description help
|Build Status| |Coverage Status| |Code Quality| |Current Version|
|Python Versions|
Despite this code having been in production in quite a heavy use
environment for a good few months, I really wouldn't class it as an
example of great code.
It would be fair to say I got sidetracked, and decided to see how much I
could abuse certain aspects of Python (such as metaclasses/class
creation).
You have been warned!
With that out of the way, ``telegrambot`` is pretty easy to get up and
running.
    % pip install telegrambot
    % cat mybot.cfg
    [core]
    bot_id = <telegram_bot_id>
    token = <telegram_bot_token>
    [bing]
    key = <bing_api_key>
    % telegrambot mybot.cfg
As it stands the framework exposes three commands; ``/crash`` and
``/hang`` were used to test error handling and threading during
development whereas ``/get`` is a bring-your-own-api-key bing image
searcher.
Adding plugins aims to be really easy, just create a namespace package
under ``telegrambot.plugins`` and subclass
``telegrambot.plugins.base.BasePlugin`` (now that I think about it, the
namespace package may not be necessary - I will have to re-think my
motivation on that one).

%prep
%autosetup -n telegrambot-2.4.0.dev12

%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-telegrambot -f filelist.lst
%dir %{python3_sitelib}/*

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

%changelog
* Tue Jun 20 2023 Python_Bot <Python_Bot@openeuler.org> - 2.4.0.dev12-1
- Package Spec generated