Add SPI data handling and serialization support
Introduced `SpiParameters` and related structs to process SPI data. Added JSON marshaling/unmarshaling logic and a handler for the "SPI" command in the server. This enables parsing and transforming SPI data effectively for device communication.
This commit is contained in:
@ -112,6 +112,18 @@ func handleCameraCoveredAlarm(sPack *n9m.SmartPackage, pack n9m.Package, respons
|
||||
return nil
|
||||
}
|
||||
|
||||
func handleSPI(_ *n9m.SmartPackage, pack n9m.Package) (err error) {
|
||||
var params n9m.SpiParameters
|
||||
|
||||
if err = pack.GetParametersAs(¶ms); err != nil {
|
||||
return
|
||||
}
|
||||
|
||||
fmt.Printf("%+v\n", params)
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
func createSmartPackage(conn net.Conn) (pack *n9m.SmartPackage) {
|
||||
pack = n9m.NewSmartPackage(conn)
|
||||
|
||||
@ -120,6 +132,7 @@ func createSmartPackage(conn net.Conn) (pack *n9m.SmartPackage) {
|
||||
pack.AddJSONHandler("CERTIFICATE", "CONNECT", handleCertificateConnect)
|
||||
pack.AddJSONHandler("CERTIFICATE", "KEEPALIVE", handleKeepAlive)
|
||||
pack.AddJSONHandler("CONFIGMODEL", "GET", handleGetConfig)
|
||||
pack.AddJSONHandler("DEVEMM", "SPI", handleSPI)
|
||||
|
||||
pack.AddAlarmHandler(n9m.AlarmTypeMotionDetection, handleUselessAlarms)
|
||||
|
||||
|
Reference in New Issue
Block a user