← Back to packages

Package proto.devices

Service AccessControlDeviceService

Service BarrierService

Service CampCardDispenserService

Service CampCardReaderService

Service DeviceControllerService

Service PaymentTerminalService

Service SocketMasterService

Message AccessControlCommandAccessRequestReply

Message AccessControlCommandGrantAccessNow

Message AccessControlCommandResponse

Message AccessControlCommandResultRequest

Message AccessControlRegistrationInfo

Message AccessControlReportCommandResultResponse

Message AccessControlRequest

Message AccessControlStatus

Message AccessControlStatusReportRequest

Message AccessControlStatusResponse

Message BarrierCommandReadConfig

Message BarrierCommandReadState

Message BarrierCommandReadStatus

Message BarrierCommandResponse

Message BarrierCommandSetConfig

Message BarrierCommandSetState

Message BarrierConfig

Message BarrierConfigReport

Message BarrierRegistrationInfo

Message BarrierReportConfigRequest

Message BarrierReportConfigResponse

Message BarrierReportStateRequest

Message BarrierReportStateResponse

Message BarrierReportStatusRequest

Message BarrierReportStatusResponse

Message BarrierStateReport

Message BarrierStatus

Message BarrierStatusReport

Message CampCardData

Message CampCardDispenserCommandFormatCard

Message CampCardDispenserCommandMoveCard

Message CampCardDispenserCommandNewCard

Message CampCardDispenserCommandRequestStatus

Message CampCardDispenserCommandResponse

Message CampCardDispenserCommandResultRequest

Message CampCardDispenserCommandSetConfig

Message CampCardDispenserCommandWriteCard

Message CampCardDispenserConfig

Message CampCardDispenserRegistrationInfo

Message CampCardDispenserReportCommandResultResponse

Message CampCardDispenserStatus

Message CampCardDispenserStatusReportRequest

Message CampCardDispenserStatusResponse

Message CampCardReaderCommandFormat

Message CampCardReaderCommandResponse

Message CampCardReaderCommandResultRequest

Message CampCardReaderCommandWrite

Message CampCardReaderRegistrationInfo

Message CampCardReaderReportCommandResultResponse

Message CampCardReaderStatus

Message CampCardReaderStatusReportRequest

Message CampCardReaderStatusResponse

Message CommandConfirmation

Message DeviceInfo

Message DeviceRegistration

Message PaymentTerminalCommandPayment

Message PaymentTerminalCommandRefund

Message PaymentTerminalCommandResponse

Message PaymentTerminalCommandResultRequest

Message PaymentTerminalCommandResultResponse

Message PaymentTerminalRegistrationInfo

Message RegisterDeviceControllerRequest

Message RegisterDeviceControllerResponse

Message ReportDeviceInfoRequest

Message SocketConfig

Message SocketConfigReport

Message SocketMasterCommandReadConfig

Message SocketMasterCommandReadStatus

Message SocketMasterCommandReadSwitchState

Message SocketMasterCommandResponse

Message SocketMasterCommandSetConfig

Message SocketMasterCommandSetCredits

Message SocketMasterCommandSetElectricityCredits

Message SocketMasterCommandSetSwitchState

Message SocketMasterRegistrationInfo

Message SocketMasterReportConfigRequest

Message SocketMasterReportConfigResponse

Message SocketMasterReportStatusRequest

Message SocketMasterReportStatusResponse

Message SocketMasterReportSwitchStateRequest

Message SocketMasterReportSwitchStateResponse

Message SocketStatus

Message SocketStatusReport

Message SocketSwitchStateReport

Enum AccessControlDirection

Enum AccessControlRequestResult

Enum BarrierState

Enum CardMoveAction

Enum CardPresence

Enum CardStackState

Enum CommandState

Enum DeviceStatus

Enum MetaState

Enum SocketCreditAction

Enum SocketSwitchState

Services

service AccessControlDeviceService

server->client stream is used to send specific commands to the client client->server stream is used to inform server of current device info (disabled, etc.)

service BarrierService

service CampCardDispenserService

server->client stream is used to send specific commands to the client client->server stream is used to inform server of current device info (disabled, etc.)

service CampCardReaderService

server->client stream is used to send specific commands to the client client->server stream is used to inform server of current device info (disabled, etc.)

service DeviceControllerService

Device controller service.

Reports to the server which devices are managed by the device controller.

service PaymentTerminalService

server->client stream is used to send specific commands to the client client->server stream is used to inform server of current device info (disabled, etc.)

