Reorganize code by removing unused files, restructuring package organization, and updating import references to new paths. This simplifies handling of smart and protocol-related operations, improves maintainability, and eliminates redundancy.
34 lines
723 B
Go
34 lines
723 B
Go
package smart
|
|
|
|
import (
|
|
"gitea.unprism.ru/KRBL/n9m/v2/pkg/models"
|
|
"gitea.unprism.ru/KRBL/n9m/v2/pkg/protocol"
|
|
"net"
|
|
"sync"
|
|
)
|
|
|
|
type ProcessFunc func(*SmartPackage, protocol.Package) error
|
|
type AlarmProcessFunc func(*SmartPackage, protocol.Package, models.SendAlarmInfoResponse) error
|
|
|
|
type SmartPackage struct {
|
|
pack protocol.Package
|
|
|
|
conn net.Conn
|
|
buff []byte
|
|
|
|
payloadProcess map[protocol.PayloadType]ProcessFunc
|
|
jsonProcess map[string]ProcessFunc
|
|
alarmProcess map[protocol.AlarmType]AlarmProcessFunc
|
|
Storage map[string]interface{}
|
|
}
|
|
|
|
type SmartChannelPackage struct {
|
|
pack *SmartPackage
|
|
mainPack *SmartPackage
|
|
|
|
channelName string
|
|
|
|
mutex sync.RWMutex
|
|
ssrc map[uint16][]func([]byte) error
|
|
}
|