github.com/enbility/spine-go@v0.7.0/model/sensing.go (about) 1 package model 2 3 type SensingStateType string 4 5 const ( 6 SensingStateTypeOn SensingStateType = "on" 7 SensingStateTypeOff SensingStateType = "off" 8 SensingStateTypeToggle SensingStateType = "toggle" 9 SensingStateTypeLevel SensingStateType = "level" 10 SensingStateTypeLevelUp SensingStateType = "levelUp" 11 SensingStateTypeLevelDown SensingStateType = "levelDown" 12 SensingStateTypeLevelStart SensingStateType = "levelStart" 13 SensingStateTypeLevelStop SensingStateType = "levelStop" 14 SensingStateTypeLevelAbsolute SensingStateType = "levelAbsolute" 15 SensingStateTypeLevelRelative SensingStateType = "levelRelative" 16 SensingStateTypeLevelPercentageAbsolute SensingStateType = "levelPercentageAbsolute" 17 SensingStateTypeLevelPercentageRelative SensingStateType = "levelPercentageRelative" 18 SensingStateTypePressed SensingStateType = "pressed" 19 SensingStateTypeLongPressed SensingStateType = "longPressed" 20 SensingStateTypeReleased SensingStateType = "released" 21 SensingStateTypeChanged SensingStateType = "changed" 22 SensingStateTypeStarted SensingStateType = "started" 23 SensingStateTypeStopped SensingStateType = "stopped" 24 SensingStateTypePaused SensingStateType = "paused" 25 SensingStateTypeMiddle SensingStateType = "middle" 26 SensingStateTypeUp SensingStateType = "up" 27 SensingStateTypeDown SensingStateType = "down" 28 SensingStateTypeForward SensingStateType = "forward" 29 SensingStateTypeBackwards SensingStateType = "backwards" 30 SensingStateTypeOpen SensingStateType = "open" 31 SensingStateTypeClosed SensingStateType = "closed" 32 SensingStateTypeOpening SensingStateType = "opening" 33 SensingStateTypeClosing SensingStateType = "closing" 34 SensingStateTypeHigh SensingStateType = "high" 35 SensingStateTypeLow SensingStateType = "low" 36 SensingStateTypeDay SensingStateType = "day" 37 SensingStateTypeNight SensingStateType = "night" 38 SensingStateTypeDetected SensingStateType = "detected" 39 SensingStateTypeNotDetected SensingStateType = "notDetected" 40 SensingStateTypeAlarmed SensingStateType = "alarmed" 41 SensingStateTypeNotAlarmed SensingStateType = "notAlarmed" 42 ) 43 44 type SensingTypeType string 45 46 const ( 47 SensingTypeTypeSwitch SensingTypeType = "switch" 48 SensingTypeTypeButton SensingTypeType = "button" 49 SensingTypeTypeLevel SensingTypeType = "level" 50 SensingTypeTypeLevelSwitch SensingTypeType = "levelSwitch" 51 SensingTypeTypeWindowHandle SensingTypeType = "windowHandle" 52 SensingTypeTypeContactSensor SensingTypeType = "contactSensor" 53 SensingTypeTypeOccupancySensor SensingTypeType = "occupancySensor" 54 SensingTypeTypeMotionDetector SensingTypeType = "motionDetector" 55 SensingTypeTypeFireDetector SensingTypeType = "fireDetector" 56 SensingTypeTypeSmokeDetector SensingTypeType = "smokeDetector" 57 SensingTypeTypeHeatDetector SensingTypeType = "heatDetector" 58 SensingTypeTypeWaterDetector SensingTypeType = "waterDetector" 59 SensingTypeTypeGasDetector SensingTypeType = "gasDetector" 60 SensingTypeTypeAlarmSensor SensingTypeType = "alarmSensor" 61 SensingTypeTypePowerAlarmSensor SensingTypeType = "powerAlarmSensor" 62 SensingTypeTypeDayNightIndicator SensingTypeType = "dayNightIndicator" 63 ) 64 65 type SensingDataType struct { 66 Timestamp *AbsoluteOrRelativeTimeType `json:"timestamp,omitempty"` 67 State *SensingStateType `json:"state,omitempty"` 68 Value *ScaledNumberType `json:"value,omitempty"` 69 } 70 71 type SensingDataElementsType struct { 72 Timestamp *ElementTagType `json:"timestamp,omitempty"` 73 State *ElementTagType `json:"state,omitempty"` 74 Value *ScaledNumberElementsType `json:"value,omitempty"` 75 } 76 77 type SensingListDataType struct { 78 SensingData []SensingDataType `json:"sensingData,omitempty"` 79 } 80 81 type SensingListDataSelectorsType struct { 82 TimestampInterval *TimestampIntervalType `json:"timestampInterval,omitempty"` 83 } 84 85 type SensingDescriptionDataType struct { 86 SensingType *SensingTypeType `json:"sensingType,omitempty"` 87 Unit *UnitOfMeasurementType `json:"unit,omitempty"` 88 ScopeType *ScopeTypeType `json:"scopeType,omitempty"` 89 Label *LabelType `json:"label,omitempty"` 90 Description *DescriptionType `json:"description,omitempty"` 91 } 92 93 type SensingDescriptionDataElementsType struct { 94 SensingType *ElementTagType `json:"sensingType,omitempty"` 95 Unit *ElementTagType `json:"unit,omitempty"` 96 ScopeType *ElementTagType `json:"scopeType,omitempty"` 97 Label *ElementTagType `json:"label,omitempty"` 98 Description *ElementTagType `json:"description,omitempty"` 99 }