mirror of
https://github.com/langbot-app/LangBot.git
synced 2025-11-25 19:37:36 +08:00
* feat: basic arch of event log * feat: complete event log framework * fix: bad struct in bot log api * feat: add event logging to all platform adapters Co-Authored-By: wangcham233@gmail.com <651122857@qq.com> * feat: add event logging to client classes Co-Authored-By: wangcham233@gmail.com <651122857@qq.com> * refactor: bot log getting api * perf: logger for aiocqhttp and gewechat * fix: add ignored logger in dingtalk * fix: seq id bug in log getting * feat: add logger in dingtalk,QQ official,Slack, wxoa * feat: add logger for wecom * feat: add logger for wecomcs * perf(event logger): image processing * 完成机器人日志的前端部分 (#1479) * feat: webui bot log framework done * feat: bot log complete * perf(bot-log): style * chore: fix incompleted i18n * feat: support message session copy * fix: filter and badge text * perf: styles * feat: add bot toggle switch in bot card * fix: linter errors --------- Co-authored-by: Junyan Qin <rockchinq@gmail.com> --------- Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> Co-authored-by: wangcham233@gmail.com <651122857@qq.com> Co-authored-by: HYana <65863826+KaedeSAMA@users.noreply.github.com>
99 lines
3.5 KiB
Python
99 lines
3.5 KiB
Python
|
|
from libs.wechatpad_api.api.login import LoginApi
|
|
from libs.wechatpad_api.api.friend import FriendApi
|
|
from libs.wechatpad_api.api.message import MessageApi
|
|
from libs.wechatpad_api.api.user import UserApi
|
|
from libs.wechatpad_api.api.downloadpai import DownloadApi
|
|
from libs.wechatpad_api.api.chatroom import ChatRoomApi
|
|
|
|
|
|
|
|
|
|
|
|
class WeChatPadClient:
|
|
def __init__(self, base_url, token, logger=None):
|
|
self._login_api = LoginApi(base_url, token)
|
|
self._friend_api = FriendApi(base_url, token)
|
|
self._message_api = MessageApi(base_url, token)
|
|
self._user_api = UserApi(base_url, token)
|
|
self._download_api = DownloadApi(base_url, token)
|
|
self._chatroom_api = ChatRoomApi(base_url, token)
|
|
self.logger = logger
|
|
|
|
def get_token(self,admin_key, day: int):
|
|
'''获取token'''
|
|
return self._login_api.get_token(admin_key, day)
|
|
|
|
def get_login_qr(self, Proxy:str=""):
|
|
"""登录二维码"""
|
|
return self._login_api.get_login_qr(Proxy=Proxy)
|
|
|
|
def awaken_login(self, Proxy:str=""):
|
|
'''唤醒登录'''
|
|
return self._login_api.wake_up_login(Proxy=Proxy)
|
|
|
|
def log_out(self):
|
|
"""退出登录"""
|
|
return self._login_api.logout()
|
|
|
|
def get_login_status(self):
|
|
"""获取登录状态"""
|
|
return self._login_api.get_login_status()
|
|
|
|
def send_text_message(self, to_wxid, message, ats: list=[]):
|
|
"""发送文本消息"""
|
|
return self._message_api.post_text(to_wxid, message, ats)
|
|
|
|
def send_image_message(self, to_wxid, img_url, ats: list=[]):
|
|
"""发送图片消息"""
|
|
return self._message_api.post_image(to_wxid, img_url, ats)
|
|
|
|
def send_voice_message(self, to_wxid, voice_data, voice_forma, voice_duration):
|
|
"""发送音频消息"""
|
|
return self._message_api.post_voice(to_wxid, voice_data, voice_forma, voice_duration)
|
|
|
|
def send_app_message(self, to_wxid, app_message, type):
|
|
"""发送app消息"""
|
|
return self._message_api.post_app_msg(to_wxid, app_message, type)
|
|
|
|
def send_emoji_message(self, to_wxid, emoji_md5, emoji_size):
|
|
"""发送emoji消息"""
|
|
return self._message_api.post_emoji(to_wxid,emoji_md5,emoji_size)
|
|
|
|
def revoke_msg(self, to_wxid, msg_id, new_msg_id, create_time):
|
|
"""撤回消息"""
|
|
return self._message_api.revoke_msg(to_wxid, msg_id, new_msg_id, create_time)
|
|
|
|
def get_profile(self):
|
|
"""获取用户信息"""
|
|
return self._user_api.get_profile()
|
|
|
|
def get_qr_code(self, recover:bool=True, style:int=8):
|
|
"""获取用户二维码"""
|
|
return self._user_api.get_qr_code(recover=recover, style=style)
|
|
|
|
def get_safety_info(self):
|
|
"""获取设备信息"""
|
|
return self._user_api.get_safety_info()
|
|
|
|
def update_head_img(self, head_img_base64):
|
|
"""上传用户头像"""
|
|
return self._user_api.update_head_img(head_img_base64)
|
|
|
|
def cdn_download(self, aeskey, file_type, file_url):
|
|
"""cdn下载"""
|
|
return self._download_api.send_download( aeskey, file_type, file_url)
|
|
|
|
def get_msg_voice(self,buf_id, length, msgid):
|
|
"""下载语音"""
|
|
return self._download_api.get_msg_voice(buf_id, length, msgid)
|
|
|
|
async def download_base64(self,url):
|
|
return await self._download_api.download_url_to_base64(download_url=url)
|
|
|
|
def get_chatroom_member_detail(self, chatroom_name):
|
|
"""查看群成员详情"""
|
|
return self._chatroom_api.get_chatroom_member_detail(chatroom_name)
|
|
|
|
|