mirror of
https://gitee.com/XM-GO/PandaX.git
synced 2026-04-27 16:59:36 +08:00
iot init
This commit is contained in:
43
pkg/tdengine/tdengine_event.go
Normal file
43
pkg/tdengine/tdengine_event.go
Normal file
@@ -0,0 +1,43 @@
|
||||
package tdengine
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"github.com/kakuilan/kgo"
|
||||
"strings"
|
||||
)
|
||||
|
||||
type ConnectInfo struct {
|
||||
Ts string `json:"ts"`
|
||||
ClientID string `json:"clientId"`
|
||||
Type string `json:"type"` // 连接类型
|
||||
PeerHost string `json:"peerHost"`
|
||||
SocketPort string `json:"sockPort"`
|
||||
Protocol string `json:"protocol"`
|
||||
DeviceId string `json:"deviceId"`
|
||||
}
|
||||
|
||||
// CreateEventTable 创建设备连接事件表
|
||||
func (s *TdEngine) CreateEventTable() (err error) {
|
||||
sql := fmt.Sprintf(`CREATE TABLE IF NOT EXISTS %s.device_connect (ts TIMESTAMP,deviceId NCHAR(64),
|
||||
type NCHAR(64),clientId NCHAR(64),peerHost NCHAR(64),sockPort NCHAR(64),protocol NCHAR(64))`, s.dbName)
|
||||
_, err = s.db.Exec(sql)
|
||||
return
|
||||
}
|
||||
|
||||
func (s *TdEngine) InsertEvent(data map[string]any) (err error) {
|
||||
if len(data) == 0 {
|
||||
return
|
||||
}
|
||||
var (
|
||||
field = []string{}
|
||||
value = []string{}
|
||||
)
|
||||
for k, v := range data {
|
||||
field = append(field, k)
|
||||
value = append(value, "'"+kgo.KConv.ToStr(v)+"'")
|
||||
}
|
||||
|
||||
sql := "INSERT INTO ? (?) VALUES (?)"
|
||||
_, err = s.db.Exec(sql, "device_connect", strings.Join(field, ","), strings.Join(value, ","))
|
||||
return err
|
||||
}
|
||||
Reference in New Issue
Block a user