重新整理物联网服务,分离业务逻辑。
This commit is contained in:
@@ -0,0 +1,79 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"sentinel/app/log"
|
||||
"sentinel/app/model"
|
||||
"sentinel/app/net"
|
||||
"sentinel/app/storage"
|
||||
)
|
||||
|
||||
func main() {
|
||||
banner := `
|
||||
==========================================================================
|
||||
_______ _______ _ __________________ _ _______ _
|
||||
( ____ \( ____ \( ( /|\__ __/\__ __/( ( /|( ____ \( \
|
||||
| (_____ | (__ | \ | | | | | | | \ | || (__ | |
|
||||
(_____ )| __) | (\ \) | | | | | | (\ \) || __) | |
|
||||
/\____) || (____/\| ) \ | | | ___) (___| ) \ || (____/\| (____/\
|
||||
\_______)(_______/|/ )_) )_( \_______/|/ )_)(_______/(_______/
|
||||
==========================================================================
|
||||
`
|
||||
deviceID := "6823316af0e540bea818ec1be25cc14a"
|
||||
log.Init() // 初始化日志目录
|
||||
log.Info("Device id: " + deviceID) // 第一次启动记录
|
||||
log.Info(banner)
|
||||
// 0. 从海康SDK获取图片以及信息
|
||||
record := loadData(deviceID)
|
||||
// 1. 上传图片到OSS
|
||||
uploadFile(record.LicensePlateImage, record.VehicleImage)
|
||||
// 2. 调用分析请求
|
||||
analytics(record)
|
||||
}
|
||||
|
||||
func loadData(deviceID string) model.Record {
|
||||
return model.Record{
|
||||
DeviceId: deviceID, //从环境变量取
|
||||
LicensePlate: "晋A-888888",
|
||||
LicensePlateImage: "licensePlateImage_test1.jpg",
|
||||
VehicleType: "大型货车",
|
||||
VehicleImage: "vehicleImage_test1.jpg",
|
||||
}
|
||||
}
|
||||
|
||||
func uploadFile(licensePlateImage string, vehicleImage string) {
|
||||
if err := storage.Init(); err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
// todo 需要压缩图片至1~3MB
|
||||
size, err := storage.UploadFile(
|
||||
context.Background(),
|
||||
"sentinel",
|
||||
"license_plate/"+licensePlateImage,
|
||||
"tmp/"+licensePlateImage,
|
||||
"image/jpeg",
|
||||
)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
log.Println(fmt.Sprintf("车牌照已上传完毕, 大小: = %d KB", size/1024))
|
||||
size, err = storage.UploadFile(
|
||||
context.Background(),
|
||||
"sentinel",
|
||||
"vehicle_image/"+vehicleImage,
|
||||
"tmp/"+vehicleImage,
|
||||
"image/jpeg",
|
||||
)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
log.Println(fmt.Sprintf("车身照已上传完毕, 大小: = %d KB", size/1024))
|
||||
}
|
||||
|
||||
func analytics(record model.Record) {
|
||||
err := api.Analytics(record)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user