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
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
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
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
e400641204
Fix Dispatcher bad behaviours in case of multiple Clients running at the same time.
2018-11-13 20:31:53 +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
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
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
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
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
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
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
Furoin
bc703ae6d7
added Filters.dan
2018-11-03 14:57:57 +03: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
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
99bdaae365
Allow nested folders for smart plugins
2018-10-23 15:43:49 +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
c8604e8e2c
Update on_user_status decorator
2018-10-16 12:58:11 +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
93018a7f6c
Add set_profile_photo method
2018-10-15 11:03: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
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
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
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
3a858e6a57
Fix config values not being available when not using config.ini file
2018-09-19 17:30:23 +02:00
Dan
9538ed85fe
Fix missing backtick
2018-09-19 13:20:36 +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
e7a85520f2
Merge remote-tracking branch 'origin/develop' into develop
...
# Conflicts:
# pyrogram/client/client.py
2018-09-17 15:59:49 +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
6a4bf23b09
Update send_audio docstrings
2018-09-12 08:14:49 +02:00
Dan
ea39062d2d
Add get_chat_members_count method
2018-09-08 19:16:51 +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
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
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
caecbef2f6
Add phone_number type of entity to docs
2018-08-24 16:03:52 +02:00
Dan
2617618cef
Add support for Document message edits
2018-08-23 21:21:27 +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