Commit Graph

349 Commits

Author SHA1 Message Date
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
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
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
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
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
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
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
23a40a45ca Make get_contacts return a list of User objects 2019-02-06 11:28:57 +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
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
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
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
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
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
a57ee7b333 Accommodate parsing of invited_by attribute of ChatMember (#204) 2019-01-21 16:33:33 +01:00
Dan
d72754be1e Add missing await 2019-01-17 12:30:40 +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
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
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
35096a28c3 Fix asyncio merge 2019-01-07 22:57:19 +01:00
Dan
21c301d19d Merge branch 'develop' into asyncio 2019-01-07 22:51:57 +01:00
Dan
ee472329a2 Move get_game_high_scores method into bots folder 2019-01-07 22:35:17 +01:00
Dan
633fefe178 Add get_game_high_scores method 2019-01-07 22:28:41 +01:00
Dan
65bdf31ce1 Move send_game and set_game_score into bots folder 2019-01-07 22:26:52 +01:00
Dan
33e83bf635 Update set_game_score docstrings 2019-01-07 22:19:21 +01:00
Dan
9771be9c2a Add send_game and set_game_score methods 2019-01-07 21:49:58 +01:00
Dan
1bbf048b7a Remove duplicated references 2019-01-07 21:49:25 +01:00
Dan
2055736661 Merge branch 'develop' into asyncio 2019-01-07 10:36:52 +01:00
Dan
491b96c9f6 Use "recent" filter for up to 10k members 2019-01-07 10:00:42 +01:00
Dan
0bae143d5d Fix asyncio merge issues 2019-01-07 09:37:26 +01:00
Dan
2084a406a4 Merge branch 'develop' into asyncio
# Conflicts:
#	pyrogram/__init__.py
#	pyrogram/client/client.py
#	pyrogram/client/ext/base_client.py
#	pyrogram/client/methods/chats/get_chat_members.py
#	pyrogram/client/methods/chats/get_dialogs.py
#	pyrogram/client/methods/chats/kick_chat_member.py
#	pyrogram/client/methods/messages/get_history.py
#	pyrogram/client/methods/messages/get_messages.py
#	pyrogram/client/types/messages_and_media/messages.py
2019-01-07 08:46:28 +01:00
Dan
a50dba2b4c Add close_poll method 2019-01-05 14:44:10 +01:00
Dan
7e354b12bf Fix kick_chat_member docstrings and return type 2019-01-04 23:15:57 +01:00
Dan
b8a3d02eef Fix get_messages return type 2019-01-04 23:12:06 +01:00
Dan
153439ac88 Add iter_chat_members method. Reference #170 2019-01-04 17:13:44 +01:00
Dan
d7e3397050 Update get_chat_members docstrings 2019-01-04 16:59:36 +01:00
Dan
e1cac13f0d Fix get_dialogs docstrings 2019-01-04 16:58:57 +01:00
Dan
948f2b44ed Add iter_dialogs method. Reference #170 2019-01-04 16:10:34 +01:00
Dan
4d1d70082b Sleep in case of get_dialogs flood waits 2019-01-04 16:08:05 +01:00
Dan
8628d3a56d Add iter_history method
For #170
2019-01-04 15:37:08 +01:00
Dan
fbc18cace0 Update get_history docstrings 2019-01-04 15:36:43 +01:00
Dan
7e3513f8ee Wait in case of flood errors in get_messages 2019-01-04 14:38:08 +01:00
Dan
fe4e8c5a42 Rename get_history's "reversed" parameter to "reverse"
It was colliding with the built-in "reversed" function
2019-01-04 14:36:42 +01:00
Dan
b7b31d39e8 Merge branch 'develop' into asyncio
# Conflicts:
#	pyrogram/__init__.py
2019-01-03 09:15:44 +01:00
Dan
372bbabe28 Make invite links of public channels work with get_chat 2019-01-02 22:39:16 +01:00
Dan
7f79210ba3 Merge branch 'develop' into asyncio
# Conflicts:
#	pyrogram/client/dispatcher/dispatcher.py
#	requirements.txt
2019-01-02 19:55:45 +01:00
Dan
f440b1f969
Add missing colon 2019-01-02 17:27:40 +01:00
Dan
4d7b1bafac Update copyright year 2019-01-01 12:36:16 +01:00
Dan
2ea1f0f323 Merge branch 'develop' into asyncio
# Conflicts:
#	pyrogram/client/client.py
#	pyrogram/client/methods/chats/get_chat.py
#	pyrogram/client/methods/messages/get_messages.py
#	pyrogram/client/types/messages_and_media/messages.py
2018-12-31 12:06:15 +01:00
Dan
490b8bf579 Fix get_message getting infinite replies 2018-12-31 12:02:15 +01:00
Dan
5dcc19cfb3 Move download_media into messages and media namespace 2018-12-28 15:18:01 +01:00
Dan
c907e8146a Allow get_chat to work with chat invite links 2018-12-28 14:34:47 +01:00
Dan
0e62b3472a Add get_chat_preview method and ChatPreview object 2018-12-28 14:26:00 +01:00
Dan
769b3ebdee Merge branch 'develop' into asyncio
# Conflicts:
#	pyrogram/__init__.py
#	pyrogram/client/methods/chats/get_dialogs.py
#	pyrogram/client/methods/messages/get_history.py
2018-12-28 00:38:54 +01:00
Dan
3814471af4 Change get_dialogs behaviour
It now accepts an offset_date instead of an offset_dialog
2018-12-27 23:56:45 +01:00
Dan
decaa9e7f0 Rename downwards to reversed 2018-12-27 23:55:56 +01:00
Dan
233e0920a2
Merge branch 'develop' into develop 2018-12-27 23:52:40 +01:00
Dan
f4736c17a6 Merge branch 'develop' into asyncio 2018-12-25 23:08:52 +01:00
Dan
1eee4b77e1 Pin/unpin_chat_message don't raise a ValueError anymore 2018-12-25 23:08:45 +01:00
Dan
06d8293fa0 Merge branch 'develop' into asyncio
# Conflicts:
#	pyrogram/__init__.py
#	pyrogram/client/client.py
#	pyrogram/client/methods/bots/send_inline_bot_result.py
#	pyrogram/client/methods/chats/pin_chat_message.py
#	pyrogram/client/methods/chats/unpin_chat_message.py
#	pyrogram/client/methods/password/change_cloud_password.py
#	pyrogram/client/methods/password/enable_cloud_password.py
#	pyrogram/client/methods/password/remove_cloud_password.py
2018-12-25 23:07:45 +01:00
Dan
7e4b96cfdf Suppress PyPep8Naming soft-warnings 2018-12-25 16:20:09 +01:00
Dan
fccadf526e Merge branch 'develop' into future
# Conflicts:
#	pyrogram/__init__.py
2018-12-25 14:36:59 +01:00
Dan
1e3612c781 Merge branch 'layer-85' into future
# Conflicts:
#	compiler/api/source/main_api.tl
#	pyrogram/client/methods/password/change_cloud_password.py
#	pyrogram/client/methods/password/enable_cloud_password.py
#	pyrogram/client/methods/password/remove_cloud_password.py
2018-12-25 14:34:56 +01:00
Dan
0a8a1f7771 Merge branch 'develop' into asyncio
# Conflicts:
#	pyrogram/__init__.py
#	pyrogram/client/client.py
2018-12-24 23:12:26 +01:00
Dan
6e964b51b1 Type hint on_message decorator 2018-12-24 14:50:04 +01:00
Dan
098b06d1b7 Fix poll docstrings and vote_poll wrong attribute access 2018-12-24 14:32:53 +01:00
Dan
c4280f017e Add hide_via parameter to send_inline_bot_result 2018-12-24 14:13:47 +01:00
Dan
3fe7fb20be Document retract_vote 2018-12-23 17:06:34 +01:00
Dan
03d6c49d92 Document send_poll method 2018-12-23 17:00:51 +01:00
Dan
f477171344 Document vote_poll 2018-12-23 17:00:51 +01:00
Dan
03aa5094f7 Add retract_vote method 2018-12-23 17:00:51 +01:00
Dan
10f1e06326 Rework vote_poll to work with all polls generated by different clients 2018-12-23 17:00:51 +01:00
Dan
1f82eaa26f Add vote_poll method 2018-12-23 17:00:51 +01:00
Dan
2101dfb8db Show a meaningful error and hint to read more when using cloud password 2018-12-23 01:09:20 +01:00
Dan
0371f4ce8b Make cloud password methods raise NotImplementedError. See #178
The protocol changed (SRP) and they are currently not re-implemented.
2018-12-23 01:05:44 +01:00
Dan
7ee89c94cb Update pin/unpin_chat_message
It is now possible to pin messages in basic groups as well as in the
own user's chat.
2018-12-23 01:00:31 +01:00
Dan
84fef9ecf1 Add missing file_reference argument where applicable 2018-12-23 00:55:00 +01:00
Dan
e669a6a9ae Add send_poll method 2018-12-23 00:33:15 +01:00
Dan
f5ce49b7b2 - Fix small glitches introduced when merging.
- Remove typing requirement, asyncio branch already needs Python 3.5+.
- Add async_lru as extra requirement because the standard lru_cache
  doesn't work in asyncio world.
2018-12-22 14:08:29 +01:00
Dan
e6667be10b Merge branch 'develop' into asyncio
# Conflicts:
#	pyrogram/client/client.py
#	pyrogram/client/dispatcher/dispatcher.py
#	pyrogram/client/ext/utils.py
#	pyrogram/client/methods/bots/get_inline_bot_results.py
#	pyrogram/client/methods/bots/request_callback_answer.py
#	pyrogram/client/methods/bots/send_inline_bot_result.py
#	pyrogram/client/methods/chats/delete_chat_photo.py
#	pyrogram/client/methods/chats/export_chat_invite_link.py
#	pyrogram/client/methods/chats/get_chat.py
#	pyrogram/client/methods/chats/get_chat_member.py
#	pyrogram/client/methods/chats/get_chat_members.py
#	pyrogram/client/methods/chats/get_chat_members_count.py
#	pyrogram/client/methods/chats/get_dialogs.py
#	pyrogram/client/methods/chats/join_chat.py
#	pyrogram/client/methods/chats/kick_chat_member.py
#	pyrogram/client/methods/chats/leave_chat.py
#	pyrogram/client/methods/chats/pin_chat_message.py
#	pyrogram/client/methods/chats/promote_chat_member.py
#	pyrogram/client/methods/chats/restrict_chat_member.py
#	pyrogram/client/methods/chats/set_chat_description.py
#	pyrogram/client/methods/chats/set_chat_photo.py
#	pyrogram/client/methods/chats/set_chat_title.py
#	pyrogram/client/methods/chats/unban_chat_member.py
#	pyrogram/client/methods/chats/unpin_chat_message.py
#	pyrogram/client/methods/contacts/add_contacts.py
#	pyrogram/client/methods/contacts/delete_contacts.py
#	pyrogram/client/methods/messages/delete_messages.py
#	pyrogram/client/methods/messages/edit_message_caption.py
#	pyrogram/client/methods/messages/edit_message_media.py
#	pyrogram/client/methods/messages/edit_message_reply_markup.py
#	pyrogram/client/methods/messages/edit_message_text.py
#	pyrogram/client/methods/messages/forward_messages.py
#	pyrogram/client/methods/messages/get_history.py
#	pyrogram/client/methods/messages/get_messages.py
#	pyrogram/client/methods/messages/send_animation.py
#	pyrogram/client/methods/messages/send_audio.py
#	pyrogram/client/methods/messages/send_chat_action.py
#	pyrogram/client/methods/messages/send_contact.py
#	pyrogram/client/methods/messages/send_document.py
#	pyrogram/client/methods/messages/send_location.py
#	pyrogram/client/methods/messages/send_media_group.py
#	pyrogram/client/methods/messages/send_message.py
#	pyrogram/client/methods/messages/send_photo.py
#	pyrogram/client/methods/messages/send_sticker.py
#	pyrogram/client/methods/messages/send_venue.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/methods/password/change_cloud_password.py
#	pyrogram/client/methods/password/enable_cloud_password.py
#	pyrogram/client/methods/password/remove_cloud_password.py
#	pyrogram/client/methods/users/delete_user_profile_photos.py
#	pyrogram/client/methods/users/get_me.py
#	pyrogram/client/methods/users/get_user_profile_photos.py
#	pyrogram/client/methods/users/get_users.py
#	pyrogram/client/methods/utilities/download_media.py
#	pyrogram/client/types/messages_and_media/message.py
2018-12-22 12:23:08 +01:00