package core import "github.com/goWxHook/goWxHook/utils/json" type GetLoginUserInfoResponseData struct { Account string `json:"account"` Avatar string `json:"avatar"` Nickname string `json:"nickname"` Wxid string `json:"wxid"` Phone string `json:"phone"` Pid int `json:"pid"` UnreadMsgCount int `json:"unread_msg_count"` WxUserDir string `json:"wx_user_dir"` } type GetLoginUserInfoResponse struct { Data GetLoginUserInfoResponseData `json:"data"` Type int `json:"type"` } // GetLoginUserInfo 获取登录用户信息 func (w *WxApi) GetLoginUserInfo() (*GetLoginUserInfoResponseData, error) { resp, err := w.internalCall(MtDataOwnerMsg, 10, MtDataOwnerMsg, nil, map[string]interface{}{}) if err != nil { return nil, err } var rdata GetLoginUserInfoResponse debugOutput(resp) err = json.Unmarshal([]byte(resp), &rdata) if err != nil { return nil, WxError{-1, err.Error()} } return &rdata.Data, nil } type RefreshLoginQrcodeResponse struct { Data RefreshLoginQrCodeResponseData `json:"data"` Type int `json:"type"` } type RefreshLoginQrCodeResponseData struct { File string `json:"file"` Qrcode string `json:"qrcode"` Pid int `json:"pid"` } // RefreshLoginQrCode 刷新登录二维码 func (w *WxApi) RefreshLoginQrCode() (*RefreshLoginQrCodeResponseData, error) { resp, err := w.internalCall(MtRefreshLoginQrcode, 10, MtRefreshLoginQrcode, map[string]interface{}{}, nil) if err != nil { return nil, err } var rdata RefreshLoginQrcodeResponse debugOutput(resp) err = json.Unmarshal([]byte(resp), &rdata) if err != nil { return nil, WxError{-1, err.Error()} } return &rdata.Data, nil } // WxUserLogout 注销登录 func (w *WxApi) WxUserLogout() error { _, err := w.internalCall(0, 10, MtLogoutMsg, nil, map[string]interface{}{}) return err } // WxExit 退出微信 func (w *WxApi) WxExit() error { _, err := w.internalCall(0, 10, MtExitMsg, nil, map[string]interface{}{}) return err }