service SocketMasterService

server->client stream is used to send specific commands to the client client->server stream is used to inform server of current device info (disabled, etc.)

Used to report the current configuration of sockets to the server.

Used to report the current switch state of sockets to the server.

Used to report the current status of sockets to the server.

Messages

message AccessControlCommandAccessRequestReply

This command contains the reply to an access request

Field Type Description
1 request_id string

The request being replied to

2 result proto.devices.AccessControlRequestResult
3 result_message optional string

message AccessControlCommandGrantAccessNow

This command instructs the device to perform the "grant access" action right now, without an explicit pending access request

Field Type Description

message AccessControlCommandResponse

The response for instructing the access control device to execute a command

Field Type Description
1 command_id string

the ID of this command

2 device_id string

the targeted access control device ID

3 access_request_reply proto.devices.AccessControlCommandAccessRequestReply
4 grant_access_now proto.devices.AccessControlCommandGrantAccessNow

message AccessControlCommandResultRequest

Report command status via CommandConfirmation

Field Type Description
1 command proto.devices.CommandConfirmation
2 device_id string
3 timestamp google.protobuf.Timestamp

message AccessControlRegistrationInfo

Field Type Description
1 directions repeated proto.devices.AccessControlDirection

The directions (e.g. enter / exit) supported by this device

2 code_types repeated string

The code types (e.g. car license plate) supported by this device

message AccessControlReportCommandResultResponse

The server's response to a command result

Field Type Description

message AccessControlRequest

A request for access

Field Type Description
1 request_id string
2 code_type string

the type of code being used to request access, e.g. car license plate

3 code string

the code requesting access

4 direction proto.devices.AccessControlDirection

The direction of the access request (either entering or leaving)

message AccessControlStatus

A status report of an access control device

Field Type Description
1 current_request optional proto.devices.AccessControlRequest

message AccessControlStatusReportRequest

Reports the current status of the access control device to the server

Field Type Description
1 command optional proto.devices.CommandConfirmation
2 device_id string
3 timestamp google.protobuf.Timestamp
4 status proto.devices.AccessControlStatus

message AccessControlStatusResponse

The server's response to a status report from the access control device

Field Type Description

message BarrierCommandReadConfig

Field Type Description

message BarrierCommandReadState

Request the barrier to report its current state via ReportState.

Field Type Description

message BarrierCommandReadStatus

Request the barrier to report its current status via ReportStatus.

Field Type Description

message BarrierCommandResponse

Field Type Description
1 command_id string

the ID of this command

2 device_id string

the targeted barrier ID

3 read_config proto.devices.BarrierCommandReadConfig
4 set_config proto.devices.BarrierCommandSetConfig
5 read_state proto.devices.BarrierCommandReadState
6 read_status proto.devices.BarrierCommandReadStatus
7 set_state proto.devices.BarrierCommandSetState

message BarrierCommandSetConfig

Field Type Description
1 config proto.devices.BarrierConfig

message BarrierCommandSetState

Sets the state of the barrier.

Field Type Description
1 state proto.devices.BarrierState

message BarrierConfig

Field Type Description

message BarrierConfigReport

Field Type Description
1 timestamp google.protobuf.Timestamp
2 config proto.devices.BarrierConfig

message BarrierRegistrationInfo

Registration information for a barrier device.

Field Type Description

message BarrierReportConfigRequest

Field Type Description
1 command optional proto.devices.CommandConfirmation

Optional, if this report is the result of a command

2 device_id string

The ID of the barrier device

3 config_report proto.devices.BarrierConfigReport

message BarrierReportConfigResponse

Field Type Description

message BarrierReportStateRequest

Field Type Description
1 command optional proto.devices.CommandConfirmation

Optional, if this report is the result of a command

2 device_id string

The ID of the barrier device

3 state_report proto.devices.BarrierStateReport

message BarrierReportStateResponse

Field Type Description

message BarrierReportStatusRequest

Field Type Description
1 command optional proto.devices.CommandConfirmation

Optional, if this report is the result of a "read presence" command

2 device_id string

The ID of the barrier device

3 status_report proto.devices.BarrierStatusReport

message BarrierReportStatusResponse

Field Type Description

message BarrierStateReport

The state of a barrier. A barrier device does not necessarily know the actual physical state of the barrier. In this case the state should be reported as assumed based on the device controller's internal state by setting state_assumed to true. UNKNOWN should be reported whenever the device controller does not have a reasonable estimate for the barrier state, such as after a power loss.

