// Copyright 2019 github.com. All rights reserved. // Use of this source code is governed by github.com. package v1 import ( "fmt" "strings" "lift-monitor/util" ) func LiftFramAuthRequestHandle(sn string, liftNo byte, version byte, data []byte) (res []byte, err error) { deviceInfo, err := util.GetDeviceInfo(sn) if err != nil { fmt.Printf("get device info err:%v\n", err) if strings.Contains(err.Error(), "20001") { res := makeResponse(sn, liftNo, LiftFrameAuthResponse, version, []byte{0x01}) return res, nil } else { res := makeResponse(sn, liftNo, LiftFrameAuthResponse, version, []byte{0xfd}) return res, nil } } if deviceInfo.Key != strings.TrimSpace(string(data)) { res := makeResponse(sn, liftNo, LiftFrameAuthResponse, version, []byte{0x02}) return res, nil } authCache(sn, deviceInfo.ProjectId, deviceInfo.Name) return makeResponse(sn, liftNo, LiftFrameAuthResponse, version, []byte{0x00}), nil }