diff --git a/docs/source/pyrogram/Client.rst b/docs/source/pyrogram/Client.rst index e704cc1e..e3ef2d69 100644 --- a/docs/source/pyrogram/Client.rst +++ b/docs/source/pyrogram/Client.rst @@ -126,6 +126,7 @@ Contacts add_contacts get_contacts + get_contacts_count delete_contacts Password diff --git a/pyrogram/client/methods/contacts/__init__.py b/pyrogram/client/methods/contacts/__init__.py index ab9ae6ef..a966d10a 100644 --- a/pyrogram/client/methods/contacts/__init__.py +++ b/pyrogram/client/methods/contacts/__init__.py @@ -19,11 +19,13 @@ from .add_contacts import AddContacts from .delete_contacts import DeleteContacts from .get_contacts import GetContacts +from .get_contacts_count import GetContactsCount class Contacts( GetContacts, DeleteContacts, - AddContacts + AddContacts, + GetContactsCount ): pass diff --git a/pyrogram/client/methods/contacts/get_contacts_count.py b/pyrogram/client/methods/contacts/get_contacts_count.py new file mode 100644 index 00000000..b41b27b8 --- /dev/null +++ b/pyrogram/client/methods/contacts/get_contacts_count.py @@ -0,0 +1,34 @@ +# Pyrogram - Telegram MTProto API Client Library for Python +# Copyright (C) 2017-2019 Dan Tès +# +# This file is part of Pyrogram. +# +# Pyrogram is free software: you can redistribute it and/or modify +# it under the terms of the GNU Lesser General Public License as published +# by the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# Pyrogram is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public License +# along with Pyrogram. If not, see . + +from pyrogram.api import functions +from ...ext import BaseClient + + +class GetContactsCount(BaseClient): + def get_contacts_count(self) -> int: + """Use this method to get the total count of contacts from your Telegram address book. + + Returns: + On success, an integer is returned. + + Raises: + :class:`RPCError ` in case of a Telegram RPC error. + """ + + return len(self.send(functions.contacts.GetContacts(hash=0)).contacts)