package login import ( "fmt" "gitee.ltd/lxh/xybot/base" ) // GetQRCode // @description: 获取登录二维码 // @receiver s // @param deviceId // @param deviceName // @return resp // @return err func (s service) GetQRCode(deviceId, deviceName string) (resp GetQRCodeResponse, err error) { var result base.Response[GetQRCodeResponse] _, err = s.client.R(). SetResult(&result). SetBody(map[string]any{ "DeviceID": deviceId, "DeviceName": deviceName, }).Post("/GetQRCode") if err = result.CheckError(err); err != nil { return } resp = result.Data return } // AwakenLogin // @description: 唤醒登录 // @receiver s // @return resp // @return err func (s service) AwakenLogin() (resp AwakenLoginResponse, err error) { var result base.Response[AwakenLoginResponse] _, err = s.client.R().SetResult(&result).SetBody(map[string]any{"Wxid": s.wxId}).Post("/AwakenLogin") if err = result.CheckError(err); err != nil { return } resp = result.Data return } // CheckUuid // @description: 检查登录二维码 // @receiver s // @param uuid // @return resp // @return err func (s service) CheckUuid(uuid string) (resp CheckUuidResponse, err error) { var result base.Response[CheckUuidResponse] _, err = s.client.R(). SetResult(&result). SetBody(map[string]any{ "Uuid": uuid, }).Post("/CheckUuid") if err = result.CheckError(err); err != nil { return } resp = result.Data return } // AutoHeartbeatStart // @description: 启动自动心跳 // @receiver s // @return err func (s service) AutoHeartbeatStart() (err error) { var result base.Response[base.EmptyResponse] _, err = s.client.R().SetResult(&result).SetBody(map[string]any{"Wxid": s.wxId}).Post("/AutoHeartbeatStart") err = result.CheckError(err) return } // AutoHeartbeatStatus // @description: 获取自动心跳状态 // @receiver s // @return running // @return err func (s service) AutoHeartbeatStatus() (running bool, err error) { var result AutoHeartbeatStatusResponse _, err = s.client.R().SetResult(&result).SetBody(map[string]any{"Wxid": s.wxId}).Post("/AutoHeartbeatStatus") if err == nil { if !result.Success { err = fmt.Errorf("[%d] %s", result.Code, result.Message) return } running = result.Running } return } // AutoHeartbeatStop // @description: 停止自动心跳 // @receiver s // @return err func (s service) AutoHeartbeatStop() (err error) { var result base.Response[base.EmptyResponse] _, err = s.client.R().SetResult(&result).SetBody(map[string]any{"Wxid": s.wxId}).Post("/AutoHeartbeatStop") err = result.CheckError(err) return } // Heartbeat // @description: 手动发起心跳 // @receiver s // @return err func (s service) Heartbeat() (err error) { var result base.Response[base.EmptyResponse] _, err = s.client.R().SetResult(&result).SetBody(map[string]any{"Wxid": s.wxId}).Post("/Heartbeat") err = result.CheckError(err) return } // GetCachedInfo // @description: 获取登录缓存信息 // @receiver s // @return resp // @return err func (s service) GetCachedInfo() (resp GetCachedInfoResponse, err error) { var result base.Response[GetCachedInfoResponse] _, err = s.client.R().SetResult(&result).SetBody(map[string]any{"Wxid": s.wxId}).Post("/GetCachedInfo") if err = result.CheckError(err); err != nil { return } resp = result.Data return } // Logout // @description: 退出登录 // @receiver s // @return err func (s service) Logout() (err error) { var result base.Response[base.EmptyResponse] _, err = s.client.R().SetResult(&result).SetBody(map[string]any{"Wxid": s.wxId}).Post("/Logout") err = result.CheckError(err) return }