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
ac318831dc
Add missing awaits
2019-03-22 13:47:31 +01:00
Dan
5d163ebabc
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/client/dispatcher/dispatcher.py
# pyrogram/client/types/messages_and_media/sticker.py
2019-03-22 13:36:27 +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
33c6da44b2
Merge branch 'develop' into asyncio
2019-03-21 17:05:01 +01:00
Dan
afcde95b30
Fix parsing ChannelForbidden; it doesn't have default permissions
2019-03-21 17:03:35 +01:00
Dan
a4217ab58b
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/client/methods/messages/forward_messages.py
# pyrogram/client/types/messages_and_media/message.py
2019-03-21 14:09:07 +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
Dan
03707fd312
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/client/methods/messages/forward_messages.py
# pyrogram/client/methods/messages/send_contact.py
# pyrogram/client/types/messages_and_media/message.py
2019-03-21 14:02:35 +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
a06885dd14
Add support for "async with" context manager
2019-03-16 19:56:25 +01:00
Dan
a329e56259
Fix import order causing errors
2019-03-16 19:56:04 +01:00
Dan
84fb959c8c
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/__init__.py
# pyrogram/client/client.py
# pyrogram/client/methods/bots/answer_callback_query.py
# pyrogram/client/methods/bots/get_game_high_scores.py
# pyrogram/client/methods/bots/get_inline_bot_results.py
# pyrogram/client/methods/bots/request_callback_answer.py
# pyrogram/client/methods/bots/send_game.py
# pyrogram/client/methods/bots/send_inline_bot_result.py
# pyrogram/client/methods/bots/set_game_score.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/iter_chat_members.py
# pyrogram/client/methods/chats/iter_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/contacts/get_contacts.py
# pyrogram/client/methods/messages/delete_messages.py
# pyrogram/client/methods/messages/download_media.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/iter_history.py
# pyrogram/client/methods/messages/send_animation.py
# pyrogram/client/methods/messages/send_audio.py
# pyrogram/client/methods/messages/send_cached_media.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_user_profile_photos.py
# pyrogram/client/methods/users/get_users.py
# pyrogram/session/auth.py
# pyrogram/session/session.py
2019-03-16 19:49:38 +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
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
bakatrouble
85700b0ffc
Do not cache entities without access_hash
2019-03-01 21:23:53 +03:00
bakatrouble
8cc61f00ed
Fix threading with sqlite storage
2019-03-01 21:23:01 +03: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
bakatrouble
5874e521ba
Merge remote-tracking branch 'pyrogram/develop' into session_storage
2019-03-01 19:43:02 +03: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
bakatrouble
033622cfb8
Cleanup json session storage specific code as it is used only for migrations
2019-02-27 22:49:23 +03:00
bakatrouble
10fc340eff
Add session migrating from json; add some indexes to sqlite sessions
2019-02-26 21:43:23 +03:00
bakatrouble
03b92b3302
Implement SQLite session storage
2019-02-26 21:06:30 +03:00
bakatrouble
260043d8ec
Unify peers cache
2019-02-26 19:24:00 +03:00
Dan
bd56c428c6
Inherit from StopAsyncIteration
2019-02-23 12:09:27 +01:00
bakatrouble
5dc33c6337
add in-memory session storage, refactor session storages, remove mixin
2019-02-22 03:37:19 +03:00
bakatrouble
9c4e9e166e
Merge #221 , string sessions now work for bots too
2019-02-22 02:13:51 +03:00
bakatrouble
fd5889d69e
Merge branch 'bot_token_arg' into session_storage
...
# Conflicts:
# pyrogram/client/client.py
# pyrogram/client/ext/base_client.py
# pyrogram/client/ext/syncer.py
2019-02-22 01:59:21 +03:00
bakatrouble
5cc9a452eb
Add bot_token argument ( closes #123 )
2019-02-22 01:34:08 +03:00
bakatrouble
fd732add70
Refactor session storages: use session_name arg to detect storage type
2019-02-22 00:03:58 +03:00
bakatrouble
b04cf9ec92
Add string session storage
2019-02-21 21:43:57 +03:00
bakatrouble
431a983d5b
Fix logging and cleanup imports in client.py
2019-02-21 21:18:53 +03:00
bakatrouble
9d32b28f94
Implement extendable session storage and JSON session storage
2019-02-21 20:12:11 +03: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
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
8928ca3433
Rename game_score to game_high_score
2019-01-07 22:50:54 +01:00
Dan
ee472329a2
Move get_game_high_scores method into bots folder
2019-01-07 22:35:17 +01:00
Dan
dc737ab7bb
Add GameHighScore and GameHighScores types
2019-01-07 22:30:33 +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
7ae9a065b8
Update examples
2019-01-07 10:34:38 +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
6451d599b2
Fix typo
2019-01-07 08:30:40 +01:00
Dan
bb27633da6
Add game and game_score in Message
2019-01-05 23:13:47 +01:00
Dan
50e5692eae
Add Filters.game and Filters.game_score. Also fix Filters.animation name
2019-01-05 23:12:59 +01:00
Dan
d5303285d6
Add support for Game inline buttons. Add CallbackGame type
2019-01-05 23:12:29 +01:00
Dan
7d061a1b5c
Add Game type
2019-01-05 23:11:39 +01:00
Dan
7cb1c99e28
Update copyright year
2019-01-05 18:29:48 +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
04542dbddf
Make parsing multiple Messages more efficient
...
This is achieved by not calling get_messages for each single reply.
Instead, all the available replies are retrieved in one request only.
2019-01-04 14:42:39 +01:00
Dan
7e3513f8ee
Wait in case of flood errors in get_messages
2019-01-04 14:38:08 +01:00
Dan
fe89974523
Add get_history signature to BaseClient
...
Also make other method parameters generic
2019-01-04 14:37:26 +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
36f987e979
Add Filters.me
...
Useful to filter messages coming from the current running user.
Does the same thing as Filters.user("me")
2019-01-03 20:58:38 +01:00
Dan
d69a93d253
Automatically cast message and caption arguments to str
2019-01-03 20:53:48 +01:00
Dan
4f6990d735
Add takeout parameter in Client
...
This lets the client use a takeout session instead of a normal one.
Takeout sessions are useful for exporting Telegram data. Methods invoked
inside a takeout session are less prone to throw FloodWait exceptions.
2019-01-03 12:20:42 +01:00
Dan
b53ba81a6a
Add no_updates parameter in Client
...
Useful to completely disable incoming updates for batch programs
2019-01-03 11:13:24 +01:00
Dan
b7b31d39e8
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/__init__.py
2019-01-03 09:15:44 +01:00
Dan
4493f78138
Update to v0.10.3
2019-01-03 08:59:39 +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
1f8f313398
Fix broken ChatMember parser working on already parsed Users
2019-01-02 19:13:01 +01:00
Dan
1960b00280
Add a way to stop iterating through handlers
...
Closes #125
2019-01-02 18:11:22 +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
3ada74068e
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/__init__.py
2018-12-31 17:45:04 +01:00
Dan
4f04d4aee8
Update to v0.10.2
2018-12-31 17:21:18 +01:00
Dan
e56425c878
Merge branch 'develop' into asyncio
2018-12-31 17:14:47 +01:00
Dan
21dbbc3f0b
Fix style parsers randomly returning "unsorted" dicts.
...
This is due to Python <3.6 having "unsorted" dicts. Dicts are inherently
unsorted, but starting from Python 3.6 they keep the order in which the
keys are inserted (useful for unpacking)
2018-12-31 17:13:50 +01:00
Dan
4e4d765dd1
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/__init__.py
2018-12-31 14:53:24 +01:00
Dan
e5be7fcc90
Update to v0.10.1
2018-12-31 14:41:38 +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
64ec26850e
Document save_file
2018-12-28 15:16:46 +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
9fadbbd728
Update develop version
2018-12-28 00:37:20 +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
d91acfe2ca
Re-implement password-protected log-ins and support password recovery
2018-12-25 15:41:55 +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
00e4e385aa
Allow bots to message old chats even if they don't exist in the session
2018-12-24 22:31:45 +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
c833b3842a
Put PollOption back in a separate file, its docstrings must be visible
2018-12-24 14:19:21 +01:00
Dan
c4280f017e
Add hide_via parameter to send_inline_bot_result
2018-12-24 14:13:47 +01:00
Dan
7881320a88
Update develop branch version
2018-12-23 19:53:22 +01:00
Dan
a551f1fe1e
Fix Filters.poll docstrings link to Poll type
2018-12-23 19:52:49 +01:00
Dan
1d676a76db
Merge branch 'develop' into future
2018-12-23 19:51:54 +01:00
Dan
9fe04ff7cd
Fix filter links to Objects
2018-12-23 19:51:45 +01:00
Dan
3fe7fb20be
Document retract_vote
2018-12-23 17:06:34 +01:00
Dan
2994929903
Document Poll
2018-12-23 17:00:51 +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
0ce7498f81
Parse the pinned message on basic chats too
2018-12-23 17:00:51 +01:00
Dan
2b568afd2a
Refactor Poll.
...
Move PollAnswer into poll.py and rename it to PollOption
2018-12-23 17:00:50 +01:00
Dan
f8de518f6b
Update future version
2018-12-23 13:21:32 +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
8eab47123a
Add Filters.poll to filter Poll messages
2018-12-22 23:55:16 +01:00
Dan
2b25b9469b
Parse Poll objects inside Message
2018-12-22 23:55:04 +01:00
Dan
1ef3bc758f
Export Poll and PollAnswer types
2018-12-22 23:54:42 +01:00
Dan
aef02f049c
Add Poll and PollAnswer types
2018-12-22 23:54:18 +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
Dan
4bf6831be8
Fix some non-importable types for type hint
2018-12-22 11:22:58 +01:00
Dan
a0355a5cc4
Type hint all methods return values
2018-12-19 15:59:15 +01:00
Dan
bf0b947253
Type hint all Client methods
2018-12-19 14:55:48 +01:00
Dan
b593463bd7
Type hint all the remaining method parameters
2018-12-19 14:50:23 +01:00
Dan
4fb9969470
Replace Client with BaseClient type hint
2018-12-19 14:45:16 +01:00
Dan
5035daa9d7
Type hint all Pyrogram types
2018-12-19 13:29:58 +01:00
Dan
e8fbae3166
Make all parse methods protected to hide them from the lib user
2018-12-19 13:00:33 +01:00
Dan
b79f395d37
Type hint Message
2018-12-19 12:30:25 +01:00
Dan
26ef8ea953
Revert to the old style
2018-12-19 10:59:49 +01:00
Dan
510b2456b6
Reword offset_dialog docstrings in Dialog
2018-12-19 10:27:47 +01:00
Dan
8f6f38e0b0
Merge branch 'develop' into new-parsers
2018-12-18 11:22:47 +01:00
Dan
bc824f738c
Add extra warnings when sign-ins or sign-ups fail
2018-12-18 11:21:37 +01:00
Dan
c9bcf93cf7
Add extra checks in case sign-in or sign-up fails
2018-12-18 10:10:04 +01:00
Dan
e203a5500f
Don't treat messages containing web page previews as media
2018-12-18 10:07:40 +01:00
Dan
914dfca574
Reformat code and optimize imports
2018-12-18 09:50:39 +01:00
Dan
27052e31ca
Fix all those unresolved references caused by the refactor
2018-12-18 09:45:49 +01:00
Dan
dc2792fbea
Ditch raw attribute. There's no use for it now
2018-12-18 08:48:20 +01:00
Dan
761a07bda8
Remove unneeded parts in utils.py
2018-12-17 16:42:16 +01:00
Dan
1344e95be6
Use the new parsers in dispatcher.py
2018-12-17 16:40:06 +01:00
Dan
2a1a6301a6
Add Messages.parse_delete method
2018-12-17 16:37:58 +01:00
Dan
6a0a271d24
Fix broken UpdateStatus in case of incoming updates
2018-12-17 16:28:16 +01:00
Dan
1873344467
Update get_users to use the refactored User type
2018-12-17 16:27:16 +01:00
Dan
6bc2db7157
Better way of parsing total_count for Messages and UserProfilePhotos
2018-12-17 16:14:32 +01:00
Dan
e6dced80cf
Update get_dialogs to use the new refactored Dialogs type
2018-12-17 16:13:57 +01:00
Dan
ccf677f3a0
Refactor Dialog and Dialogs
2018-12-17 16:13:28 +01:00
Dan
8c02a1553d
Add Chat.parse_dialog
2018-12-17 16:12:53 +01:00
Dan
603bc88aa3
Refactor get_history method
2018-12-17 14:18:41 +01:00
Dan
7b90a0e7c5
Refactor Messages
2018-12-17 14:18:15 +01:00
Dan
5bc9e0fc75
Fix Video not having client and raw attributes set
2018-12-17 14:17:57 +01:00
Dan
8cbb9c9316
Refactor UserProfilePhotos
2018-12-17 13:51:08 +01:00
Dan
a683e3e917
Refactor bot keyboard types
2018-12-17 13:16:05 +01:00
Dan
3f643242b1
Reformat encoder style
2018-12-17 13:03:08 +01:00
Dan
d31a696f32
Fix encoder breaking with bytes
2018-12-17 13:02:22 +01:00
Dan
52b9319734
Refactor CallbackQuery
2018-12-17 13:01:41 +01:00
Dan
92118e3608
Reformat __init__ parameters
2018-12-17 12:45:35 +01:00
Dan
e9a362923f
Cache stickers
2018-12-17 12:42:29 +01:00
Dan
ac8258f451
Move Str into message.py
2018-12-17 12:40:32 +01:00
Dan
c6a0bf0791
Force named arguments on Pyrogram types
2018-12-16 22:34:23 +01:00
Dan
7430529646
Make use of the refactored Chat type in get_chat
2018-12-16 17:59:34 +01:00
Dan
5d64de10dc
Add Chat.parse_full
2018-12-16 17:58:32 +01:00
Dan
31b046e5cc
Use the refactored types in get_chat_member(s)
2018-12-16 17:58:05 +01:00
Dan
66cd896a99
Allow passing raw
2018-12-16 17:10:55 +01:00
Dan
cffafa8c61
Small fixed to PyrogramType
2018-12-16 17:10:08 +01:00
Dan
d62bc1d8ba
Refactor ChatMember and ChatMembers
2018-12-16 16:22:46 +01:00
Dan
3ecbb35470
Delete Update
2018-12-16 15:26:56 +01:00
Dan
6ab1c87050
Add PyrogramType
2018-12-16 15:24:51 +01:00
Dan
5ecbfbf25f
Refactor Message and MessageEntity
2018-12-16 14:30:44 +01:00
Dan
334fb8d0ba
Refactor Sticker, Contact and Document
2018-12-16 14:30:13 +01:00
Dan
c84fca30a2
Refactor Venue and Location
2018-12-16 14:29:10 +01:00
Dan
e5e0b17809
Refactor Photo and PhotoSize
2018-12-16 14:28:41 +01:00
Dan
11ed26b318
Refactor Animation, Video and VideoNote
2018-12-16 14:27:52 +01:00
Dan
905f4b8e62
Refactor Voice and Audio
2018-12-16 14:25:18 +01:00
Dan
efc6023b08
Re-implement remove_cloud_password using SRP
2018-12-15 20:08:31 +01:00
Dan
1c4dd13e72
Refactor Chat
2018-12-15 17:31:22 +01:00
Dan
5962f8dedc
Refactor ChatPhoto
2018-12-15 17:30:24 +01:00
Dan
bf3609ec0a
Refactor User
2018-12-15 17:29:51 +01:00
Dan
0d0fbdad27
Reformat UserStatus style
2018-12-15 17:28:52 +01:00
Dan
26b15f384d
Update UserStatus docs
2018-12-15 17:26:24 +01:00
Dan
b2f3e79ff7
Refactor UserStatus
2018-12-15 17:25:34 +01:00
Dan
9ac492e644
Remove Message generated comments
2018-12-15 15:32:50 +01:00
Dan
37d063e569
Reorganize Message __init__
2018-12-15 12:35:09 +01:00
Dan
40ecc082a6
Re-implement change_cloud_password using SRP
2018-12-15 12:22:33 +01:00
Dan
124f49ce7a
Merge branch 'develop' into asyncio
2018-12-15 11:37:34 +01:00
Dan
1bd41d0138
Fix CallbackQuery docs
2018-12-15 11:37:27 +01:00
Dan
47b25b0e2d
CallbackQuery must deal with bytes instead of strings
2018-12-15 11:36:16 +01:00
Dan
17b166e6a6
CallbackQuery must deal with bytes instead of strings
2018-12-15 11:35:53 +01:00
Dan
6292fe8f86
Fix progress callbacks in asyncio
2018-12-15 11:24:31 +01:00
Dan
976eae63ed
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/client/client.py
# pyrogram/client/methods/messages/send_media_group.py
# pyrogram/client/methods/utilities/download_media.py
2018-12-15 11:12:30 +01:00
Dan
70470360b1
Print account name when logging in the first time
2018-12-15 11:10:25 +01:00
Dan
001a067d82
Make start and stop methods return self to make chaining possible
...
Suggestion by @CharlesBachman in Telegram
2018-12-15 09:50:35 +01:00
Dan
6a9c7312cc
Document how decorated functions are modified
2018-12-15 09:10:19 +01:00
Dan
e3459017ef
Re-implement enable_cloud_password using SRP
2018-12-15 09:05:50 +01:00
Dan
89983b75ca
Move relevant SRP-related code into another file
...
These functions are going to be used by all *_cloud_password methods
2018-12-15 08:59:26 +01:00
Dan
2ae8730b22
Add Filters.via_bot to filter messages sent via inline bots
2018-12-15 08:53:22 +01:00
Dan
4ba5e63034
Report offset instead of 0 in case file size is missing (for file_id)
2018-12-15 08:51:20 +01:00
Dan
9c91720104
Fix broken download_media progress args
2018-12-15 08:50:08 +01:00
Dan
49b18c600d
Add missing thumb for videos in albums. Fixes #169
2018-12-15 08:39:43 +01:00
Dan
0e050b45e7
Attempt srp
2018-12-15 08:06:18 +01:00
Dan
2a9149ca5f
Merge pull request #166 from zeroone2numeral2/webpage-message-attribute
...
Added Message.web_page and Filters.web_page
2018-12-08 16:43:48 +01:00
Dan
ac8fc58a06
Add a note hinting about basic support for web pages
2018-12-08 16:41:30 +01:00
zeroone2numeral2
2d1a7871ea
Added Filters.web_page
2018-11-25 17:05:59 +00:00
zeroone2numeral2
61f2d7c968
Added web_page attribute to Message object
2018-11-25 16:56:39 +00:00
Dan
40047877fe
Add missing await
2018-11-20 19:47:41 +01:00
Dan
017c61a876
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/client/dispatcher/dispatcher.py
# pyrogram/client/methods/bots/request_callback_answer.py
# pyrogram/client/types/messages_and_media/message.py
2018-11-20 19:40:07 +01:00
Dan
436c48d1c2
Allow Bots to edit and delete own messages w/ Message bound methods.
...
This is some sort of a workaround because the server doesn't send full
info about text messages originated by bots. Fixes #162
2018-11-20 16:52:59 +01:00
Dan
b753e48732
Remove unnecessary check
2018-11-20 16:08:25 +01:00
Dan
08776619a7
Change callback_data type to bytes for request_callback_answer
...
Fixes #161
2018-11-20 16:08:24 +01:00
Aleksandr Pyatnitsin
40d7ed2b8e
fix RawUpdateHandler
2018-11-14 23:21:19 +03:00
Dan
d5ef03d662
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/__init__.py
# pyrogram/client/client.py
# pyrogram/client/dispatcher/dispatcher.py
2018-11-13 20:36:04 +01:00
Dan
54e7539865
Update to v0.9.3
2018-11-13 20:34:33 +01:00
Dan
e400641204
Fix Dispatcher bad behaviours in case of multiple Clients running at the same time.
2018-11-13 20:31:53 +01:00
Dan
f7f1dbd25c
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/client/types/messages_and_media/message.py
2018-11-13 14:01:47 +01:00
Dan
5b10afa7a3
Small style fix
2018-11-13 13:30:26 +01:00
Dan
9f8e05861f
Fix sphinx warning
2018-11-13 13:22:23 +01:00
Dan
87fca98035
Update to v0.9.2
2018-11-13 13:16:31 +01:00
Dan
8dfa80ef61
Add missing await keyword
2018-11-10 15:29:37 +01:00
Dan
df0de0c85a
Merge branch 'develop' into asyncio
2018-11-10 15:22:08 +01:00
Dan
2e16499369
Allow decorators to be stacked
...
E.g:
app1.on_message(...)
app2.on_message(...)
app3.on_message(...)
def on_message(client, message):
...
2018-11-10 15:21:52 +01:00
Dan
fafa3b5131
Fix some decorators not working when used in plugins
2018-11-10 15:15:58 +01:00
Dan
97e705f833
Make new types importable
2018-11-09 13:16:44 +01:00
Dan
ebfb64e139
Add InputMessageContent docstrings
2018-11-09 13:16:27 +01:00
Dan
1ab17d8015
Fix InputTextMessageContent with empty reply markups
2018-11-09 13:15:54 +01:00
Dan
5ed904a2e4
Update inline_query_result_article
2018-11-09 13:15:20 +01:00
Dan
06797d32f0
Add InlineQueryResult super class
2018-11-09 13:09:27 +01:00
Dan
55cca00401
Add on_inline_query decorator
2018-11-09 13:08:50 +01:00
Dan
07cb14de61
Add InlineQueryHandler
2018-11-09 13:08:28 +01:00
Dan
755a392fa2
Merge branch 'develop' into inline-mode
2018-11-09 10:23:47 +01:00
Dan
7bc4490680
Rework dispatcher for asyncio
2018-11-09 10:10:26 +01:00
Dan
301ba799cf
Fix update_worker not being async
2018-11-09 09:41:49 +01:00
Dan
14feffce84
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/client/dispatcher/dispatcher.py
# pyrogram/client/ext/utils.py
# pyrogram/client/types/messages_and_media/message.py
2018-11-09 09:33:00 +01:00
Dan
c3edd9d862
Merge branch 'dispatcher-optimizations' into develop
2018-11-09 09:23:16 +01:00
Dan
23fd39e2c8
Update dispatcher.py
2018-11-09 09:21:01 +01:00
Dan
dfadf92742
Update InlineQueryResultArticle
...
Inherit from InlineQueryResult
2018-11-09 09:14:03 +01:00
Dan
b98345b20e
Add InputMessageContent type
2018-11-09 09:13:32 +01:00
Dan
c7fe5b810a
Add InlineQueryResult type
2018-11-09 09:13:20 +01:00
Dan
aaded7564e
Clean up auto generated comments
2018-11-09 08:54:54 +01:00
Dan
735246b259
Fix InlineQuery ID
2018-11-09 08:53:34 +01:00
Dan
8d50b86bc6
Merge branch 'develop' into inline-mode
...
# Conflicts:
# compiler/api/compiler.py
2018-11-09 08:52:26 +01:00
Dan
3adb820bac
Merge pull request #156 from VANKINEENITAWRUN/develop
...
Add missing args to Message.download bound method
2018-11-08 20:30:39 +01:00
Dan
80726784e5
Fix Filters.chat docstrings using unusual double quotes
2018-11-08 20:25:35 +01:00
Dan
803f36412f
Update Filters.user docstrings
2018-11-08 20:24:54 +01:00
Furoin
b4bc7deba0
added Filters.user("me")
2018-11-08 17:11:43 +03:00
Vankineeni Tawrun
cdabf3e7e0
added args to Message.download bound method
2018-11-08 19:08:56 +05:30
Dan
3b7580739b
Merge branch 'develop' into asyncio
2018-11-08 11:14:20 +01:00
Dan
774462283e
Update service and media filter docstrings
2018-11-08 11:10:24 +01:00
Dan
f6d3db3662
Update docstring style
2018-11-08 11:03:47 +01:00
Dan
b747f87319
Update Filters.media
2018-11-08 10:50:52 +01:00
Dan
e760550f8b
Add Message.media field
2018-11-08 10:49:32 +01:00
Dan
f26e20d30e
Update Filters.service
2018-11-08 10:44:32 +01:00
Dan
fc7b77e2b9
Add Message.service field
2018-11-08 10:40:46 +01:00
Dan
32a09ffc4c
Add Message.empty field
2018-11-08 10:28:11 +01:00
Dan
cedb1f069a
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/client/ext/utils.py
# pyrogram/client/types/messages_and_media/message.py
2018-11-07 13:12:52 +01:00
Dan
f8844d60ab
Handle possible MESSAGE_IDS_EMPTY errors in case of pinned messages
2018-11-07 13:11:33 +01:00
Dan
648eb80928
Add Message.edit() bound method
2018-11-07 12:03:57 +01:00
Dan
160420bda4
Merge pull request #155 from Furoin/chat
...
Allow using "me" or "self" in Filters.chat
2018-11-06 17:41:12 +01:00
Dan
5efd608487
Update Filters.chat docstrings
2018-11-06 17:40:37 +01:00
Dan
5571888143
Add mentioned docstrings
2018-11-06 17:37:32 +01:00
Dan
0943761a91
Update filters.py
2018-11-06 17:32:46 +01:00
Dan
5da5cabf4c
Remove useless variable
2018-11-06 17:31:04 +01:00
Furoin
1adc812108
added Filters.chat("me")
2018-11-06 18:36:40 +03:00
Furoin
2d0ffcb0f4
added Filters.mentioned
2018-11-06 17:13:37 +03:00
Furoin
91beb214e9
added message.mentioned
2018-11-06 17:11:35 +03:00
Dan
9c7db1046e
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/__init__.py
2018-11-05 17:44:40 +01:00
Dan
03f57cd2af
Use TCPAbridgedO as default connection mode
2018-11-05 17:33:12 +01:00
Dan
5532c12e56
Update dev version
2018-11-05 17:32:11 +01:00
Dan
a9c4c72e5f
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/__init__.py
# pyrogram/client/ext/utils.py
2018-11-04 18:00:07 +01:00
Dan
e3a93b339c
Update to v0.9.1
2018-11-04 17:50:51 +01:00
Dan
ff7ee4678a
Catch possible MESSAGE_IDS_EMPTY errors
2018-11-04 17:25:39 +01:00
Dan
966926d383
Remove unneeded FloodWait check
2018-11-04 16:53:23 +01:00
Dan
46e19c395c
Don't encode callback data when sending inline buttons
2018-11-04 11:36:10 +01:00
Dan
af937152a1
Don't decode inline buttons callback data
...
Clients are able to set any value as plain bytes, this means UTF-8
decoding could fail.
2018-11-04 09:36:58 +01:00
Dan
30c0086fde
Fix missing total_count for ChatMembers in channels/supergroups
2018-11-03 22:01:26 +01:00
Dan
96af2ebcf2
Fix getattr failing for ChannelForbidden objects
2018-11-03 17:04:04 +01:00
Dan
5917fffb59
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/__init__.py
2018-11-03 14:47:48 +01:00
Dan
106fc0f458
Update to v0.9.0
2018-11-03 14:35:26 +01:00
Furoin
bc703ae6d7
added Filters.dan
2018-11-03 14:57:57 +03:00
Dan
bc4c787599
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/__init__.py
# pyrogram/client/types/messages_and_media/message.py
# pyrogram/connection/transport/tcp/tcp.py
2018-11-03 12:04:31 +01:00
Dan
c006ba5b30
Merge pull request #146 from TolichP/add-filesize-limit-error
...
Add file size limit error
2018-11-03 11:11:06 +01:00
Dan
09563067c7
Add a check for 0 B file sizes
2018-11-03 11:10:43 +01:00
Dan
45129658b0
Revisit docstrings
2018-11-03 10:49:11 +01:00
Dan
0c76774283
Reformat code
2018-11-02 10:26:59 +01:00
Dan
27d10b04c0
Update dev version
2018-11-02 10:23:41 +01:00
Dan
2e53129c0c
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/client/ext/utils.py
# pyrogram/client/methods/messages/get_messages.py
2018-10-28 19:53:45 +01:00
Dan
529ef143f0
Remove debugging piece of code
2018-10-28 19:52:54 +01:00
Dan
229b8df9cd
Fix bad behaviours of get_messages
2018-10-28 17:44:24 +01:00
Dan
005c24e4bd
Update get_messages docstrings
2018-10-28 17:24:37 +01:00
Dan
6cf6d49634
Update utils to accommodate changes on get_messages
2018-10-28 17:24:05 +01:00
Dan
daee188fa5
Update get_messages to accept the new reply_to_message_ids argument
2018-10-28 17:23:30 +01:00
Dan
39636f2843
Update get_messages signature
2018-10-28 17:18:00 +01:00
Dan
4fd93a790f
Small fixes and rewords
2018-10-28 15:27:49 +01:00
Dan
0a946033c3
Move optional field down after required fields
2018-10-28 15:27:20 +01:00
Dan
11b7c3b52a
Remove unused game field from Message
2018-10-28 15:26:46 +01:00
Dan
c9462911cf
Fix Filters.command ignoring commands with empty prefixes
2018-10-25 14:47:18 +02:00
Dan
6ade4030b2
Merge branch 'develop' into asyncio
2018-10-23 15:50:15 +02:00
Dan
99bdaae365
Allow nested folders for smart plugins
2018-10-23 15:43:49 +02:00
Dan
66bcc7cde4
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/client/methods/chats/kick_chat_member.py
2018-10-21 15:56:02 +02:00
Dan
7d4dfa6d12
Merge branch 'delete-kicked-message' into develop
2018-10-21 09:51:12 +02:00
Dan
a0780d793d
Apply code review suggestions
2018-10-21 14:44:29 +07:00
Dan
bc08ba86d9
Update emojis
2018-10-21 09:43:57 +02:00
Dan
35e3471961
The restriction_reason field is not always available
2018-10-21 09:43:22 +02:00
Dan
1fe46610cd
Make plugins disabled by default
...
Users need to explicitly set plugins_dir parameter
2018-10-21 09:42:22 +02:00
Dan
b12c87f50a
Make kick_chat_member return the "user kicked" message
2018-10-21 09:40:49 +02:00
Alexandr
ee47c21eed
Add file size limit error
2018-10-19 23:39:29 +07:00
Dan
3f0a355f7e
Further optimize and simplify the Dispatcher
2018-10-19 11:54:27 +02:00
Dan
09e0345868
Small dispatcher clean ups
2018-10-18 21:18:22 +02:00
Dan
89362ef684
Tiny fix to reflect other docstrings
2018-10-18 11:48:55 +02:00
Dan
e88972a8f6
Add restriction_reason to User and Chat types. Closes #144
2018-10-18 11:10:37 +02:00
Dan
38ff950d01
Remove useless #noinspection
2018-10-17 21:00:14 +02:00
Dan
426cdbbcb8
Don't make use of Update objects when dispatching updates
...
The Update type is used nowhere, adds costly abstraction and makes the
code uglier. If I ever need it again (unlikely) I can just revert this.
2018-10-17 20:59:33 +02:00
Dan
a315c30336
Optimize dispatcher.py code
2018-10-17 20:37:53 +02:00
Dan
41180fd22a
Update max caption length
2018-10-16 15:24:54 +02:00
Dan
3d8a386e25
Merge branch 'develop' into asyncio
2018-10-16 12:58:22 +02:00
Dan
c8604e8e2c
Update on_user_status decorator
2018-10-16 12:58:11 +02:00
Dan
418eb0b01a
Fix asyncio dispatcher
2018-10-16 12:38:50 +02:00
Dan
f45e3377a9
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/client/client.py
# pyrogram/client/methods/users/delete_user_profile_photos.py
2018-10-16 12:20:46 +02:00
Dan
9e159a3f50
Merge branch 'plugins' into develop
2018-10-16 12:12:21 +02:00
Dan
8a81bd1221
Merge branch 'user-status' into develop
2018-10-16 12:07:53 +02:00
Dan
c7a38655c4
Merge branch 'update-profile-photo' into develop
2018-10-16 11:59:17 +02:00
Dan
841141077f
Add better examples to Filters.command
2018-10-16 11:53:05 +02:00
Dan
22998af784
Fix docstrings
2018-10-16 11:45:39 +02:00
Dan
29201674ef
Rename delete_profile_photos to delete_user_profile_photos
...
For consistency with other method names
2018-10-16 11:45:20 +02:00
Dan
8fc5b8a545
Rename set_profile_photo to set_user_profile_photo
2018-10-16 11:43:54 +02:00
Dan
c94c79edac
Implement InlineQueryResultCachedAudio
2018-10-16 11:34:44 +02:00
Dan
797a0df087
Implement InlineQueryResultPhoto
2018-10-15 15:04:49 +02:00
Dan
c8fc995c83
No need to inherit from Object
2018-10-15 14:31:16 +02:00
Dan
0a057cc233
Expose new types and methods
2018-10-15 14:30:12 +02:00
Dan
350265aaae
Add answer_inline_query method
2018-10-15 14:29:58 +02:00
Dan
c5cedd880d
Allow Markdown and HTML styles to work on an empty dict.
...
For inline results. User mentions are disabled this way
2018-10-15 14:29:23 +02:00
Dan
e59d07af1e
Add missing InlineQueryResultArticle
2018-10-15 14:28:11 +02:00
Dan
59c3aa0589
Inject reply_markup
2018-10-15 14:25:02 +02:00
Dan
d6c0e61456
Add InputTextMessageContent type
2018-10-15 14:24:33 +02:00
Dan
dd642f5b9d
Add scraped inline query results
2018-10-15 11:34:27 +02:00
Dan
93018a7f6c
Add set_profile_photo method
2018-10-15 11:03:07 +02:00
Dan
c37dcb07cf
Add parse_inline_query util method
2018-10-15 10:50:17 +02:00
Dan
a9fe0fffc6
Add InlineQuery type
2018-10-15 10:48:07 +02:00
Dan
5b17376801
Enable dispatching of user status updates
2018-10-15 10:18:22 +02:00
Dan
d567b878b1
Expose UserStatusHandler and on_user_status
2018-10-15 10:17:00 +02:00
Dan
2eae08aaa6
Add on_user_status decorator
2018-10-15 10:16:19 +02:00
Dan
ff9be53a95
Add UserStatusHandler class
2018-10-15 10:14:40 +02:00
Dan
471b5c3334
Add user_status field to Update class
2018-10-15 10:10:49 +02:00
Dan
4b04910197
Add user_id field to UserStatus
2018-10-15 10:08:56 +02:00
Dan
79a9ddfab5
Some more changed in order to enhance UserStatus API design
2018-10-15 10:07:46 +02:00
Dan
b2b599e211
Rework user status parsing to also accommodate user_status updates
2018-10-15 09:47:47 +02:00
Dan
86e4fc4e62
Rename last_seen field to status in User class
...
Also add docstrings for status
2018-10-15 09:20:13 +02:00
Dan
b00604dbc9
Move date field
2018-10-14 18:00:31 +02:00
Dan
2d65eb3dc7
Add UserStatus docstrings
2018-10-14 17:56:51 +02:00
Dan
c9ce188bbe
Remove "bot" property from UserStatus
2018-10-14 17:56:10 +02:00
Dan
69c1532eae
Rename LastSeen to UserStatus
...
It will make more sense later on when I add UserStatus updates
handler.
2018-10-14 17:17:50 +02:00
Dan
7b369a73bb
Add parse_last_seen util method
2018-10-14 17:11:27 +02:00
Dan
d2f47d7e59
Add last_seen field to User parse_last_seen
2018-10-14 17:11:01 +02:00
Dan
465dcac630
Create LastSeen class
2018-10-14 17:08:49 +02:00
Dan
b79df81f14
Allow specifying more than one prefix in Filters.command
2018-10-14 14:24:53 +02:00
Dan
f4146a8779
Accept None as plugins_dir
2018-10-13 19:33:43 +02:00
Dan
8e238ccc9a
Add plugins_dir docstrings in Client class definition
2018-10-13 11:14:26 +02:00
Dan
96b39970d6
Allow on_callback_query to be used as a static decorator
2018-10-13 10:55:41 +02:00
Dan
6fdb90e4a4
Allow on_deleted_messages to be used as a static decorator
2018-10-13 10:54:13 +02:00
Dan
54296a6fda
Allow on_disconnect to be used as a static decorator
2018-10-13 10:47:39 +02:00
Dan
1fdc757f2a
Allow on_raw_update to be used as a static decorator
2018-10-13 10:46:29 +02:00
Dan
345ac6e16a
Merge branch 'develop' into plugins
2018-10-13 10:42:07 +02:00
Dan
9649b1457c
Don't make use of hardcoded default int values too
2018-10-13 10:41:58 +02:00
Dan
340fb9c145
Merge branch 'develop' into plugins
...
# Conflicts:
# pyrogram/client/client.py
# pyrogram/client/ext/base_client.py
2018-10-13 10:39:47 +02:00
Dan
a32009a79d
Don't make use of hardcoded default string values
2018-10-13 10:38:44 +02:00
Dan
6a0066b8b5
Move loading plugins logic into a separate method
2018-10-12 17:57:34 +02:00
Dan
4bb50ee35f
More logs when loading plugins
2018-10-12 17:54:52 +02:00
Dan
6c05f9ff42
Sanitize (a bit) plugins directory
2018-10-12 15:26:52 +02:00
Dan
4e516d097f
Don't raise exceptions in case of non-existent plugins folder
...
Don't even warn in case the default plugins folder doesn't exist
2018-10-12 14:32:35 +02:00
Dan
0b79f96b4f
Turn hardcoded plugins dir into a constant
2018-10-12 14:19:26 +02:00
Dan
dfb841baa9
Automatically scan and load plugins from a customizable directory
...
Defined functions found inside the directory that are also decorated
properly will be registered in the Client's dispatcher as handlers.
2018-10-12 14:17:03 +02:00
Dan
0025489c86
Allow on_message to behave like a static decorator
...
This enabled usages like @Client.on_message(...).
To preserve positional arguments order and thus ease the static
decorator usage there's a not-so-elegant hack in place that shifts
values.
2018-10-12 14:12:29 +02:00
Dan
e5f233b01e
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/client/dispatcher/dispatcher.py
# pyrogram/client/ext/utils.py
2018-10-09 16:38:28 +02:00
Dan
acd525294f
Add CallbackQuery.answer bound method
2018-10-09 14:08:01 +02:00
Dan
1be144288c
Add a proxy to the Client instance inside CallbackQuery objects
2018-10-09 14:07:01 +02:00
Dan
d5c2ca2e1d
Use TCPAbridged (async) connection mode
2018-10-08 20:18:20 +02:00
Dan
980807f1de
Remove TODO
2018-10-08 20:17:47 +02:00
Dan
1fc160c566
Make TCPIntermediateO async
2018-10-08 20:17:31 +02:00
Dan
78a768f52c
Make TCPAbridgedO async
2018-10-08 20:17:04 +02:00
Dan
1bf0d93140
Make TCPFull async
2018-10-08 20:16:44 +02:00
Dan
ee06907bda
Make TCPAbridged async
2018-10-08 20:16:04 +02:00
Dan
a28ab0e8a8
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/__init__.py
2018-10-08 19:16:47 +02:00
Dan
3fa738db9f
Update dev version
2018-10-02 12:07:54 +02:00
Dan
fcdb71c28c
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/client/client.py
# pyrogram/client/dispatcher/dispatcher.py
# pyrogram/client/methods/chats/promote_chat_member.py
2018-10-01 16:21:14 +02:00
Dan
89a167b51f
Update default rights to the least common between supergroups & channels
...
Fixes #120
2018-10-01 10:52:09 +02:00
Dan
0162cf48c1
Don't break groups in case one handler raises an unhandled exception
...
The error is logged instead. Fixes #126
2018-10-01 09:55:09 +02:00
Dan
b79bd1ea83
Don't swallow left_chat_member updates
...
Even though they are only relevant for supergroups with <50 members
2018-10-01 09:45:32 +02:00
Dan
12c61fb431
Fix unwanted CHANNEL_PRIVATE errors. Fixes #129
2018-10-01 09:40:34 +02:00
Dan
3cbffd93f2
Revert "Log unknown constructors"
...
This reverts commit 0b6b598
This fixes #128
2018-10-01 09:25:20 +02:00
Dan
8070bf4cd4
Fix bad merge after editing tcp.py
2018-09-22 19:41:33 +02:00
Dan
41acdd4d63
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/connection/transport/tcp/tcp.py
2018-09-22 14:49:35 +02:00
Dan
8ea556b65f
Fix handling proxies with domain names
2018-09-22 14:44:12 +02:00
Dan
28abcaac50
Fix ipv6 with ipv4 proxies
2018-09-22 14:31:28 +02:00
Dan
6a89c7ea02
Add missing ipv6 docstrings
2018-09-22 14:21:55 +02:00
Dan
61a2ad812e
Add missing docstrings for edit_message_media
2018-09-20 16:33:36 +02:00
Dan
df8bc62fb3
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/__init__.py
# pyrogram/client/methods/messages/send_document.py
# pyrogram/client/methods/messages/send_video_note.py
2018-09-19 17:54:53 +02:00
Dan
cc47897c68
Update to v0.8.0
2018-09-19 17:47:28 +02:00
Dan
3a858e6a57
Fix config values not being available when not using config.ini file
2018-09-19 17:30:23 +02:00
Dan
6ce71b404f
Revert "Revert "Remove TODO""
...
This reverts commit d2d4f55
2018-09-19 14:31:55 +02:00
Dan
dcd087ba63
Revert "Revert "Update tgcrypto function names""
...
This reverts commit 0f0e757
2018-09-19 14:31:51 +02:00
Dan
9538ed85fe
Fix missing backtick
2018-09-19 13:20:36 +02:00
Dan
84492fb942
Add an extra warning in case connection fails
2018-09-18 21:28:44 +02:00
Dan
8b364202c3
Use list instead of set
2018-09-18 19:17:28 +02:00
Dan
500ec09b47
Clean up load_config
2018-09-18 19:16:55 +02:00
Dan
42ea51cb77
Make send_document and send_video_note accept a thumbnail
...
#119
2018-09-18 11:38:00 +02:00
Dan
61e6e58be7
Reword send_animation's thumb parameter description
2018-09-18 11:36:52 +02:00
Dan
28af5e14b4
Add "thumb" field for all InputMedia types except Photo
2018-09-18 11:36:20 +02:00
Dan
19d04ca94f
Reword Audio thumb description
2018-09-18 11:35:19 +02:00
Dan
f850d6352e
Enhance API by adding support for Context Managers. Closes #122
...
A batch script would be as simple as this example:
from pyrogram import Client
with Client("...") as app:
app.send_message("haskell", "hi")
2018-09-17 18:53:04 +02:00
Dan
4c290ba38a
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/client/client.py
# pyrogram/client/methods/messages/send_audio.py
# pyrogram/session/session.py
2018-09-17 17:00:10 +02:00
Dan
0f0e757f4c
Revert "Update tgcrypto function names"
...
This reverts commit a5979a3
2018-09-17 16:53:21 +02:00
Dan
d2d4f55673
Revert "Remove TODO"
...
This reverts commit f576fc8
2018-09-17 16:53:17 +02:00
Dan
e7a85520f2
Merge remote-tracking branch 'origin/develop' into develop
...
# Conflicts:
# pyrogram/client/client.py
2018-09-17 15:59:49 +02:00
Dan
f4a8848603
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/connection/connection.py
2018-09-15 22:19:39 +02:00
Dan
c75a4f182a
Handle Telegram exceptions on start(). Fixes #121
...
The client doesn't need to be stopped as it never started successfully.
2018-09-15 13:23:25 +02:00
Dan
edfdf9d143
Small docstring fixes
2018-09-14 15:34:00 +02:00
Dan
3307b410b4
Give superpowers to Filters.chat too
...
It can now add and remove chats at runtime
2018-09-14 15:33:32 +02:00
Dan
339630dafb
Add noinspection PyPep8Naming for Filters.user
2018-09-14 15:29:56 +02:00
Dan
31578ddb33
Give Filters.user superpowers
...
It can now add and remove users at runtime
2018-09-14 15:29:36 +02:00
Dan
4e293f23a9
Make handlers test whether filters are callable and not if they exist
2018-09-14 15:28:08 +02:00
Dan
b893698f1e
Add ability to add/remove users from the user filter.
...
Use .users to access the inner set of users
2018-09-14 14:37:04 +02:00
Dan
eb8513e009
Update send_video docstrings
...
Add a more detailed "thumb" description
2018-09-12 08:26:13 +02:00
Dan
b49190256d
Merge pull request #111 from zeroone2numeral2/develop
...
Allow to set audio thumbnail when using send_audio
2018-09-12 08:15:37 +02:00
Dan
6a4bf23b09
Update send_audio docstrings
2018-09-12 08:14:49 +02:00
Dan
b1aff3ca5e
Small style fixes
...
"double quotes"
2018-09-12 07:44:49 +02:00
Dan
dbd60765f6
Fix get_me not being properly awaited
2018-09-11 19:39:46 +02:00
Dan
05b3be1e88
Info log DC number on connection
2018-09-08 19:33:47 +02:00
Dan
8ff413c7e7
Make get_chat_members_count async
2018-09-08 19:30:12 +02:00
Dan
8011997512
Merge branch 'develop' into asyncio
2018-09-08 19:28:46 +02:00
Dan
ea39062d2d
Add get_chat_members_count method
2018-09-08 19:16:51 +02:00
Dan
b588b55358
Remove old commented (non-async) code from tcp.py
2018-09-07 00:44:31 +02:00
Dan
45a32ddd88
Remove old commented code on session.py
2018-09-07 00:42:45 +02:00
Dan
38442bf3c1
Add missing await
2018-09-07 00:41:01 +02:00
Dan
cc7901adf8
Merge branch 'develop' into asyncio
2018-09-06 20:05:01 +02:00
Dan
b07c13a513
Remove useless definition
...
PyCharm will complain about Long not being a bytes, let's not care.
2018-09-05 16:50:38 +02:00
Konstantin Klimov
392f0070fb
Fixed decode error in api.core.primitives.string.py
2018-09-04 08:25:56 +03:00
Dan
b619818c40
Clear recv_queue on session stop. Fixes #103
2018-09-03 16:35:22 +02:00
Dan
db6042e91b
Fetch ChatForbidden and ChannelForbidden peers
...
This fixes unwanted PEER_ID_INVALID errors in cases where a user or a
bot was kicked/banned from a group, supergroup or channel
2018-09-02 13:04:29 +02:00
Dan
4c9d9d84f2
Change the way int to bytes conversion is used
...
Maybe at some point I should switch to struct
2018-09-01 01:27:22 +02:00
Dan
10f3829c93
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/client/client.py
# pyrogram/connection/connection.py
# pyrogram/connection/transport/tcp/tcp.py
# pyrogram/connection/transport/tcp/tcp_intermediate.py
# pyrogram/session/session.py
2018-09-01 01:05:25 +02:00
Dan
f576fc899d
Remove TODO
2018-08-31 13:12:13 +02:00
Dan
a5979a3ac7
Update tgcrypto function names
2018-08-31 12:56:05 +02:00
zeroone2numeral2
d5ca99dfff
Allow to set audio thumbnail when using send_audio
...
With the Bot API 4.0 update (https://core.telegram.org/bots/api#july-26-2018 ), sendAudio allows bots to pass a thumbnail - making it possible for pyrogram to include a 'thumb' parameter in its convenience method 'send_audio'
2018-08-30 11:50:09 +02:00
Dan
9f4d7854e8
Fix ipv6 branch merge mess
2018-08-30 01:23:19 +02:00
Dan
43483a1ccd
Remove info logs from protocol impls
2018-08-29 22:20:32 +02:00
Dan
ef9fc969d3
Info log connection settings
2018-08-29 22:20:00 +02:00
Dan
49f2cbe04f
Move CURRENT_DH_PRIME into Prime namespace
2018-08-29 22:04:04 +02:00
Dan
b845544e63
Info log device and system parameters
2018-08-28 12:39:14 +02:00
Dan
f50638772c
Minor fix: update info log
2018-08-28 12:38:02 +02:00
Dan
a0c1018a1b
Minor style fix
2018-08-28 12:25:08 +02:00
Dan
973ccfcd03
Use compact IPv6 addresses
2018-08-28 12:23:22 +02:00
Dan
4b3b647245
Merge branch 'ipv6' into develop
...
# Conflicts:
# pyrogram/client/client.py
# pyrogram/session/session.py
2018-08-28 12:19:37 +02:00
Dan
2779e33d13
Rename "token" to "bot_token"
2018-09-10 19:55:53 +02:00
Dan
00f0051bd6
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/__init__.py
2018-08-26 19:28:32 +02:00
Dan
77a1d58714
Normalize "0.8.0dev1" to "0.8.0.dev1"
2018-08-24 18:13:07 +02:00
Dan
0b6b598059
Log unknown constructors
2018-08-24 17:39:55 +02:00
Dan
caecbef2f6
Add phone_number type of entity to docs
2018-08-24 16:03:52 +02:00
Dan
b78b72d7dc
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/client/methods/messages/edit_message_media.py
2018-08-23 21:22:29 +02:00
Dan
2617618cef
Add support for Document message edits
2018-08-23 21:21:27 +02:00
Dan
4f9b38765e
Add missing async/await keywords
2018-08-23 21:07:19 +02:00
Dan
aaaba4b847
Update async branch version
2018-08-23 20:43:46 +02:00
Dan
c3cf924ddd
Fix small merge issues
2018-08-22 10:32:57 +02:00
Dan
3f7b0b25af
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/client/client.py
# pyrogram/client/methods/chats/get_chat_members.py
# pyrogram/client/methods/chats/get_dialogs.py
# pyrogram/client/methods/messages/send_animation.py
# pyrogram/client/methods/messages/send_venue.py
2018-08-22 10:30:25 +02:00
Dan
c501eeb5a2
Update to v0.8.0dev1
...
There are a quite lot of changes it deserves a new "minor" update.
2018-08-21 21:23:19 +02:00
Dan
03b17d5bce
Fix clickable link
2018-08-21 21:18:06 +02:00
Dan
2d8792a7cd
Move get_dialogs() from "messages" to "chats" namespace
2018-08-20 11:24:47 +02:00
Dan
9c0f8b2f3b
Document get_dialogs() method
2018-08-20 11:24:00 +02:00
Dan
088a4c35c9
Add is_pinned attribute to Dialog
2018-08-20 02:12:21 +02:00
Dan
21d914e414
Remove unused constant
2018-08-19 19:40:23 +02:00
Dan
493fc4a658
Document Filters.create() method
2018-08-19 17:24:24 +02:00
Dan
ed05c56f52
Clearer Filters docs. Add create to Filters' namespace
2018-08-19 17:22:28 +02:00
Dan
0c77fe91fe
Add TODO
2018-08-17 12:17:54 +02:00
Dan
7f1dd6d67e
Rename "build" to "create" (friendlier name)
2018-08-17 02:17:48 +02:00
Dan
6879a4da9b
Update vcard docstrings for Contact type and send_contact method
2018-08-15 22:33:01 +02:00
Dan
49e2e529e1
Add parameter foursquare_type to send_venue method
2018-08-14 14:36:01 +02:00
Dan
25662748cf
Add foursquare_type to Venue
2018-08-14 14:25:54 +02:00
Dan
ec0d6dd6e0
Add support for animations in edit_message_media
2018-08-14 14:14:03 +02:00
Dan
4fe9cffc32
Code style fix
2018-08-13 22:06:43 +02:00
Dan
85c50ef4dd
Add phone_number message entity
2018-08-13 22:06:20 +02:00
Dan
ece50e5f9b
Rename Filters.gif to Filters.animation
2018-08-12 13:30:54 +02:00
Dan
9c7de81d82
Fix relative imports
2018-08-10 11:30:36 +02:00
Dan
7162850523
Export Utility methods
2018-08-10 11:29:55 +02:00
Dan
da436461a8
Revert "Move resolve_peer into utilities"
...
This reverts commit 6437c6c
2018-08-10 11:29:13 +02:00
Dan
ef6f080546
Revert "Export resolve_peer"
...
This reverts commit dd422c0
2018-08-10 11:29:05 +02:00
Dan
dd422c0edf
Export resolve_peer
2018-08-10 11:18:28 +02:00
Dan
6437c6c5be
Move resolve_peer into utilities
2018-08-10 11:17:53 +02:00
Dan
42d3b467fb
Fix init not having message and media types
2018-08-10 11:17:21 +02:00
Dan
4e6add7a70
Fix download_media referencing to gif instead of animation
2018-08-10 11:16:57 +02:00
Dan
61663b3dde
Add new utilities folder
2018-08-10 11:16:31 +02:00
Dan
888b3cc6aa
Add missing import
2018-08-09 21:55:06 +02:00
Dan
2b4138ee30
Add new folder for messages and media related types
2018-08-09 21:53:49 +02:00
Dan
3a5dc20fb5
Rename reply_markup to bots
2018-08-09 21:51:43 +02:00
Dan
a93f98cfa6
Create a new sub-folder for bot related types
2018-08-09 21:51:00 +02:00
Dan
eeb3b67d37
Create a new sub-folder for user and chat types
2018-08-09 21:49:14 +02:00
Dan
88d45b085b
Move InputMedia types in a dedicated folder
2018-08-09 21:46:14 +02:00
Dan
4b7e22aedd
Rename file
2018-08-07 01:25:34 +02:00
Dan
2b793dd2a1
Refactor send_gif. It is now called send_animation
2018-08-07 01:23:52 +02:00
Dan
b1c12c3232
Rename GIF to Animation
2018-08-06 21:38:44 +02:00
Dan
6cc87d50c9
Rename media type id to animation
2018-08-06 21:32:38 +02:00
Dan
f7c2dc9d30
Add support for editing messages with Audio
2018-08-05 10:25:37 +02:00
Dan
9e5976e755
Fix InputMediaAudio copy pasta
2018-08-05 10:15:53 +02:00
Dan
9f725a6bfb
Add support for editing videos using external URLs and file IDs
2018-08-04 01:27:02 +02:00
Dan
f3074f04b0
Add ability to edit video messages
2018-08-04 01:23:31 +02:00
Dan
51eb2f90b9
Add support for editing photousing file IDs
2018-08-03 18:38:26 +02:00
Dan
a3be6a9355
Add support for editing photos with external URLs
2018-08-03 18:38:04 +02:00
Dan
8d35559f0b
Return the higher-level Message object instead of the raw update
2018-08-03 18:37:10 +02:00
Dan
6015a14182
Add ability to edit photos by uploading new files
2018-08-03 18:36:38 +02:00
Dan
e7b27c2c21
Expose edit_message_media method
2018-08-02 01:12:31 +02:00
Dan
ea0a75bfd7
Add edit_message_media method
2018-08-02 01:10:29 +02:00
Dan
92fdf79d54
Expose the new InputMedia types
2018-08-01 21:19:11 +02:00
Dan
c625756747
Add InputMediaDocument
2018-07-31 00:29:10 +02:00
Dan
570128d980
Add InputMediaAnimation
2018-07-31 00:25:41 +02:00
Dan
5bc9be0858
Add InputMediaAudio
2018-07-31 00:14:21 +02:00
Dan
2a985e7545
Make InputMediaVideo inherit from InputMedia
2018-07-30 23:01:43 +02:00
Dan
486c9433ac
Make InputMediaPhoto inherit from InputMedia
2018-07-30 23:01:14 +02:00
Dan
9d9fc1f94f
Add InputMedia base class
2018-07-30 22:59:30 +02:00
Dan
d270d0d2aa
Remove support for t.me/joinchat/ links in resolve_peer for now
...
Another way, which is 100% reliable, will be implemented
Also clean the method a bit by removing useless checks
2018-07-28 23:09:44 +02:00
Dan
32468e5ab0
Remove hints about using t.me/joinchat/ links as chat ids
...
Such links don't work reliably with the current implementation
2018-07-27 00:40:08 +02:00
Dan
f4175b041c
Document ChatMembers
2018-07-26 19:34:21 +02:00
Dan
e9cba4609a
Update get_chat_member docstrings
2018-07-26 19:32:12 +02:00
Dan
215f54f32b
Add get_chat_member documentation
2018-07-22 02:07:44 +02:00
Dan
1eaafb8e41
Clearer documentation for get_chat_members
2018-07-21 14:09:34 +02:00
Dan
e5915505a1
Add get_chat_member method
2018-07-19 23:26:20 +02:00
Dan
b77771497d
Document get_chat_members
2018-07-17 09:09:04 +02:00
Dan
ccd651f1fc
Make the new methods async
2018-07-17 08:28:28 +02:00
Dan
8a69c2d74e
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/client/methods/messages/send_contact.py
2018-07-16 17:39:54 +02:00
Dan
5b89a65437
Document set_chat_title
2018-07-15 16:34:47 +02:00
Dan
3fe05b4d28
Document set_chat_photo
2018-07-15 16:34:32 +02:00
Dan
3fcf9b9ef6
Document delete_chat_photo
2018-07-15 16:34:15 +02:00
Dan
98578160f0
Document set_chat_description
2018-07-15 16:33:41 +02:00
Dan
15e83e12ca
Document unpin_chat_message
2018-07-15 16:33:12 +02:00
Dan
f8d44b8e77
Document pin_chat_message
2018-07-14 00:44:50 +02:00
Dan
84e7bb5c50
Clean up MessageEntity comments
2018-07-14 00:43:28 +02:00
Dan
85e3c05216
Document Dialogs
2018-07-13 01:10:33 +02:00
Dan
5c34e3f08f
Clean up Messages comments
2018-07-12 14:58:18 +02:00
Dan
82d4a99fd5
Add docstrings for Dialog type
2018-07-12 14:58:01 +02:00
Dan
fa512a690d
Add download() bound method to Message
2018-07-12 14:17:30 +02:00
Dan
bee8d1340b
Clean up Sticker, Venue and Video comments
2018-07-12 14:16:29 +02:00
Dan
109e3836cf
Clean up Photo and PhotoSize docstrings
2018-07-12 14:16:08 +02:00
Dan
62f575d53f
Clean up GIF and Location comments
2018-07-12 14:14:19 +02:00
Dan
5d9e2f7d7a
Clean up Document docstrings
2018-07-12 14:13:51 +02:00
Dan
72eb7e7a33
Add missing vcard argument on Contact
2018-07-12 14:13:35 +02:00
Dan
1e727fbb43
Add extra attributes to User
...
is_self, is_contact, is_mutual_contact and is_deleted
2018-07-12 00:54:13 +02:00
Dan
8289dff05f
Update download_media docstrings
2018-07-12 00:31:33 +02:00
Dan
a9a9dc3cd3
Make download_media raise ValueError in case of non-media messages
2018-07-12 00:24:57 +02:00
Dan
f242aceb31
Add vCard support for contacts
2018-07-12 00:10:33 +02:00
Dan
b6a4dee787
Fix some User weird docstrings
2018-07-11 23:54:54 +02:00
Dan
e89d56e058
Add cashtag message entity
2018-07-11 23:54:11 +02:00
Dan
fade921ac0
Don't document client, is for internal purposes only
2018-07-11 18:05:36 +02:00
Dan
12ef2f8ca2
Fix video notes not having a file_name anymore
2018-07-11 17:48:18 +02:00
Dan
00e170feea
Video notes don't have a file_name
2018-07-11 17:40:33 +02:00
Dan
9214416f7c
Parse Voice waveform
2018-07-11 17:36:58 +02:00
Dan
7509566796
Remove Voice thumb and file_name. Add waveform
2018-07-11 17:36:49 +02:00
Dan
5347080fd1
Clean Audio comments
2018-07-11 17:26:59 +02:00
Dan
ad9fb26808
Cleaner Chat docstrings
2018-07-11 17:25:39 +02:00
Dan
0c96fa8b7c
Don't flush each chunk. Let python/os deal with it
2018-07-11 17:05:33 +02:00
Dan
ab11c9e347
Add missing docstring arguments
2018-07-10 15:57:27 +02:00
Dan
037ded73c3
Add unpin_chat_message method
2018-07-08 11:09:07 +02:00
Dan
486e8b9552
Add pin_chat_message method
2018-07-08 11:00:56 +02:00
Dan
7d799aed11
Add set_chat_description method
2018-07-08 10:28:54 +02:00
Dan
393caa9d7c
Add set_chat_title method
2018-07-08 10:24:39 +02:00
Dan
17ca6b7094
Add delete_chat_photo method
2018-07-08 10:19:16 +02:00
Dan
cb4996d64b
Reformat code
2018-07-08 10:18:48 +02:00
Dan
756a6f7630
Add set_chat_photo method
2018-07-08 09:22:08 +02:00
Dan
9e4267dd2c
Move media types in their own folder
2018-07-08 08:58:10 +02:00
Dan
52ac0c80e6
Add todo for ChatMembers docstrings
2018-07-08 08:40:10 +02:00
Dan
960280b996
Add new ChatMembers type
2018-07-08 08:39:36 +02:00
Dan
d94139be9a
Add parse_chat_members util function
2018-07-08 08:39:10 +02:00
Dan
e3128fca9d
Make get_chat_members work with basic groups
2018-07-07 15:47:34 +02:00
Dan
3b29a602d0
Add get_chat_members method
2018-07-06 19:12:41 +02:00
Dan
f2d64b2573
Make get_dialogs async
2018-07-05 15:06:25 +02:00
Dan
3f22d1b844
Merge branch 'develop' into asyncio
2018-07-05 14:58:27 +02:00
Dan
43897eb826
Merge branch 'develop' of https://github.com/pyrogram/pyrogram into develop
2018-07-05 14:57:53 +02:00
Dan
2b6c30d0e1
Update get_dialogs
2018-07-05 14:57:45 +02:00
Dan
3e671dfbfe
Merge pull request #95 from avi-av/develop
...
Update docs
2018-07-05 14:54:59 +02:00
avi-av
4049b57135
Update docs
...
Type returns in the documentation section
2018-07-05 14:42:04 +03:00
Dan
c2369c26ca
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/client/client.py
# pyrogram/client/ext/utils.py
2018-07-04 21:51:10 +02:00
Dan
8b43ad8a63
Add unread messages, mentions count and unread mark to Dialog
2018-07-04 21:49:11 +02:00
Dan
15e3cf0fd5
Small fix
2018-07-04 21:39:09 +02:00
Dan
fe97a4d92b
Parse members_count
2018-07-04 21:32:35 +02:00
Dan
51194945c6
Add members_count attribute to Chat
2018-07-04 21:31:50 +02:00
Dan
9ac6633cc8
Add get_dialogs method
2018-07-04 21:05:43 +02:00
Dan
91cf2d1a8e
Make Dialog and Dialogs importable and printable
2018-07-04 21:05:00 +02:00
Dan
1ed202b926
Add Dialogs type
2018-07-04 21:03:51 +02:00
Dan
2b36fb31d9
Add Dialog type
2018-07-04 21:03:29 +02:00
Dan
1d7c857e9f
Rename get_dialogs
2018-07-04 21:02:26 +02:00
Dan
52f1f390ca
Rename get_dialogs
2018-07-04 20:59:21 +02:00
Dan
8bdccda6ee
Fix GetDialog call
2018-07-04 14:03:45 +02:00
Dan
c7489cf302
Reformat code
2018-07-04 14:03:14 +02:00
Dan
29fb0ce599
Also log UpdatesTooLong
2018-07-04 13:53:34 +02:00
Dan
d61f9fa458
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/__init__.py
2018-07-03 18:32:34 +02:00
Dan
e414956e71
Log UpdateChannelTooLong updates
2018-07-03 18:29:25 +02:00
Dan
f6886bd0e4
Further improve save_file
2018-07-03 16:34:55 +02:00
Dan
dc7c9af826
Set v0.8.0dev1 for the asyncio branch
...
This way people can easily tell whether they are running the correct
branch or not (pip is misbehaving lately and installations from git
don't replace files).
2018-07-02 20:49:48 +02:00
Dan
8bb4fdd67d
Update to v0.7.6dev1
2018-07-02 20:48:58 +02:00
Dan
219988740c
Remove unsupported argument for Python <3.6
2018-07-02 19:16:01 +02:00
Dan
f4c583664a
Remove unsupported arguments for Python <3.7
2018-07-02 19:14:30 +02:00
Dan
ec82b4f994
Don't use getpass anymore (for now)
...
The reason is that getpass is blocking. Let's use ainput() until
a proper way of reading from stdin without echoing is found.
2018-07-02 17:21:42 +02:00
Dan
ed562edb9f
Fix send AcceptTermsOfService not being awaited
2018-07-02 14:11:02 +02:00
Dan
af5c5d20cf
Replace input() with ainput() in Client
2018-07-02 14:10:48 +02:00
Dan
26bb97af46
Add ainput function
2018-07-02 14:10:26 +02:00
Dan
3711437dbd
Merge branch 'develop' into asyncio
2018-07-02 09:51:01 +02:00
Dan
f7aae28ae9
Improve get_history
2018-07-02 02:48:58 +02:00
YoilyL
357253b63e
added option to reverse get_history order
...
added an argument `reverse` to get_history which if set to True returns the messages from first to last instead of from newest to oldest.
2018-07-01 21:34:05 +03:00
Dan
c85aa5dab2
Fix Photo downloads
2018-07-01 19:43:43 +02:00
Dan
c660d3a7d0
Fix PhotoSize not having date anymore
2018-07-01 19:43:29 +02:00
Dan
b49030eb10
Shorter conditions
2018-06-30 11:30:32 +02:00
Dan
d28f795aca
Make save_file more efficient
2018-06-30 11:26:45 +02:00
Dan
aa800c3ebc
Reformat code
2018-06-30 11:04:17 +02:00
Dan
984e989a4b
Lock TCP send()
2018-06-30 11:03:55 +02:00
Dan
335a2e06c8
Make delete_profile_photos async
2018-06-28 20:14:38 +02:00
Dan
a2b4d59cdb
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/client/methods/users/get_user_profile_photos.py
2018-06-28 20:10:38 +02:00
Dan
6943e16636
Change new_chat_photo type. It is now Photo
2018-06-28 20:04:46 +02:00
Dan
b6206b7938
Fix small docstring issue
2018-06-28 20:03:50 +02:00
Dan
bae7b4c851
Make Photo importable from the top level package
2018-06-28 20:02:31 +02:00
Dan
30497b0e91
Add delete_profile_photos method
2018-06-28 19:59:26 +02:00
Dan
0dfe373c88
Make Photo work in download_media
2018-06-28 19:13:47 +02:00
Dan
fbf69fb8bd
Change photo type in Message
2018-06-28 19:09:27 +02:00
Dan
abbf7e6684
Use Photo as type for UserProfilePhotos photos list
2018-06-28 19:08:21 +02:00
Dan
b8bfb43a80
Use Photo as type for new_chat_photo
2018-06-28 19:07:56 +02:00
Dan
a3761144b3
Use Photo as type for media messages
2018-06-28 19:07:02 +02:00
Dan
fb10b3b0e7
UserProfilePhoto.photos is now a list of Photo objects
2018-06-28 19:05:47 +02:00
Dan
971299f592
PhotoSize won't store date info anymore
2018-06-28 19:05:08 +02:00
Dan
5f87bbc962
Add the new Photo type
2018-06-28 19:04:45 +02:00
Dan
be451a3bb2
Rename parse_photos to parse_profile_photos
2018-06-28 18:49:09 +02:00
Dan
0935c4837f
Fix ReplyKeyboardRemove id
2018-06-28 18:41:16 +02:00
Dan
2f1d447783
Move INITIAL_SALT to Session
2018-06-28 17:50:37 +02:00
Dan
4f4531cf18
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/session/session.py
2018-06-28 00:41:11 +02:00
Dan
6e4c608875
Handle AUTH_KEY_DUPLICATED error
2018-06-28 00:16:12 +02:00
Dan
77c696aec0
Merge branch 'develop' into asyncio
2018-06-27 17:21:14 +02:00
Dan
37aae4382e
Update to v0.7.5
2018-06-27 16:38:41 +02:00
Dan
7ed9cd6759
Add "Login successful" message upon login
2018-06-27 14:42:04 +02:00
Dan
ecaba45523
Keep only lang_code
2018-06-27 00:42:32 +02:00
Dan
fc1c653c05
Add TimeoutError on possible raises of Message.click()
2018-06-26 16:16:10 +02:00
Dan
1cc66c898d
Fix request_callback_answer call with wrong kwarg
2018-06-26 14:05:45 +02:00
Dan
9dff15bd4f
Make run() accept coroutine functions
2018-06-26 13:45:31 +02:00
Dan
5e3618ccb7
Merge branch 'develop' into asyncio
2018-06-25 01:00:32 +02:00
Dan
04a86054b0
Update to dev version 0.7.5.dev5
2018-06-25 00:53:45 +02:00
Dan
4970a98b43
Merge branch 'develop' into asyncio
2018-06-25 00:46:06 +02:00
Dan
3409963a4a
Merge branch 'develop' of https://github.com/pyrogram/pyrogram into develop
2018-06-25 00:45:34 +02:00
Dan
2587394e07
Merge branch 'layer-81' into develop
2018-06-25 00:43:47 +02:00
YoilyL
a04b08f245
Fixed tiny typo
2018-06-24 22:58:17 +03:00
Dan
c8468ccdd1
Merge branch 'develop' into asyncio
2018-06-24 19:29:31 +02:00
Dan
c7d60ef8a6
Fix disconnect handler callback being called on every session
2018-06-24 19:29:12 +02:00
Dan
5f727cb5a2
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/client/client.py
# pyrogram/client/ext/base_client.py
# pyrogram/client/methods/bots/request_callback_answer.py
# pyrogram/session/session.py
2018-06-24 19:27:37 +02:00
Dan
fa7b7d0ce3
Cleanup Client class
2018-06-24 19:09:39 +02:00
Dan
9c420bb73b
Document the new parameters. Closes #86
2018-06-24 19:09:39 +02:00
Dan
9a012077cc
Remove some redundant code. Related to #86
2018-06-24 18:54:47 +02:00
Dan
55ef4abb27
Allow user-defined session properties. Related to #86
...
This commit adds five 5 extra parameters to the Client class:
app_version, device_model, system_version, system_lang_code, lang_code
2018-06-24 18:47:49 +02:00
Dan
f4c0793a0b
Make session leaner by removing some redundant parameters
...
Related to #86
2018-06-24 18:27:41 +02:00
Dan
56f616c753
Mention timeout and retries in docs for request_callback_answer
2018-06-24 17:50:30 +02:00
Dan
166b3646ac
Make request_callback_answer try only once with a timeout of 10 seconds
2018-06-24 17:48:33 +02:00
Dan
69d1432251
Allow user-defined values for retries and timeout
2018-06-24 17:47:29 +02:00
Dan
44f71f096f
Better docs for phone_code argument
2018-06-24 16:53:07 +02:00
Dan
47043380fb
Pass the phone number when calling the phone_code callback function
2018-06-24 16:11:22 +02:00
Dan
66f91b1b63
Update dev version
2018-06-24 14:31:06 +02:00
Dan
81c8fca11c
Make the on_disconnect callback function a coroutine
2018-06-24 11:40:43 +02:00
Dan
5834e38f14
Make run() accept a coroutine
2018-06-24 11:39:50 +02:00
Dan
0cd4795318
Use TOS provided by Telegram
2018-06-23 16:15:44 +02:00
Dan
602f4581c6
Remove custom TOS
2018-06-23 16:15:09 +02:00
Dan
668da4ae0e
Merge branch 'tos' into layer-81
...
# Conflicts:
# pyrogram/client/ext/base_client.py
2018-06-23 16:11:20 +02:00
Dan
fc541221ed
Accept terms of service after successfully signing in
2018-06-23 16:08:28 +02:00
Dan
06cb2a1168
Move try..except block at the top
2018-06-23 16:00:37 +02:00
Dan
d06097c68a
Use uvloop, if available
2018-06-23 15:53:56 +02:00
Dan
c9cd79cb05
Fix merge mess with duplicated idle() methods
2018-06-23 15:49:56 +02:00
Dan
518d33ee7a
Merge branch 'develop' into asyncio
2018-06-23 15:46:41 +02:00
Dan
7f11f85c8f
Move signal handler inside idle
2018-06-23 15:45:48 +02:00
Dan
7ba2906532
Make request_callback_answer async
2018-06-23 14:31:21 +02:00
Dan
811e67c229
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/client/types/message.py
2018-06-23 14:30:27 +02:00
Dan
03a17dd8db
Rename reply_text() to reply()
...
Is shorter and looks nicer. When more methods like reply_audio(),
reply_photo(), etc. will be implemented, I can consider adding
reply_text() back again, maybe.
2018-06-23 14:24:31 +02:00
Dan
d95086163e
Add click() bound method to Message
2018-06-23 14:09:07 +02:00
Dan
2ee7cf5124
Add request_callback_answer method
2018-06-23 12:29:40 +02:00
Dan
6404862b87
Add reply_keyboard and inline_keyboard filters
2018-06-23 10:36:29 +02:00
Dan
8074ef1368
Make methods directory structure simple
2018-06-23 10:34:20 +02:00
Dan
5446801c14
Make run() run the event loop
2018-06-22 13:39:29 +02:00
Dan
2571bf0758
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/client/client.py
2018-06-22 13:37:56 +02:00
Dan
82a0c965ba
Don't make start and idle clickable
2018-06-22 13:12:31 +02:00
Dan
e3299bb3b7
Add run() method
2018-06-22 13:10:09 +02:00
Dan
ffd67ed408
Remove debug docstrings
2018-06-22 13:08:27 +02:00
Dan
dab0a05f16
Move idle() and signal_handler() definitions near stop()
2018-06-22 13:08:01 +02:00
Dan
6be8f1aae3
Cross reference Handler classes on decorators' docstrings
2018-06-22 12:46:58 +02:00
Dan
ac47ffad8f
Hint about decorators on handlers' docstrings
2018-06-22 12:46:35 +02:00
Dan
f5659841c2
Reformat files
2018-06-21 20:01:05 +02:00
Dan
532ad6bd81
Fix develop merge issues with asyncio branch
2018-06-21 18:02:16 +02:00
Dan
d2a15d8143
Merge branch 'develop' into asyncio
2018-06-21 15:35:27 +02:00
Dan
ff915965f1
Minor style fixes
2018-06-21 15:33:30 +02:00
Dan
f9c17ae169
Merge branch 'develop' into asyncio
...
# Conflicts:
# pyrogram/client/client.py
2018-06-20 12:24:30 +02:00
Dan
1c4047f2c6
Fix Update docstrings
2018-06-20 12:20:48 +02:00
Dan
afc0c87cd3
Fix DeletedMessagesHandler docstrings
2018-06-20 12:19:32 +02:00
Dan
c5fb0d6079
Use -100 prefix for channel ids
2018-06-20 12:15:55 +02:00
Dan
6fcf41d857
Client becomes async
2018-06-20 11:41:22 +02:00
Vitali
872f4f865a
Fix comments
2018-06-19 11:27:34 -03:00
Vitali
e6c6bd839c
Add Handler to deleted messages update
2018-06-19 11:18:12 -03:00
Dan
399a7b6403
Make Message bound methods async
2018-06-19 14:02:49 +02:00
Dan
e0fe9d3525
Fix some methods not being async
2018-06-19 13:48:49 +02:00
Dan
4d72f84991
Even more async chore
2018-06-18 21:30:13 +02:00
Dan
21af0f3e82
More async chore
2018-06-18 21:22:33 +02:00
Dan
26e828b956
Make BaseClient asynchronous and default DOWNLOAD_WORKERS to 4
2018-06-18 21:21:26 +02:00
Dan
09dd715556
Small tweaks
2018-06-18 21:12:04 +02:00
Dan
e3a667a8fe
Make Syncer asynchronous (lol)
2018-06-18 21:11:28 +02:00
Dan
8049c9129b
Make Auth asynchronous
2018-06-18 13:07:02 +02:00
Dan
9a5ce0fe2d
Clean up dispatcher and fix workers not being stopped correctly
2018-06-18 13:06:07 +02:00
Dan
1bc599e26c
Delegate timeout to TCP
2018-06-17 19:20:22 +02:00
Dan
b249062d25
Add a warning in case the connection failed
2018-06-17 19:17:56 +02:00
Dan
5d58ff2d94
Raise OSError in case "send" fails
2018-06-17 18:45:08 +02:00
Dan
52354b93d0
Add timeout when connecting
2018-06-17 18:44:45 +02:00
Dan
0a6583a43c
Turn the Dispatcher async
2018-06-17 18:41:07 +02:00
Dan
57f917e6df
Don't print out the current salt
2018-06-17 18:39:08 +02:00
Dan
f983baf5cd
Add some more logs
2018-06-17 18:34:37 +02:00
Dan
6da15b266d
Await tasks before stopping the session
2018-06-17 18:34:10 +02:00
Dan
2b0746a140
Add timeout on recv loop
2018-06-17 18:33:23 +02:00
Dan
39b66b51d6
Remove salt assertion
2018-06-16 22:05:54 +02:00
Dan
d1d789bf20
Fix restart not awaiting
2018-06-15 14:30:13 +02:00
Dan
d06e486c8b
Reorganize imports
2018-06-14 13:30:46 +02:00
Dan
eeaf01654b
Code style
2018-06-14 13:05:22 +02:00
Dan
b1f6131971
Remove unused constant
2018-06-14 13:04:52 +02:00
Dan
775cbb568f
Small fixes
2018-06-14 03:27:30 +02:00
Dan
68133e8be5
Better logs
2018-06-14 03:26:57 +02:00
Dan
463ef828c2
Use put_nowait instead of put
2018-06-14 03:25:15 +02:00
Dan
2cf930bea0
Remove commented MTProto methods
2018-06-14 03:24:39 +02:00
Dan
11ddf5f99d
Reorganize Session to make use of the MTProto module
2018-06-14 03:22:52 +02:00
Dan
75121c9c57
Move MTProto related methods into a separate module
2018-06-14 03:18:38 +02:00
Dan
0b03612bc7
Make restart async
2018-06-13 21:01:28 +02:00
Dan
b4d69d0b21
Merge remote-tracking branch 'origin/develop' into develop
2018-06-13 20:54:04 +02:00
Dan
329bac6ab0
Better invite link regex pattern
2018-06-13 20:53:31 +02:00
Dan
a9ccbaca19
Fix ping request not awaiting
2018-06-13 20:03:54 +02:00
Dan
f76c654548
Add TODO
2018-06-13 20:02:02 +02:00
Dan
e333e8dada
First step of Client conversion using asyncio
2018-06-13 20:00:19 +02:00
YoilyL
2944181b38
fixed session mistake
...
use new session when uploading files instead of main session
2018-06-13 17:54:48 +03:00
Dan
d38d23f46d
Log in case connection fails (to test ipv6)
2018-06-13 13:39:06 +02:00
Dan
ade1c2f377
Accommodate ipv6 in the Client class
2018-06-13 13:38:14 +02:00
Dan
b804709c6c
Allow session to use ipv6
2018-06-13 13:37:35 +02:00
Dan
c9469ed542
Allow auth to use ipv6
2018-06-13 13:37:12 +02:00
Dan
56748ff390
Make the underlying TCP protocol accept ipv6 addresses
2018-06-13 13:36:26 +02:00
Dan
efe26bcb19
Allow Connection to connect to ipv6 addresses
2018-06-13 13:35:41 +02:00
Dan
8ac48c555c
Add ipv6 data center addresses
2018-06-13 13:34:56 +02:00
Dan
e2546e77ae
Start rewriting Session using asyncio
2018-06-12 15:56:33 +02:00
Dan
d64337bf90
Implement Intermediate protocol using asyncio
2018-06-11 12:25:30 +02:00
Dan
ead0b4f029
Use more relevant names for Connection fields
2018-06-10 16:15:19 +02:00
Dan
6ab60c0d36
Add type hint
2018-06-10 16:14:42 +02:00
Dan
dc322ddf1a
Expose TCP class
2018-06-10 16:14:30 +02:00
Dan
7a6d7d0037
Implement async TCP protocol
2018-06-09 19:36:23 +02:00
Dan
de39c181ef
Start refactoring Connection to accommodate asyncio
2018-06-08 13:10:07 +02:00
Dan
8e2aec4d3a
Show TOS on sign-ins
2018-06-07 12:54:23 +02:00
Dan
244b4f15ce
Remove duplicate parameter
2018-06-07 10:54:45 +02:00
Dan
682a3ae948
Dispatch inline bot callback queries
2018-06-06 12:29:21 +02:00
Dan
6238f984b4
Add dedicated parse function for inline callback queries
2018-06-06 12:29:05 +02:00
Dan
e3bd7d57a2
Remove TODO
2018-06-06 12:28:36 +02:00
Dan
656e5036c1
Fix callback query id not being a string
2018-06-06 12:28:25 +02:00
Dan
901b151718
Fix wrong line separator
2018-06-05 17:15:17 +02:00
Dan
2a79243841
Rename and rework Setup docs page
2018-06-05 16:37:57 +02:00
Dan
95e16c2e6c
Rename and rework Installation docs page
2018-06-05 16:36:37 +02:00
Dan
6d7de359f0
Add a link to available methods in docs
2018-06-05 16:28:14 +02:00
Dan
0b2efd2b7a
Register the new chat administration methods
2018-06-04 12:21:48 +02:00
Dan
5bf912640f
Add promote_chat_member.py
2018-06-04 12:21:14 +02:00
Dan
f611a92f90
Add restrict_chat_member.py
2018-06-04 12:21:02 +02:00
Dan
ea282a74dd
Add unban_chat_member.py
2018-06-04 12:20:41 +02:00
Dan
0f9b4c6ac6
Add kick_chat_member.py
2018-06-04 12:07:42 +02:00
Dan
c88ca2e4f5
Add namespaces when printing Object types
2018-06-04 11:58:22 +02:00
Dan
62d4b2aeee
Allow defining case sensitive commands with Filters.command
2018-06-04 11:35:38 +02:00
Dan
2125415f8f
Allow empty and multi-character prefixes in Filters.command
2018-06-04 10:13:11 +02:00
Dan
36a1015ec9
Hide _client when printing pyrogram object
2018-06-04 09:11:58 +02:00
Dan
d67dfd39da
Update system messages TL scheme
2018-06-03 18:07:04 +02:00
Dan
745049bda3
Protect client by renaming the property to _client
2018-06-03 17:54:57 +02:00
Dan
7752aef338
Add delete convenience method to Message objects
2018-06-03 17:50:24 +02:00
Dan
e94520b7bc
Fix reply_text docstrings and add the Example section
2018-06-03 17:40:59 +02:00
Dan
131d792bad
Add forward convenience method to Message objects
2018-06-03 17:40:28 +02:00
Dan
29dcdbdc92
Add reply_text convenience method to Message objects
2018-06-03 17:14:15 +02:00
Dan
91cf103783
Remove a bunch of useless TODOs
2018-06-02 20:54:23 +02:00
Dan
dc7fe93aeb
Clean up code
2018-06-02 20:52:16 +02:00
Dan
b4a2490da2
Use getpass instead of input
2018-06-01 19:27:05 +02:00
Dan
dacc0173f1
Document on_disconnect
2018-05-31 13:15:47 +02:00
Dan
118cd04a73
Document DisconnectHandler
2018-05-31 13:13:38 +02:00