github.com/qiniu/go-sdk/v7@v7.27.0/linking/deviceHistoryActivity.go (about) 1 package linking 2 3 import ( 4 "context" 5 "encoding/base64" 6 "net/url" 7 ) 8 9 // ----------------------------------------------------------------------------- 10 // 历史记录 11 type DeviceHistoryItem struct { 12 LoginAt int64 `json:"loginAt"` 13 LogoutAt int64 `json:"logoutAt"` 14 RemoteIp string `json:"remoteIp,omitempty"` 15 LogoutReason string `json:"logoutReason,omitempty"` 16 } 17 18 // 查询指定时间段内设备的在线记录 19 func (manager *Manager) ListDeviceHistoryactivity(appid, dev string, start, end int, marker string, limit int) ([]DeviceHistoryItem, string, error) { 20 ret := struct { 21 Items []DeviceHistoryItem `json:"items"` 22 Marker string `json:"marker"` 23 }{} 24 dev = base64.URLEncoding.EncodeToString([]byte(dev)) 25 query := url.Values{} 26 if limit > 0 { 27 setQuery(query, "limit", limit) 28 } 29 if marker != "" { 30 setQuery(query, "marker", marker) 31 } 32 setQuery(query, "start", start) 33 setQuery(query, "end", end) 34 err := manager.client.Call(context.Background(), &ret, "GET", manager.url("/apps/%s/devices/%s/historyactivity?%v", appid, dev, query.Encode()), nil) 35 if err != nil { 36 return nil, "", err 37 } 38 return ret.Items, ret.Marker, nil 39 }