Commit Graph

2595 Commits

Author SHA1 Message Date
Dan
1d55eaa1ba Fix inline keyboard buttons with empty values 2021-03-21 21:52:37 +01:00
Dan
a47e079fec Update Pyrogram to v1.2.0 2021-03-21 21:52:37 +01:00
Dan
b1dc0315a1 Update API schema to Layer 126 2021-03-21 21:52:37 +01:00
Dan
e01ac7a3d3 Revert changes to the invite link regex pattern
New invite link methods don't need this and this change was
breaking old code (get_chat, join_chat)
2021-03-20 13:16:55 +01:00
Dan
66b1229664 Fix broken hyperlinks 2021-03-20 10:40:38 +01:00
Dan
c971616808 Add add_contact, improve delete_contacts and import_contacts 2021-03-20 10:13:40 +01:00
Dan
2d785acdc7 Add Message.edit and Message.reply to docs 2021-03-19 20:42:48 +01:00
Dan
b8cd08adb0 Use Pyrogram's List when consuming generators
This will pretty print them when using non-async methods
2021-03-19 17:42:05 +01:00
Dan
54ad043a70 Add get_chat_invite_link method 2021-03-18 18:33:11 +01:00
Dan
a85ca8cc1a Fix type hint 2021-03-18 18:17:12 +01:00
Jonathan
73a1fee28a
Fix stackable plugin decorators with include/exclude directives (#643)
* combination of decorators with plugins has solved

* fixing last pr: allow stackable plugin decorators even in exclude and include as well.

* counting plugins has fixed

* fix indentation

* Update client.py

* Update client.py

Co-authored-by: Dan <14043624+delivrance@users.noreply.github.com>
2021-03-18 11:34:36 +01:00
Dan
c7914f6c57 Allow stackable plugin decorators for on_chat_member_updated 2021-03-17 20:10:09 +01:00
Jonathan
f0b1cc41f3
Allow decorators in plugins to be stacked (#642)
This allows registering the same callback function more than once by using different handlers.
2021-03-17 20:07:54 +01:00
Dan
c72bbcf9e1 Fix ChatMemberUpdated args being parsed when they don't exist 2021-03-17 18:12:34 +01:00
Dan
3fe43f8413 Update ChatInviteLink docs 2021-03-17 18:11:18 +01:00
Dan
2eb7ab2f6e Add support for user mentions inside inline query results 2021-03-17 17:26:51 +01:00
Dan
182768a5d3 Add support for LoginUrl buttons 2021-03-17 17:13:55 +01:00
Dan
a94c3bb465 Add support for invite link chat log events (edit, revoke, delete) 2021-03-17 16:04:34 +01:00
Dan
1c52d21d65 Minor document fixes 2021-03-17 15:42:54 +01:00
Dan
ddb2d84f96 Add support for can_manage_chat permission 2021-03-17 15:19:36 +01:00
Dan
dff3d993e1 Add support for updates about chat member status changes 2021-03-17 15:11:23 +01:00
Dan
86cc1837b6 Add support for the new bowling animation (dice) 2021-03-17 15:09:04 +01:00
Dan
89e590b968 Move the "unknown constructor found" logging logic 2021-03-17 15:03:18 +01:00
Dan
975ff219f2 Add support for voice chat service messages 2021-03-17 13:23:18 +01:00
Dan
783e89e0f0 Add filters for voice chat service messages 2021-03-17 13:22:19 +01:00
Dan
6678af08aa Add filters.dice to filter Dice messages 2021-03-17 13:18:16 +01:00
ColinShark
ee5f39374c
Add support for the improved Invite Links (#639)
* Add new invite link export methods

* Implement higher-level Invite type

* Update Docstrings and rename Invite

* Docstrings are now more consistent with other methods
* Invite is now InviteLink to be less arbitrary

* Add method to get exported links

* `get_exported_chat_invites`
* prepare `__init__` for the other InvitesV2 methods

* Update returned type

`str` -> `types.InviteLink`

* Add method to edit invite link

Since editing the link returns a slightly different type to exporting,
I have made a small "hack" in the InviteLink type.

* Move Invites V2 methods to their own namespace

* Add get_chat_invite_importers and InviteImporter

Method to fetch information on users that joined via a specific link and
the type to display the information

* Add methods to delete revoked links

* delete_exported_chat_invite to delete a single revoked link
* delete_revoked_exported_chat_invites to delete all revoked links of a
specified admin

* Renaming Invite(s) to InviteLink(s)

As per @delivrance's request
https://github.com/pyrogram/pyrogram/pull/630#issuecomment-791893890

Also sorted invites' __init__ alphabetically

* Add Method to get admins with exported invite link

Documentation needs an update and the respective type needs to be
created. I cannot test this, as I lack Creator permissions.

* Invite Links overhaul

* Rearrange code

Co-authored-by: Dan <14043624+delivrance@users.noreply.github.com>
2021-03-17 12:40:36 +01:00
Tuqay Abdullazade
42b1865743
Use a shorter if-expression (#621) 2021-03-17 12:37:56 +01:00
Dametto Luca
54b20875b9
Fix filters.create documentation (#623)
Wrong documentation for filters.create, callable funcitions requires 3 positional arguments (filter, client, update) and not two.
2021-03-14 12:44:13 +01:00
Harsh
f407facdc7
Fix for strikethrough unparsing in markdown (#627) 2021-03-14 12:43:12 +01:00
Mystery Boy
9cbbf79972
Add missing info in forward_from_chat (#632)
Added info regarding supergroup in forward_from_chat
2021-03-14 12:42:30 +01:00
Kunoi Sayami
de68f83c1f
Use fixed length mask instead of dynamic length (#635) 2021-03-14 12:41:26 +01:00
Dan
2db8256276 Update offset by the amount of messages retrieved 2021-03-14 12:30:57 +01:00
Dan
6daa501972 Add a friendly interface for getting chat event logs
Add get_chat_event_log method
Add ChatEvent and ChatEventFilter types
2021-03-06 10:22:19 +01:00
Dan
b5c39121c3 Small code and docs fixes 2021-03-06 10:22:16 +01:00
Dan
46ced1aa11 Fix sphinx warnings 2021-03-06 10:22:14 +01:00
Dan
2154872acb Add can_manage_voice_chats to admin permissions 2021-02-27 20:35:49 +01:00
Dan
83f4d12ad2 Allow Message.copy to remove reply markups 2021-02-27 20:12:36 +01:00
Ripe
a390eceba3
Fix Message.copy ReplyMarkup (#604) 2021-02-27 19:57:12 +01:00
Dan
1afc998061 Mention that linked_chat is available only when using get_chat
Closes #629
2021-02-27 19:08:44 +01:00
Dan
d7f2bd9030 Fix some index out of range errors
Closes #601
2021-02-27 19:02:52 +01:00
Legenda24
6a22e2e262
Add bound method get_media_group() (#593)
* Bound method - get_media_group()

* Update message.py

Co-authored-by: Dan <14043624+delivrance@users.noreply.github.com>
2021-02-27 18:53:18 +01:00
Dan
b47c5a93b1 Fix enum items showing ids instead of names 2021-02-12 12:36:32 +01:00
ColinShark
2ad21e9096
Fix Typo in input_media_audio() (#614)
* Fixes #612
2021-02-09 20:25:27 +01:00
Dan
fcf91661fc Fix User._parse_status type hints 2021-01-29 12:58:03 +01:00
Dan
57128c0ab7 Add Chat.is_fake and User.is_fake 2021-01-29 12:57:38 +01:00
Krishna-singhal
1bba5cad54
Fix small typo in copy_message()'s examples (#588) 2021-01-29 12:47:52 +01:00
ポキ
811324b907
Add missing docstrings for Chat.iter_members and .get_members (#600) 2021-01-29 12:46:43 +01:00
Dan
33d373adbe Update Pyrogram to v1.1.13 2021-01-18 07:31:06 +01:00
Dan
f9a129ab5f Fix wrong emphasize lines 2021-01-18 07:29:51 +01:00
Dan
b9adc5c294 Add missing bound method Chat.mark_unread 2021-01-18 07:29:33 +01:00
Harsh
967f25796c
Fix strikethrough message entity unparsing (#598) 2021-01-17 12:16:06 +01:00
Dan
2b3e5f2b0a Update Pyrogram to v1.1.12 2021-01-14 21:51:10 +01:00
ポキ
54b92c0892
Fix issues with global_search(): add the filter parameter (#589)
* this commit will fix issues with global_search()

I was recently getting this error on app.global_search() method:
```
  File "/home/poki/.local/lib/python3.8/site-packages/pyrogram/methods/messages/search_global.py", line 71, in search_global
    raw.functions.messages.SearchGlobal(
TypeError: __init__() missing 3 required keyword-only arguments: 'filter', 'min_date', and 'max_date'
```

Suprisingly no one has opened an issue for this except me.

Here is the context: https://t.me/pyrogramchat/281087

I personally use this method to fetch my global searches into my userbot with is an actual bot. little hacky >_o

* Added filter= parameter

- An Optional Parameter for global search

* Update search_global.py

Co-authored-by: Dan <14043624+delivrance@users.noreply.github.com>
2021-01-14 21:49:51 +01:00
Dan
27614c0c19 Update Pyrogram to v1.1.11 2021-01-12 22:26:59 +01:00
Dan
4b3fc729ad Fix small typo: Message.unpin was pinning 2021-01-12 22:26:24 +01:00
Dan
63cc36d759 Update Pyrogram to v1.1.10 2021-01-10 16:46:47 +01:00
Dan
2ad1d9cbc8 Fix wrong excepted error
Closes #582
2021-01-10 16:46:16 +01:00
Krishna-singhal
79583a29fc
Remove obsolete example from docs (#576) 2021-01-10 16:00:38 +01:00
Ripe
38d60f5e10
Fix DC sessions for inline message edits (#585) 2021-01-10 15:59:27 +01:00
ポキ
99829eff9c
Update copyright year in forgotten places (#583) 2021-01-10 15:56:42 +01:00
Pari030
c25871c452
Mention that members_count is obtained from get_chat only (#581) 2021-01-08 10:00:45 +01:00
Dan
ff5cabb3c8 Update Pyrogram to v1.1.9 2021-01-08 09:02:57 +01:00
Dan
51f771457c Fix captions not being preserved when editing media 2021-01-08 09:02:29 +01:00
Dan
59ca3bcd35 Update Pyrogram to v1.1.8 2021-01-02 18:46:18 +01:00
Dan
a48d27f501 Always run crypto-related functions in the dedicated thread 2021-01-02 18:45:43 +01:00
Dan
7dda167c09 Update copyright notice
Year 2021
2021-01-01 22:58:48 +01:00
Dan
820fe2cbcd Fix thumbnail downloads 2021-01-01 22:21:06 +01:00
Dan
38efceefb1 Update Pyrogram to v1.1.7 2020-12-27 21:08:47 +01:00
Dan
a8a9a1ac1f Also print the exception type when logging query issues
Use "repr(e)" instead of "e" alone (i.e "str(e)") because sometimes
builtin exceptions have no message (for example: OSError, TimeoutError)
2020-12-27 21:08:01 +01:00
Dan
91ec6ebf1b Merge branch 'develop' of https://github.com/pyrogram/pyrogram
 Conflicts:
	pyrogram/methods/chats/__init__.py
	pyrogram/methods/chats/mark_chat_unread.py
2020-12-26 22:07:12 +01:00
Dan
c2c857b61b Fix wrong usages of italic delimiters 2020-12-26 13:08:40 +01:00
Dan
a3464e0bf1 Update Pyrogram to v1.1.6 2020-12-25 15:23:09 +01:00
Dan
449b065fe9 Fix get_profile_photos returning a list of None 2020-12-25 15:22:37 +01:00
Dan
d4c07304d0 Allow copying bots' messages reply markups
Even though this often requires a user account to fetch other bots' messages
2020-12-25 12:42:27 +01:00
Dan
4698f716ad Update Pyrogram to v1.1.5 2020-12-25 00:06:09 +01:00
Dan
f764d245f5 Fix bad mime_type default value in case it doesn't exist 2020-12-25 00:05:49 +01:00
Dan
34f62b9c67 Update Pyrogram to v1.1.4 2020-12-24 19:46:52 +01:00
Dan
0d357fb5a9 Improve HTML parser
Closes #567
2020-12-24 19:35:41 +01:00
Kunoi Sayami
01a3aab482
Fix typing hint missing in forward_messages function (#569) 2020-12-24 19:18:46 +01:00
Dan
6e29283d04 Update Pyrogram to v1.1.3 2020-12-23 19:04:54 +01:00
Dan
ed79f73bd7 Rework and simplify message parsing 2020-12-23 19:04:28 +01:00
Dan
730243f451 Update Pyrogram to v1.1.2 2020-12-23 17:20:31 +01:00
Dan
4b77bbd468 Fix get_dialogs breaking in case of empty messages 2020-12-23 17:20:06 +01:00
Dan
19878ae633 Specify that dates are in unix time 2020-12-23 16:26:02 +01:00
Dan
d47a0133f1 Update Pyrogram to v1.1.1 2020-12-23 16:19:52 +01:00
Dan
865f4274c3 Fix messages not having a reply-to-message when they actually do 2020-12-23 16:18:27 +01:00
Dan
b683580b1b Update Pyrogram to v1.1.0 2020-12-23 13:56:06 +01:00
Dan
d82ecf048a Remove non-python files 2020-12-20 18:29:01 +01:00
Dan
18b3ca1892 Simplify mime types guessing and remove unused code 2020-12-20 17:58:35 +01:00
Dan
29fa3ec520 Remove unneeded util functions and improve docs 2020-12-20 17:57:41 +01:00
Alisson Lauffer
1dc4df8cb1
Improve typing hints (#537)
* Change type1 or type2 to Union[type1, type2]

* Address @KunoiSayami suggestions

* Change Union[type1, None] to Optional[type1]

* Update PR with latest commit changes

* Address Dan suggestions
2020-12-20 17:05:17 +01:00
Legenda24
e1dac6c0e2
Add new method get_media_group (#550)
* Update __init__.py

Support for GetMediaGroup

* Create get_media_group.py

Added new method - get_media_group

* Update get_media_group.py

Add pyro stuff

* Update get_media_group.py

* Update compiler.py

Co-authored-by: Dan <14043624+delivrance@users.noreply.github.com>
2020-12-20 17:02:54 +01:00
Shrimadhav U K
db3b262b8c
Typo on_chosen_inline_query -> on_chosen_inline_result (#559) 2020-12-12 16:57:51 +01:00
ColinShark
04cf4e68e3
Add mark_chat_unread() method (#322)
* Add mark_chat_unread() method

* Add bound method for mark_chat_unread

* Update mark_chat_unread.py

* Update chat.py

Apply Dans suggested changes

* Update mark_chat_unread.py

* Update chat.py

* Update compiler.py

Co-authored-by: Dan <14043624+delivrance@users.noreply.github.com>
2020-12-12 16:56:26 +01:00
Dan
8b3e1ce9cc Make generating new salts independent of the system clock
Closes #553
2020-12-12 16:46:40 +01:00
Dan
7efd0d1d4e
Merge pull request #555 from JosXa/patch-1
Don't process MessageEmpty in get_dialogs
2020-12-11 19:15:58 +01:00
Dan
1835b62a40
Merge pull request #556 from drizzt/video-ttl_seconds
Add ttl_seconds support for send_video and reply_video
2020-12-11 18:34:49 +01:00
Dan
e7667d851e Add "speaking" chat action 2020-12-08 22:30:37 +01:00
Dan
9891eb77a1 Bump beta version 2020-12-08 22:26:43 +01:00
Dan
a30e49fe79 Ignore PhotoPathSize for now 2020-12-08 22:25:42 +01:00
Dan
844e53a70e Move crypto calls to threads in case of big enough chunks 2020-12-07 19:16:46 +01:00
Dan
521e403f92 Fix peer ids decoding from file ids 2020-12-07 19:15:46 +01:00
Dan
3c8f41b1d2 Add more verbose error in case of network issues 2020-12-07 19:11:26 +01:00
Dan
d2023c39ae Fix copied messages reporting "None" in case of empty captions 2020-12-07 17:22:10 +01:00
Dan
76b9f97681 Fix little typo 2020-12-05 17:00:00 +01:00
Dan
2f3bcd7ee5 Add Message.copy bound method 2020-12-05 01:54:07 +01:00
Dan
c606f836d4 Remove as_copy from forward_messages (superseded by copy_message) 2020-12-05 01:37:11 +01:00
Dan
7325daf870 Add new method: copy_message 2020-12-05 01:35:24 +01:00
Dan
6f878949e1 Add missing caption_entities parameter to send_cached_media 2020-12-05 01:34:14 +01:00
Timothy Redaelli
babbe00e5e Add ttl_seconds support for send_video and reply_video 2020-12-03 13:00:18 +01:00
Joscha Götzer
ff0fa9cbc3
Update get_dialogs.py 2020-12-03 02:51:03 +01:00
Joscha Götzer
b8934ae17c
Don't process MessageEmpty in get_dialogs
Prevent
```
  File "C:\Users\INT002327\AppData\Local\pypoetry\Cache\virtualenvs\josxabot-c3BmTbt9-py3.8\lib\site-packages\pyrogram\methods\chats\get_dialogs.py", line 92, in get_dialogs
    to_id = message.to_id
            └ pyrogram.raw.types.MessageEmpty(id=2767691)

AttributeError: 'MessageEmpty' object has no attribute 'to_id'
```
2020-12-01 21:55:33 +01:00
Dan
601483f210 Fix leftover bytes not being represented in hex 2020-11-30 12:46:44 +01:00
Dan
68158d1053 Add nicer error in case of unknown constructors 2020-11-30 12:41:06 +01:00
Dan
c87177e7a6 Do not parse PhotoStrippedSize 2020-11-30 12:40:26 +01:00
Dan
384f4eba71 Add support for manual text entities. 2020-11-29 15:48:29 +01:00
Dan
72db61a416 Fix wrong docs references on pyrogram.filters 2020-11-28 17:38:08 +01:00
Dan
4f197855f4 Fix messed up variable names 2020-11-28 17:37:39 +01:00
Dan
90cee1ea89 Add schedule_date parameter to send_media_group() 2020-11-28 15:58:51 +01:00
Dan
a6f8827433 Fix some missing raw API references in docs 2020-11-28 15:52:47 +01:00
Dan
9f77fed181 Add a clearer error in case of bad file ids 2020-11-28 14:58:24 +01:00
Dan
a4566de2ef Add support for the new Bot API fields: file_id, file_unique_id
Remove file_ref from Pyrogram's API
2020-11-27 22:09:17 +01:00
Dan
e0c3578fbb Set default file_reference to b"" instead of None 2020-11-27 22:02:52 +01:00
Dan
b85096c4ce Fix thumbnail_file_type type (str -> FileType) 2020-11-27 21:14:37 +01:00
Dan
8fbe45ddba Docs improvements 2020-11-27 19:06:25 +01:00
Dan
786235f316 Fix version being taken from class fields instead of instance fields 2020-11-27 14:12:49 +01:00
Dan
fa820328c3 Filter None values out from stringified file ids 2020-11-27 14:01:13 +01:00
Dan
d215f4b515 Merge branch 'master' into tests 2020-11-20 01:55:31 +01:00
Dan
76985faa11 Evaluate debug raw data only when actually needed
#541
2020-11-20 01:53:19 +01:00
Dan
301a13edd2 Add file_id.py
A module to deal with Telegram file ids
2020-11-20 01:22:01 +01:00
Dan
e4405db50d Fix senders wrongly being in sender_chat instead of from_user 2020-11-10 18:54:52 +01:00
Dan
80f8010d50 Add support for pinned messages in search_messages 2020-11-10 18:43:47 +01:00
Dan
418ad164a0 Update Message.author_signature docs 2020-11-08 13:54:25 +01:00
Dan
f832df14b4 Add parameter is_anonymous to the method promote_chat_member 2020-11-08 13:52:15 +01:00
Dan
e71bb87a2d Add is_anonymous attribute to ChatMember 2020-11-08 13:49:44 +01:00
Dan
abffef5d94 Add support for anonymous messages
Add Message.sender_chat attribute
2020-11-08 13:43:49 +01:00
Dan
fa24439ee3 Add support for InputMediaDocument in media groups 2020-11-08 13:39:43 +01:00
Dan
ebf2d68386 Add new method unpin_all_chat_messages 2020-11-08 13:21:40 +01:00
Dan
c7e4e55607 Add "bio" attribute in Chat objects 2020-11-08 13:01:23 +01:00
Dan
6027ee867f Fix broken Chat parsing for user/bot chats 2020-11-06 10:56:48 +01:00
Dan
888e296813
Merge pull request #528 from pyrogram/fixes
Collection of fixes
2020-10-31 19:30:41 +01:00
Dan
c139d78b34 Fix wrong imports in examples 2020-10-31 19:29:39 +01:00
Shrimadhav U K
a2b8658153
Add missing parameters in Message.reply_poll (#507) 2020-10-31 17:26:10 +01:00
Dan
1863900299 Fix of a small mess up 2020-10-31 17:15:47 +01:00
Shrimadhav U K
740bcd145a
Update creator ChatMember with admin permissions (#523) 2020-10-31 17:14:32 +01:00
NoamDev
62999772c2
Fix wrong comparison with a non-raw type (#525)
chatex.send now returns raw.types.Chat instead of types.Chat
2020-10-31 17:08:29 +01:00
GodSaveTheDoge
028e6ed04a
Make objects pickable by removing the _client attribute (#526) 2020-10-31 17:06:29 +01:00
Dan
e39ebdec82
Merge pull request #527 from pyrogram/L120
Update API schema to Layer 120
2020-10-31 16:56:27 +01:00
Dan
fe16dc8043 Allow sending audio playlists 2020-10-31 16:47:55 +01:00