Field Type Description
1 timestamp google.protobuf.Timestamp
2 state proto.devices.BarrierState
3 state_assumed bool
4 meta_state proto.devices.MetaState
5 error_message optional string

an error message, ignored unless the meta_state is META_STATE_ERROR

message BarrierStatus

Field Type Description
1 vehicle_present bool

whether a vehicle is detected in front of the barrier

2 vehicle_present_safety bool

whether a vehicle is detected in the safety area (below the barrier)

message BarrierStatusReport

Field Type Description
1 timestamp google.protobuf.Timestamp
2 status proto.devices.BarrierStatus

message CampCardData

Field Type Description
1 validity_start optional google.protobuf.Timestamp
2 validity_end optional google.protobuf.Timestamp
3 credits optional uint32

In cents

4 privileges repeated uint32

Which privileges are on the card, currently 1-8 are valid privileges, meaning may be different based on the campsite

5 language optional string

ISO 639

6 deposit optional uint32
7 lock_id optional int32
8 category optional int32

message CampCardDispenserCommandFormatCard

Format card currently at the reader. Must be confirmed via CampCardDispenserCommandResultRequest or CampCardDispenserStatusReportRequest.

Field Type Description

message CampCardDispenserCommandMoveCard

Move the card to specified position in the dispenser. Must be confirmed via CampCardDispenserCommandResultRequest or CampCardDispenserStatusReportRequest.

Field Type Description
1 action proto.devices.CardMoveAction

message CampCardDispenserCommandNewCard

Take a new card from stack, write data to it and present it to the user. Must be confirmed via CampCardDispenserCommandResultRequest or CampCardDispenserStatusReportRequest.

Field Type Description
1 data proto.devices.CampCardData

The data to write to the card.

message CampCardDispenserCommandRequestStatus

Request the current device status. Must be confirmed via CampCardDispenserStatusReportRequest.

Field Type Description

message CampCardDispenserCommandResponse

Field Type Description
1 command_id string

the ID of this command

2 device_id string

the targeted camp card dispenser ID

3 move_card proto.devices.CampCardDispenserCommandMoveCard
4 write_card proto.devices.CampCardDispenserCommandWriteCard
5 new_card proto.devices.CampCardDispenserCommandNewCard
6 format_card proto.devices.CampCardDispenserCommandFormatCard
7 request_status proto.devices.CampCardDispenserCommandRequestStatus
8 set_config proto.devices.CampCardDispenserCommandSetConfig

message CampCardDispenserCommandResultRequest

Report command status via CommandConfirmation.

Field Type Description
1 command proto.devices.CommandConfirmation
2 device_id string
3 timestamp google.protobuf.Timestamp
4 new_card_id optional string

the ID of the new card that was created required for CampCardDispenserCommandNewCard, disallowed for all other commands

message CampCardDispenserCommandSetConfig

Write new device config. Must be confirmed via CampCardDispenserCommandResultRequest or CampCardDispenserStatusReportRequest.

Field Type Description
1 config proto.devices.CampCardDispenserConfig

message CampCardDispenserCommandWriteCard

Write card currently at the reader. Must be confirmed via CampCardDispenserCommandResultRequest or CampCardDispenserStatusReportRequest.

Field Type Description
1 data proto.devices.CampCardData

The data to write to the card.

message CampCardDispenserConfig

Field Type Description
1 enable_card_entry optional bool
2 auto_format_card_on_capture optional bool

message CampCardDispenserRegistrationInfo

Field Type Description

message CampCardDispenserReportCommandResultResponse

Field Type Description

message CampCardDispenserStatus

Field Type Description
1 config proto.devices.CampCardDispenserConfig
2 card_stack_state proto.devices.CardStackState
3 card_presence proto.devices.CardPresence
4 card_data optional proto.devices.CampCardData
5 error_code optional string
6 error_message optional string
7 card_id optional string

message CampCardDispenserStatusReportRequest

Report current dispenser status to the backend. Additionally may report command status via CommandConfirmation.

Field Type Description
1 command optional proto.devices.CommandConfirmation
2 device_id string
3 timestamp google.protobuf.Timestamp
4 status proto.devices.CampCardDispenserStatus
5 new_card_id optional string

the ID of the new card that was created required for CampCardDispenserCommandNewCard, disallowed for all other commands

message CampCardDispenserStatusResponse

Field Type Description

message CampCardReaderCommandFormat

Format the card, i.e. fully erase it. Must be confirmed via CampCardReaderStatusReportRequest.

