Documentation ¶
Overview ¶
+k8s:openapi-gen=true +k8s:deepcopy-gen=package
Package v1beta1 contains API Schema definitions for the devices v1beta1 API group +k8s:openapi-gen=true +k8s:deepcopy-gen=package,register +k8s:conversion-gen=kubeedge/cloud/pkg/apis/devices +k8s:defaulter-gen=TypeMeta +groupName=devices.kubeedge.io
Index ¶
- Constants
- Variables
- func AddDeviceCrds(scheme *runtime.Scheme) error
- func Resource(resource string) schema.GroupResource
- type CustomizedValue
- type DBMethodConfig
- type DBMethodInfluxdb2
- type DBMethodMySQL
- type DBMethodRedis
- type DBMethodTDEngine
- type Device
- type DeviceList
- type DeviceModel
- type DeviceModelList
- type DeviceModelSpec
- type DeviceProperty
- type DeviceSpec
- type DeviceStatus
- type Influxdb2ClientConfig
- type Influxdb2DataConfig
- type ModelProperty
- type MySQLClientConfig
- type PropertyAccessMode
- type PropertyType
- type ProtocolConfig
- type PushMethod
- type PushMethodHTTP
- type PushMethodMQTT
- type RedisClientConfig
- type TDEngineClientConfig
- type Twin
- type TwinProperty
- type VisitorConfig
Constants ¶
const ( // GroupName is the group name use in this package. GroupName = "devices.kubeedge.io" // Version is the API version. Version = "v1beta1" )
Variables ¶
var ( SchemeBuilder runtime.SchemeBuilder AddToScheme = localSchemeBuilder.AddToScheme )
var ( // SchemeGroupVersion is the group version used to register these objects. SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: Version} )
Functions ¶
func AddDeviceCrds ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group-qualified GroupResource.
Types ¶
type CustomizedValue ¶
type CustomizedValue struct {
Data map[string]interface{} `json:"-"`
}
CustomizedValue contains a map type data +kubebuilder:validation:Type=object
func (*CustomizedValue) DeepCopy ¶
func (in *CustomizedValue) DeepCopy() *CustomizedValue
DeepCopy implements the DeepCopy interface.
func (*CustomizedValue) DeepCopyInto ¶
func (in *CustomizedValue) DeepCopyInto(out *CustomizedValue)
DeepCopyInto implements the DeepCopyInto interface.
func (*CustomizedValue) MarshalJSON ¶
func (in *CustomizedValue) MarshalJSON() ([]byte, error)
MarshalJSON implements the Marshaler interface.
func (*CustomizedValue) UnmarshalJSON ¶
func (in *CustomizedValue) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the Unmarshaler interface.
type DBMethodConfig ¶
type DBMethodConfig struct { // method configuration for database // +optional Influxdb2 *DBMethodInfluxdb2 `json:"influxdb2,omitempty"` // +optional Redis *DBMethodRedis `json:"redis,omitempty"` // +optional TDEngine *DBMethodTDEngine `json:"TDEngine,omitempty"` // +optional Mysql *DBMethodMySQL `json:"mysql,omitempty"` }
func (*DBMethodConfig) DeepCopy ¶
func (in *DBMethodConfig) DeepCopy() *DBMethodConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DBMethodConfig.
func (*DBMethodConfig) DeepCopyInto ¶
func (in *DBMethodConfig) DeepCopyInto(out *DBMethodConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DBMethodInfluxdb2 ¶
type DBMethodInfluxdb2 struct { // Config of influx database // +optional Influxdb2ClientConfig *Influxdb2ClientConfig `json:"influxdb2ClientConfig"` // config of device data when push to influx database // +optional Influxdb2DataConfig *Influxdb2DataConfig `json:"influxdb2DataConfig"` }
func (*DBMethodInfluxdb2) DeepCopy ¶
func (in *DBMethodInfluxdb2) DeepCopy() *DBMethodInfluxdb2
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DBMethodInfluxdb2.
func (*DBMethodInfluxdb2) DeepCopyInto ¶
func (in *DBMethodInfluxdb2) DeepCopyInto(out *DBMethodInfluxdb2)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DBMethodMySQL ¶ added in v1.17.0
type DBMethodMySQL struct {
MySQLClientConfig *MySQLClientConfig `json:"mysqlClientConfig,omitempty"`
}
func (*DBMethodMySQL) DeepCopy ¶ added in v1.17.0
func (in *DBMethodMySQL) DeepCopy() *DBMethodMySQL
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DBMethodMySQL.
func (*DBMethodMySQL) DeepCopyInto ¶ added in v1.17.0
func (in *DBMethodMySQL) DeepCopyInto(out *DBMethodMySQL)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DBMethodRedis ¶ added in v1.16.0
type DBMethodRedis struct { // RedisClientConfig of redis database // +optional RedisClientConfig *RedisClientConfig `json:"redisClientConfig,omitempty"` }
func (*DBMethodRedis) DeepCopy ¶ added in v1.16.0
func (in *DBMethodRedis) DeepCopy() *DBMethodRedis
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DBMethodRedis.
func (*DBMethodRedis) DeepCopyInto ¶ added in v1.16.0
func (in *DBMethodRedis) DeepCopyInto(out *DBMethodRedis)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DBMethodTDEngine ¶ added in v1.16.0
type DBMethodTDEngine struct { // tdengineClientConfig of tdengine database // +optional TDEngineClientConfig *TDEngineClientConfig `json:"TDEngineClientConfig,omitempty"` }
func (*DBMethodTDEngine) DeepCopy ¶ added in v1.16.0
func (in *DBMethodTDEngine) DeepCopy() *DBMethodTDEngine
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DBMethodTDEngine.
func (*DBMethodTDEngine) DeepCopyInto ¶ added in v1.16.0
func (in *DBMethodTDEngine) DeepCopyInto(out *DBMethodTDEngine)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Device ¶
type Device struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec DeviceSpec `json:"spec,omitempty"` Status DeviceStatus `json:"status,omitempty"` }
Device is the Schema for the devices API +k8s:openapi-gen=true +kubebuilder:storageversion
func (*Device) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Device.
func (*Device) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Device) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DeviceList ¶
type DeviceList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Device `json:"items"` }
DeviceList contains a list of Device
func (*DeviceList) DeepCopy ¶
func (in *DeviceList) DeepCopy() *DeviceList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeviceList.
func (*DeviceList) DeepCopyInto ¶
func (in *DeviceList) DeepCopyInto(out *DeviceList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DeviceList) DeepCopyObject ¶
func (in *DeviceList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DeviceModel ¶
type DeviceModel struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec DeviceModelSpec `json:"spec,omitempty"` }
DeviceModel is the Schema for the device model API +k8s:openapi-gen=true +kubebuilder:storageversion
func (*DeviceModel) DeepCopy ¶
func (in *DeviceModel) DeepCopy() *DeviceModel
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeviceModel.
func (*DeviceModel) DeepCopyInto ¶
func (in *DeviceModel) DeepCopyInto(out *DeviceModel)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DeviceModel) DeepCopyObject ¶
func (in *DeviceModel) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DeviceModelList ¶
type DeviceModelList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []DeviceModel `json:"items"` }
DeviceModelList contains a list of DeviceModel
func (*DeviceModelList) DeepCopy ¶
func (in *DeviceModelList) DeepCopy() *DeviceModelList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeviceModelList.
func (*DeviceModelList) DeepCopyInto ¶
func (in *DeviceModelList) DeepCopyInto(out *DeviceModelList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DeviceModelList) DeepCopyObject ¶
func (in *DeviceModelList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DeviceModelSpec ¶
type DeviceModelSpec struct { // Required: List of device properties. Properties []ModelProperty `json:"properties,omitempty"` // Required: Protocol name used by the device. Protocol string `json:"protocol,omitempty"` }
DeviceModelSpec defines the model for a device.It is a blueprint which describes the device capabilities and access mechanism via property visitors.
func (*DeviceModelSpec) DeepCopy ¶
func (in *DeviceModelSpec) DeepCopy() *DeviceModelSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeviceModelSpec.
func (*DeviceModelSpec) DeepCopyInto ¶
func (in *DeviceModelSpec) DeepCopyInto(out *DeviceModelSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeviceProperty ¶
type DeviceProperty struct { // Required: The device property name to be accessed. It must be unique. // Note: If you need to use the built-in stream data processing function, you need to define Name as saveFrame or saveVideo Name string `json:"name,omitempty"` // The desired property value. Desired TwinProperty `json:"desired,omitempty"` // Visitors are intended to be consumed by device mappers which connect to devices // and collect data / perform actions on the device. // Required: Protocol relevant config details about the how to access the device property. Visitors VisitorConfig `json:"visitors,omitempty"` // Define how frequent mapper will report the value. // +optional ReportCycle int64 `json:"reportCycle,omitempty"` // Define how frequent mapper will collect from device. // +optional CollectCycle int64 `json:"collectCycle,omitempty"` // whether be reported to the cloud ReportToCloud bool `json:"reportToCloud,omitempty"` // PushMethod represents the protocol used to push data, // please ensure that the mapper can access the destination address. // +optional PushMethod *PushMethod `json:"pushMethod,omitempty"` }
DeviceProperty describes the specifics all the properties of the device.
func (*DeviceProperty) DeepCopy ¶
func (in *DeviceProperty) DeepCopy() *DeviceProperty
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeviceProperty.
func (*DeviceProperty) DeepCopyInto ¶
func (in *DeviceProperty) DeepCopyInto(out *DeviceProperty)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeviceSpec ¶
type DeviceSpec struct { // Required: DeviceModelRef is reference to the device model used as a template // to create the device instance. DeviceModelRef *v1.LocalObjectReference `json:"deviceModelRef,omitempty"` // NodeName is a request to schedule this device onto a specific node. If it is non-empty, // the scheduler simply schedules this device onto that node, assuming that it fits // resource requirements. // +optional NodeName string `json:"nodeName,omitempty"` // List of properties which describe the device properties. // properties list item must be unique by properties.Name. // +optional Properties []DeviceProperty `json:"properties,omitempty"` // Required: The protocol configuration used to connect to the device. Protocol ProtocolConfig `json:"protocol,omitempty"` }
DeviceSpec represents a single device instance.
func (*DeviceSpec) DeepCopy ¶
func (in *DeviceSpec) DeepCopy() *DeviceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeviceSpec.
func (*DeviceSpec) DeepCopyInto ¶
func (in *DeviceSpec) DeepCopyInto(out *DeviceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeviceStatus ¶
type DeviceStatus struct { // A list of device twins containing desired/reported desired/reported values of twin properties. // Optional: A passive device won't have twin properties and this list could be empty. // +optional Twins []Twin `json:"twins,omitempty"` // Optional: The state of the device. // +optional State string `json:"state,omitempty"` // Optional: The last time the device was online. // +optional LastOnlineTime string `json:"lastOnlineTime,omitempty"` }
DeviceStatus reports the device state and the desired/reported values of twin attributes.
func (*DeviceStatus) DeepCopy ¶
func (in *DeviceStatus) DeepCopy() *DeviceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeviceStatus.
func (*DeviceStatus) DeepCopyInto ¶
func (in *DeviceStatus) DeepCopyInto(out *DeviceStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Influxdb2ClientConfig ¶
type Influxdb2ClientConfig struct { // Url of influx database // +optional URL string `json:"url,omitempty"` // Org of the user in influx database // +optional Org string `json:"org,omitempty"` // Bucket of the user in influx database // +optional Bucket string `json:"bucket,omitempty"` }
func (*Influxdb2ClientConfig) DeepCopy ¶
func (in *Influxdb2ClientConfig) DeepCopy() *Influxdb2ClientConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Influxdb2ClientConfig.
func (*Influxdb2ClientConfig) DeepCopyInto ¶
func (in *Influxdb2ClientConfig) DeepCopyInto(out *Influxdb2ClientConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Influxdb2DataConfig ¶
type Influxdb2DataConfig struct { // Measurement of the user data // +optional Measurement string `json:"measurement,omitempty"` // the tag of device data // +optional Tag map[string]string `json:"tag,omitempty"` // FieldKey of the user data // +optional FieldKey string `json:"fieldKey,omitempty"` }
func (*Influxdb2DataConfig) DeepCopy ¶
func (in *Influxdb2DataConfig) DeepCopy() *Influxdb2DataConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Influxdb2DataConfig.
func (*Influxdb2DataConfig) DeepCopyInto ¶
func (in *Influxdb2DataConfig) DeepCopyInto(out *Influxdb2DataConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ModelProperty ¶
type ModelProperty struct { // Required: The device property name. // Note: If you need to use the built-in stream data processing function, you need to define Name as saveFrame or saveVideo Name string `json:"name,omitempty"` // The device property description. // +optional Description string `json:"description,omitempty"` // Required: Type of device property, ENUM: INT,FLOAT,DOUBLE,STRING,BOOLEAN,BYTES,STREAM Type PropertyType `json:"type,omitempty"` // Required: Access mode of property, ReadWrite or ReadOnly. AccessMode PropertyAccessMode `json:"accessMode,omitempty"` // +optional Minimum string `json:"minimum,omitempty"` // +optional Maximum string `json:"maximum,omitempty"` // The unit of the property // +optional Unit string `json:"unit,omitempty"` }
ModelProperty describes an individual device property / attribute like temperature / humidity etc.
func (*ModelProperty) DeepCopy ¶
func (in *ModelProperty) DeepCopy() *ModelProperty
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ModelProperty.
func (*ModelProperty) DeepCopyInto ¶
func (in *ModelProperty) DeepCopyInto(out *ModelProperty)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MySQLClientConfig ¶ added in v1.17.0
type MySQLClientConfig struct { // mysql address,like localhost:3306 Addr string `protobuf:"bytes,1,opt,name=addr,proto3" json:"addr,omitempty"` // database name Database string `protobuf:"bytes,2,opt,name=database,proto3" json:"database,omitempty"` // user name UserName string `protobuf:"bytes,3,opt,name=userName,proto3" json:"userName,omitempty"` }
func (*MySQLClientConfig) DeepCopy ¶ added in v1.17.0
func (in *MySQLClientConfig) DeepCopy() *MySQLClientConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MySQLClientConfig.
func (*MySQLClientConfig) DeepCopyInto ¶ added in v1.17.0
func (in *MySQLClientConfig) DeepCopyInto(out *MySQLClientConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PropertyAccessMode ¶
type PropertyAccessMode string
The access mode for a device property. +kubebuilder:validation:Enum=ReadWrite;ReadOnly
const ( ReadWrite PropertyAccessMode = "ReadWrite" ReadOnly PropertyAccessMode = "ReadOnly" )
Access mode constants for a device property.
type PropertyType ¶
type PropertyType string
The type of device property. +kubebuilder:validation:Enum=INT;FLOAT;DOUBLE;STRING;BOOLEAN;BYTES;STREAM
const ( INT PropertyType = "INT" FLOAT PropertyType = "FLOAT" DOUBLE PropertyType = "DOUBLE" STRING PropertyType = "STRING" BOOLEAN PropertyType = "BOOLEAN" BYTES PropertyType = "BYTES" STREAM PropertyType = "STREAM" )
type ProtocolConfig ¶
type ProtocolConfig struct { // Unique protocol name // Required. ProtocolName string `json:"protocolName,omitempty"` // Any config data // +optional // +kubebuilder:validation:XPreserveUnknownFields ConfigData *CustomizedValue `json:"configData,omitempty"` }
func (*ProtocolConfig) DeepCopy ¶
func (in *ProtocolConfig) DeepCopy() *ProtocolConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProtocolConfig.
func (*ProtocolConfig) DeepCopyInto ¶
func (in *ProtocolConfig) DeepCopyInto(out *ProtocolConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PushMethod ¶
type PushMethod struct { // HTTP Push method configuration for http // +optional HTTP *PushMethodHTTP `json:"http,omitempty"` // MQTT Push method configuration for mqtt // +optional MQTT *PushMethodMQTT `json:"mqtt,omitempty"` // DBMethod represents the method used to push data to database, // please ensure that the mapper can access the destination address. // +optional DBMethod *DBMethodConfig `json:"dbMethod,omitempty"` }
func (*PushMethod) DeepCopy ¶
func (in *PushMethod) DeepCopy() *PushMethod
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PushMethod.
func (*PushMethod) DeepCopyInto ¶
func (in *PushMethod) DeepCopyInto(out *PushMethod)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PushMethodHTTP ¶
type PushMethodHTTP struct { // +optional HostName string `json:"hostName,omitempty"` // +optional Port int64 `json:"port,omitempty"` // +optional RequestPath string `json:"requestPath,omitempty"` // +optional Timeout int64 `json:"timeout,omitempty"` }
func (*PushMethodHTTP) DeepCopy ¶
func (in *PushMethodHTTP) DeepCopy() *PushMethodHTTP
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PushMethodHTTP.
func (*PushMethodHTTP) DeepCopyInto ¶
func (in *PushMethodHTTP) DeepCopyInto(out *PushMethodHTTP)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PushMethodMQTT ¶
type PushMethodMQTT struct { // broker address, like mqtt://127.0.0.1:1883 // +optional Address string `json:"address,omitempty"` // publish topic for mqtt // +optional Topic string `json:"topic,omitempty"` // qos of mqtt publish param // +optional QoS int32 `json:"qos,omitempty"` // Is the message retained // +optional Retained bool `json:"retained,omitempty"` }
func (*PushMethodMQTT) DeepCopy ¶
func (in *PushMethodMQTT) DeepCopy() *PushMethodMQTT
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PushMethodMQTT.
func (*PushMethodMQTT) DeepCopyInto ¶
func (in *PushMethodMQTT) DeepCopyInto(out *PushMethodMQTT)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RedisClientConfig ¶ added in v1.16.0
type RedisClientConfig struct { // Addr of Redis database // +optional Addr string `json:"addr,omitempty"` // Db of Redis database // +optional DB int `json:"db,omitempty"` // Poolsize of Redis database // +optional Poolsize int `json:"poolsize,omitempty"` // MinIdleConns of Redis database // +optional MinIdleConns int `json:"minIdleConns,omitempty"` }
func (*RedisClientConfig) DeepCopy ¶ added in v1.16.0
func (in *RedisClientConfig) DeepCopy() *RedisClientConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RedisClientConfig.
func (*RedisClientConfig) DeepCopyInto ¶ added in v1.16.0
func (in *RedisClientConfig) DeepCopyInto(out *RedisClientConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TDEngineClientConfig ¶ added in v1.16.0
type TDEngineClientConfig struct { // addr of tdEngine database // +optional Addr string `json:"addr,omitempty"` // dbname of tdEngine database // +optional DBName string `json:"dbName,omitempty"` }
func (*TDEngineClientConfig) DeepCopy ¶ added in v1.16.0
func (in *TDEngineClientConfig) DeepCopy() *TDEngineClientConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TDEngineClientConfig.
func (*TDEngineClientConfig) DeepCopyInto ¶ added in v1.16.0
func (in *TDEngineClientConfig) DeepCopyInto(out *TDEngineClientConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Twin ¶
type Twin struct { // Required: The property name for which the desired/reported values are specified. // This property should be present in the device model. PropertyName string `json:"propertyName,omitempty"` // Required: the reported property value. Reported TwinProperty `json:"reported,omitempty"` // The meaning of here is to indicate desired value of `deviceProperty.Desired` // that the mapper has received in current cycle. // Useful in cases that people want to check whether the mapper is working // appropriately and its internal status is up-to-date. // This value should be only updated by devicecontroller upstream. ObservedDesired TwinProperty `json:"observedDesired,omitempty"` }
Twin provides a logical representation of control properties (writable properties in the device model). The properties can have a Desired state and a Reported state. The cloud configures the `Desired`state of a device property and this configuration update is pushed to the edge node. The mapper sends a command to the device to change this property value as per the desired state . It receives the `Reported` state of the property once the previous operation is complete and sends the reported state to the cloud. Offline device interaction in the edge is possible via twin properties for control/command operations.
func (*Twin) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Twin.
func (*Twin) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TwinProperty ¶
type TwinProperty struct { // Required: The value for this property. Value string `json:"value,"` // Additional metadata like timestamp when the value was reported etc. // +optional Metadata map[string]string `json:"metadata,omitempty"` }
TwinProperty represents the device property for which an Expected/Actual state can be defined.
func (*TwinProperty) DeepCopy ¶
func (in *TwinProperty) DeepCopy() *TwinProperty
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TwinProperty.
func (*TwinProperty) DeepCopyInto ¶
func (in *TwinProperty) DeepCopyInto(out *TwinProperty)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VisitorConfig ¶
type VisitorConfig struct { // Required: name of customized protocol ProtocolName string `json:"protocolName,omitempty"` // Required: The configData of customized protocol // +kubebuilder:validation:XPreserveUnknownFields ConfigData *CustomizedValue `json:"configData,omitempty"` }
func (*VisitorConfig) DeepCopy ¶
func (in *VisitorConfig) DeepCopy() *VisitorConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VisitorConfig.
func (*VisitorConfig) DeepCopyInto ¶
func (in *VisitorConfig) DeepCopyInto(out *VisitorConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.