|
/*
此脚本实现通过脚本启停设备,在rc19版本测试成功,其他版本未测
*/
var fmt= import("fmt")
var strings = import("strings")
var io = import("io/ioutil")
var http = import("net/http")
var time = import("time")
var regexp = import("regexp")
func ismlogin () {
url = "http://127.0.0.1:8081/login"
//Username字段为登录的用户名,请确保有该权限,password字段需自行抓包获取
payload = strings.NewReader("{\"Username\":\"admin\",\"password\":\"ef775988943825d2871e1cfa75473ec0\",\"appid\":\"\"}")
req, _ = http.NewRequest("POST", url, payload)
req.Header.Add("content-type", "application/json")
res, _ = http.DefaultClient.Do(req)
body, _ = io.ReadAll(res.Body)
str = fmt.Sprintf("%c", body[139:406])
str1 = strings.Replace(str," ","", -1)
str2 = strings.Replace(str1,"]","", -1)
token = strings.Replace(str2,"[","", -1)
return token
}
func devenable (dev_uuid, status) {
token = ismlogin()
url = "http://127.0.0.1:8081/SetDeviceStartOrStop"
reader_1 = "{\r\n\"uuid\": \""
eader_2 = "\",\r\n\"editData\": {\r\n\"IsEnable\": "
reader_3 = ",\r\n\"deviceType\": 2\r\n}\r\n}"
reader_str = reader_1 + dev_uuid + reader_2 + status +reader_3
payload = strings.NewReader(reader_str)
req, _ = http.NewRequest("POST", url, payload)
req.Header.Add("Accept", " application/json, text/plain, */*")
req.Header.Add("Accept-Language", "zh-CN,zh;q=0.9")
req.Header.Add("Authorization", token)
req.Header.Add("content-type", "application/json")
res, _ = http.DefaultClient.Do(req)
}
//调用函数 参数1为需要启停的设备uuid,通过数据库查找获得 参数2为状态,1为启动设备,0为停止设备
devenable("44170d95-aa94-023a-92a1-395aafc23095","1")
|
|