Field Type Description

message CampCardReaderCommandResponse

Field Type Description
1 command_id string

the ID of this command

2 device_id string

the targeted camp card reader ID

3 write proto.devices.CampCardReaderCommandWrite
4 format proto.devices.CampCardReaderCommandFormat

message CampCardReaderCommandResultRequest

Report command status via CommandConfirmation.

Field Type Description
1 command proto.devices.CommandConfirmation
2 device_id string
3 timestamp google.protobuf.Timestamp

message CampCardReaderCommandWrite

Write the data to the CampCard. Must be confirmed via CampCardReaderStatusReportRequest.

Field Type Description
1 data proto.devices.CampCardData

The data to write to the card.

message CampCardReaderRegistrationInfo

Field Type Description

message CampCardReaderReportCommandResultResponse

Field Type Description

message CampCardReaderStatus

Field Type Description
1 card_present bool

whether a card is present on the reader, may not be readable

2 card_data optional proto.devices.CampCardData

the data of the card currently on the reader, if readable and present

3 error_code optional string
4 error_message optional string
5 card_id optional string

the unique ID of the card currently on the reader, if readable and present

message CampCardReaderStatusReportRequest

Report current card reader status to the backend. Additionally may report command status via CommandConfirmation.

Field Type Description
1 command optional proto.devices.CommandConfirmation
2 device_id string
3 timestamp google.protobuf.Timestamp
4 status proto.devices.CampCardReaderStatus

message CampCardReaderStatusResponse

Field Type Description

message CommandConfirmation

Field Type Description
1 command_id string
2 timestamp google.protobuf.Timestamp
3 command_state proto.devices.CommandState
4 error_message optional string
5 error_code optional string

message DeviceInfo

Field Type Description
1 device_id string
2 status proto.devices.DeviceStatus
3 status_message optional string
4 status_code optional string

message DeviceRegistration

Registration information sent with a RegisterDeviceControllerRequest.

Field Type Description
1 device_id string

GUID of the device

2 device_label optional string

Initial device name

3 barrier proto.devices.BarrierRegistrationInfo
4 socket_master proto.devices.SocketMasterRegistrationInfo
5 payment_terminal proto.devices.PaymentTerminalRegistrationInfo
6 camp_card_reader proto.devices.CampCardReaderRegistrationInfo
7 camp_card_dispenser proto.devices.CampCardDispenserRegistrationInfo
8 access_control proto.devices.AccessControlRegistrationInfo

message PaymentTerminalCommandPayment

Accept payment at the terminal. Must be confirmed via PaymentTerminalCommandResultRequest.

Field Type Description
1 cents uint32

message PaymentTerminalCommandRefund

Issue a refund at the terminal. Must be confirmed via PaymentTerminalCommandResultRequest.

Field Type Description
1 cents uint32

message PaymentTerminalCommandResponse

Field Type Description
1 command_id string

the ID of this command

2 device_id string

the targeted payment card reader ID

3 payment proto.devices.PaymentTerminalCommandPayment
4 refund proto.devices.PaymentTerminalCommandRefund

message PaymentTerminalCommandResultRequest

Field Type Description
1 command proto.devices.CommandConfirmation
2 device_id string
3 customer_receipt optional string
4 merchant_receipt optional string

message PaymentTerminalCommandResultResponse

Field Type Description

message PaymentTerminalRegistrationInfo

Field Type Description

message RegisterDeviceControllerRequest

A list of managed devices sent by DeviceControllerService.Register.

Field Type Description
1 devices repeated proto.devices.DeviceRegistration

message RegisterDeviceControllerResponse

Field Type Description

message ReportDeviceInfoRequest

Field Type Description
1 timestamp google.protobuf.Timestamp
2 device_infos repeated proto.devices.DeviceInfo

message SocketConfig

Socket configuration

Field Type Description
1 current_enabled optional bool

Indicates if the current limiting feature is enabled

2 current_limit optional uint32

The current limit in milliamps. May be 0 if the limit is not enabled. If current_enabled is false, this value represents the last configured limit.

message SocketConfigReport

Sent with SocketMasterReportConfigRequest.

Field Type Description
1 timestamp google.protobuf.Timestamp
2 socket_id uint32

The ID of the socket

3 config proto.devices.SocketConfig

The current socket configuration

message SocketMasterCommandReadConfig

Request to report the configuration of the specified socket. The socket master is expected to confirm this with a call to SocketMasterService.ReportConfig.

