package bhomedbapi
|
|
import (
|
"basic.com/pubsub/protomsg.git"
|
jsoniter "github.com/json-iterator/go"
|
)
|
|
type ChanManageApi struct {
|
}
|
|
//保存轮询配置
|
func (api ChanManageApi) SavePollPeriod(period int) (bool, interface{}) {
|
url := DATA_URL_PREFIX + "/pollConfig/savePollPeriod"
|
netNode := getNetNode(url2Topic(Topic_Chanmanage_Service, url))
|
client := NewClient(WithNodes(netNode))
|
paramBody := make(map[string]interface{}, 0)
|
paramBody["period"] = period
|
body, err := client.DoPostRequest(url, CONTENT_TYPE_FORM, paramBody, nil, nil)
|
if err != nil {
|
return false, nil
|
}
|
|
var res Result
|
var json = jsoniter.ConfigCompatibleWithStandardLibrary
|
if err = json.Unmarshal(body, &res); err != nil {
|
logPrint(err)
|
return false, nil
|
}
|
|
return res.Success, res.Data
|
}
|
|
func (api ChanManageApi) SavePollDelay(delay int) (bool, interface{}) {
|
url := DATA_URL_PREFIX + "/pollConfig/savePollDelay"
|
netNode := getNetNode(url2Topic(Topic_Chanmanage_Service, url))
|
client := NewClient(WithNodes(netNode))
|
paramBody := make(map[string]interface{}, 0)
|
paramBody["delay"] = delay
|
body, err := client.DoPostRequest(url, CONTENT_TYPE_FORM, paramBody, nil, nil)
|
if err != nil {
|
return false, nil
|
}
|
|
var res Result
|
var json = jsoniter.ConfigCompatibleWithStandardLibrary
|
if err = json.Unmarshal(body, &res); err != nil {
|
logPrint(err)
|
return false, nil
|
}
|
|
return res.Success, res.Data
|
}
|
|
//获取轮询配置
|
func (api ChanManageApi) GetPollConfig() (flag bool, config protomsg.PollConfig) {
|
url := DATA_URL_PREFIX + "/pollConfig/getPollConfig"
|
netNode := getNetNode(url2Topic(Topic_Chanmanage_Service, url))
|
client := NewClient(WithNodes(netNode))
|
|
body, err := client.DoGetRequest(url, nil, nil)
|
if err != nil {
|
return false, config
|
}
|
|
var res Result
|
var json = jsoniter.ConfigCompatibleWithStandardLibrary
|
if err = json.Unmarshal(body, &res); err != nil {
|
logPrint("unmarshal to Result err:", err)
|
return false, config
|
}
|
|
b, err := json.Marshal(res.Data)
|
if err != nil {
|
logPrint("marshal res.Data err:", err)
|
return false, config
|
} else {
|
err = json.Unmarshal(b, &config)
|
if err != nil {
|
logPrint("unmarshal config err:", err)
|
return false, config
|
} else {
|
return true, config
|
}
|
}
|
}
|
|
//切换轮询是否开启和关闭
|
func (api ChanManageApi) UpdatePollEnable(enable bool) bool {
|
url := DATA_URL_PREFIX + "/pollConfig/updateEnable"
|
netNode := getNetNode(url2Topic(Topic_Chanmanage_Service, url))
|
client := NewClient(WithNodes(netNode))
|
paramBody := make(map[string]interface{}, 0)
|
paramBody["enable"] = enable
|
body, err := client.DoPostRequest(url, CONTENT_TYPE_JSON, paramBody, nil, nil)
|
if err != nil {
|
return false
|
}
|
|
var res Result
|
var json = jsoniter.ConfigCompatibleWithStandardLibrary
|
if err = json.Unmarshal(body, &res); err != nil {
|
return false
|
}
|
|
return res.Success
|
}
|
|
func (api ChanManageApi) UpdateChannelCount(pollChannelCount int, videoChannelCount int) bool {
|
url := DATA_URL_PREFIX + "/pollConfig/updateChannelCount"
|
netNode := getNetNode(url2Topic(Topic_Chanmanage_Service, url))
|
client := NewClient(WithNodes(netNode))
|
paramBody := make(map[string]interface{}, 0)
|
paramBody["pollChannelCount"] = pollChannelCount
|
paramBody["videoChannelCount"] = videoChannelCount
|
body, err := client.DoPostRequest(url, CONTENT_TYPE_JSON, paramBody, nil, nil)
|
if err != nil {
|
return false
|
}
|
|
var res Result
|
var json = jsoniter.ConfigCompatibleWithStandardLibrary
|
if err = json.Unmarshal(body, &res); err != nil {
|
return false
|
}
|
|
return res.Success
|
}
|