Commit Graph

428 Commits

Author SHA1 Message Date
Dan
c971616808 Add add_contact, improve delete_contacts and import_contacts 2021-03-20 10:13:40 +01:00
Dan
3445507a9a Update types.rst 2021-03-20 07:41:49 +01:00
Dan
2d785acdc7 Add Message.edit and Message.reply to docs 2021-03-19 20:42:48 +01:00
Dan
54ad043a70 Add get_chat_invite_link method 2021-03-18 18:33:11 +01:00
Dan
b6613fbd63 Update API schema to Layer 125 (patch) 2021-03-17 20:38:00 +01:00
Dan
182768a5d3 Add support for LoginUrl buttons 2021-03-17 17:13:55 +01:00
Dan
dff3d993e1 Add support for updates about chat member status changes 2021-03-17 15:11:23 +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
Dan
4f16c174a3 Add one more 5xx error 2021-03-14 12:39:17 +01:00
Dan
4afedd7ba6 Update errors list 2021-03-14 12:37:13 +01:00
Dan
31148c3a56 Update API schema to Layer 125 2021-03-14 12:25:17 +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
e390aea86e Enable docs for Message.get_media_group 2021-02-27 18:56:28 +01:00
Dan
5dabeeafbb Update API schema to Layer 124 2021-02-23 13:04:10 +01:00
Dan
9f5179863a Update API schema (Layer 123 patch) 2021-02-12 21:21:23 +01:00
Dan
c3819ddb56 Update API schema to Layer 123 2021-01-28 13:03:39 +01:00
Dan
3c992e8f86 Add missing Message.unpin docs 2021-01-12 22:25:19 +01:00
Dan
d28db96128 Add new errors 2021-01-03 20:56:47 +01:00
Dan
7dda167c09 Update copyright notice
Year 2021
2021-01-01 22:58:48 +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
3d971fb577 Allow passing False instead of None for optional flag-boolean parameters
Previously, passing anything that was not None would result in the boolean
flag being set to True, even when passing False. This will make it simpler
to deal with optional flag-boolean values in the raw API.
2020-12-25 12:16:20 +01:00
Dan
3ca90b84c7 Update API schema (Layer 122 patch, again) 2020-12-22 19:57:21 +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
Dan
503327c864 Update API schema (Layer 122 patch) 2020-12-14 17:33:05 +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
5cbe03e89e Update API schema to Layer 122 2020-12-08 22:25:11 +01:00
Dan
2f3bcd7ee5 Add Message.copy bound method 2020-12-05 01:54:07 +01:00
Dan
7325daf870 Add new method: copy_message 2020-12-05 01:35:24 +01:00
Dan
de0b215f8d Add a missing method to docs and move one to the correct space 2020-12-02 17:27:04 +01:00
Dan
8f71527bbd Update errors 2020-12-02 17:00:42 +01:00
Dan
a2d7da1f59
Fix Illegal quoting 2020-11-24 16:11:13 +01:00
Dan
bf7bd45f1c Fix compiled errors destination path 2020-11-20 02:04:24 +01:00
Dan
1b42fb7f77 Rename "error" package to "errors" 2020-11-13 17:59:41 +01:00
Dan
6a8741124d Sort errors, add sort.py script for future sorts 2020-11-13 17:58:10 +01:00
Dan
f3b96e889f Add extra errors 2020-11-13 17:49:27 +01:00
Dan
ebf2d68386 Add new method unpin_all_chat_messages 2020-11-08 13:21:40 +01:00
Dan
31f9772917 Update API schema to Layer 120 2020-10-30 19:50:29 +01:00
Dan
a18e0242fa Fix raw API not being properly imported when using repr/eval
Fixes #423
2020-08-30 11:17:20 +02:00
Dan
22d9077e2b Warn users in case they try to use base types as arguments 2020-08-29 15:12:45 +02:00
Dan
d385aae1d2 Types don't need to inherit from TLObject 2020-08-27 14:20:30 +02:00
Dan
bab9359df8 Use a better way to document properties 2020-08-26 09:07:54 +02:00
Dan
c5dd474f93 Document undocumented properties 2020-08-26 08:10:34 +02:00
Dan
303712f599 Update docs 2020-08-22 16:09:38 +02:00
Dan
538f1e3972 Deep rewrite: preparing for v1.0
- Pyrogram core is now fully asynchronous
- Ditched Python 3.5, welcome 3.6 as minimum version.
- Moved all types to pyrogram.types
- Turned the Filters class into a module (filters)
- Moved all filters to pyrogram.filters
- Moved all handlers to pyrogram.handlers
- Moved all emoji to pyrogram.emoji
- Renamed pyrogram.api to pyrogram.raw
- Clock is now synced with server's time
- Telegram schema updated to Layer 117
- Greatly improved the TL compiler (proper type-constructor hierarchy)
- Added "do not edit" warning in generated files
- Crypto parts are executed in a thread pool to avoid blocking the event loop
- idle() is now a separate function (it doesn't deal with Client instances)
- Async storage, async filters and async progress callback (optional, can be sync too)
- Added getpass back, for hidden password inputs
2020-08-22 08:05:05 +02:00
Dan
b745ce95ed Remove set_chat/profile_video 2020-07-27 15:03:23 +02:00
Dan
293e63008b Add set_chat_video method 2020-07-27 13:42:27 +02:00
Dan
66e7573730 Add new RPC errors 2020-07-27 13:42:05 +02:00
Dan
2034a785f4 Add set_profile_video method 2020-07-27 13:00:31 +02:00
Dan
e5fda6f9a0 Update API schema to Layer 116 2020-07-26 12:28:15 +02:00
Alisson Lauffer
531069b1e2
Some fixes and speed improvments (#439)
* Use raw string for re pattern

* Trim trailing whitespaces from docstrings and code

* Use isinstance() instead of type() for typechecking

* Remove unused imports
2020-07-12 06:43:30 +02:00
Dan
db7fc68efe
Update FILE_PART(S)_INVALID error message
Telegram now allows uploads up to 2000 MiB in size (4000 parts)
2020-07-06 16:01:37 +02:00
Dan
d65f773ed9 Update API schema to Layer 114 2020-06-05 10:03:10 +02:00
Dan
d5a18eb063 Add search_global method 2020-05-23 14:50:14 +02:00
Dan
fd4bd754cc Add missing update_profile to docs and Client 2020-05-02 21:16:52 +02:00
Dan
8fa1ca5d0b Add emoji related errors 2020-04-24 15:51:19 +02:00
Dan
a4fcc758a6 Update API schema to Layer 112 2020-04-24 15:47:15 +02:00
Dan
374dc6d143 Add search_messages method 2020-04-10 13:37:11 +02:00
Dan
6f638cd8bd Add INPUT_FILTER_INVALID error 2020-04-10 13:22:57 +02:00
Real Phoenix
207d451a01 Add more Chat bound methods (#383)
* Add more bound methods

Bound methods for get_chat_member, get_chat_members, iter_chat_members, add_chat_members

* Update compiler.py

Co-authored-by: Dan <14043624+delivrance@users.noreply.github.com>
2020-04-06 14:51:40 +02:00
Dan
fa157b59f1 Add support for ChosenInlineResult objects 2020-04-03 17:15:28 +02:00
Dan
0b93049822 Add content lists on relevant pages 2020-04-01 20:08:46 +02:00
Dan
746a6eb477 Add support for Dice objects
- add send_dice
- add Dice class
2020-03-30 14:38:57 +02:00
Dan
42d1f70481 Update API schema to Layer 111 2020-03-28 13:23:54 +01:00
Dan
1996fb1481 Update Copyright 2020-03-21 15:43:32 +01:00
Dan
07f1459e57 Add 4 more errors about polls and admin settings 2020-02-01 15:48:06 +01:00
Dan
d3e9816b24 Add a bunch of new errors about polls/quiz 2020-02-01 15:19:22 +01:00
Dan
0684a4ba93 Update API schema to Layer 109 2020-02-01 15:18:24 +01:00
Dan
42c9bafa0c Update copyright notice 2020-02-01 14:04:33 +01:00
Dan
e33b9ae39f Update API schema to Layer 108 2019-12-30 10:56:14 +01:00
Dan
d71d9686d7 Add set_slow_mode method 2019-10-27 11:02:38 +01:00
Dan
df3524e138 Add REPLY_MARKUP_TOO_LONG error 2019-10-27 10:12:33 +01:00
ColinShark
8b4dd1fa4a Add USER_ID_INVALID error message (#313) 2019-10-04 13:57:40 +02:00
Dan
7df4b58a51 Add two FILE_REFERENCE_* errors 2019-09-21 19:56:12 +02:00
Dan
80c7a6e988 Rename set_custom_title to set_administrator_title and clarify 2019-09-09 15:28:05 +02:00
Dan
cfd756bd24 Add log_out method 2019-09-08 11:58:34 +02:00
Dan
fdafe582d7 Add custom administrator titles related errors 2019-09-07 17:07:14 +02:00
Dan
7cac3521fe Add CHANNELS_TOO_MUCH error 2019-09-07 15:55:08 +02:00
Dan
5ce62bd79c Add new Restriction object and make User and Chat objects use it 2019-09-07 13:28:05 +02:00
Dan
8db3d90c52 Update API schema to Layer 105 2019-09-07 13:23:58 +02:00
Dan
fb771441ed Merge branch 'layer-104' into develop 2019-09-07 12:47:25 +02:00
Dan
95051d7fb1 Add get_nearby_chats method 2019-08-17 22:23:34 +02:00
Dan
af24411550 Add get_common_chats method to docs 2019-08-16 22:36:02 +02:00
Dan
7a2bddc301 Add MEMBER_OCCUPY_PRIMARY_LOC_FAILED error 2019-08-13 13:19:02 +02:00
Dan
6982c436a8 Add the new auth-related methods and types to docs 2019-08-13 13:18:01 +02:00
Dan
8aa9e046a9 Update API schema to Layer 104 2019-08-12 13:21:19 +02:00
Dan
5665f980ea Add AUTH_BYTES_INVALID error 2019-08-10 22:29:24 +02:00
Dan
f33a192162
Merge branch 'develop' into develop 2019-08-07 16:05:01 +02:00
ColinShark
437f26ebb1 Add BUTTON_URL_INVALID error 2019-08-07 16:02:26 +02:00
Dan
c8c93b9ce6 Update Main API and System Messages schemas 2019-08-03 19:36:15 +02:00
Dan
c6f346f83d [Bot API 4.4] Update chat permissions
- Move can_* permissions back to ChatMember objects
- Rename restrict_chat to set_chat_permissions
- Update restrict_chat_member to accept a single ChatPermissions arg.
- Update ChatPermissions to be the same as the one on the Bot API
2019-08-03 19:30:32 +02:00
Dan
091552e5d9 [Bot API 4.4] Update stickers
- Add is_animated field to Sticker
- Remove send_animated_sticker (use send_sticker instead)
- Default to 512x512 in case size is unknown (instead of 0x0)
2019-08-03 18:38:58 +02:00
Dan
d727754ad6 Remove Null primitive
It's unused
2019-08-01 18:41:04 +02:00
Dan
f0c1cb00ca Rework InlineQueryResultArticle. Also add *Photo and *Animation types 2019-07-21 23:18:38 +02:00
Dan
090675434e Add new RPCErrors 2019-07-21 23:09:02 +02:00
Dan
036a73997a Add new methods: add_chat_members, create_* and delete_* chats
- add_chat_members
- create_group
- create_channel
- create_supergroup
- delete_channel
- delete_supergroup
2019-07-21 23:08:30 +02:00
Dan
fed8cbf87e Add new set_parse_mode utility method 2019-07-11 19:28:33 +02:00
Dan
8b4c326365 Add missing bound methods to docs 2019-07-11 17:13:20 +02:00
Dan
997a3c1626 Remove UserStatus (user_status.py) 2019-07-11 00:12:27 +02:00
Dan
d119998212 Remove get_user_dc method, add dc_id attribute to User 2019-07-10 20:20:22 +02:00
Dan
674e1996ca Add STICKERSET_INVALID error 2019-07-09 20:06:19 +02:00
Dan
b352ef334e Fix Pyrogram's API template path 2019-07-09 19:10:11 +02:00
Dan
efcf7d5503 Move single methods, types and bound-methods to separated pages
The resulting pages were huge and were also taking a while to load
This will improve docs navigation
2019-07-09 19:03:46 +02:00
Dan
485877daa3 Update API schema to Layer 103 2019-07-05 12:06:25 +02:00
Dan
bdd554575a Fix export_chat_invite_link not working for bots on channels/supergroups
Telegram still hasn't enabled this for bots...
Closes
2019-07-04 21:00:22 +02:00
Dan
fa1b66f914 Make unknown errors with known error codes inherit from base categories 2019-06-27 11:59:44 +02:00
Dan
e7457de947 Add MSGID_DECREASE_RETRY 5xx-class error 2019-06-24 14:25:09 +02:00
Dan
4dbdfc85d7 Update API schema to Layer 102 2019-06-23 20:45:19 +02:00
Dan
745d29dfac Add (and update) a bunch of up/download related errors 2019-06-23 03:02:29 +02:00
Dan
91e377aacc Add ARTICLE_TITLE_EMPTY error 2019-06-23 01:30:38 +02:00
Dan
81e7c1b4eb Add START_PARAM_INVALID error 2019-06-20 14:15:53 +02:00
Dan
ad2d45bca1 Add BUTTON_DATA_INVALID error 2019-06-20 13:54:46 +02:00
Dan
aaaa119318 Hint about which DC exactly is having problems. 2019-06-12 12:41:55 +02:00
Dan
1ee8487712 Merge branch 'develop' into types-revamp
# Conflicts:
#	pyrogram/client/methods/users/get_profile_photos.py
2019-06-11 14:45:21 +02:00
Dan
0075534753 Add a bunch of new errors
- MEGAGROUP_PREHISTORY_HIDDEN
- CHAT_LINK_EXISTS
- LINK_NOT_MODIFIED
- BROADCAST_ID_INVALID
- MEGAGROUP_ID_INVALID
2019-06-08 19:13:27 +02:00
Dan
3ab624c706 Add FOLDER_ID_INVALID error 2019-06-08 18:54:33 +02:00
Dan
09c5b239be Add FOLDER_DEAC_AUTOFIX_ALL error. Weird new 500-class error 2019-06-08 15:21:32 +02:00
Dan
da515af959 Rearrange code 2019-06-06 19:29:44 +02:00
Dan
a35e2620f8 Fix export_chat_invite_link for basic groups in Layer 100 2019-06-04 23:36:10 +02:00
Dan
d5517f4d5f Rename Object to TLObject 2019-06-03 14:19:50 +02:00
Dan
341c41e7ef Add MESSAGE_EDIT_TIME_EXPIRED error 2019-06-01 13:10:06 +02:00
Dan
364d3ec145 Revert: Improve codegen scripts 2019-05-31 01:09:03 +02:00
Dan
06ad65e3a0 Improve codegen scripts 2019-05-31 00:19:18 +02:00
Dan
08d120be74 Add the LAYER attribute to each constructor 2019-05-29 13:11:48 +02:00
Dan
4eaa891836 Update API schema to Layer 100 2019-05-28 19:50:21 +02:00
Dan
41f010caad Add USER_DEACTIVATED_BAN error 2019-05-26 16:52:22 +02:00
Dan
7f78a1a504 Add MESSAGE_AUTHOR_REQUIRED error 2019-05-23 08:34:33 +02:00
Dan
79a8cefe5d Add USER_BANNED_IN_CHANNEL error 2019-05-21 14:25:13 +02:00
Dan
2032cec4d0 Remove superfluous information 2019-05-19 21:38:11 +02:00
Dan
82c3bb2dba Add three more internal server errors 2019-05-17 13:13:58 +02:00
Dan
fd69f45e98 Add CHAT_SEND_MEDIA_FORBIDDEN and INVITE_HASH_EXPIRED error 2019-05-16 21:29:09 +02:00
Dan
944b672fe5 Docs revamp. Part 4 2019-05-16 21:28:34 +02:00
Dan
eadda551c6 Docs revamp. Part 3 2019-05-12 19:26:55 +02:00
Dan
cb2af5d05a Use a better qualified name for both raw types and functions 2019-05-11 16:40:56 +02:00
Dan
1737ba5f49 Revamp docs about the main Pyrogram package 2019-05-09 04:28:46 +02:00
Dan
881f3e479a Bring the old, but working, channels.exportInvite method back
We keep this until the server decides to enable the new methods for bots
2019-04-30 11:23:31 +02:00
Dan
0c5f5738a5 Add ACCESS_TOKEN_INVALID error 2019-04-13 13:32:16 +02:00
Dan
b5c6db6db0 Refactor project and move errors namespace out from pyrogram.api 2019-03-25 11:23:45 +01:00
Dan
eb2799ed45 Update API schema to Layer 97 2019-03-24 18:32:02 +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
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
6bd9ddc95e Add __slots__ to Telegram TL types 2019-03-16 15:30:55 +01:00
Dan
6d03964418 Add CHAT_NOT_MODIFIED error 2019-03-13 14:04:35 +01:00
Dan
0aee909c1a Update API schema (Layer 95 patch) 2019-03-13 11:34:40 +01:00
Dan
a0e48572cb Merge branch 'develop' into layer-95 2019-03-13 10:05:31 +01:00
Dan
6d00e9cfd8 Add EXTERNAL_URL_INVALID error 2019-03-11 21:26:15 +01:00
Dan
2a9c34481f Add PHOTO_EXT_INVALID error 2019-03-03 17:55:53 +01:00
Dan
ffa0da5800 Merge branch 'develop' into layer-95
# Conflicts:
#	pyrogram/__init__.py
2019-03-01 18:38:27 +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