Dan
8454d438be
Refactor the project by using Mixin classes
...
This will cut client.py down from ~4k to ~1k SLOC and also
makes the whole project tidier and more organized.
2018-05-07 14:30:55 +02:00
Dan
f5521370bb
Add progress_args to download_media as well
2018-05-06 15:45:42 +02:00
Dan
00420aec92
Use the already computed channel_id
2018-05-06 15:06:32 +02:00
Dan
9f3f4099d5
Handle timeouts when getting answers from inline bots
2018-05-05 19:42:38 +02:00
Dan
553e7f714c
Add get_chat method
2018-05-05 18:42:28 +02:00
Dan
68986171ef
Add photo_id
2018-05-05 18:11:14 +02:00
Dan
ef45288419
Change chat photo media id
2018-05-05 16:51:01 +02:00
Dan
7a79e5a0c4
Add media type 1
2018-05-04 18:37:36 +02:00
Dan
14b6ced6e2
Remove unused import
2018-05-03 15:47:02 +02:00
Dan
cd9f2223e7
Some little fixes in case of ChatForbidden. Thanks @i-Naji
2018-05-03 15:45:57 +02:00
Dan
afc2a2e35d
Use weakref proxy instead of ref
2018-05-03 15:44:55 +02:00
Dan
58952a7d98
Temporarily remove the debug feature
2018-05-02 23:06:22 +02:00
Dan
02ec86f4b2
Respect users' logger level, don't set to WARNING
2018-05-02 22:36:56 +02:00
Dan
32336a9bda
Fix links
2018-05-02 16:00:48 +02:00
Dan
f29b8bb7e4
Cache the session right after they start. Related to #68
...
@EriHoss is right, the session can know how to clean itself in
case for some reason it fails to start, hence it makes much more
sense to cache sessions right after they start. Also, clear the
media_sessions dict when stopping to get rid of closed sessions.
2018-05-01 21:08:47 +02:00
Dan
1dc43064fb
Add a weakref to client instead
2018-05-01 20:40:47 +02:00
Dan
1b48f850bf
Add new sessions to the media_sessions dict before starting them
2018-05-01 20:25:35 +02:00
Dan
83febf2e0c
Cache media sessions. Related to #40 . Fixes #68
2018-05-01 18:15:33 +02:00
Dan
943691fd18
Remove useless attribute
2018-05-01 11:52:14 +02:00
Dan
11aa46665e
Merge pull request #69 from EriHoss/stop_getfile_sessions
...
Make sure started Session is always stopped upon exceptions in Client.get_file
2018-05-01 11:45:51 +02:00
Eric Blundell
11d0eb6ea1
Make sure Session is always stopped upon exceptions in Client.get_file
2018-05-01 01:39:58 -05:00
Dan
2e81a2369d
Make download_media hint string as acceptable type
2018-04-30 20:25:45 +02:00
Dan
35e1a76cef
Fix pycharm warnings
2018-04-30 19:53:03 +02:00
Dan
47d5889612
Make ChatAction.from_string() static
2018-04-30 19:44:26 +02:00
Dan
a32e496fe3
Merge pull request #67 from JosXa/chataction-enum
...
Make ChatAction an Enum
2018-04-30 19:39:33 +02:00
Dan
fcb4c6d07b
Update client.py
2018-04-30 19:37:59 +02:00
Dan
9b9c7ced77
Update chat_action.py
2018-04-30 19:34:59 +02:00
Dan
4d81e6894d
Make optional word italic
2018-04-30 19:30:16 +02:00
Dan
95bcfd9b26
Document reply_markup parameter
2018-04-30 19:28:16 +02:00
Dan
bfe6632de4
Fix index out of range for new messages
2018-04-30 19:21:58 +02:00
Dan
a7650c457d
Add progress_args parameter
2018-04-30 19:09:57 +02:00
JosXa
33dd708831
enumeration "class"
2018-04-30 16:36:18 +02:00
JosXa
5b492bae9d
Docstring
2018-04-30 16:32:21 +02:00
JosXa
abf89688ed
Also allow strings for send_chat_action
2018-04-30 16:28:43 +02:00
JosXa
e2d80a6087
Made ChatAction an Enum
2018-04-30 16:11:50 +02:00
JosXa
72e95fd322
Made ChatAction an Enum
2018-04-30 16:03:18 +02:00
Dan
e6b4f0e743
Make delete_messages accept iterables
2018-04-30 14:25:11 +02:00
Dan
b41c009962
Make forward_messages accept iterables
2018-04-30 14:24:05 +02:00
Dan
59ab1591d2
Make get_users accept iterables
2018-04-30 14:22:13 +02:00
Dan
8f8e1cfa25
Make get_messages accept iterables
2018-04-30 14:18:13 +02:00
Dan
53b0736975
Make add_handler return (handler, group) tuple
2018-04-30 13:31:11 +02:00
Dan
deed74840a
Make send_message return the correct Message type
2018-04-30 13:13:30 +02:00
Dan
e2224054d2
Merge branch 'remove-handler-and-locks' of https://github.com/JosXa/pyrogram into JosXa-remove-handler-and-locks
...
# Conflicts:
# pyrogram/client/dispatcher/dispatcher.py
2018-04-30 10:30:34 +02:00
Dan
f824e69b5a
Update client.py
2018-04-30 10:15:34 +02:00
JosXa
bb607e56be
Added locks for modifying and iterating handlers
...
Added `remove_handler` method
Made `add_handler` return a (handler, group) tuple
2018-04-30 00:15:24 +02:00
Dan
33c417942c
Clear thread lists when stopping. Related to #62
2018-04-29 20:20:34 +02:00
Dan
2c253b2fbc
Cleanup docstrings and add some entries to the docs
2018-04-29 19:24:06 +02:00
Dan
d3472fd052
Add CallbackQuery to docs
2018-04-29 19:06:35 +02:00
Dan
4eed293933
Document on_callback_query
2018-04-29 18:46:35 +02:00
Dan
c32e1d9444
Document answer_callback_query
2018-04-29 18:37:03 +02:00
Dan
99a2c54992
Small fixes
2018-04-29 18:36:55 +02:00
Dan
4918be5d22
Add edit_message_reply_markup method
2018-04-29 18:31:29 +02:00
Dan
ac9a263f3d
Add reply_markup argument for edit_message_* methods
2018-04-29 18:31:15 +02:00
Dan
34d7f3372f
Rework delete_messages
2018-04-29 18:13:50 +02:00
Dan
b8996b1147
Remove chat field for now, it can be accessed via message.chat
2018-04-29 17:29:48 +02:00
Dan
d6bdf5f38b
Fix typo
2018-04-29 17:29:46 +02:00
Dan
9c7935702f
Add callback query support
2018-04-28 23:48:38 +02:00
Dan
c1459aa22c
Add get_users method
2018-04-28 13:24:54 +02:00
Dan
4f937b2220
Add reply_markup parameter to all send_* methods
2018-04-28 09:53:21 +02:00
Dan
489bd4ac38
Remove message_parser, move all functions in utils
2018-04-28 09:38:07 +02:00
Dan
dafc574bd5
Remove a stupid comma that made "command" act like a tuple
2018-04-28 09:33:37 +02:00
Dan
3b314c92fb
Move IDs at the bottom
2018-04-28 09:09:44 +02:00
Dan
01034c174a
Make get_user_profile_photos return the correct type
2018-04-28 09:04:45 +02:00
Dan
750caa7471
Fix reply keyboard markup writing
2018-04-28 08:47:32 +02:00
Dan
18e414e2c1
Add TODO
2018-04-27 20:13:19 +02:00
Dan
e81ef5a757
Users are now able to view keyboards from bots
2018-04-27 20:11:36 +02:00
Dan
f6b0e0e0dc
Initial support for Reply Markups
2018-04-27 19:04:16 +02:00
Dan
0ffad5d18e
Cast file_total_parts to int
...
For some reason pycharm is thinking math.ceil() is returning a float
2018-04-27 15:24:27 +02:00
Dan
83dc5f7a03
Fix proxy failing when omitting optional arguments
2018-04-27 12:50:34 +02:00
Dan
2874be05ff
Limit replies for pinned messages. Related to #61
2018-04-26 14:17:43 +02:00
Dan
dcbce9f9a1
Add client field in Message
2018-04-26 12:10:54 +02:00
Dan
bd0fc27a61
Add support for blocked channels/supergroups. Fixes #56
2018-04-26 11:09:19 +02:00
Dan
4cb7733821
Regression fix: limit replies to 1 ( Closes #61 )
2018-04-26 10:50:30 +02:00
Dan
0ed38518e1
Some stickers don't have DocumentAttributeImageSize
2018-04-25 18:30:33 +02:00
Dan
e22f7896f8
Add incoming and outgoing filters
2018-04-25 17:44:09 +02:00
Dan
3e4135c8e1
New "outgoing" field to easily tell in/out messages apart
2018-04-25 15:27:16 +02:00
Dan
fefcb81dde
Move object ids ot the top
2018-04-25 10:30:33 +02:00
Dan
9173c49938
Allow Filters.command to pass command and arguments
...
This is done by using the new "command" field in the Message type
2018-04-25 10:27:55 +02:00
Dan
e5de670d40
Allow Filters.regex to pass all matches (as list)
...
This is done by using the new "matches" field in the Message type
2018-04-25 09:33:44 +02:00
Dan
7a20c8bca8
Clean all types and add docs
2018-04-24 16:41:52 +02:00
Dan
6e78935857
Accommodate the new types
2018-04-24 16:08:33 +02:00
Dan
59bca1c109
Clean ChatMember type
2018-04-24 15:10:15 +02:00
Dan
c457fc6ae3
Clean ChatPhoto type
2018-04-24 15:07:32 +02:00
Dan
d8f7f3bcc9
Clean UserProfilePhotos type
2018-04-24 15:06:54 +02:00
Dan
a52d4846e6
Clean Venue type
2018-04-24 15:05:51 +02:00
Dan
ba254e6643
Clean Location type
2018-04-24 15:05:08 +02:00
Dan
d10326605f
Clean Contact type
2018-04-24 15:04:25 +02:00
Dan
76980ffc96
Clean Sticker type
2018-04-24 15:02:58 +02:00
Dan
5f7dd681f4
Clean VideoNote type
2018-04-24 15:00:36 +02:00
Dan
48284e7629
Clean Voice type
2018-04-24 14:57:22 +02:00
Dan
be8f0ad765
Clean Video type
2018-04-24 14:55:29 +02:00
Dan
7765942fc9
Clean Document type
2018-04-24 14:52:43 +02:00
Dan
d5ebeef4be
Clean Audio type
2018-04-24 14:50:23 +02:00
Dan
38621f8239
Clean PhotoSize type
2018-04-24 14:44:50 +02:00
Dan
fe0f30b2f9
Clean MessageEntity type
2018-04-24 14:40:49 +02:00
Dan
79c3c8c0dd
Clean Message type
2018-04-24 14:38:46 +02:00
Dan
3609d37752
Clean Chat type
2018-04-23 19:25:38 +02:00
Dan
b8473c9f7f
Clean User type
2018-04-23 19:00:20 +02:00
Dan
730d5e74f0
Clean Update type
2018-04-23 18:56:06 +02:00
Dan
50252caec3
Move pyrogram types outside and make them static
2018-04-23 18:50:58 +02:00
Dan
debc459686
Return the correct message type with forward_messages()
2018-04-23 18:33:20 +02:00
Dan
88f7b35120
Add support for empty messages
2018-04-23 18:16:32 +02:00
Dan
f6415cdc15
Allow passing msg ids as int in get_messages()
...
Also add support for empty messages
2018-04-23 18:15:51 +02:00
Dan
a2640775dc
Allow passing msg ids as int in forward_messages()
2018-04-23 13:49:31 +02:00
Dan
3d9b1cd4b0
Enable logging using debug=True
2018-04-23 13:37:50 +02:00
Dan
7054310138
Add docstrings for workdir parameter
2018-04-22 12:41:50 +02:00
Eric Blundell
40b768e97c
Make Client.signal_handler reentrant ( #57 )
2018-04-21 20:50:30 +02:00
Dan
ae98732b95
Add workdir parameter
...
This makes possible to define a custom working directory.
A working directory is used to store session files. Defaults to "."
2018-04-19 10:06:41 +02:00
Dan
d6448c2044
Handle STICKERSET_INVALID error
2018-04-18 16:39:42 +02:00
Dan
0bba5daea4
Update docstrings
2018-04-18 11:15:09 +02:00
Dan
9dff99cf36
Add set_name and emoji to Stickers
2018-04-17 15:17:40 +02:00
Dan
d78dfb4f9e
Don't use raw functions when getting messages
2018-04-17 00:26:30 +02:00
Dan
ebe806e2b7
Add missing notice
2018-04-16 21:07:02 +02:00
Dan
f9b1d02af4
Set correct link for the Message type
2018-04-16 13:28:53 +02:00
Dan
a547eb6fa1
Update get_messages docstrings
2018-04-16 12:52:32 +02:00
Dan
e210b22aaa
Fix wrong users when joining by link
2018-04-16 12:43:02 +02:00
Dan
f47f903f7f
Make get_messages return the correct type
2018-04-16 12:42:31 +02:00
Dan
d0ddb63830
Use raw functions when getting messages
2018-04-16 12:19:04 +02:00
Dan
06685cfe15
Make edit_message_caption return the new type
2018-04-16 12:03:31 +02:00
Dan
fbc8cafe4d
Make edit_message return the new type
2018-04-16 12:01:42 +02:00
Dan
20bd4fb605
Make send_contact return the new type
2018-04-16 11:56:52 +02:00
Dan
797e8ba4e9
Don't pass empty last_name or user_id, pass None instead
2018-04-16 11:56:43 +02:00
Dan
58c9f321b4
Make send_venue return the new type
2018-04-16 11:53:38 +02:00
Dan
4bbdadaa17
Don't pass an empty string, use None instead
2018-04-16 11:53:26 +02:00
Dan
cd9f44183e
Make send_location return the new type
2018-04-16 11:51:32 +02:00
Dan
b4b5373505
Deprecate download_photo
2018-04-16 11:49:00 +02:00
Dan
d9b3d67126
Update download_media docstrings
2018-04-16 11:44:05 +02:00
Dan
fdac67de69
Rework download_media to accept the new Message type
2018-04-16 01:07:02 +02:00
Dan
6275a4003f
Add mime_type, file_name and date to Sticker objects
2018-04-16 00:59:41 +02:00
Dan
ddfce4b7ea
Add file_name, mime_type and date to VideoNote objects
2018-04-16 00:30:49 +02:00
Dan
f35d922c97
Add thumb, file_name and date to Voice type
2018-04-16 00:24:43 +02:00
Dan
7184710948
Add file_name and date fields to Video objects
2018-04-16 00:01:27 +02:00
Dan
44dda8550f
Add date field to Document type
2018-04-15 23:54:46 +02:00
Dan
e08e2850ee
Add thumb, date and file_name to Audio type
2018-04-15 23:51:10 +02:00
Dan
d5f3684310
Add date field for PhotoSize
2018-04-15 23:30:40 +02:00
Dan
d9fdd89c49
Add ChatPhoto to User objects
2018-04-15 22:28:08 +02:00
Dan
ab1d780a61
Add ChatPhoto to Chat objects
2018-04-15 22:23:58 +02:00
Dan
94c9e7c52b
Add some TODOs
2018-04-14 21:55:23 +02:00
Dan
b705391f79
Enhance send_media_group by accepting file_ids
2018-04-14 21:48:15 +02:00
Dan
5e26ae1894
Enhance send_video_note by accepting file_ids
2018-04-14 20:49:16 +02:00
Dan
c52ecadb76
Enhance send_voice by accepting file_ids and URLs
2018-04-14 20:42:32 +02:00
Dan
1fdb3386ff
Enhance send_video by accepting file_ids and URLs
2018-04-14 20:41:23 +02:00
Dan
4f615bd6dc
Enhance send_sticker by accepting file_ids and URLs
2018-04-14 19:56:11 +02:00
Dan
8446129003
Enhance send_document by accepting file_ids and URLs
2018-04-14 19:48:15 +02:00
Dan
0dd5ebef80
Fix raw update handler throwing errors
2018-04-14 16:59:34 +02:00
Dan
e8193435a9
Fix service filter and add media filter
2018-04-14 14:02:48 +02:00
Dan
17259d1b7b
Join threads before closing the connection
2018-04-13 19:09:00 +02:00
Dan
e3c70c84ba
Merge branch 'master' into new-api
2018-04-13 18:55:20 +02:00
Dan
83c4ba8a78
Handle flood wait when getting dialogs chunks
2018-04-13 18:53:55 +02:00
Dan
70173adca9
Iterate over copies
2018-04-13 18:35:36 +02:00