Commit Graph

1687 Commits

Author SHA1 Message Date
Dan
b46ffe1414 Update Pyrogram to v0.14.1 2019-06-07 18:53:45 +02:00
Dan
e63b915ec2 Fix trailing commas breaking older Python versions 2019-06-07 18:51:04 +02:00
Dan
c65e210c03 Fix FileData namedtuple using Python 3.7+ features 2019-06-07 18:48:34 +02:00
Dan
89e6f4137b Fix get_chat_member always returning self for basic groups 2019-06-07 18:00:00 +02:00
Dan
d95bbdf445 Update next develop version 2019-06-07 16:37:28 +02:00
Dan
571af6e0b9 Update Pyrogram to v0.14.0 2019-06-07 16:05:33 +02:00
Dan
a80c5c1dbb Fix broken links on decorators' docs 2019-06-07 15:49:16 +02:00
Dan
da515af959 Rearrange code 2019-06-06 19:29:44 +02:00
Dan
b205c6cce0 Rename Photos to ProfilePhotos 2019-06-06 19:09:52 +02:00
Dan
8151270a94 Update docs 2019-06-06 18:25:23 +02:00
Dan
6bebe2297e Rename "thumbnails" to "thumbs" 2019-06-05 21:03:46 +02:00
Dan
17ddb0d1b7 Update get_chat_member docstrings 2019-06-05 13:58:32 +02:00
Dan
a35e2620f8 Fix export_chat_invite_link for basic groups in Layer 100 2019-06-04 23:36:10 +02:00
Dan
a425e00a96 Add read_history method 2019-06-04 19:16:30 +02:00
Dan
896c9fa4fd Add "unsave" parameter to send_animation 2019-06-04 16:32:42 +02:00
Dan
9a44c79a82 Rename PyrogramType to Object 2019-06-03 16:56:37 +02:00
Dan
d5517f4d5f Rename Object to TLObject 2019-06-03 14:19:50 +02:00
Dan
4d97aae933 Merge remote-tracking branch 'origin/develop' into develop 2019-06-02 18:58:06 +02:00
Dan
cfec26d3db Add PyrogramList type 2019-06-02 16:16:16 +02:00
ColinShark
5cb709ee75 Make it one-line 2019-06-02 00:25:59 +02:00
ColinShark
12cc6fa4eb Removed Placeholder, break down comparison 2019-06-02 00:13:52 +02:00
ColinShark
d3cb386a6f Appropiate naming 2019-06-01 23:39:26 +02:00
ColinShark
04aada818e Less arbitrary name for Filter, Adapt Docstring 2019-06-01 23:36:45 +02:00
ColinShark
2eba6e58f9 Remove Optionality for args 2019-06-01 23:34:20 +02:00
ColinShark
0a96355c5d Add Filter for Callback_Query.data 2019-06-01 23:31:17 +02:00
Dan
e9a2087fe0 Fix List not calling __repr__ 2019-06-01 15:36:53 +02:00
Dan
acc0fab311 Fix animated stickers media type. They are documents for now 2019-06-01 14:07:45 +02:00
Dan
1f2be4f1ce Add send_animated_sticker method 2019-06-01 14:05:25 +02:00
Dan
dc94da3895 Add application/x-tgsticker mime type with .tgs as extension 2019-06-01 14:04:39 +02:00
Dan
d243ebc2cd Performance improvements 2019-06-01 13:18:48 +02:00
Dan
f6361cd20f Allow bare lists from the MTProto API to be printed nicely 2019-06-01 13:17:04 +02:00
Dan
e7f6e9ec66 Cast is_bot value to bool 2019-06-01 13:15:41 +02:00
Dan
48a5da8958 Let FutureSalt(s) attributes be plain integer instead of datetime values 2019-05-31 16:36:20 +02:00
Dan
a984558860 Rename methods dealing with profile pictures 2019-05-31 00:20:09 +02:00
Dan
cb3addab1e Add iter_profile_photos method 2019-05-31 00:18:43 +02:00
Dan
4ca87682af Fix Document.date attribute being a tuple
Thanks Python...
2019-05-31 00:16:31 +02:00
Dan
0340271b33 Refactor docstrings 2019-05-30 15:23:43 +02:00
Dan
715ae14751 Update send_* methods (for file_ids) 2019-05-30 14:57:52 +02:00
Dan
376909f356 Add get_input_media_from_file_id utility method
For internal usage
2019-05-30 14:56:59 +02:00
Dan
16dbd8d8db Update development version 2019-05-29 10:43:00 +02:00
Dan
55599e33c6 Rework download_media to accommodate L100 changes 2019-05-29 10:40:37 +02:00
Dan
3208b22849 Update all media types' thumbnails
They are now a List of Thumbnail objects
2019-05-29 09:50:41 +02:00
Dan
b217bf3784 Refactor ChatPhoto to accommodate L100 changes 2019-05-29 09:49:50 +02:00
Dan
fda456cd1e Rename UserProfilePhotos to just Photos for brevity and elegance 2019-05-29 09:49:13 +02:00
Dan
3a882b870b Add StrippedThumbnail type
Still a WIP
2019-05-29 09:47:43 +02:00
Dan
aaa569a08d Revamp Thumbnail type (ex PhotoSize) 2019-05-29 09:47:14 +02:00
Dan
807dcb67be Hide phone numbers and show human-friendly date formats when printing 2019-05-29 09:46:21 +02:00
Dan
41d5a13b5f Extend Chat and User types with new fields
is_verified, is_restricted, is_scam and is_support (user only)
2019-05-29 09:44:57 +02:00
Dan
38de4299c5 Add get_user_dc method 2019-05-29 09:43:48 +02:00
Dan
09d012b696 Rename get_user_profile_photos to get_user_photos 2019-05-29 09:43:33 +02:00
Dan
86a4f63d37 Rename set_user_profile_photo to set_photo
Users can only set a photo for themselves.
2019-05-29 09:42:55 +02:00
Dan
83cd828386 Rename get_user_profile_photos_count to get_user_photos_count 2019-05-29 09:41:59 +02:00
Dan
1390797f58 Rename delete_user_profile_photos to just delete_photos.
It's implied an user can only delete own photos.
2019-05-29 09:41:04 +02:00
Dan
c2424029b5 Fix dialogs after L100 update 2019-05-29 09:37:50 +02:00
Dan
e94dcd3b0b Update docs 2019-05-28 16:41:55 +02:00
Dan
87ad981420 Add get_user_dc method 2019-05-27 14:39:10 +02:00
Dan
bb246f9e60 Update Pyrogram to v0.13.0 2019-05-25 01:50:34 +02:00
Dan
47c06fdae2 Docs revamp. Part 7 2019-05-25 01:37:55 +02:00
Dan
0dc953c320 Update domain name references to pyrogram.org 2019-05-19 21:40:41 +02:00
Dan
518220431e Docs revamp. Part 5 2019-05-18 01:45:01 +02:00
Dan
b6ea451ee5 Reword some method return type docstrings 2019-05-17 13:44:44 +02:00
Dan
23d0ef3cf9 Use "bot" as chat type for bots.
We now have "private", "bot", "group", "supergroups" and "channel" chat
types.
2019-05-17 13:23:03 +02:00
Dan
53d0cc30f6 Remove get_chat_preview and have get_chat deal with ChatPreview objects 2019-05-17 13:18:24 +02:00
Dan
944b672fe5 Docs revamp. Part 4 2019-05-16 21:28:34 +02:00
Dan
a5e42572f6 Allow Message.click() without arguments. Default to 0 (first button) 2019-05-13 21:05:47 +02:00
Dan
94de75f714 Bring back the possibility to use strings as callback query data
In case bytes (which is the type used by telegram) can't be successfully
decoded into strings, the raw bytes are presented instead of trying to
decode by ignoring/replacing errors.
2019-05-13 21:04:17 +02:00
Dan
90115448ac Update link hint for No API Key found errors 2019-05-13 16:37:26 +02:00
Dan
65c07b7d34 Use a better repr for all types
now eval(repr(obj) == obj
2019-05-13 16:06:34 +02:00
Dan
ef912d21ef Use more concise and cleaner description of a method and a type 2019-05-12 19:49:06 +02:00
Dan
eadda551c6 Docs revamp. Part 3 2019-05-12 19:26:55 +02:00
Dan
e4b0a78f1a Docs revamp. Part 2 2019-05-10 16:14:10 +02:00
Dan
92283d6cab Add timeout to Message.click 2019-05-09 05:55:44 +02:00
Dan
6530c7e293 Remove ChatAction module too
It's pretty much useless, better just use strings
2019-05-09 05:08:37 +02:00
Dan
3a494a478f Remove ParseMode
It's pretty much useless, better just use "markdown" and "html"
2019-05-09 04:32:43 +02:00
Dan
1737ba5f49 Revamp docs about the main Pyrogram package 2019-05-09 04:28:46 +02:00
Dan
ee91e6daa1 Rename bots folder to keyboards 2019-05-08 19:52:21 +02:00
Dan
920f8ff911 Allow unlimited replies to be fetched with get_messages 2019-05-08 16:01:03 +02:00
Dan
692befe038 Allow getting more than one reply via get_messages and replies param
Just for fun (and for consistency with the code logic, since this part
is implemented recursively), not really useful and might lead to
frequent flood waits
2019-05-08 15:40:36 +02:00
Dan
bd9bb83df5 Reword some methods' docstring 2019-05-07 18:26:27 +02:00
Dan
591499121f Add an hint about which client is loading the plugins 2019-05-06 17:40:40 +02:00
Dan
692073c856 Fix get_dialogs_count breaking in case of less than 200 dialogs 2019-05-06 17:09:44 +02:00
Dan
08554633ce Add get_user_profile_photos_count method 2019-05-06 17:07:41 +02:00
Dan
e8e0c16daf Add get_contacts_count method 2019-05-06 17:00:09 +02:00
Dan
4e77ead181 Add get_dialogs_count method 2019-05-06 16:58:59 +02:00
Dan
e80eebc234 Add get_history_count method 2019-05-06 16:44:50 +02:00
Dan
95ef9a64de Fix small typos 2019-05-06 16:40:07 +02:00
Dan
01f0af6bb0 Increase OFFLINE_SLEEP to 15 minutes
This avoid frequent dialogs fetch while debugging with user accounts
2019-05-06 16:36:57 +02:00
Dan
6f2c625cd1 Handle minified poll updates 2019-05-05 15:44:53 +02:00
Dan
bfda5852b6 Hint the return type of get_history 2019-05-05 15:44:28 +02:00
Dan
6c140fd03e
Merge pull request #238 from pyrogram/bot-api-4.2
Bot API 4.2
2019-05-05 12:25:42 +02:00
Dan
58482919ba Make is_member field actually working 2019-05-05 12:24:37 +02:00
Dan
80081a29b4 Add supports_streaming attribute to the Video type 2019-04-30 14:43:57 +02:00
Joscha Götzer
d30cad1a2d Use str or bytes for callback_data and CallbackQuery.data (#241) 2019-04-30 11:53:11 +02:00
Dan
cc9bc56391 Add important note to export_chat_invite_link 2019-04-30 11:29:54 +02:00
Dan
d83a2a951d Revert "Fix export_chat_invite_link broken because of Layer update Fixes #244"
This reverts commit 2aad5985
2019-04-30 11:22:23 +02:00
Dan
2aad59856d Fix export_chat_invite_link broken because of Layer update
Fixes #244
2019-04-30 11:04:37 +02:00
Dan
94574efe2c Remove unneeded method 2019-04-30 10:33:11 +02:00
Dan
cec43bf568 Update develop version 2019-04-20 18:57:07 +02:00
Dan
63d76a7f13 Bring back automatic mime type detection for new uploads (fixes #239)
- Add mime.types file to contain a good database of type -> ext mappings
  from svn.apache.org/repos/asf/httpd/httpd/trunk/docs/conf/mime.types

- Load mime.type at BaseClient creation and add two convenience methods
  for guessing mime types from filenames and extensions from mime types,
  guess_mime_type and guess_extension

- Make all send_* method as well as download_media use the new mime type
  database via guess_mime_type and guess_extension methods
2019-04-20 18:56:30 +02:00
Dan
57be97566d Make delete_messages return False when it fails to delete
This is because there will be no exception raised, because Telegram
is not sending any RPCError when you try to delete a message you don't
have rights on to.
2019-04-14 22:34:05 +02:00
Dan
b056aa8d7f Add the field is_member to the ChatMember type
This can be used to find whether a restricted user is a member of the
chat at the moment of the request.
2019-04-14 21:08:33 +02:00
Dan
d6d2923e34 Add missing Poll docstrings in Message 2019-04-14 20:52:00 +02:00
Dan
5905f761fa Add PollHandler type and on_poll decorator for handling Poll updates 2019-04-14 20:50:13 +02:00
bakatrouble
952f0627f1 Merge branch 'develop' into session_storage
# Conflicts:
#	pyrogram/client/client.py
#	pyrogram/client/ext/base_client.py
#	pyrogram/client/ext/syncer.py
#	pyrogram/client/style/html.py
#	pyrogram/client/style/markdown.py
2019-04-14 21:49:45 +03:00
Dan
5c638e707e Poll ids are now strings and not integers 2019-04-14 20:48:25 +02:00
Dan
cbc938931d Rename forward_from_name to forward_sender_name 2019-04-14 20:34:46 +02:00
Dan
ebacefb6e0 Increase media thumbnail size limit 2019-04-14 20:33:45 +02:00
Dan
22a7e338ff Fetch the pinned message in own chat (saved messages) 2019-04-14 20:18:44 +02:00
Dan
4661fb035b Refactor Poll types and methods to reflect Bot API 4.2 docs 2019-04-14 20:17:42 +02:00
Dan
afac7651e4 Update to v0.12.0 2019-04-14 12:45:06 +02:00
Dan
d2179e2ede Fix Filters.video_note wrong name 2019-04-14 12:25:31 +02:00
Dan
1e635f00ea Fix set_chat_description not working anymore with the new Layer 2019-04-13 16:10:15 +02:00
Dan
6ad9caa7c6 Automatically cast inline result ids to string 2019-04-13 15:54:19 +02:00
Dan
4d1abbbb79 Make the deprecation warning actually work 2019-04-13 14:41:14 +02:00
Dan
292a6ea7bf Refactor the command filter.
Also allow it to work on media captions as well
2019-04-13 14:21:53 +02:00
Dan
88078d4573 Simplify user and chat filters implementation 2019-04-13 14:03:01 +02:00
Dan
05aed5e0e1 Clean up documentation pages 2019-04-12 15:52:06 +02:00
Ningmua Bruno
8023aa5d28
Attempting solution to why pyrogram breaks 2019-04-01 02:36:54 +01:00
Dan
fbe6af2fc6 Automatically handle flood waits when using get_chat_members 2019-03-28 16:24:11 +01:00
Dan
e79f4fde80 Fix send_chat_action not working with upload_* actions 2019-03-28 14:01:38 +01:00
Dan
e05a5ebf6f Fix core types not being printed because of missing __slots__ 2019-03-28 14:01:16 +01:00
Dan
b4da453ef3 Documentation fixes 2019-03-27 14:46:02 +01:00
Dan
ef5dd96bdc Fix broken mentions for both HTML and Markdown 2019-03-26 13:32:30 +01:00
Dan
b8341a9869 Remove delete_messages limitations 2019-03-25 11:34:47 +01:00
Dan
b5c6db6db0 Refactor project and move errors namespace out from pyrogram.api 2019-03-25 11:23:45 +01:00
Dan
066633ce45 Move dispatcher.py inside ext folder 2019-03-25 09:45:37 +01:00
Dan
ce0173e7cd Add support for hidden users in forwarded messages 2019-03-24 18:51:04 +01:00
Dan
4b7c6810c0 Make get_sticker_set_name "private" with a leading underscore _ 2019-03-22 13:33:47 +01:00
Dan
5edd971118 Update docs to use bot_token parameter 2019-03-22 12:39:15 +01:00
Dan
27666ec174 Small docs fixes 2019-03-22 12:14:31 +01:00
Dan
f0138ce555 Fix Inline buttons parsing 2019-03-22 11:58:49 +01:00
Dan
921800f902 Clean up docstrings 2019-03-22 11:53:25 +01:00
Dan
bc9f902376 Clean up inline-mode 2019-03-22 11:35:35 +01:00
Dan
fede74398c Fix inline-mode branch breaking after many commits from develop 2019-03-21 18:37:00 +01:00
Dan
acbbfabb27 Merge branch 'develop' into inline-mode
# Conflicts:
#	compiler/api/compiler.py
#	compiler/error/source/400_BAD_REQUEST.tsv
#	pyrogram/__init__.py
#	pyrogram/client/dispatcher/dispatcher.py
#	pyrogram/client/ext/utils.py
#	pyrogram/client/methods/bots/__init__.py
#	pyrogram/client/types/__init__.py
2019-03-21 17:40:49 +01:00
Dan
afcde95b30 Fix parsing ChannelForbidden; it doesn't have default permissions 2019-03-21 17:03:35 +01:00
Dan
41729cbdda Fix argument not passed with name 2019-03-21 14:08:09 +01:00
Dan
159090483f Update style 2019-03-21 14:04:46 +01:00
bakatrouble
081b9b280a Add ability to forward messages as copies (#227)
* Add ability to forward messages as copies

* Add Messages.forward() method

* Update and clean up code
2019-03-21 13:53:07 +01:00
Eric Solinas
ac591cf3c7 Add more Message convenience methods (#233)
* Added convenience methods
message.reply_animation
message.reply_audio
message.reply_cached_media
message.reply_chat_action
message.reply_contact
message.reply_document
message.reply_game
message.reply_inline_bot_result
message.reply_location
message.reply_media_group
message.reply_photo
message.reply_poll
message.reply_sticker
message.reply_venue
message.reply_video
message.reply_video_note
message.reply_voice
message.edit_caption
message.edit_media
message.edit_reply_markup
message.pin

fixed send_document docstrings while doing so
uniformed function declaration of send_poll

* Update style and small fixes
2019-03-20 15:44:20 +01:00
bakatrouble
5aa93b8287 Show TOS on signup just once while program is running (#231) 2019-03-20 14:20:38 +01:00
Dan
9d701bc226 Fix import order causing errors 2019-03-16 20:15:25 +01:00
Dan
3e18945f3c Reformat code 2019-03-16 19:23:23 +01:00
Dan
9f26ac9cbe Merge branch 'develop' into __slots__ 2019-03-16 17:51:48 +01:00
Dan
def3bdaa63 Reformat code 2019-03-16 17:51:37 +01:00
Dan
34b51b6481 Force keyword arguments for all TL types 2019-03-16 16:53:52 +01:00
Dan
e0f1f6aaeb Add __slots__ to every single Pyrogram types 2019-03-16 16:15:56 +01:00
Dan
ef9ed31589 Add __slots__ to PyrogramType and Update types 2019-03-16 16:15:56 +01:00
Dan
c611944d45 Don't ensure ascii when printing objects
This will break in case of non-utf8 terminals
2019-03-16 15:40:07 +01:00
Dan
6bd9ddc95e Add __slots__ to Telegram TL types 2019-03-16 15:30:55 +01:00