Include missing models in auto-generated API docs

This commit is contained in:
Mads Marquart
2019-07-03 17:18:54 +02:00
parent 8b47bf3e5d
commit 708869ea93
4 changed files with 75 additions and 26 deletions

View File

@@ -2,32 +2,79 @@
.. highlight:: python .. highlight:: python
.. _api: .. _api:
.. Note: we're using () to hide the __init__ method where relevant
Full API Full API
======== ========
If you are looking for information on a specific function, class, or method, this part of the documentation is for you. If you are looking for information on a specific function, class, or method, this part of the documentation is for you.
.. _api_client:
Client Client
------ ------
This is the main class of `fbchat`, which contains all the methods you use to interact with Facebook. .. autoclass:: Client
You can extend this class, and overwrite the events, to provide custom event handling (mainly used while listening)
.. autoclass:: Client(email, password, user_agent=None, max_tries=5, session_cookies=None, logging_level=logging.INFO) Threads
:members: -------
.. autoclass:: Thread()
.. _api_models: .. autoclass:: ThreadType(Enum)
:undoc-members:
Models .. autoclass:: Page()
------ .. autoclass:: User()
.. autoclass:: Group()
These models are used in various functions, both as inputs and return values.
A good tip is to write ``from fbchat.models import *`` at the start of your source, so you can use these models freely Messages
--------
.. automodule:: fbchat.models
:members: .. autoclass:: Message
.. autoclass:: Mention
.. autoclass:: EmojiSize(Enum)
:undoc-members:
.. autoclass:: MessageReaction(Enum)
:undoc-members:
Exceptions
----------
.. autoexception:: FBchatException()
.. autoexception:: FBchatFacebookError()
.. autoexception:: FBchatUserError()
Attachments
-----------
.. autoclass:: Attachment()
.. autoclass:: ShareAttachment()
.. autoclass:: Sticker()
.. autoclass:: LocationAttachment()
.. autoclass:: LiveLocationAttachment()
.. autoclass:: FileAttachment()
.. autoclass:: AudioAttachment()
.. autoclass:: ImageAttachment()
.. autoclass:: VideoAttachment()
.. autoclass:: ImageAttachment()
Miscellaneous
-------------
.. autoclass:: ThreadLocation(Enum)
:undoc-members:
.. autoclass:: ThreadColor(Enum)
:undoc-members:
.. autoclass:: ActiveStatus()
.. autoclass:: TypingStatus(Enum)
:undoc-members:
.. autoclass:: QuickReply
.. autoclass:: QuickReplyText
.. autoclass:: QuickReplyLocation
.. autoclass:: QuickReplyPhoneNumber
.. autoclass:: QuickReplyEmail
.. autoclass:: Poll
.. autoclass:: PollOption
.. autoclass:: Plan
.. autoclass:: GuestStatus(Enum)
:undoc-members: :undoc-members:

View File

@@ -155,6 +155,8 @@ epub_exclude_files = ["search.html"]
# -- Options for autodoc extension --------------------------------------- # -- Options for autodoc extension ---------------------------------------
autoclass_content = "both" autoclass_content = "both"
autodoc_member_order = "bysource"
autodoc_default_options = {"members": True}
# -- Options for intersphinx extension --------------------------------------- # -- Options for intersphinx extension ---------------------------------------

View File

@@ -31,7 +31,9 @@ ACONTEXT = {
class Client(object): class Client(object):
"""A client for the Facebook Chat (Messenger). """A client for the Facebook Chat (Messenger).
See https://fbchat.readthedocs.io for complete documentation of the API. This is the main class of `fbchat`, which contains all the methods you use to
interact with Facebook. You can extend this class, and overwrite the ``on`` methods,
to provide custom event handling (mainly useful while listening).
""" """
listening = False listening = False
@@ -64,7 +66,7 @@ class Client(object):
session_cookies=None, session_cookies=None,
logging_level=logging.INFO, logging_level=logging.INFO,
): ):
"""Initializes and logs in the client """Initialize and log in the client.
:param email: Facebook `email`, `id` or `phone number` :param email: Facebook `email`, `id` or `phone number`
:param password: Facebook account password :param password: Facebook account password

View File

@@ -99,13 +99,11 @@ class Message(object):
Returns a `Message` object, with the formatted string and relevant mentions. Returns a `Message` object, with the formatted string and relevant mentions.
``` >>> Message.formatMentions("Hey {!r}! My name is {}", ("1234", "Peter"), ("4321", "Michael"))
>>> Message.formatMentions("Hey {!r}! My name is {}", ("1234", "Peter"), ("4321", "Michael")) <Message (None): "Hey 'Peter'! My name is Michael", mentions=[<Mention 1234: offset=4 length=7>, <Mention 4321: offset=24 length=7>] emoji_size=None attachments=[]>
<Message (None): "Hey 'Peter'! My name is Michael", mentions=[<Mention 1234: offset=4 length=7>, <Mention 4321: offset=24 length=7>] emoji_size=None attachments=[]>
>>> Message.formatMentions("Hey {p}! My name is {}", ("1234", "Michael"), p=("4321", "Peter")) >>> Message.formatMentions("Hey {p}! My name is {}", ("1234", "Michael"), p=("4321", "Peter"))
<Message (None): 'Hey Peter! My name is Michael', mentions=[<Mention 4321: offset=4 length=5>, <Mention 1234: offset=22 length=7>] emoji_size=None attachments=[]> <Message (None): 'Hey Peter! My name is Michael', mentions=[<Mention 4321: offset=4 length=5>, <Mention 1234: offset=22 length=7>] emoji_size=None attachments=[]>
```
""" """
result = "" result = ""
mentions = list() mentions = list()