完善日志打印,添加demo演示设备

This commit is contained in:
fish 2019-03-19 15:47:42 +08:00
parent 8f2d2bac19
commit a219996e15
5 changed files with 54 additions and 12 deletions

View File

@ -90,6 +90,13 @@
}
},
"rs485devices": {
"deb03e28-ddcb-4e5d-aa31-d870a1f0f09b": {
"version": "yunhorn_ys_l_v1",
"num": "1",
"command": [
[8, 3, 0, 1, 0, 2, 149, 82]
]
},
"15394892-E8B0-4FF2-BC35-1BF380BD1B68": {
"version": "yunhorn_xsy_c_v1",
"num": "1",

Binary file not shown.

View File

@ -6,6 +6,8 @@ import (
_ "github.com/mattn/go-sqlite3"
"os"
"time"
"strconv"
"log"
)
type Traffic struct {
@ -60,6 +62,8 @@ type Serialconf struct {
var conf Conf
var DEVICEDATAS Devicedatas
var demoDevice Device
var db, _ = sql.Open("sqlite3", "./db/gateway.db")
@ -74,6 +78,7 @@ func init() {
DEVICEDATAS.Lock()
DEVICEDATAS.DATA = make(map[string]Device)
//初始化设备目前conf.DEVICES_LIST 指的是lora
for _, i := range conf.DEVICES_LIST {
device.DATA = make(map[string]interface{})
device.ID = i[0]
@ -81,7 +86,20 @@ func init() {
DEVICEDATAS.DATA[i[2]+"_"+i[3]] = device
}
DEVICEDATAS.Unlock()
demoDevice.ID="deb03e28-ddcb-4e5d-aa31-d870a1f0f09b"
demoDevice.VERSION="yunhorn_kgl_c8_v1"
demoDevice.DATA = make(map[string]interface{})
for a:=0;a<8;a++ {
demoDevice.DATA["data"+strconv.Itoa(a+1)]=0
}
demoDevice.ONLINE=true
log.Println("init demoDevice success:",demoDevice)
dbdata_init()
}
var good, bad float64
@ -122,6 +140,7 @@ func savedata_cron() {
}
// 每天0点插入一条数据
//TODO 刚好有人流量数据
func insertdata() {
T := time.Now().Format("2006-01-02")
stmt, _ := db.Prepare(`INSERT INTO traffic (traffic, create_time) values (?, ?)`)

View File

@ -205,6 +205,7 @@ func seat_api(c *gin.Context) {
for _, i := range conf.GATEWAY_INFO.CONFIG {
arr := get_seat_device_data(i.ID)
version, num := arr[0], arr[1]
log.Println("conf.data:",i.DATA)
for k, j := range i.DATA {
if DEVICEDATAS.DATA[version+"_"+num].DATA != nil {
if DEVICEDATAS.DATA[version+"_"+num].DATA["data"+strconv.Itoa(k+1)] != nil {
@ -234,8 +235,12 @@ func seat_api(c *gin.Context) {
func get_seat_device_data(id string) []string {
var data = make([]string, 2)
for _, i := range conf.DEVICES_LIST {
//[4E5D52DD-EB81-43C0-A2B6-04E432412EBA loraport yunhorn_kgl_l_v1 1]
log.Println("&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&")
log.Println(i)
if id == i[0] {
data[0], data[1] = i[2], i[3]
log.Println(data)
break
} else {
data[0], data[1] = "null", "null"

View File

@ -13,6 +13,7 @@ type Devicedatas struct {
DATA map[string]Device
}
type Device struct {
sync.RWMutex
ID string `json:"id"`
@ -22,20 +23,30 @@ type Device struct {
}
func yunhorn_ys_l_v1(data_buf []byte){
// for _, i := range conf.RS485DEVICES {
// log.Println("################################",i)
// }
//log.Println(data_buf)
log.Println(data_buf[3:4])
// for i, k := range b_buf {
// log.Println(binary.BigEndian.Uint16(append([]byte{0x00}, k))
// }
data_int := Bytes2Bits(data_buf[3:4])
log.Println("data_int:",data_int[0])
var device Device
device.ID="deb03e28-ddcb-4e5d-aa31-d870a1f0f09b"
device.VERSION="yunhorn_ys_l_v1"
device.ONLINE=true
device.DATA=make(map[string]interface{})
device.DATA["data"]=data_int[0]
device.ID=demoDevice.ID
device.VERSION=demoDevice.VERSION
device.ONLINE=demoDevice.ONLINE
demoDevice.DATA["data"+strconv.Itoa(7)]=data_int[0]
device.DATA=demoDevice.DATA
if conf.DEBUG {
log.Println(device)
}
// send_data(1005, device)
send_data(1005, device)
}