30 lines
904 B
Go
30 lines
904 B
Go
// Package store — хранилище устройств IoT в PostgreSQL.
|
|
//
|
|
// Таблица iot_devices заменяет CRD IoTDevice и k8s Secrets старого IoT.
|
|
// Устройства: namespace, name, device_id, enabled, mqtt_password, metadata.
|
|
package store
|
|
|
|
import (
|
|
"errors"
|
|
"time"
|
|
)
|
|
|
|
// ErrNotFound — устройство не найдено.
|
|
var ErrNotFound = errors.New("device not found")
|
|
|
|
// ErrAlreadyExists — конфликт уникальности (namespace, name) или (namespace, device_id).
|
|
var ErrAlreadyExists = errors.New("device already exists")
|
|
|
|
// Device — устройство IoT из таблицы iot_devices.
|
|
type Device struct {
|
|
Namespace string
|
|
Name string
|
|
DeviceID string
|
|
Enabled bool
|
|
MQTTPassword string
|
|
Metadata map[string]string
|
|
Phase string
|
|
LastConnected *time.Time
|
|
CreatedAt time.Time
|
|
}
|