Field Type Description
1 socket_id uint32

The socket ID for which to report the config

message SocketMasterCommandReadStatus

Request to report the current status of the specified socket. The socket master is expected to confirm this with a call to SocketMasterService.ReportStatus.

Field Type Description
1 socket_id uint32

the socket IDs for which to report the status

message SocketMasterCommandReadSwitchState

Request to report the current switch state of the specified socket. The socket master is expected to confirm this with a call to SocketMasterService.ReportSwitchState.

Field Type Description
1 socket_id uint32

the socket IDs for which to report the SwitchState

message SocketMasterCommandResponse

Used by the server to send specific commands to the client using the SocketMasterService.CommandStream.

Field Type Description
1 command_id string

the ID of this command

2 device_id string

the targeted socket tower ID

3 read_config proto.devices.SocketMasterCommandReadConfig
4 set_config proto.devices.SocketMasterCommandSetConfig
5 read_switch_state proto.devices.SocketMasterCommandReadSwitchState
6 read_status proto.devices.SocketMasterCommandReadStatus
7 set_switch_state proto.devices.SocketMasterCommandSetSwitchState
8 set_credits proto.devices.SocketMasterCommandSetCredits
9 set_electricity_credits proto.devices.SocketMasterCommandSetElectricityCredits

message SocketMasterCommandSetConfig

* Request to update the configuration of the specified socket. The socket master is expected to confirm this with a call to SocketMasterService.ReportConfig.

Field Type Description
1 socket_id uint32

The socket ID for which to set the config

2 socket_config proto.devices.SocketConfig

The new socket configuration

message SocketMasterCommandSetCredits

Manipulate the credits for a specific socket. The socket master is expected to confirm this with a call to SocketMasterService.ReportStatus.

Field Type Description
1 socket_id uint32

The target socket ID

2 action proto.devices.SocketCreditAction

The action to perform

3 value uint32

The credit value

message SocketMasterCommandSetElectricityCredits

Manipulate the electricity credits for a specific socket. The socket master is expected to confirm this with a call to SocketMasterService.ReportStatus.

Field Type Description
1 socket_id uint32

The target socket ID

2 action proto.devices.SocketCreditAction

The action to perform

3 value uint32

The electricity credit value

message SocketMasterCommandSetSwitchState

Requests to transition the specified socket to a new SwitchState. The socket master should report the transition to the new state with one or more calls to SocketService.ReportSwitchState.

Field Type Description
1 socket_id uint32

The socket ID for which to set the switch state

2 socket_switch_state proto.devices.SocketSwitchState

The switch state of the desired socket

message SocketMasterRegistrationInfo

Registration information for a socket master device.

Field Type Description
1 socket_count uint32

message SocketMasterReportConfigRequest

Sent by SocketMasterService.ReportConfig.

Field Type Description
1 command optional proto.devices.CommandConfirmation

Has to be set, if this report is the result of a command.

2 device_id string

The ID of the socket tower device

3 socket_configs repeated proto.devices.SocketConfigReport

The configurations of the individual sockets

message SocketMasterReportConfigResponse

Field Type Description

message SocketMasterReportStatusRequest

Sent by SocketMasterService.ReportStatus.

Field Type Description
1 command optional proto.devices.CommandConfirmation

Has to be set, if this report is the result of a command.

2 device_id string

The ID of the socket tower device

3 socket_status_reports repeated proto.devices.SocketStatusReport

The statuses of the individual sockets

message SocketMasterReportStatusResponse

Field Type Description

message SocketMasterReportSwitchStateRequest

Sent by SocketMasterService.ReportSwitchState.

Field Type Description
1 command optional proto.devices.CommandConfirmation

Has to be set, if this report is the result of a command.

2 device_id string

The ID of the socket tower device

3 switch_state_reports repeated proto.devices.SocketSwitchStateReport

The switch states of the individual sockets

message SocketMasterReportSwitchStateResponse

Field Type Description

message SocketStatus

Field Type Description
1 load_current optional uint32

The current load current of the socket in mA

2 consumed_energy optional uint64

The consumed energy of the socket in Wh

3 remaining_credits optional uint32

How many credits are remaining for use.

4 assigned_card optional uint64

UID of the camp-card which is currently assigned to this socket. 0 = no card assigned.

5 remaining_electricity_credits optional uint32

How many electricity credits are remaining for use.

message SocketStatusReport

Field Type Description
1 timestamp google.protobuf.Timestamp
2 socket_id uint32
3 status proto.devices.SocketStatus

