Documentation
¶
Index ¶
- type AppConfig
- type Client
- func (c *Client) CheckConnection(ctx context.Context, machineID string) (*MachineDTO, error)
- func (c *Client) CreateConnection(ctx context.Context, req ConnectionRequest) (*MachineDTO, error)
- func (c *Client) DeleteConnection(ctx context.Context, machineID string) error
- func (c *Client) GetConnections(ctx context.Context) ([]MachineDTO, error)
- func (c *Client) GetControlProgram(ctx context.Context, machineID string) (string, error)
- func (c *Client) StartPolling(ctx context.Context, machineID string, intervalMs int) error
- func (c *Client) StopPolling(ctx context.Context, machineID string) error
- type ClientAPI
- type Config
- type ConnectionRequest
- type ConnectionResponse
- type DatabaseConfig
- type KafkaConfig
- type LoggerConfig
- type MachineDTO
- type StartPollingRequest
- type StopPollingRequest
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client реализует ClientAPI.
func (*Client) CheckConnection ¶ added in v1.0.7
func (*Client) CreateConnection ¶ added in v1.0.7
func (c *Client) CreateConnection(ctx context.Context, req ConnectionRequest) (*MachineDTO, error)
func (*Client) DeleteConnection ¶ added in v1.0.7
func (*Client) GetConnections ¶ added in v1.0.7
func (c *Client) GetConnections(ctx context.Context) ([]MachineDTO, error)
func (*Client) GetControlProgram ¶
func (*Client) StartPolling ¶ added in v1.0.7
type ClientAPI ¶ added in v1.0.7
type ClientAPI interface {
// Connection methods
CreateConnection(ctx context.Context, req ConnectionRequest) (*MachineDTO, error)
GetConnections(ctx context.Context) ([]MachineDTO, error)
CheckConnection(ctx context.Context, machineID string) (*MachineDTO, error)
DeleteConnection(ctx context.Context, machineID string) error
// Polling methods
StartPolling(ctx context.Context, machineID string, intervalMs int) error
StopPolling(ctx context.Context, machineID string) error
// Program methods
GetControlProgram(ctx context.Context, machineID string) (string, error)
}
type Config ¶
type Config struct {
App AppConfig
Database DatabaseConfig
Kafka KafkaConfig
Logger LoggerConfig
}
func LoadConfig ¶ added in v1.0.7
func LoadConfig() *Config
type ConnectionRequest ¶ added in v1.0.7
type ConnectionRequest struct {
Endpoint string `json:"endpoint" binding:"required"` // ip:port
Timeout int `json:"timeout"` // ms, default 5000
Model string `json:"model"` // Human readable name, default "Unknown"
Series string `json:"series"` // "0i", "31i", default "Unknown"
}
ConnectionRequest payload to create a connection
type ConnectionResponse ¶ added in v1.0.7
type ConnectionResponse struct {
Status string `json:"status"`
Message string `json:"message,omitempty"`
Data interface{} `json:"data,omitempty"`
}
ConnectionResponse represents a generic response wrapper
type DatabaseConfig ¶ added in v1.0.7
type KafkaConfig ¶ added in v1.0.7
type LoggerConfig ¶ added in v1.0.7
type MachineDTO ¶ added in v1.0.7
type MachineDTO struct {
ID string `json:"id"`
Endpoint string `json:"endpoint"`
Timeout int `json:"timeout"`
Model string `json:"model"`
Series string `json:"series"`
Interval int `json:"interval"`
Status string `json:"status"`
Mode string `json:"mode"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
MachineDTO represents the machine data sent to clients
type StartPollingRequest ¶ added in v1.0.7
type StartPollingRequest struct {
ID string `json:"id" binding:"required"`
Interval int `json:"interval"` // ms, default 5000
}
StartPollingRequest payload to start polling
type StopPollingRequest ¶ added in v1.0.7
type StopPollingRequest struct {
ID string `json:"id" binding:"required"`
}
StopPollingRequest payload to stop polling
Click to show internal directories.
Click to hide internal directories.