Noam Meltzer
58dddfd9c3
Control the read timeout from telegram servers
...
refs #495
refs #364
2017-01-07 20:13:08 +02:00
Noam Meltzer
68a7d9fa1b
Make sure to hint Telegram servers that we reuse connections
...
refs #495
refs #364
2017-01-07 20:13:08 +02:00
Anton Tagunov
48bcc3129a
set timeout for post message with file object ( #486 )
2016-12-29 12:01:58 +02:00
Hugo Hakim Damer
a8fecc527d
Prevented modifications to the request object's original data ( #454 )
...
fixes #357
2016-12-20 00:07:35 +02:00
Yan
c3984e1bf1
Download changed ( #459 )
...
* DownBytes added
* File.downbyte changed
* Changed file.download();Remove downbyte()
* Fixed typo
* add docstring, make custom_path and out mutually exclusive, rename downbytes to retrieve
* remove trailing whitespace
* run pre-commit hooks
2016-12-18 03:05:00 +01:00
Noam Meltzer
acf1541395
Botapi2.3 ( #471 )
...
* New fields channel_post and edited_channel_post for Update
refs #468
* setGameScore() changes
- Changed behaviour: messages with high scores will be update with new
high scores by default. (documentation fix)
- Use (new) disable_edit_message in setGameScore to disable the above new
behaviour.
- The edit_message parameter from setGameScore is no longer in use. For
backward compatibility, it will be taken into account for a while,
unless disable_edit_message is passed explicitly.
refs #468
* New field forward_from_message_id for Message.
refs #468
* New parameter cache_time for answerCallbackQuery
refs #468
* replykeyboardhide renamed to replykeyboardremove
refs #468
* Unitests for updated setGameScore semantics
refs #468
* Backward compatibility for ReplyKeyboardHide
refs #468
* Fix docstrings of wrapper methods in Message
* Unitest new field forward_from_message_id of Message
refs #468
* Fix testMaxCaptionLength
Telegram servers changed their behaviour - now they truncate a long
caption instead of returning an error.
* MessageHandler: Added support for channel posts
* Fix flake8 complaints in a manner which yapf will like it too.
* fix rst markup
2016-12-11 22:44:52 +01:00
lisitsky
a2fddbe85c
Fix telegram API change, returning '404 Not found' ( #461 )
...
* Fix telegram API change, returning '404 Not found' with raising own TelegramError rather native exception
* Change exception to InvalidToken in test and request util
* Added myself to AUTHORS. Thx for appreciation :)
2016-11-09 14:36:42 +01:00
Jannes Höke
10bdf8212c
Add pass_user_data and pass_chat_data to Handler ( #436 )
...
* initial commit for user_data
* add chat_data and use defaultdict
* fix chat_data copy-paste error
* add test for user_data and chat_data
* fix case where chat is None
* remove braces from import line
2016-10-25 19:28:34 +02:00
Noam Meltzer
2463b4b9c8
New exception: RetryAfter
...
Also, small fix to the description text of ChatMigrated
2016-10-04 01:27:45 +03:00
Jannes Höke
5116a77221
Class methods ( #362 )
...
* bot.py: add create_references method
* create bot reference in webhook handler, use create_references on new updates
* message.py: implement reply_text
* echobot2.py: use Message.reply_text
* fix create_references in webhook handler
* add some more instance methods
* Chat.kick_member and unban_member
* bot.py: Create bot references in outgoing messages
* add tests for everything testable
* test_updater.py: add create_references method to MockBot
* remove Bot.create_references and refactor TelegramObject.de_json to take the additional parameter bot
* List bot as named kwarg where used
* file.py: Use Bot.request property instead of Bot._request attr
2016-09-20 06:36:55 +02:00
Noam Meltzer
e4a132c0e4
Reusable dispatcher ( #402 )
...
* Create a Request class which maintains its own connection pool
* When creating a Bot instance a new Request instance will be created if one wasn't supplied.
* Updater is responsible for creating a Request instance if a Bot instance wasn't provided.
* Dispatcher: add method to run async functions without decorator
* Dispatcher can now run as a singleton (allowing run_async decorator to work) as it always did and as multiple instances (where run_async decorator will raise RuntimeError)
2016-09-06 16:38:07 +03:00
Rahiel Kasim
da87d4ba78
fix yapf
2016-08-26 11:17:05 +02:00
Rahiel Kasim
fcda567f8c
use ujson as JSON en/decoder if available
2016-08-26 09:40:46 +02:00
Rahiel Kasim
00bba73673
drop Python 2.6 support ( closes #245 ) ( #386 )
...
* drop Python 2.6 support (closes #245 )
* fix NullHandler import
* README: explicitly mention Py3 and PyPy compatibility
2016-08-20 22:01:07 +02:00
overquota
f1ee54fa73
ChatMigrated exception ( #353 )
...
* ChatMigrated exception
2016-07-25 21:50:33 +03:00
Jannes Höke
ad3eec2af8
ConversationHandler ( #331 )
...
* initial commit for conversationhandler and example
* implement simple Promise for run_async/conversationhandler
* refactor Promise._done to done
* add handling for timed out Promises
* correctly handle promises with None results
* fix handling tuple states
* update comments on example
* Added a first test on the ConversationHandler.
* Fixed a small typo.
* Yapf'd.
* add sphinx doc for conversation handler
* fix title for callbackqueryhandler sphinx docs
2016-07-15 01:30:54 +02:00
Jannes Höke
81a755a7d8
Merge branch 'urllib3_fix_proxy_auth'
2016-07-13 15:09:23 +02:00
Noam Meltzer
7c908db901
urllib3: can now connect through proxies which require auth
...
fixes #343
2016-07-12 23:31:38 +03:00
Mikki Weesenaar
f443003408
Small change in the documentation.
2016-07-12 13:45:37 +02:00
Jannes Höke
afc36a235b
move webhook handler logs to logging at DEBUG level
2016-07-11 23:44:40 +02:00
Noam Meltzer
b3e42c3e20
urllib3: now supports proxy
...
fixes #336
2016-07-08 22:33:37 +03:00
Jannes Höke
89a3dc8372
use urlopen timeout
2016-07-04 21:40:31 +02:00
Jannes Höke
703bece155
set loglevel of urllib3 to WARNING by default
2016-06-19 23:40:34 +02:00
Noam Meltzer
494a7ec1e4
ypaf fixes
2016-06-18 19:57:11 +03:00
Noam Meltzer
fc05d3a626
switch back to PoolManager
...
telegram servers might send a reponse with HTTP 302 (redirect) to
another hostname. in such case HTTPSConnectionPool will fail to do the
job
2016-06-18 19:50:18 +03:00
Noam Meltzer
a814e9de6b
make sure to stop conpool between sensitive unitests
2016-06-18 00:50:44 +03:00
Noam Meltzer
e479c7f25e
type hinting (cosmetic fix)
2016-06-17 23:59:32 +03:00
Noam Meltzer
1f5601dae2
fix SyntaxWarning
2016-06-01 22:38:08 +03:00
Noam Meltzer
3608c2bbe5
dispatcher: if connection pool is already initialized raise exception
...
this will better protect the user from wrong usage
2016-06-01 22:30:34 +03:00
Jannes Höke
6b457bada5
use keepalive for connection pool
2016-05-31 13:45:43 +02:00
Jannes Höke
74283bd414
use HTTPSConnectionPool instead of PoolManager
2016-05-30 17:12:50 +02:00
Jannes Höke
dd91ce1f39
use single queue for thread pool, initialize connection pool with n+3
2016-05-30 13:09:23 +02:00
Noam Meltzer
574fc8cddf
urllib3: validate https certificate
2016-05-30 01:05:19 +03:00
Noam Meltzer
3076dfc086
use urllib3 instead of urllib(2)
2016-05-30 01:05:19 +03:00
Rahiel Kasim
f31bd91673
Merge pull request #305 from python-telegram-bot/move-botan
...
move botan from utils to contrib
2016-05-28 21:32:07 +02:00
Rahiel Kasim
c8497424b7
move botan to contrib
2016-05-28 09:12:10 +02:00
Leandro Toledo
9a13de4a96
Merge remote-tracking branch 'origin/master' into bot2.1
...
Conflicts:
telegram/bot.py
tests/test_bot.py
2016-05-26 16:15:50 -03:00
Noam Meltzer
561f1c3f02
bot: validate token does not contain white spaces ( #306 )
...
in addition move validation code from validate.py into bot.py and delete
the former file
2016-05-26 22:09:14 +03:00
Leandro Toledo
3907e64966
Adds telegram.utils.botan back using deprecate
2016-05-26 14:13:27 -03:00
Leandro Toledo
1e398821a0
Introducing telegram.error.BadRequest and testLeaveChat testcase #302
2016-05-25 21:15:17 -03:00
Rahiel Kasim
c4d5eff9f3
move botan from utils to ext
2016-05-24 23:40:09 +02:00
Leandro Toledo
d445d35ceb
Running yapf for codebase #259
2016-05-14 22:46:40 -03:00
Rahiel Kasim
5971cb35f8
fix merge conflict snakes with master
2016-04-30 14:56:48 +02:00
Rahiel Kasim
9d367e9f2c
telegram.utils.deprecate: helper module to facilitate deprecation
2016-04-28 14:24:12 +02:00
Noam Meltzer
0c74b3cfb9
bot.py + request.py: network_delay is unique for getUpdates
2016-04-28 01:41:32 +03:00
Noam Meltzer
0ca3ef7a38
utils.request: clean imports using feature.moves
2016-04-28 01:41:32 +03:00
Noam Meltzer
02243f6fda
utils.validater: remove dead code
2016-04-26 17:47:37 +03:00
Jannes Höke
cfdfdeb4fc
Merge branch 'bot-api-2.0' into dispatcher-rework
2016-04-21 17:20:05 +02:00
Leandro Toledo
ba7e1cada7
Bot class refactor and its docstrings #232
2016-04-21 08:15:38 -03:00
Jannes Höke
48eb623f15
Merge branch 'bot-api-2.0' into dispatcher-rework
2016-04-19 01:24:02 +02:00
Leandro Toledo
9a340d2ea9
Endorsing if empty or 0 or empty string and minor typo fix #232
2016-04-18 20:18:32 -03:00
Jannes Höke
ad211655ea
Merge branch 'master' into dispatcher-rework
...
Conflicts:
README.rst
2016-04-17 12:45:31 +02:00
Noam Meltzer
ecc86d4bcd
request: catch socket.error
...
socket.error is another exception which is thrown by the underlying
infrastacture and not handled by the urllib2 or httplib layers
fixes #236
2016-04-16 19:09:45 +03:00
Jannes Höke
1e19084a0d
initial commit for dispatcher rework. deleted updatequeue.py as it is not needed. added handler base class, messagehandler, commandhandler, regexhandler. adjusted dispatcher for new system
2016-04-14 23:57:40 +02:00
Rahiel Kasim
01b90e7ede
small improvements
2016-04-02 23:13:49 +02:00
Jannes Höke
45a47d54bd
move updatequeue to telegram.utils
2016-03-22 02:42:19 +01:00
Leandro Toledo
1e4ae6546f
Changing INFO logs to DEBUG and minor fixes
2016-03-14 22:56:20 -03:00
Jannes Höke
cd42524fd4
Merge pull request #174 from python-telegram-bot/inlinebots
...
Implement Inlinebots
2016-02-28 02:10:21 +01:00
Jannes Höke
4aca4d1d1f
Merge pull request #187 from python-telegram-bot/flaky-tests
...
Flaky tests
2016-02-28 01:02:11 +01:00
Noam Meltzer
ccb24d1288
request.py: fix for python2.7
2016-02-27 23:13:29 +02:00
Noam Meltzer
fc618274ae
bot.py: allow specifying timeout for sendVideo operations
2016-02-27 23:00:33 +02:00
Jannes Höke
efd10507d0
remove kwargs in favor of named keyword arguments, validate argument types
2016-02-21 11:33:34 +01:00
Noam Meltzer
2338377eda
request: better parsing of URLError exception
2016-02-20 15:20:00 +02:00
Noam Meltzer
4945d99de6
webhookhandler: better handling of invalid POST data
2016-02-19 18:00:57 +02:00
Rahiel Kasim
d02e656700
raise NetworkError for HTTP 502 (Bad Gateway)
2016-02-09 15:26:59 +01:00
Jannes Höke
bec81b5c3b
Merge pull request #161 from tsnoam/master
...
better exception handling
2016-02-07 22:34:49 +01:00
Jannes Höke
eac3d8842d
remove json import
2016-02-07 15:09:41 +01:00
Jannes Höke
17ac73c3c4
fix message to json
2016-02-07 14:46:36 +01:00
Noam Meltzer
7ebbc60694
Unauthorized is HTTP code 401
...
I am not certain where the older 403 came from, but for now going to
leave it as is
2016-02-07 00:56:30 +02:00
Noam Meltzer
d4beb94059
Add specific exceptions types for important errors
...
maintain backward compatibility with the 'old' exception by inherting
from TelegramError and using the same message
2016-02-06 18:48:55 +02:00
Noam Meltzer
2859a8873f
utils.request: catch URLError in _try_except_req decorator
2016-02-06 18:48:55 +02:00
Oleg Shlyazhko
c3bca9af48
remove checking for non 200 http codes, exceptions already handle it
2016-01-24 18:28:27 +03:00
Oleg Shlyazhko
9eec34edd1
pep8 fix
2016-01-23 20:13:48 +03:00
Oleg Shlyazhko
383a2d3742
fix httperror error output
2016-01-23 20:03:29 +03:00
Oleg Shlyazhko
d1e4eeaf30
fix urlopen data format
2016-01-23 19:49:55 +03:00
Oleg Shlyazhko
80b53f1ab7
fix urlopen call
2016-01-23 19:44:40 +03:00
Oleg Shlyazhko
0faa38b8af
fix httperror logging
2016-01-23 19:29:01 +03:00
Oleg Shlyazhko
7508c2f8bf
add detailed comment in class and src key to tracking url
2016-01-23 16:59:53 +03:00
Oleg Shlyazhko
2c12bd6775
replace print with logging
2016-01-23 16:58:01 +03:00
Oleg Shlyazhko
5b05bcc8f2
add http error exception handling
2016-01-23 15:21:13 +03:00
Oleg Shlyazhko
adb446abf6
fix pep8 styling
2016-01-23 15:14:17 +03:00
Oleg Shlyazhko
17c2857622
add module for botan analytics
2016-01-23 14:24:34 +03:00
Noam Meltzer
dc032b349c
_try_except_req(): catch httplib.HTTPException
...
fixes #153
2016-01-19 22:02:34 +02:00
Jannes Höke
aa8966832b
release 3.2 and update copyright notice to 2015-2016
2016-01-05 14:12:03 +01:00
Noam Meltzer
bc2679f2ae
utils.request: provide HTTP error code with unknown errors
2016-01-04 00:32:17 +02:00
Noam Meltzer
21fdaa4ff7
utils.request: decorate functions with general try... except...
...
refs #134
2016-01-04 00:31:40 +02:00
Noam Meltzer
79f29c4b9e
properly handle utf-8 server response & identify json parsing errors
...
refs #134
2016-01-04 00:31:40 +02:00
Jannes Höke
ea7c54ba07
Release v3.1.1, change author email everywhere
2015-12-21 21:18:53 +01:00
Jannes Höke
f49f592f0d
log warning
2015-11-24 19:33:03 +01:00
Jannes Höke
c2853fa1ef
WebhookServer: Lock serve_forever() and shutdown()
2015-11-24 15:39:00 +01:00
Jannes Höke
fca8aee177
improve logging
2015-11-21 23:09:19 +01:00
Jannes Höke
7c9928c58f
Let shutdown return immediately if server is not running
2015-11-21 21:22:11 +01:00
Jannes Höke
ee8b78aa0d
pep8 and docs
2015-11-16 20:43:35 +01:00
Jannes Höke
0b8fd24771
fixed issues with python2
2015-11-16 20:35:27 +01:00
Jannes Höke
396dc6cd3c
Implement webhook listener server
2015-11-16 13:05:57 +01:00
Jannes Höke
10451509f1
fix for issue #79
2015-11-12 19:15:39 +01:00
Jannes Höke
0b4c23f50e
improve error handling on timeouts
2015-11-11 14:06:10 +01:00
Jannes Höke
93afd3eabe
remove check for network_delay
2015-11-10 23:12:20 +01:00
Jannes Höke
61dac76bee
don't send network_delay to telegram servers
2015-11-10 22:40:19 +01:00
Jannes Höke
4bc03ed56a
Add parameter network_delay for slow connections and increase default to 2 seconds
2015-11-10 19:47:21 +01:00
Leandro Toledo
6c13762c93
Fixes PEP8 and Lint minor issues
2015-11-10 12:10:50 -02:00
Jannes Höke
cd5e805692
added documentation
2015-11-10 05:16:16 +01:00
Rahiel Kasim
dcb9129809
raise exception if telegram times out on long-polling
2015-11-02 20:30:37 +01:00
Leandro Toledo
6c9490f2c6
Handles HTTP Bad Gateway error (503) on request module #63
2015-09-24 09:17:50 -03:00
Leandro Toledo
a1f35355f6
Keep bleeding edge features on testing branch
2015-09-20 12:43:32 -03:00
Leandro Toledo
b79530b10c
Adding File and its tests
2015-09-20 12:28:10 -03:00
Leandro Toledo
f623db06ea
Revert "Feature/requests"
2015-09-16 00:21:45 -03:00
pecheny
d5a9c185f0
use requests instead of urllib if possible; add timeout and decorator to get and post
2015-09-14 19:13:22 +03:00
Leandro Toledo
eb557e0eba
Keeping features under development off this release
2015-09-10 20:37:25 -03:00
Leandro Toledo
a7ac4193fe
PEP8, lint and TelegramError class refactor
2015-09-10 20:08:24 -03:00
leandrotoledo
009862593b
Fix Py3
2015-09-09 09:34:45 -03:00
leandrotoledo
e2fa052f54
Send JSON requests over urlencoded post data
2015-09-09 09:29:23 -03:00
leandrotoledo
e1edeb7bec
Improve design of this class
2015-09-07 15:54:12 -03:00
leandrotoledo
c590d9c2fd
Moving _requestURL method to utils package
2015-09-05 11:56:06 -03:00
leandrotoledo
30749c3b66
Merging testing
2015-09-04 23:21:31 -03:00
leandrotoledo
f355af1d2b
Restoring new features after rebase
2015-09-04 19:11:31 -03:00
leandrotoledo
245238b3a2
Keep off some features still in progress
2015-09-04 18:03:04 -03:00
leandrotoledo
fdb5f2339c
Improving the design of existing Telegram classes and adding docstrings
2015-08-21 23:15:29 -03:00
leandrotoledo
1d6e9502cb
Adding botan.io support
2015-08-20 21:07:49 -03:00