message SocketSwitchStateReport

Field Type Description
1 timestamp google.protobuf.Timestamp
2 socket_id uint32

The ID of the socket

3 state proto.devices.SocketSwitchState

the socket switch state that was reached

4 meta_state proto.devices.MetaState

the meta state for this state report

5 error_message optional string

an error message, ignored unless the meta_state is META_STATE_ERROR

Enums

enum AccessControlDirection

Name Number Description
ACCESS_CONTROL_DIRECTION_UNSPECIFIED 0
ACCESS_CONTROL_DIRECTION_ENTER 1
ACCESS_CONTROL_DIRECTION_EXIT 2
ACCESS_CONTROL_DIRECTION_OTHER 3

enum AccessControlRequestResult

Name Number Description
ACCESS_REQUEST_RESULT_UNSPECIFIED 0
ACCESS_REQUEST_RESULT_GRANTED 1
ACCESS_REQUEST_RESULT_DENIED_UNKNOWN 2
ACCESS_REQUEST_RESULT_DENIED_EXPIRED 3
ACCESS_REQUEST_RESULT_DENIED_BLOCKED 4
ACCESS_REQUEST_RESULT_DENIED_OTHER 5

enum BarrierState

Name Number Description
BARRIER_STATE_UNSPECIFIED 0
BARRIER_STATE_OPEN 1
BARRIER_STATE_OPEN_PERMANENTLY 2
BARRIER_STATE_CLOSED 3
BARRIER_STATE_UNKNOWN 4

enum CardMoveAction

Name Number Description
CARD_MOVE_ACTION_UNSPECIFIED 0
CARD_MOVE_ACTION_CAPTURE 1

Move the currently loaded card into the "disposed" stack, i.e. do not return it to the user

CARD_MOVE_ACTION_PRESENT 2

Return the currently loaded card to the user

CARD_MOVE_ACTION_HOLD 3

Instruct the dispenser to keep the current card held in the dispenser If this is not sent as a heartbeat while a card is held, the dispenser will return the card to the user automatically

enum CardPresence

Name Number Description
CARD_PRESENCE_UNSPECIFIED 0
CARD_PRESENCE_NO_CARD 1
CARD_PRESENCE_AT_PRESENTER 2
CARD_PRESENCE_AT_READER 3

enum CardStackState

Name Number Description
CARD_STACK_UNSPECIFIED 0
CARD_STACK_EMPTY 1
CARD_STACK_LOW 2
CARD_STACK_FULL 3

enum CommandState

Name Number Description
COMMAND_STATE_UNSPECIFIED 0
COMMAND_STATE_ACKNOWLEDGE 1

The device has acknowledged the command

COMMAND_STATE_EXECUTING 2

The device is currently executing the command

COMMAND_STATE_SUCCESS 3

The device has successfully executed the command

COMMAND_STATE_ERROR 4

The device failed to execute the command

enum DeviceStatus

Name Number Description
DEVICE_STATUS_UNKNOWN 0
DEVICE_STATUS_AVAILABLE 1
DEVICE_STATUS_UNAVAILABLE 2

No information about the device available (no communication, etc.)

DEVICE_STATUS_DISABLED 3

Device manually disabled

DEVICE_STATUS_ERROR 4

Device has encountered a permanent error that requires intervention

enum MetaState

The MetaState describes the state of a device state. For example a barrier which is currently opening would have a state of OPEN with a meta state of TRANSITIONING. Devices may skip intermediary meta states while moving into a new state. For example a device may skip TRANSITIONING if there is no meaningful time taken for the state transition and immediately report REACHED.

Name Number Description
META_STATE_UNSPECIFIED 0
META_STATE_ACKNOWLEDGE 1

The device simply acknowledges the desired new state

META_STATE_TRANSITIONING 2

The device is transitioning to the state

META_STATE_REACHED 3

The device has successfully reached the state

META_STATE_ERROR 4

The device encountered an error trying to reach the state

enum SocketCreditAction

Name Number Description
SOCKET_CREDIT_UNSPECIFIED 0
SOCKET_CREDIT_SET 1

Sets the credits to the specified value.

SOCKET_CREDIT_ADD 2

Adds the specified value to the current credits.

SOCKET_CREDIT_SUBTRACT 3

Subtracts the specified value from the current credits.

enum SocketSwitchState

Name Number Description
SOCKET_STATE_UNSPECIFIED 0
SOCKET_STATE_OFF 1
SOCKET_STATE_ON 2