Documentation
¶
Index ¶
- Variables
- func AddToTags(tagList []string, tags ...string) []string
- func ContainsAllTags(tagList []string, tags ...string) bool
- func ContainsAnyTags(tagList []string, tags ...string) bool
- func GetRoomIDFromDevice(d string) string
- func HasAllPeople(oldPeople []Person, newPeople ...Person) bool
- func HasRole(device Device, role string) bool
- func IsDeviceIDValid(id string) bool
- type ActiveSignal
- type Alert
- type AlertCategory
- type AlertSeverity
- type AlertType
- type AttributeSet
- type AudioConfiguration
- type AudioDevice
- type Auth
- type Building
- type BulkUpdateResponse
- type Camera
- type CameraPreset
- type Category
- type ClassHalfHourBlock
- type Command
- type Commands
- type ConfigCommand
- type DMPS
- type DMPSList
- type DesignationConfig
- type DesignationDeploymentConfig
- type Device
- func (d *Device) BuildCommandURL(commandID string) (string, *nerr.E)
- func (d *Device) GetCommandByID(id string) Command
- func (d *Device) GetDeviceRoomID() string
- func (d *Device) GetPortFromSrc(src string) *Port
- func (d *Device) GetPortFromSrcAndDest(src, dest string) *Port
- func (d *Device) HasCommand(id string) bool
- func (d *Device) HasRole(role string) bool
- func (d *Device) Validate() error
- type DeviceDeploymentConfig
- type DeviceType
- type Display
- type Endpoint
- type Evaluator
- type FullConfig
- type Group
- type HardwareInfo
- type IOConfiguration
- type IncidentRequest
- type IncidentResponse
- type IncidentResponseWrapper
- type LabConfig
- type MenuTree
- type Microservice
- type MultiIncidentResponseWrapper
- type MultiRepairResponseWrapper
- type NetworkInfo
- type Panel
- type Person
- type Port
- type PowerState
- type Preset
- type PseudoInput
- type PublicDevice
- type PublicRoom
- type QueriedIncidents
- type QueriedUsers
- type Recording
- type RepairRequest
- type RepairResponse
- type RepairResponseWrapper
- type ResolutionCategories
- type ResolutionInfo
- type Role
- type Room
- type RoomConfiguration
- type RoomIssue
- type RoomIssueResponse
- type ScheduleConfig
- type ServiceConfig
- type ServiceConfigWrapper
- type ServiceNowLinkValue
- type Template
- type UIConfig
- type Users
- type VIAUsers
Constants ¶
This section is empty.
Variables ¶
var AlertSeverities = []AlertSeverity{ Critical, Warning, Low, }
Functions ¶
func ContainsAllTags ¶
func ContainsAnyTags ¶
func HasAllPeople ¶
HasAllPeople compares two list of Persons
func IsDeviceIDValid ¶
IsDeviceIDValid takes a device id and tells you whether or not it is valid.
Types ¶
type ActiveSignal ¶
type ActiveSignal struct {
// TODO should probably change this to a bool
Active bool `json:"active"`
}
ActiveSignal is our struct for reporting if a port is active or not
type Alert ¶
type Alert struct {
events.BasicDeviceInfo
AlertID string `json:"id,omitempty,omitempty"`
Type AlertType `json:"type,omitempty"`
Category AlertCategory `json:"category,omitempty"`
Severity AlertSeverity `json:"severity,omitempty"`
Message string `json:"message,omitempty"`
MessageLog []string `json:"message-log,omitempty"`
Data interface{} `json:"data,omitempty"`
SystemType string `json:"system-type,omitempty"`
AlertStartTime time.Time `json:"start-time,omitempty"`
AlertEndTime time.Time `json:"end-time,omitempty"`
AlertLastUpdateTime time.Time `json:"update-time,omitempty"`
Active bool `json:"active"`
AlertTags []string `json:"alert-tags,omitempty"`
DeviceTags []string `json:"device-tags,omitempty"`
RoomTags []string `json:"room-tags,omitempty"`
Requester string `json:"requester,omitempty"`
Source string `json:"-"`
ManualResolve bool `json:"manual-resolve"`
}
Alert is a struct that contains the information regarding an alerting event.
type AlertCategory ¶
type AlertCategory string
AlertCategory is an enum of the different categories of alerts
const ( System AlertCategory = "system" User AlertCategory = "user" )
Here is a list of AlertCategory
func AddToCategory ¶
func AddToCategory(list []AlertCategory, toAdd ...AlertCategory) []AlertCategory
type AlertSeverity ¶
type AlertSeverity string
AlertSeverity is an enum of the different levels of severity for alerts
const ( Critical AlertSeverity = "Critical" Warning AlertSeverity = "Warning" Low AlertSeverity = "Low" )
Here is a list of AlertSeverities
func AddToSeverity ¶
func AddToSeverity(list []AlertSeverity, toAdd ...AlertSeverity) []AlertSeverity
type AttributeSet ¶
type AttributeSet struct {
Name string `json:"name"`
DeviceType string `json:"device-type"`
DeviceName string `json:"device-name,omitempty"`
DeviceIcon string `json:"device-icon,omitempty"`
Attributes map[string]interface{} `json:"attributes"`
}
AttributeSet is an object that contains a set of attributes and an identifier for this set
type AudioConfiguration ¶
type AudioConfiguration struct {
Display string `json:"display"`
AudioDevices []string `json:"audioDevices"`
RoomWide bool `json:"roomWide"`
}
AudioConfiguration - a representation of how the audio is configured when using multiple displays.
type AudioDevice ¶
type AudioDevice struct {
PublicDevice
Muted *bool `json:"muted,omitempty"`
Volume *int `json:"volume,omitempty"`
}
AudioDevice represents an audio device
type Auth ¶
type Auth struct {
ID string `json:"_id"`
Roles []string `json:"roles"`
Permissions []struct {
Group string `json:"group"`
Roles []string `json:"roles"`
} `json:"permissions"`
}
Auth - our authentication struct.
type Building ¶
type Building struct {
ID string `json:"_id"`
Name string `json:"name"`
Description string `json:"description"`
Tags []string `json:"tags,omitempty"`
}
Building - the representation about a building containing a TEC Pi system.
type BulkUpdateResponse ¶
type BulkUpdateResponse struct {
ID string `json:"_id"`
Success bool `json:"success"`
Message string `json:"message"`
}
BulkUpdateResponse - a collection of responses when making bulk changes to the database.
type Camera ¶
type Camera struct {
DisplayName string `json:"displayName"`
TiltUp string `json:"tiltUp"`
TiltDown string `json:"tiltDown"`
PanLeft string `json:"panLeft"`
PanRight string `json:"panRight"`
PanTiltStop string `json:"panTiltStop"`
ZoomIn string `json:"zoomIn"`
ZoomOut string `json:"zoomOut"`
ZoomStop string `json:"zoomStop"`
Presets []CameraPreset `json:"presets"`
}
type CameraPreset ¶
type ClassHalfHourBlock ¶
type ClassHalfHourBlock struct {
BlockStart string `json:"block-start"`
ClassName string `json:"class-name"`
ClassTime string `json:"class-time"`
Teacher Person `json:"teacher"`
Days string `json:"days"`
ClassStartTime time.Time `json:"class-start-time"`
ClassEndTime time.Time `json:"class-end-time"`
}
ClassHalfHourBlock defines the information needed for a 30 min block of a class
type Command ¶
type Command struct {
ID string `json:"_id"`
Description string `json:"description"`
Microservice Microservice `json:"microservice"`
Endpoint Endpoint `json:"endpoint"`
Priority int `json:"priority"`
Tags []string `json:"tags,omitempty"`
}
Command - a representation of an API command to be executed.
func (Command) BuildCommandAddress ¶
BuildCommandAddress builds the full address for a command based off it's the microservice and endpoint
type Commands ¶
type Commands struct {
PowerOn []ConfigCommand `json:"powerOn,omitempty"`
PowerOff []ConfigCommand `json:"powerOff,omitempty"`
InputSame []ConfigCommand `json:"inputSame,omitempty"`
InputDifferent []ConfigCommand `json:"inputDifferent,omitempty"`
Delay int `json:"json:delay,omitempty"`
}
Commands - a representation of commands to be sent through the UI.
type ConfigCommand ¶
type ConfigCommand struct {
Method string `json:"method"`
Port int `json:"port"`
Endpoint string `json:"endpoint"`
Body map[string]interface{} `json:"body"`
}
ConfigCommand - ...I dunno, ask Danny.
type DMPS ¶
type DMPS struct {
Hostname string `json:"hostname"`
Address string `json:"address"`
CommandToQuery string `json:"commandToQuery,omitempty"`
Port string `json:"port,omitempty"`
}
DMPS - a single DMPS to connect to and pull events
type DesignationConfig ¶
type DesignationConfig struct {
Task string `json:"task,omitempty"`
Port string `json:"port"`
EnvironmentVariables map[string]string `json:"environment-values,omitempty"`
DockerInfo map[string]interface{} `json:"docker-info,omitempty"`
}
DesignationConfig .
type DesignationDeploymentConfig ¶
type DesignationDeploymentConfig struct {
EnvironmentVariables map[string]string `json:"environment-values,omitempty"`
DockerInfo map[string]interface{} `json:"docker-info,omitempty"`
DockerServices []string `json:"docker-services,omitempty"`
Services []string `json:"services,omitempty"`
}
DesignationDeploymentConfig .
type Device ¶
type Device struct {
ID string `json:"_id"`
Name string `json:"name"`
Address string `json:"address"`
Description string `json:"description"`
DisplayName string `json:"display_name"`
Type DeviceType `json:"type,omitempty"`
Roles []Role `json:"roles"`
Ports []Port `json:"ports"`
Tags []string `json:"tags,omitempty"`
Attributes map[string]interface{} `json:"attributes,omitempty"`
// Proxy is a map of regex (matching command id's) to the host:port of the proxy
Proxy map[string]string `json:"proxy,omitempty"`
}
Device - a representation of a device involved in a TEC Pi system.
func (*Device) BuildCommandURL ¶
BuildCommandURL builds the full address for a command based off it's the microservice and endpoint. If the device is proxied, the host of the url will be the proxy's address
func (*Device) GetCommandByID ¶
GetCommandByID searches for a specific command and returns it if found.
func (*Device) GetDeviceRoomID ¶
GetDeviceRoomID returns the room ID portion of the device ID.
func (*Device) GetPortFromSrc ¶
GetPortFromSrc returns the port going to me from src, and nil if one doesn't exist
func (*Device) GetPortFromSrcAndDest ¶
GetPortFromSrcAndDest returns the port with a matching src/dest, and nil if one doesn't exist
type DeviceDeploymentConfig ¶
type DeviceDeploymentConfig struct {
ID string `json:"_id"`
Designations map[string]DesignationDeploymentConfig `json:"designations"`
}
DeviceDeploymentConfig .
type DeviceType ¶
type DeviceType struct {
ID string `json:"_id"`
Description string `json:"description,omitempty"`
DisplayName string `json:"display_name,omitempty"`
Input bool `json:"input,omitempty"`
Output bool `json:"output,omitempty"`
Source bool `json:"source,omitempty"`
Destination bool `json:"destination,omitempty"`
Roles []Role `json:"roles,omitempty"`
Ports []Port `json:"ports,omitempty"`
PowerStates []PowerState `json:"power_states,omitempty"`
Commands []Command `json:"commands,omitempty"`
DefaultName string `json:"default-name,omitempty"`
DefaultIcon string `json:"default-icon,omitempty"`
Tags []string `json:"tags,omitempty"`
}
DeviceType - a representation of a type (or category) of devices.
func (*DeviceType) Validate ¶
func (dt *DeviceType) Validate(deepCheck bool) error
Validate checks to make sure that the values of the DeviceType are valid.
type Display ¶
type Display struct {
PublicDevice
Blanked *bool `json:"blanked,omitempty"`
}
Display represents a display
type Endpoint ¶
type Endpoint struct {
ID string `json:"_id"`
Description string `json:"description"`
Path string `json:"path"`
Tags []string `json:"tags,omitempty"`
}
Endpoint - a representation of an API endpoint.
type Evaluator ¶
type Evaluator struct {
ID string `json:"_id"`
CodeKey string `json:"codekey,omitempty"`
Description string `json:"description,omitempty"`
Priority int `json:"priority,omitempty"`
Tags []string `json:"tags,omitempty"`
}
Evaluator - a representation of a priority evaluator.
type FullConfig ¶
type FullConfig struct {
ID string `json:"_id"`
AWSConfig map[string]DesignationConfig `json:"aws-stages,omitempty"`
CampusConfig map[string]DesignationConfig `json:"campus-stages,omitempty"`
}
FullConfig .
type Group ¶
type Group struct {
ID string `json:"_id"`
Icon string `json:"icon,omitempty"`
Subgroups []Group `json:"sub-groups,omitempty"`
Presets []AttributeSet `json:"presets,omitempty"`
}
Group is a collection of attribute presets to create devices that fall into this group
type HardwareInfo ¶
type HardwareInfo struct {
Hostname string `json:"hostname,omitempty"`
ModelName string `json:"model_name,omitempty"`
SerialNumber string `json:"serial_number,omitempty"`
BuildDate string `json:"build_date,omitempty"`
FirmwareVersion string `json:"firmware_version,omitempty"`
ProtocolVersion string `json:"protocol_version,omitempty"`
NetworkInfo NetworkInfo `json:"network_information,omitempty"`
FilterStatus string `json:"filter_status,omitempty"`
WarningStatus []string `json:"warning_status,omitempty"`
ErrorStatus []string `json:"error_status,omitempty"`
PowerStatus string `json:"power_status,omitempty"`
PowerSavingModeStatus string `json:"power_saving_mode_status,omitempty"`
TimerInfo []map[string]int `json:"timer_info,omitempty"`
Temperature string `json:"temperature,omitempty"`
}
HardwareInfo contains the common information for device hardware information
type IOConfiguration ¶
type IOConfiguration struct {
Name string `json:"name"`
Icon string `json:"icon"`
Displayname *string `json:"displayname,omitempty"`
SubInputs []IOConfiguration `json:"subInputs,omitempty"`
}
IOConfiguration - a representation of an input or output device.
type IncidentRequest ¶
type IncidentRequest struct {
SysID string `json:"sys_id,omitempty"`
Number string `json:"number,omitempty"`
Service string `json:"u_service,omitempty"`
CallerID string `json:"caller_id,omitempty"`
AssignmentGroup string `json:"assignment_group,omitempty"`
State string `json:"state,omitempty"`
Room string `json:"u_room,omitempty"`
ShortDescription string `json:"short_description,omitempty"`
ContactNumber string `json:"u_work_phone,omitempty"`
ContactEmail string `json:"u_email,omitempty"`
Severity string `json:"u_severity,omitempty"`
Reach string `json:"u_reach,omitempty"`
WorkStatus string `json:"u_work_status,omitempty"`
Sensitivity string `json:"u_sensitivity,omitempty"`
InternalNotes string `json:"work_notes,omitempty"`
WorkLog string `json:"comments,omitempty"`
//The codes necessary for closing a ticket
ClosureCode string `json:"u_closure_code,omitempty"`
ResolutionService string `json:"u_resolution_service,omitempty"`
ResolutionAction string `json:"u_action,omitempty"`
}
type IncidentResponse ¶
type IncidentResponseWrapper ¶
type IncidentResponseWrapper struct {
Result IncidentResponse `json:"result"`
}
type LabConfig ¶
type LabConfig struct {
ID string `json:"_id"`
LabName string `json:"lab_name"`
LabID string `json:"lab_id"`
}
LabConfig represents the configuration values neccessary for a Lab Attendance system to function properly
type MenuTree ¶
type MenuTree struct {
Groups []Group `json:"groups"`
}
MenuTree is a wrapper for the list of groups
type Microservice ¶
type Microservice struct {
ID string `json:"_id"`
Description string `json:"description"`
Address string `json:"address"`
Tags []string `json:"tags,omitempty"`
}
Microservice - a representation of a microservice in our API.
func (*Microservice) Validate ¶
func (m *Microservice) Validate() error
Validate checks to make sure that the Microservice's values are valid.
type MultiIncidentResponseWrapper ¶
type MultiIncidentResponseWrapper struct {
Result []IncidentResponse `json:"result"`
}
type MultiRepairResponseWrapper ¶
type MultiRepairResponseWrapper struct {
Result []RepairResponse `json:"result"`
}
type NetworkInfo ¶
type NetworkInfo struct {
IPAddress string `json:"ip_address,omitempty"`
MACAddress string `json:"mac_address,omitempty"`
Gateway string `json:"gateway,omitempty"`
DNS []string `json:"dns,omitempty"`
}
NetworkInfo contains the network information for the device
type Panel ¶
type Panel struct {
Hostname string `json:"hostname"`
UIPath string `json:"uipath"`
Preset string `json:"preset"`
Features []string `json:"features"`
}
Panel - a representation of a touchpanel and which preset it has.
type Port ¶
type Port struct {
ID string `json:"_id"`
FriendlyName string `json:"friendly_name,omitempty"`
PortType string `json:"port_type,omitempty"`
SourceDevice string `json:"source_device,omitempty"`
DestinationDevice string `json:"destination_device,omitempty"`
Description string `json:"description,omitempty"`
Tags []string `json:"tags,omitempty"`
}
Port - a representation of an input/output port on a device.
type PowerState ¶
type PowerState struct {
ID string `json:"_id"`
Description string `json:"description"`
Tags []string `json:"tags,omitempty"`
}
PowerState - a representation of a device's power state.
func (*PowerState) Validate ¶
func (ps *PowerState) Validate() error
Validate checks to make sure that the PowerState's values are valid.
type Preset ¶
type Preset struct {
Name string `json:"name"`
Icon string `json:"icon"`
Displays []string `json:"displays"`
AudioDevices []string `json:"audioDevices"`
Inputs []string `json:"inputs"`
IndependentAudioDevices []string `json:"independentAudioDevices,omitempty"`
AudioGroups map[string][]string `json:"audioGroups,omitempty"`
VolumeMatches []string `json:"volumeMatches,omitempty"`
Commands Commands `json:"commands,omitempty"`
Screens []string `json:"screens"`
Cameras []Camera `json:"cameras"`
Recording Recording `json:"recording"`
}
Preset - a representation of what is controlled by this preset.
type PseudoInput ¶
type PseudoInput struct {
Displayname string `json:"displayname"`
Config []struct {
Input string `json:"input"`
Outputs []string `json:"outputs"`
} `json:"config"`
}
PseudoInput - a fake input I guess
type PublicDevice ¶
type PublicDevice struct {
Name string `json:"name,omitempty"`
Power string `json:"power,omitempty"`
Input string `json:"input,omitempty"`
}
PublicDevice is a struct for inheriting
type PublicRoom ¶
type PublicRoom struct {
Building string `json:"-"`
Room string `json:"-"`
CurrentVideoInput string `json:"currentVideoInput,omitempty"`
CurrentAudioInput string `json:"currentAudioInput,omitempty"`
Power string `json:"power,omitempty"`
Blanked *bool `json:"blanked,omitempty"`
Muted *bool `json:"muted,omitempty"`
Volume *int `json:"volume,omitempty"`
Displays []Display `json:"displays,omitempty"`
AudioDevices []AudioDevice `json:"audioDevices,omitempty"`
}
PublicRoom - a representation of the state of a room.
type QueriedIncidents ¶
type QueriedIncidents struct {
Result []IncidentResponse `json:"result"`
}
type QueriedUsers ¶
type QueriedUsers struct {
Result []Users `json:"result"`
}
type RepairRequest ¶
type RepairRequest struct {
SysID string `json:"sys_id,omitempty"`
Number string `json:"number,omitempty"`
Service string `json:"u_service,omitempty"`
AssignmentGroup string `json:"assignment_group,omitempty"`
RequestOriginator string `json:"u_requested_by,omitempty"`
Parent string `json:"parent,omitempty"`
RequestOrigination string `json:"u_request_origination,omitempty"`
RequestDate string `json:"u_dropped_off_date,omitempty"`
Building string `json:"u_building,omitempty"`
State string `json:"state,omitempty"`
Room string `json:"u_room,omitempty"`
ShortDescription string `json:"short_description,omitempty"`
Description string `json:"description,omitempty"`
DateNeeded string `json:"u_completion_asap_or_date,omitempty"`
EquipmentReturn string `json:"u_pickup_or_delivery,omitempty"`
InternalNotes string `json:"work_notes,omitempty"`
WorkLog string `json:"comments,omitempty"`
}
type RepairResponse ¶
type RepairResponseWrapper ¶
type RepairResponseWrapper struct {
Result RepairResponse `json:"result"`
}
type ResolutionCategories ¶
type ResolutionCategories struct {
Result []Category `json:"result"`
}
type ResolutionInfo ¶
type ResolutionInfo struct {
Code string `json:"resolution-code"`
Notes string `json:"notes"`
ResolvedAt time.Time `json:"resolved-at"`
}
ResolutionInfo is a struct that contains the information about the resolution of the alert
type Role ¶
type Role struct {
ID string `json:"_id"`
Description string `json:"description,omitempty"`
Tags []string `json:"tags,omitempty"`
}
Role - a representation of a role that a device plays in the overall system.
type Room ¶
type Room struct {
ID string `json:"_id"`
Name string `json:"name"`
Description string `json:"description"`
Configuration RoomConfiguration `json:"configuration"`
Designation string `json:"designation"`
Devices []Device `json:"devices,omitempty"`
Tags []string `json:"tags,omitempty"`
Attributes map[string]interface{} `json:"attributes,omitempty"`
}
Room - a representation of a room containing a TEC Pi system.
type RoomConfiguration ¶
type RoomConfiguration struct {
ID string `json:"_id"`
Evaluators []Evaluator `json:"evaluators,omitempty"`
Description string `json:"description,omitempty"`
Tags []string `json:"tags,omitempty"`
}
RoomConfiguration - a representation of the configuration of a room.
func (*RoomConfiguration) Validate ¶
func (rc *RoomConfiguration) Validate(deepCheck bool) error
Validate checks to make sure that the RoomConfiguration's values are valid.
type RoomIssue ¶
type RoomIssue struct {
RoomIssueID string `json:"id,omitempty"`
events.BasicRoomInfo
RoomTags []string `json:"room-tags,omitempty"`
AlertTypes []AlertType `json:"alert-types,omitempty"`
AlertDevices []string `json:"alert-devices,omitempty"`
AlertCategories []AlertCategory `json:"alert-categories,omitempty"`
AlertSeverities []AlertSeverity `json:"alert-severities,omitempty"`
AlertCount int `json:"alert-count"`
ActiveAlertTypes []AlertType `json:"active-alert-types,omitempty"`
ActiveAlertDevices []string `json:"active-alert-devices,omitempty"`
ActiveAlertCategories []AlertCategory `json:"active-alert-categories,omitempty"`
ActiveAlertSeverities []AlertSeverity `json:"active-alert-severities,omitempty"`
AlertActiveCount int `json:"active-alert-count"`
SystemType string `json:"system-type,omitempty"`
Source string `json:"-"`
Alerts []Alert `json:"alerts,omitempty"`
//Editable fields
IssueTags []string `json:"issue-tags,omitempty"`
IncidentID []string `json:"incident-id,omitempty"`
Notes string `json:"notes,omitempty"`
RoomIssueResponses []RoomIssueResponse `json:"responses,omitempty"`
//resolution fields
Resolved bool `json:"resolved"`
ResolutionInfo ResolutionInfo `json:"resolution-info,omitempty"`
//notes-log isn't editable
NotesLog []string `json:"notes-log,omitempty"`
}
RoomIssue .
func (*RoomIssue) CalculateAggregateInfo ¶
func (r *RoomIssue) CalculateAggregateInfo()
type RoomIssueResponse ¶
type RoomIssueResponse struct {
Responders []Person `json:"responders,omitempty"`
HelpSentAt time.Time `json:"help-sent-at,omitempty"`
HelpArrivedAt time.Time `json:"help-arrived-at,omitempty"`
}
RoomIssueResponse represents information about a tech being dispatched on a room issue
type ScheduleConfig ¶
type ScheduleConfig struct {
ID string `json:"_id"`
Rev string `json:"_rev"`
Resource string `json:"resource"`
Name string `json:"displayname"`
AutoDiscoverURL string `json:"autodiscover-url"`
AccessType string `json:"access-type"`
Image string `json:"image-url"`
BookNow bool `json:"allowbooknow"`
ShowHelp bool `json:"showhelp"`
CalendarType string `json:"calendar-type"`
CalendarName string `json:"calendar-name"`
}
ScheduleConfig represents the configuration values necessary for the Calendar service to function properly
type ServiceConfig ¶
ServiceConfig .
type ServiceConfigWrapper ¶
type ServiceConfigWrapper struct {
ID string `json:"_id"`
Designations map[string]ServiceConfig `json:"designations,omitempty"`
}
ServiceConfigWrapper .
type ServiceNowLinkValue ¶
type Template ¶
type Template struct {
ID string `json:"_id"`
Description string `json:"description"`
UIConfig UIConfig `json:"uiconfig"`
BaseTypes []string `json:"base_types"`
}
Template - the UI config and device list for a room for quick configuration.
type UIConfig ¶
type UIConfig struct {
ID string `json:"_id,omitempty"`
Api []string `json:"api"`
Panels []Panel `json:"panels"`
Presets []Preset `json:"presets"`
InputConfiguration []IOConfiguration `json:"inputConfiguration"`
OutputConfiguration []IOConfiguration `json:"outputConfiguration"`
AudioConfiguration []AudioConfiguration `json:"audioConfiguration"`
PseudoInputs []PseudoInput `json:"pseudoInputs,omitempty"`
}
UIConfig - a representation of all the information needed to configure the touchpanel UI.