Commit Graph

936 Commits

Author SHA1 Message Date
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
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
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
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
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