Commit graph

1653 commits

Author SHA1 Message Date
Dan
36635625f3 Update develop version 2019-03-13 14:55:02 +01:00
Dan
ad42b4c236 Add restrict_chat method 2019-03-13 14:48:55 +01:00
Dan
0c8b5f02fc Make restrict_chat_member return Chat instead of a simple boolean 2019-03-13 14:48:30 +01:00
Dan
b01caf10a9 Rename default_permissions to just permissions 2019-03-13 14:47:39 +01:00
Dan
5be5446a77 Update restrict_chat_member with new permissions 2019-03-13 13:58:57 +01:00
Dan
7cdcb515b1 Merge branch 'develop' into asyncio
# Conflicts:
#	pyrogram/client/methods/chats/promote_chat_member.py
#	pyrogram/client/methods/chats/restrict_chat_member.py
#	pyrogram/client/methods/chats/unban_chat_member.py
2019-03-13 13:08:58 +01:00
Dan
b6038c4f2e Update Chat and ChatPermissions to accommodate default chat permissions 2019-03-13 13:02:40 +01:00
Dan
8c9e5e6753 Fix PhotoSize parsing 2019-03-13 12:14:08 +01:00
Dan
a0e48572cb Merge branch 'develop' into layer-95 2019-03-13 10:05:31 +01:00
Dan
3d23b681e3 Add missing await 2019-03-12 16:48:34 +01:00
Dan
ae96ca5b90 Merge branch 'develop' into asyncio 2019-03-12 16:47:12 +01:00
Dan
90b959555d Fix flood waits generated when iterating over basic chat members 2019-03-12 16:46:54 +01:00
Dan
2078e6da28 Turn send_cached_media async 2019-03-11 21:27:25 +01:00
Dan
c6e4963ce0 Merge branch 'develop' into asyncio 2019-03-11 21:26:34 +01:00
Dan
b3ef53a29a Add send_cached_media method 2019-03-11 21:26:07 +01:00
Dan
a4ea3f768c Fix get_chat_member not working when passing "me" in basic groups 2019-03-04 12:56:47 +01:00
Dan
ccf7271d8c Merge branch 'develop' into asyncio 2019-03-04 12:51:00 +01:00
Dan
64775f5209 Fix "ModuleNotFoundError is not defined" error for Python <3.6 2019-03-04 12:50:42 +01:00
Dan
99af3a4180 Tune upload pool size and workers count
Use 1 worker only in case of small files
2019-03-03 17:11:55 +01:00
Dan
4b73358922 Merge branch 'develop' into asyncio
# Conflicts:
#	pyrogram/session/session.py
2019-03-03 16:54:43 +01:00
Dan
e42599051c Use a lower timeout when starting a session to speed up re-connections
Sometimes the server drops right after a successful connection and
pyrogram keeps waiting up 15 seconds (current WAIT_TIMEOUT) for the
first query to time out and start again a new connection.
2019-03-03 16:50:25 +01:00
Dan
41649066f3 Merge remote-tracking branch 'origin/asyncio' into asyncio 2019-03-03 14:13:47 +01:00
Dan
02a1dde399 Merge branch 'develop' into asyncio
# Conflicts:
#	pyrogram/client/client.py
#	pyrogram/client/methods/chats/join_chat.py
#	pyrogram/client/methods/messages/edit_message_media.py
2019-03-02 16:36:44 +01:00
Dan
ffa0da5800 Merge branch 'develop' into layer-95
# Conflicts:
#	pyrogram/__init__.py
2019-03-01 18:38:27 +01:00
bakatrouble
f84f9ec4df Add bot_token argument (#221)
* Add bot_token argument (closes #123)

* Make session_name docs more readable and detailed

* Explicitely set is_bot=False
2019-03-01 18:30:39 +01:00
bakatrouble
87c4d08d9c client.join_chat() now returns pyrogram.Chat instead of MTProto Update (#206)
* client.join_chat() now returns pyrogram.Chat instead of MTProto Update

* Do not use Chat._parse_mtproto_chat() method

* Update chat.py

Rename _parse_mtproto_chat to a generic _parse_chat_chat
Hint about its current usage (none).
2019-03-01 18:28:46 +01:00
bakatrouble
fda25f6534 Add client.set_username() method (#208)
* Add client.set_username() method

* Rename set_username() to update_user_username(); allow None as username

* Add client.update_chat_username() method

* Update update_chat_username.py

* Update update_user_username.py

Rename update_user_username to update_username
Add more details in docstrings
Fix style

* Rename update_user_username.py to update_username.py

* Update __init__.py

* Update 400_BAD_REQUEST.tsv
2019-03-01 18:06:17 +01:00
Dan
5294c21e97 Automatically coerce any text to string for keyboard buttons 2019-03-01 16:04:21 +01:00
bakatrouble
b0c011c70c Fix plugins import on windows (#223)
Fixes #217
2019-02-27 22:27:50 +01:00
Dan
bd56c428c6
Inherit from StopAsyncIteration 2019-02-23 12:09:27 +01:00
Dan
50cff068a0 Fix send_* methods sending the incorrect Telegram media message type
This makes Pyrogram consistent with the official Bot API behaviour.
2019-02-12 20:29:05 +01:00
23rd
69f347ddec Fixed loss of thumbnails after media editing. (#216) 2019-02-11 11:07:02 +01:00
Dan
cfcc4195ae Merge branch 'develop' into asyncio
# Conflicts:
#	requirements.txt
2019-02-07 16:28:11 +01:00
Dan
c05e008656 Monkey patch "typing" only for Python 3.5.0, 3.5.1 and 3.5.2 2019-02-07 16:27:17 +01:00
Dan
1e6d03108f Merge branch 'develop' into asyncio
# Conflicts:
#	pyrogram/__init__.py
#	pyrogram/client/client.py
#	pyrogram/client/methods/contacts/get_contacts.py
#	pyrogram/client/methods/messages/send_media_group.py
#	requirements.txt
2019-02-07 16:20:03 +01:00
Dan
048858f545 Merge remote-tracking branch 'origin/develop' into develop 2019-02-07 13:23:03 +01:00
Dan
c1ca2d08ad Vendor an updated (and working) typing module to fix <3.5.3 errors
Monkey patch from https://github.com/python/typing
2019-02-07 13:20:44 +01:00
Dan
0216df7fc3
Update develop version 2019-02-06 19:44:23 +01:00
Dan
23a40a45ca Make get_contacts return a list of User objects 2019-02-06 11:28:57 +01:00
Dan
712b390f77 Add a retry mechanism when uploading chunks 2019-02-05 17:10:00 +01:00
Dan
a2263ad8ce Make send_media_group return the new Messages object 2019-02-05 11:50:32 +01:00
Dan
4eb26c5b92 Fix sleep method calls in asyncio: time.sleep -> asyncio.sleep 2019-02-04 18:34:58 +01:00
Dan
6109129f73 Reword some filter docstrings to better explain their usages 2019-02-04 18:23:40 +01:00
Dan
5de2b67df5 Update Pyrogram to v0.11.0 2019-02-04 16:40:24 +01:00
Dan
f012428f7e Merge branch 'develop' into asyncio
# Conflicts:
#	pyrogram/__init__.py
2019-02-04 13:00:28 +01:00
Dan
c213118a74 Update develop version 2019-02-04 13:00:09 +01:00
Dan
dd86aba9d3 Merge branch 'develop' into asyncio
# Conflicts:
#	pyrogram/client/dispatcher/dispatcher.py
#	pyrogram/client/methods/messages/get_history.py
2019-02-04 12:59:20 +01:00
Dan
a6dbed6dfb Add a way to continue the update propagation within a group
Add continue_propagation() method and ContinuePropagation exception
Closes #212
2019-02-04 12:33:54 +01:00
Dan
ccecbd6a50 Merge branch 'raw-updates-swallowing' into develop 2019-02-04 11:47:31 +01:00
Dan
392fea6e32 Refactor Dispatcher's worker
Closes #211
2019-02-04 11:47:21 +01:00
Dan
429cfd0882 Move the check method into Handler superclass 2019-02-04 10:35:00 +01:00
Dan
249e405339 Update API schema to Layer 95 2019-02-03 11:03:11 +01:00
Dan
c40f061d9a Fix CallbackQuery docstrings 2019-02-02 19:01:35 +01:00
Dan
f0d059da07 First working (and ugly) way for fixing raw updates being swallowed 2019-01-30 17:16:50 +01:00
MBRCTV
cc7cb27858 Add missing await for send_audio thumbnail upload (#210) 2019-01-30 15:45:30 +01:00
MBRCTV
58cb30d97c
Added missing 'await' on thumb 2019-01-29 16:36:21 -05:00
Dan
628ddd4a25 Update Client's docstrings 2019-01-27 11:24:23 +01:00
Dan
67a35f8c7e Handle get_history flood waits
It's likely to get triggered when using iter_history (every ~3k msgs)
2019-01-27 11:13:10 +01:00
Dan
6c7a3316dd Merge branch 'develop' into asyncio 2019-01-26 16:15:38 +01:00
Dan
a8a6f53e2d Fix the configuration load process breaking in case of no plugins 2019-01-26 13:01:44 +01:00
Dan
e83012bfb8 Add missing await keywords 2019-01-25 10:24:04 +01:00
Dan
61e9762977 Merge branch 'develop' into asyncio
# Conflicts:
#	pyrogram/client/client.py
2019-01-25 10:22:56 +01:00
Dan
66ed6d53e3 Merge branch 'smart-plugins-enhancements' into develop 2019-01-25 09:22:06 +01:00
Dan
68509638c1 Merge branch 'develop' into layer-93 2019-01-24 17:21:57 +01:00
Dan
44deabf399 Update iter_chat_members efficiency 2019-01-24 17:21:41 +01:00
Dan
56e7bc9962 Update kick*, promote*, restrict* and unban_chat_member methods
For Layer 93
2019-01-24 17:20:29 +01:00
Dan
e9b1730318 Update ChatMember to use the new ChatPermissions type 2019-01-24 17:05:15 +01:00
Dan
1472b8236d Add ChatPermissions type 2019-01-24 17:03:51 +01:00
Dan
e99f86b69f Update media thumbs parsing for L93 2019-01-21 18:45:52 +01:00
Dan
cb0b8ebeae Fix Chat sticker_set_name 2019-01-21 18:35:11 +01:00
Dan
c0a5b0a2c3 Fix kicked members reporting "left" as status 2019-01-21 16:56:22 +01:00
Dan
b919ed8242 Add restricted_by attribute in ChatMember (#204) 2019-01-21 16:53:54 +01:00
Dan
f0c8f65e9d Add promoted_by attribute in ChatMember (#204) 2019-01-21 16:41:56 +01:00
Dan
16b7203ee9 Add invite_by attribute in ChatMember (#204) 2019-01-21 16:34:46 +01:00
Dan
a57ee7b333 Accommodate parsing of invited_by attribute of ChatMember (#204) 2019-01-21 16:33:33 +01:00
Dan
d6a1503344 Add "date" attribute to ChatMember (#204) 2019-01-21 15:38:36 +01:00
Dan
76d4e4f60e Fix "left" status not being parsed in ChatMember (#204) 2019-01-21 15:36:54 +01:00
Dan
652b3f90bc Remove async from some method signatures. They are not asynchronous 2019-01-17 12:34:30 +01:00
Dan
d72754be1e Add missing await 2019-01-17 12:30:40 +01:00
Dan
be013de4d4 Fix plugins load via Client parameter 2019-01-16 20:25:48 +01:00
Dan
6ec3b12aeb Smart plugins enhancements 2019-01-16 15:54:48 +01:00
Dan
3d16a715ad Fix file using wrong line separator 2019-01-16 15:46:46 +01:00
Dan
6df7788379 Enhance proxy settings
- Allow proxy settings to omit "enabled" key
- Allow setting proxy to None in order to disable it
2019-01-16 13:10:01 +01:00
Dan
63cb4b412e Fix PyCharm mess when merged develop into asyncio 2019-01-13 11:21:31 +01:00
Dan
9999c77e95 Merge branch 'develop' into asyncio
# Conflicts:
#	pyrogram/client/client.py
#	pyrogram/client/methods/messages/send_animation.py
#	pyrogram/client/methods/messages/send_audio.py
#	pyrogram/client/methods/messages/send_document.py
#	pyrogram/client/methods/messages/send_photo.py
#	pyrogram/client/methods/messages/send_sticker.py
#	pyrogram/client/methods/messages/send_video.py
#	pyrogram/client/methods/messages/send_video_note.py
#	pyrogram/client/methods/messages/send_voice.py
#	pyrogram/client/types/messages_and_media/message.py
2019-01-11 14:24:15 +01:00
Dan
4e02cd23a8 Make all send_* methods dealing with files aware of StopTransmission 2019-01-11 14:13:23 +01:00
Dan
2791600926 Hint about the returned value in case of stopped downloads 2019-01-11 14:12:53 +01:00
Dan
b37d4dc7ec Make get_file and save_file handle StopTransmission errors 2019-01-11 14:03:16 +01:00
Dan
6b63e88de7 Add Client.stop_transmission() method
As a wrapper for raise StopTransmission
2019-01-11 14:02:40 +01:00
Dan
c28b9f9a2c Add StopTransmission custom exception
Useful for stopping up/downloads after they started
2019-01-11 14:00:03 +01:00
Dan
d5ed47f4e9 Fix Message.download() not working when using the progress callback 2019-01-11 13:59:18 +01:00
Dan
200ed844fe Fix first_name and last_name not being called if they are callable 2019-01-11 13:02:19 +01:00
Dan
48b50780ce Merge branch 'develop' into asyncio
# Conflicts:
#	pyrogram/client/client.py
#	pyrogram/client/methods/messages/send_message.py
2019-01-11 13:01:26 +01:00
Dan
161ab79eb3 Add Filters.media_group for photos or videos being part of an album. 2019-01-11 12:51:01 +01:00
Dan
1d8fd0b836 Make Filters.regex work on message captions too 2019-01-11 12:46:41 +01:00
Dan
07276e31b9 Add restart method 2019-01-11 12:36:37 +01:00
Dan
19b8f648d2 Fix bad behaviours for Python <3.6
Pyrogram was relying on dict keys being "ordered"
(keys keeping insertion order).
2019-01-11 12:31:18 +01:00
Dan
66f70450aa Allow phone_number, phone_code and password to also be functions
Also add recovery_code
References #163
2019-01-08 14:28:52 +01:00
Dan
3213fc4bb9 Merge branch 'develop' into asyncio
# Conflicts:
#	pyrogram/__init__.py
2019-01-07 22:59:47 +01:00
Dan
36681c8c5b Update dev version 2019-01-07 22:59:22 +01:00