|
- from .core import Core
- from .config import VERSION, ASYNC_COMPONENTS
- from .log import set_logging
-
- if ASYNC_COMPONENTS:
- from .async_components import load_components
- else:
- from .components import load_components
-
-
- __version__ = VERSION
-
-
- instanceList = []
-
- def load_async_itchat() -> Core:
- """load async-based itchat instance
-
- Returns:
- Core: the abstract interface of itchat
- """
- from .async_components import load_components
- load_components(Core)
- return Core()
-
-
- def load_sync_itchat() -> Core:
- """load sync-based itchat instance
-
- Returns:
- Core: the abstract interface of itchat
- """
- from .components import load_components
- load_components(Core)
- return Core()
-
-
- if ASYNC_COMPONENTS:
- instance = load_async_itchat()
- else:
- instance = load_sync_itchat()
-
-
- instanceList = [instance]
-
- # I really want to use sys.modules[__name__] = originInstance
- # but it makes auto-fill a real mess, so forgive me for my following **
- # actually it toke me less than 30 seconds, god bless Uganda
-
- # components.login
- login = instance.login
- get_QRuuid = instance.get_QRuuid
- get_QR = instance.get_QR
- check_login = instance.check_login
- web_init = instance.web_init
- show_mobile_login = instance.show_mobile_login
- start_receiving = instance.start_receiving
- get_msg = instance.get_msg
- logout = instance.logout
- # components.contact
- update_chatroom = instance.update_chatroom
- update_friend = instance.update_friend
- get_contact = instance.get_contact
- get_friends = instance.get_friends
- get_chatrooms = instance.get_chatrooms
- get_mps = instance.get_mps
- set_alias = instance.set_alias
- set_pinned = instance.set_pinned
- accept_friend = instance.accept_friend
- get_head_img = instance.get_head_img
- create_chatroom = instance.create_chatroom
- set_chatroom_name = instance.set_chatroom_name
- delete_member_from_chatroom = instance.delete_member_from_chatroom
- add_member_into_chatroom = instance.add_member_into_chatroom
- # components.messages
- send_raw_msg = instance.send_raw_msg
- send_msg = instance.send_msg
- upload_file = instance.upload_file
- send_file = instance.send_file
- send_image = instance.send_image
- send_video = instance.send_video
- send = instance.send
- revoke = instance.revoke
- # components.hotreload
- dump_login_status = instance.dump_login_status
- load_login_status = instance.load_login_status
- # components.register
- auto_login = instance.auto_login
- configured_reply = instance.configured_reply
- msg_register = instance.msg_register
- run = instance.run
- # other functions
- search_friends = instance.search_friends
- search_chatrooms = instance.search_chatrooms
- search_mps = instance.search_mps
- set_logging = set_logging
|