aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarin Ivanov <[email protected]>2025-06-09 02:40:13 +0300
committerMarin Ivanov <[email protected]>2025-06-09 02:40:13 +0300
commit09c04108a0cb7020b9016bcef9bfcc34da325747 (patch)
treea0871ecead88f5242b5bad0a0f2a0309c502abb6
parentd1051e943a78b88f76a6cb011d7c9761143874bb (diff)
Use v2.6.10 protobufs
-rw-r--r--meshtastic/admin.pb.go1341
-rw-r--r--meshtastic/admin_vtproto.pb.go1325
-rw-r--r--meshtastic/apponly.pb.go80
-rw-r--r--meshtastic/atak.pb.go397
-rw-r--r--meshtastic/atak_vtproto.pb.go101
-rw-r--r--meshtastic/cannedmessages.pb.go70
-rw-r--r--meshtastic/channel.pb.go184
-rw-r--r--meshtastic/channel_vtproto.pb.go33
-rw-r--r--meshtastic/clientonly.pb.go146
-rw-r--r--meshtastic/clientonly_vtproto.pb.go138
-rw-r--r--meshtastic/config.pb.go1579
-rw-r--r--meshtastic/config_vtproto.pb.go999
-rw-r--r--meshtastic/connection_status.pb.go306
-rw-r--r--meshtastic/device_ui.pb.go809
-rw-r--r--meshtastic/device_ui_vtproto.pb.go1617
-rw-r--r--meshtastic/deviceonly.pb.go1096
-rw-r--r--meshtastic/deviceonly_vtproto.pb.go1612
-rw-r--r--meshtastic/interdevice.pb.go372
-rw-r--r--meshtastic/interdevice_vtproto.pb.go463
-rw-r--r--meshtastic/localonly.pb.go294
-rw-r--r--meshtastic/localonly_vtproto.pb.go50
-rw-r--r--meshtastic/mesh.pb.go3473
-rw-r--r--meshtastic/mesh_vtproto.pb.go3668
-rw-r--r--meshtastic/module_config.pb.go1587
-rw-r--r--meshtastic/module_config_vtproto.pb.go497
-rw-r--r--meshtastic/mqtt.pb.go295
-rw-r--r--meshtastic/mqtt_vtproto.pb.go517
-rw-r--r--meshtastic/nanopb.pb.go849
-rw-r--r--meshtastic/nanopb_vtproto.pb.go1125
-rw-r--r--meshtastic/paxcount.pb.go72
-rw-r--r--meshtastic/portnums.pb.go129
-rw-r--r--meshtastic/powermon.pb.go418
-rw-r--r--meshtastic/powermon_vtproto.pb.go257
-rw-r--r--meshtastic/remote_hardware.pb.go92
-rw-r--r--meshtastic/rtttl.pb.go68
-rw-r--r--meshtastic/storeforward.pb.go305
-rw-r--r--meshtastic/telemetry.pb.go1528
-rw-r--r--meshtastic/telemetry_vtproto.pb.go2046
-rw-r--r--meshtastic/xmodem.pb.go95
m---------protobufs0
40 files changed, 23730 insertions, 6303 deletions
diff --git a/meshtastic/admin.pb.go b/meshtastic/admin.pb.go
index 1f25eb8..94b9506 100644
--- a/meshtastic/admin.pb.go
+++ b/meshtastic/admin.pb.go
@@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.32.0
-// protoc v4.25.2
+// protoc-gen-go v1.36.6
+// protoc v3.21.12
// source: meshtastic/admin.proto
package generated
@@ -11,6 +11,7 @@ import (
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
+ unsafe "unsafe"
)
const (
@@ -38,6 +39,12 @@ const (
AdminMessage_LORA_CONFIG AdminMessage_ConfigType = 5
// TODO: REPLACE
AdminMessage_BLUETOOTH_CONFIG AdminMessage_ConfigType = 6
+ // TODO: REPLACE
+ AdminMessage_SECURITY_CONFIG AdminMessage_ConfigType = 7
+ // Session key config
+ AdminMessage_SESSIONKEY_CONFIG AdminMessage_ConfigType = 8
+ // device-ui config
+ AdminMessage_DEVICEUI_CONFIG AdminMessage_ConfigType = 9
)
// Enum value maps for AdminMessage_ConfigType.
@@ -50,15 +57,21 @@ var (
4: "DISPLAY_CONFIG",
5: "LORA_CONFIG",
6: "BLUETOOTH_CONFIG",
+ 7: "SECURITY_CONFIG",
+ 8: "SESSIONKEY_CONFIG",
+ 9: "DEVICEUI_CONFIG",
}
AdminMessage_ConfigType_value = map[string]int32{
- "DEVICE_CONFIG": 0,
- "POSITION_CONFIG": 1,
- "POWER_CONFIG": 2,
- "NETWORK_CONFIG": 3,
- "DISPLAY_CONFIG": 4,
- "LORA_CONFIG": 5,
- "BLUETOOTH_CONFIG": 6,
+ "DEVICE_CONFIG": 0,
+ "POSITION_CONFIG": 1,
+ "POWER_CONFIG": 2,
+ "NETWORK_CONFIG": 3,
+ "DISPLAY_CONFIG": 4,
+ "LORA_CONFIG": 5,
+ "BLUETOOTH_CONFIG": 6,
+ "SECURITY_CONFIG": 7,
+ "SESSIONKEY_CONFIG": 8,
+ "DEVICEUI_CONFIG": 9,
}
)
@@ -182,17 +195,124 @@ func (AdminMessage_ModuleConfigType) EnumDescriptor() ([]byte, []int) {
return file_meshtastic_admin_proto_rawDescGZIP(), []int{0, 1}
}
+type AdminMessage_BackupLocation int32
+
+const (
+ // Backup to the internal flash
+ AdminMessage_FLASH AdminMessage_BackupLocation = 0
+ // Backup to the SD card
+ AdminMessage_SD AdminMessage_BackupLocation = 1
+)
+
+// Enum value maps for AdminMessage_BackupLocation.
+var (
+ AdminMessage_BackupLocation_name = map[int32]string{
+ 0: "FLASH",
+ 1: "SD",
+ }
+ AdminMessage_BackupLocation_value = map[string]int32{
+ "FLASH": 0,
+ "SD": 1,
+ }
+)
+
+func (x AdminMessage_BackupLocation) Enum() *AdminMessage_BackupLocation {
+ p := new(AdminMessage_BackupLocation)
+ *p = x
+ return p
+}
+
+func (x AdminMessage_BackupLocation) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (AdminMessage_BackupLocation) Descriptor() protoreflect.EnumDescriptor {
+ return file_meshtastic_admin_proto_enumTypes[2].Descriptor()
+}
+
+func (AdminMessage_BackupLocation) Type() protoreflect.EnumType {
+ return &file_meshtastic_admin_proto_enumTypes[2]
+}
+
+func (x AdminMessage_BackupLocation) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use AdminMessage_BackupLocation.Descriptor instead.
+func (AdminMessage_BackupLocation) EnumDescriptor() ([]byte, []int) {
+ return file_meshtastic_admin_proto_rawDescGZIP(), []int{0, 2}
+}
+
+// Three stages of this request.
+type KeyVerificationAdmin_MessageType int32
+
+const (
+ // This is the first stage, where a client initiates
+ KeyVerificationAdmin_INITIATE_VERIFICATION KeyVerificationAdmin_MessageType = 0
+ // After the nonce has been returned over the mesh, the client prompts for the security number
+ // And uses this message to provide it to the node.
+ KeyVerificationAdmin_PROVIDE_SECURITY_NUMBER KeyVerificationAdmin_MessageType = 1
+ // Once the user has compared the verification message, this message notifies the node.
+ KeyVerificationAdmin_DO_VERIFY KeyVerificationAdmin_MessageType = 2
+ // This is the cancel path, can be taken at any point
+ KeyVerificationAdmin_DO_NOT_VERIFY KeyVerificationAdmin_MessageType = 3
+)
+
+// Enum value maps for KeyVerificationAdmin_MessageType.
+var (
+ KeyVerificationAdmin_MessageType_name = map[int32]string{
+ 0: "INITIATE_VERIFICATION",
+ 1: "PROVIDE_SECURITY_NUMBER",
+ 2: "DO_VERIFY",
+ 3: "DO_NOT_VERIFY",
+ }
+ KeyVerificationAdmin_MessageType_value = map[string]int32{
+ "INITIATE_VERIFICATION": 0,
+ "PROVIDE_SECURITY_NUMBER": 1,
+ "DO_VERIFY": 2,
+ "DO_NOT_VERIFY": 3,
+ }
+)
+
+func (x KeyVerificationAdmin_MessageType) Enum() *KeyVerificationAdmin_MessageType {
+ p := new(KeyVerificationAdmin_MessageType)
+ *p = x
+ return p
+}
+
+func (x KeyVerificationAdmin_MessageType) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (KeyVerificationAdmin_MessageType) Descriptor() protoreflect.EnumDescriptor {
+ return file_meshtastic_admin_proto_enumTypes[3].Descriptor()
+}
+
+func (KeyVerificationAdmin_MessageType) Type() protoreflect.EnumType {
+ return &file_meshtastic_admin_proto_enumTypes[3]
+}
+
+func (x KeyVerificationAdmin_MessageType) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use KeyVerificationAdmin_MessageType.Descriptor instead.
+func (KeyVerificationAdmin_MessageType) EnumDescriptor() ([]byte, []int) {
+ return file_meshtastic_admin_proto_rawDescGZIP(), []int{4, 0}
+}
+
// This message is handled by the Admin module and is responsible for all settings/channel read/write operations.
// This message is used to do settings operations to both remote AND local nodes.
// (Prior to 1.2 these operations were done via special ToRadio operations)
type AdminMessage struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // The node generates this key and sends it with any get_x_response packets.
+ // The client MUST include the same key with any set_x commands. Key expires after 300 seconds.
+ // Prevents replay attacks for admin messages.
+ SessionPasskey []byte `protobuf:"bytes,101,opt,name=session_passkey,json=sessionPasskey,proto3" json:"session_passkey,omitempty"`
// TODO: REPLACE
//
- // Types that are assignable to PayloadVariant:
+ // Types that are valid to be assigned to PayloadVariant:
//
// *AdminMessage_GetChannelRequest
// *AdminMessage_GetChannelResponse
@@ -215,6 +335,10 @@ type AdminMessage struct {
// *AdminMessage_GetNodeRemoteHardwarePinsResponse
// *AdminMessage_EnterDfuModeRequest
// *AdminMessage_DeleteFileRequest
+ // *AdminMessage_SetScale
+ // *AdminMessage_BackupPreferences
+ // *AdminMessage_RestorePreferences
+ // *AdminMessage_RemoveBackupPreferences
// *AdminMessage_SetOwner
// *AdminMessage_SetChannel
// *AdminMessage_SetConfig
@@ -222,24 +346,37 @@ type AdminMessage struct {
// *AdminMessage_SetCannedMessageModuleMessages
// *AdminMessage_SetRingtoneMessage
// *AdminMessage_RemoveByNodenum
+ // *AdminMessage_SetFavoriteNode
+ // *AdminMessage_RemoveFavoriteNode
+ // *AdminMessage_SetFixedPosition
+ // *AdminMessage_RemoveFixedPosition
+ // *AdminMessage_SetTimeOnly
+ // *AdminMessage_GetUiConfigRequest
+ // *AdminMessage_GetUiConfigResponse
+ // *AdminMessage_StoreUiConfig
+ // *AdminMessage_SetIgnoredNode
+ // *AdminMessage_RemoveIgnoredNode
// *AdminMessage_BeginEditSettings
// *AdminMessage_CommitEditSettings
+ // *AdminMessage_AddContact
+ // *AdminMessage_KeyVerification
+ // *AdminMessage_FactoryResetDevice
// *AdminMessage_RebootOtaSeconds
// *AdminMessage_ExitSimulator
// *AdminMessage_RebootSeconds
// *AdminMessage_ShutdownSeconds
- // *AdminMessage_FactoryReset
+ // *AdminMessage_FactoryResetConfig
// *AdminMessage_NodedbReset
PayloadVariant isAdminMessage_PayloadVariant `protobuf_oneof:"payload_variant"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *AdminMessage) Reset() {
*x = AdminMessage{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_admin_proto_msgTypes[0]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_admin_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *AdminMessage) String() string {
@@ -250,7 +387,7 @@ func (*AdminMessage) ProtoMessage() {}
func (x *AdminMessage) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_admin_proto_msgTypes[0]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -265,261 +402,493 @@ func (*AdminMessage) Descriptor() ([]byte, []int) {
return file_meshtastic_admin_proto_rawDescGZIP(), []int{0}
}
-func (m *AdminMessage) GetPayloadVariant() isAdminMessage_PayloadVariant {
- if m != nil {
- return m.PayloadVariant
+func (x *AdminMessage) GetSessionPasskey() []byte {
+ if x != nil {
+ return x.SessionPasskey
+ }
+ return nil
+}
+
+func (x *AdminMessage) GetPayloadVariant() isAdminMessage_PayloadVariant {
+ if x != nil {
+ return x.PayloadVariant
}
return nil
}
func (x *AdminMessage) GetGetChannelRequest() uint32 {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_GetChannelRequest); ok {
- return x.GetChannelRequest
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_GetChannelRequest); ok {
+ return x.GetChannelRequest
+ }
}
return 0
}
func (x *AdminMessage) GetGetChannelResponse() *Channel {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_GetChannelResponse); ok {
- return x.GetChannelResponse
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_GetChannelResponse); ok {
+ return x.GetChannelResponse
+ }
}
return nil
}
func (x *AdminMessage) GetGetOwnerRequest() bool {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_GetOwnerRequest); ok {
- return x.GetOwnerRequest
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_GetOwnerRequest); ok {
+ return x.GetOwnerRequest
+ }
}
return false
}
func (x *AdminMessage) GetGetOwnerResponse() *User {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_GetOwnerResponse); ok {
- return x.GetOwnerResponse
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_GetOwnerResponse); ok {
+ return x.GetOwnerResponse
+ }
}
return nil
}
func (x *AdminMessage) GetGetConfigRequest() AdminMessage_ConfigType {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_GetConfigRequest); ok {
- return x.GetConfigRequest
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_GetConfigRequest); ok {
+ return x.GetConfigRequest
+ }
}
return AdminMessage_DEVICE_CONFIG
}
func (x *AdminMessage) GetGetConfigResponse() *Config {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_GetConfigResponse); ok {
- return x.GetConfigResponse
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_GetConfigResponse); ok {
+ return x.GetConfigResponse
+ }
}
return nil
}
func (x *AdminMessage) GetGetModuleConfigRequest() AdminMessage_ModuleConfigType {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_GetModuleConfigRequest); ok {
- return x.GetModuleConfigRequest
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_GetModuleConfigRequest); ok {
+ return x.GetModuleConfigRequest
+ }
}
return AdminMessage_MQTT_CONFIG
}
func (x *AdminMessage) GetGetModuleConfigResponse() *ModuleConfig {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_GetModuleConfigResponse); ok {
- return x.GetModuleConfigResponse
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_GetModuleConfigResponse); ok {
+ return x.GetModuleConfigResponse
+ }
}
return nil
}
func (x *AdminMessage) GetGetCannedMessageModuleMessagesRequest() bool {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_GetCannedMessageModuleMessagesRequest); ok {
- return x.GetCannedMessageModuleMessagesRequest
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_GetCannedMessageModuleMessagesRequest); ok {
+ return x.GetCannedMessageModuleMessagesRequest
+ }
}
return false
}
func (x *AdminMessage) GetGetCannedMessageModuleMessagesResponse() string {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_GetCannedMessageModuleMessagesResponse); ok {
- return x.GetCannedMessageModuleMessagesResponse
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_GetCannedMessageModuleMessagesResponse); ok {
+ return x.GetCannedMessageModuleMessagesResponse
+ }
}
return ""
}
func (x *AdminMessage) GetGetDeviceMetadataRequest() bool {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_GetDeviceMetadataRequest); ok {
- return x.GetDeviceMetadataRequest
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_GetDeviceMetadataRequest); ok {
+ return x.GetDeviceMetadataRequest
+ }
}
return false
}
func (x *AdminMessage) GetGetDeviceMetadataResponse() *DeviceMetadata {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_GetDeviceMetadataResponse); ok {
- return x.GetDeviceMetadataResponse
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_GetDeviceMetadataResponse); ok {
+ return x.GetDeviceMetadataResponse
+ }
}
return nil
}
func (x *AdminMessage) GetGetRingtoneRequest() bool {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_GetRingtoneRequest); ok {
- return x.GetRingtoneRequest
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_GetRingtoneRequest); ok {
+ return x.GetRingtoneRequest
+ }
}
return false
}
func (x *AdminMessage) GetGetRingtoneResponse() string {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_GetRingtoneResponse); ok {
- return x.GetRingtoneResponse
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_GetRingtoneResponse); ok {
+ return x.GetRingtoneResponse
+ }
}
return ""
}
func (x *AdminMessage) GetGetDeviceConnectionStatusRequest() bool {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_GetDeviceConnectionStatusRequest); ok {
- return x.GetDeviceConnectionStatusRequest
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_GetDeviceConnectionStatusRequest); ok {
+ return x.GetDeviceConnectionStatusRequest
+ }
}
return false
}
func (x *AdminMessage) GetGetDeviceConnectionStatusResponse() *DeviceConnectionStatus {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_GetDeviceConnectionStatusResponse); ok {
- return x.GetDeviceConnectionStatusResponse
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_GetDeviceConnectionStatusResponse); ok {
+ return x.GetDeviceConnectionStatusResponse
+ }
}
return nil
}
func (x *AdminMessage) GetSetHamMode() *HamParameters {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_SetHamMode); ok {
- return x.SetHamMode
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_SetHamMode); ok {
+ return x.SetHamMode
+ }
}
return nil
}
func (x *AdminMessage) GetGetNodeRemoteHardwarePinsRequest() bool {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_GetNodeRemoteHardwarePinsRequest); ok {
- return x.GetNodeRemoteHardwarePinsRequest
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_GetNodeRemoteHardwarePinsRequest); ok {
+ return x.GetNodeRemoteHardwarePinsRequest
+ }
}
return false
}
func (x *AdminMessage) GetGetNodeRemoteHardwarePinsResponse() *NodeRemoteHardwarePinsResponse {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_GetNodeRemoteHardwarePinsResponse); ok {
- return x.GetNodeRemoteHardwarePinsResponse
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_GetNodeRemoteHardwarePinsResponse); ok {
+ return x.GetNodeRemoteHardwarePinsResponse
+ }
}
return nil
}
func (x *AdminMessage) GetEnterDfuModeRequest() bool {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_EnterDfuModeRequest); ok {
- return x.EnterDfuModeRequest
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_EnterDfuModeRequest); ok {
+ return x.EnterDfuModeRequest
+ }
}
return false
}
func (x *AdminMessage) GetDeleteFileRequest() string {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_DeleteFileRequest); ok {
- return x.DeleteFileRequest
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_DeleteFileRequest); ok {
+ return x.DeleteFileRequest
+ }
}
return ""
}
+func (x *AdminMessage) GetSetScale() uint32 {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_SetScale); ok {
+ return x.SetScale
+ }
+ }
+ return 0
+}
+
+func (x *AdminMessage) GetBackupPreferences() AdminMessage_BackupLocation {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_BackupPreferences); ok {
+ return x.BackupPreferences
+ }
+ }
+ return AdminMessage_FLASH
+}
+
+func (x *AdminMessage) GetRestorePreferences() AdminMessage_BackupLocation {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_RestorePreferences); ok {
+ return x.RestorePreferences
+ }
+ }
+ return AdminMessage_FLASH
+}
+
+func (x *AdminMessage) GetRemoveBackupPreferences() AdminMessage_BackupLocation {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_RemoveBackupPreferences); ok {
+ return x.RemoveBackupPreferences
+ }
+ }
+ return AdminMessage_FLASH
+}
+
func (x *AdminMessage) GetSetOwner() *User {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_SetOwner); ok {
- return x.SetOwner
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_SetOwner); ok {
+ return x.SetOwner
+ }
}
return nil
}
func (x *AdminMessage) GetSetChannel() *Channel {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_SetChannel); ok {
- return x.SetChannel
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_SetChannel); ok {
+ return x.SetChannel
+ }
}
return nil
}
func (x *AdminMessage) GetSetConfig() *Config {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_SetConfig); ok {
- return x.SetConfig
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_SetConfig); ok {
+ return x.SetConfig
+ }
}
return nil
}
func (x *AdminMessage) GetSetModuleConfig() *ModuleConfig {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_SetModuleConfig); ok {
- return x.SetModuleConfig
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_SetModuleConfig); ok {
+ return x.SetModuleConfig
+ }
}
return nil
}
func (x *AdminMessage) GetSetCannedMessageModuleMessages() string {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_SetCannedMessageModuleMessages); ok {
- return x.SetCannedMessageModuleMessages
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_SetCannedMessageModuleMessages); ok {
+ return x.SetCannedMessageModuleMessages
+ }
}
return ""
}
func (x *AdminMessage) GetSetRingtoneMessage() string {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_SetRingtoneMessage); ok {
- return x.SetRingtoneMessage
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_SetRingtoneMessage); ok {
+ return x.SetRingtoneMessage
+ }
}
return ""
}
func (x *AdminMessage) GetRemoveByNodenum() uint32 {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_RemoveByNodenum); ok {
- return x.RemoveByNodenum
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_RemoveByNodenum); ok {
+ return x.RemoveByNodenum
+ }
+ }
+ return 0
+}
+
+func (x *AdminMessage) GetSetFavoriteNode() uint32 {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_SetFavoriteNode); ok {
+ return x.SetFavoriteNode
+ }
+ }
+ return 0
+}
+
+func (x *AdminMessage) GetRemoveFavoriteNode() uint32 {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_RemoveFavoriteNode); ok {
+ return x.RemoveFavoriteNode
+ }
+ }
+ return 0
+}
+
+func (x *AdminMessage) GetSetFixedPosition() *Position {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_SetFixedPosition); ok {
+ return x.SetFixedPosition
+ }
+ }
+ return nil
+}
+
+func (x *AdminMessage) GetRemoveFixedPosition() bool {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_RemoveFixedPosition); ok {
+ return x.RemoveFixedPosition
+ }
+ }
+ return false
+}
+
+func (x *AdminMessage) GetSetTimeOnly() uint32 {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_SetTimeOnly); ok {
+ return x.SetTimeOnly
+ }
+ }
+ return 0
+}
+
+func (x *AdminMessage) GetGetUiConfigRequest() bool {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_GetUiConfigRequest); ok {
+ return x.GetUiConfigRequest
+ }
+ }
+ return false
+}
+
+func (x *AdminMessage) GetGetUiConfigResponse() *DeviceUIConfig {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_GetUiConfigResponse); ok {
+ return x.GetUiConfigResponse
+ }
+ }
+ return nil
+}
+
+func (x *AdminMessage) GetStoreUiConfig() *DeviceUIConfig {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_StoreUiConfig); ok {
+ return x.StoreUiConfig
+ }
+ }
+ return nil
+}
+
+func (x *AdminMessage) GetSetIgnoredNode() uint32 {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_SetIgnoredNode); ok {
+ return x.SetIgnoredNode
+ }
+ }
+ return 0
+}
+
+func (x *AdminMessage) GetRemoveIgnoredNode() uint32 {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_RemoveIgnoredNode); ok {
+ return x.RemoveIgnoredNode
+ }
}
return 0
}
func (x *AdminMessage) GetBeginEditSettings() bool {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_BeginEditSettings); ok {
- return x.BeginEditSettings
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_BeginEditSettings); ok {
+ return x.BeginEditSettings
+ }
}
return false
}
func (x *AdminMessage) GetCommitEditSettings() bool {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_CommitEditSettings); ok {
- return x.CommitEditSettings
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_CommitEditSettings); ok {
+ return x.CommitEditSettings
+ }
}
return false
}
+func (x *AdminMessage) GetAddContact() *SharedContact {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_AddContact); ok {
+ return x.AddContact
+ }
+ }
+ return nil
+}
+
+func (x *AdminMessage) GetKeyVerification() *KeyVerificationAdmin {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_KeyVerification); ok {
+ return x.KeyVerification
+ }
+ }
+ return nil
+}
+
+func (x *AdminMessage) GetFactoryResetDevice() int32 {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_FactoryResetDevice); ok {
+ return x.FactoryResetDevice
+ }
+ }
+ return 0
+}
+
func (x *AdminMessage) GetRebootOtaSeconds() int32 {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_RebootOtaSeconds); ok {
- return x.RebootOtaSeconds
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_RebootOtaSeconds); ok {
+ return x.RebootOtaSeconds
+ }
}
return 0
}
func (x *AdminMessage) GetExitSimulator() bool {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_ExitSimulator); ok {
- return x.ExitSimulator
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_ExitSimulator); ok {
+ return x.ExitSimulator
+ }
}
return false
}
func (x *AdminMessage) GetRebootSeconds() int32 {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_RebootSeconds); ok {
- return x.RebootSeconds
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_RebootSeconds); ok {
+ return x.RebootSeconds
+ }
}
return 0
}
func (x *AdminMessage) GetShutdownSeconds() int32 {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_ShutdownSeconds); ok {
- return x.ShutdownSeconds
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_ShutdownSeconds); ok {
+ return x.ShutdownSeconds
+ }
}
return 0
}
-func (x *AdminMessage) GetFactoryReset() int32 {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_FactoryReset); ok {
- return x.FactoryReset
+func (x *AdminMessage) GetFactoryResetConfig() int32 {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_FactoryResetConfig); ok {
+ return x.FactoryResetConfig
+ }
}
return 0
}
func (x *AdminMessage) GetNodedbReset() int32 {
- if x, ok := x.GetPayloadVariant().(*AdminMessage_NodedbReset); ok {
- return x.NodedbReset
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*AdminMessage_NodedbReset); ok {
+ return x.NodedbReset
+ }
}
return 0
}
@@ -635,6 +1004,26 @@ type AdminMessage_DeleteFileRequest struct {
DeleteFileRequest string `protobuf:"bytes,22,opt,name=delete_file_request,json=deleteFileRequest,proto3,oneof"`
}
+type AdminMessage_SetScale struct {
+ // Set zero and offset for scale chips
+ SetScale uint32 `protobuf:"varint,23,opt,name=set_scale,json=setScale,proto3,oneof"`
+}
+
+type AdminMessage_BackupPreferences struct {
+ // Backup the node's preferences
+ BackupPreferences AdminMessage_BackupLocation `protobuf:"varint,24,opt,name=backup_preferences,json=backupPreferences,proto3,enum=meshtastic.AdminMessage_BackupLocation,oneof"`
+}
+
+type AdminMessage_RestorePreferences struct {
+ // Restore the node's preferences
+ RestorePreferences AdminMessage_BackupLocation `protobuf:"varint,25,opt,name=restore_preferences,json=restorePreferences,proto3,enum=meshtastic.AdminMessage_BackupLocation,oneof"`
+}
+
+type AdminMessage_RemoveBackupPreferences struct {
+ // Remove backups of the node's preferences
+ RemoveBackupPreferences AdminMessage_BackupLocation `protobuf:"varint,26,opt,name=remove_backup_preferences,json=removeBackupPreferences,proto3,enum=meshtastic.AdminMessage_BackupLocation,oneof"`
+}
+
type AdminMessage_SetOwner struct {
// Set the owner for this node
SetOwner *User `protobuf:"bytes,32,opt,name=set_owner,json=setOwner,proto3,oneof"`
@@ -674,6 +1063,57 @@ type AdminMessage_RemoveByNodenum struct {
RemoveByNodenum uint32 `protobuf:"varint,38,opt,name=remove_by_nodenum,json=removeByNodenum,proto3,oneof"`
}
+type AdminMessage_SetFavoriteNode struct {
+ // Set specified node-num to be favorited on the NodeDB on the device
+ SetFavoriteNode uint32 `protobuf:"varint,39,opt,name=set_favorite_node,json=setFavoriteNode,proto3,oneof"`
+}
+
+type AdminMessage_RemoveFavoriteNode struct {
+ // Set specified node-num to be un-favorited on the NodeDB on the device
+ RemoveFavoriteNode uint32 `protobuf:"varint,40,opt,name=remove_favorite_node,json=removeFavoriteNode,proto3,oneof"`
+}
+
+type AdminMessage_SetFixedPosition struct {
+ // Set fixed position data on the node and then set the position.fixed_position = true
+ SetFixedPosition *Position `protobuf:"bytes,41,opt,name=set_fixed_position,json=setFixedPosition,proto3,oneof"`
+}
+
+type AdminMessage_RemoveFixedPosition struct {
+ // Clear fixed position coordinates and then set position.fixed_position = false
+ RemoveFixedPosition bool `protobuf:"varint,42,opt,name=remove_fixed_position,json=removeFixedPosition,proto3,oneof"`
+}
+
+type AdminMessage_SetTimeOnly struct {
+ // Set time only on the node
+ // Convenience method to set the time on the node (as Net quality) without any other position data
+ SetTimeOnly uint32 `protobuf:"fixed32,43,opt,name=set_time_only,json=setTimeOnly,proto3,oneof"`
+}
+
+type AdminMessage_GetUiConfigRequest struct {
+ // Tell the node to send the stored ui data.
+ GetUiConfigRequest bool `protobuf:"varint,44,opt,name=get_ui_config_request,json=getUiConfigRequest,proto3,oneof"`
+}
+
+type AdminMessage_GetUiConfigResponse struct {
+ // Reply stored device ui data.
+ GetUiConfigResponse *DeviceUIConfig `protobuf:"bytes,45,opt,name=get_ui_config_response,json=getUiConfigResponse,proto3,oneof"`
+}
+
+type AdminMessage_StoreUiConfig struct {
+ // Tell the node to store UI data persistently.
+ StoreUiConfig *DeviceUIConfig `protobuf:"bytes,46,opt,name=store_ui_config,json=storeUiConfig,proto3,oneof"`
+}
+
+type AdminMessage_SetIgnoredNode struct {
+ // Set specified node-num to be ignored on the NodeDB on the device
+ SetIgnoredNode uint32 `protobuf:"varint,47,opt,name=set_ignored_node,json=setIgnoredNode,proto3,oneof"`
+}
+
+type AdminMessage_RemoveIgnoredNode struct {
+ // Set specified node-num to be un-ignored on the NodeDB on the device
+ RemoveIgnoredNode uint32 `protobuf:"varint,48,opt,name=remove_ignored_node,json=removeIgnoredNode,proto3,oneof"`
+}
+
type AdminMessage_BeginEditSettings struct {
// Begins an edit transaction for config, module config, owner, and channel settings changes
// This will delay the standard *implicit* save to the file system and subsequent reboot behavior until committed (commit_edit_settings)
@@ -685,6 +1125,21 @@ type AdminMessage_CommitEditSettings struct {
CommitEditSettings bool `protobuf:"varint,65,opt,name=commit_edit_settings,json=commitEditSettings,proto3,oneof"`
}
+type AdminMessage_AddContact struct {
+ // Add a contact (User) to the nodedb
+ AddContact *SharedContact `protobuf:"bytes,66,opt,name=add_contact,json=addContact,proto3,oneof"`
+}
+
+type AdminMessage_KeyVerification struct {
+ // Initiate or respond to a key verification request
+ KeyVerification *KeyVerificationAdmin `protobuf:"bytes,67,opt,name=key_verification,json=keyVerification,proto3,oneof"`
+}
+
+type AdminMessage_FactoryResetDevice struct {
+ // Tell the node to factory reset config everything; all device state and configuration will be returned to factory defaults and BLE bonds will be cleared.
+ FactoryResetDevice int32 `protobuf:"varint,94,opt,name=factory_reset_device,json=factoryResetDevice,proto3,oneof"`
+}
+
type AdminMessage_RebootOtaSeconds struct {
// Tell the node to reboot into the OTA Firmware in this many seconds (or <0 to cancel reboot)
// Only Implemented for ESP32 Devices. This needs to be issued to send a new main firmware via bluetooth.
@@ -707,9 +1162,9 @@ type AdminMessage_ShutdownSeconds struct {
ShutdownSeconds int32 `protobuf:"varint,98,opt,name=shutdown_seconds,json=shutdownSeconds,proto3,oneof"`
}
-type AdminMessage_FactoryReset struct {
- // Tell the node to factory reset, all device settings will be returned to factory defaults.
- FactoryReset int32 `protobuf:"varint,99,opt,name=factory_reset,json=factoryReset,proto3,oneof"`
+type AdminMessage_FactoryResetConfig struct {
+ // Tell the node to factory reset config; all device state and configuration will be returned to factory defaults; BLE bonds will be preserved.
+ FactoryResetConfig int32 `protobuf:"varint,99,opt,name=factory_reset_config,json=factoryResetConfig,proto3,oneof"`
}
type AdminMessage_NodedbReset struct {
@@ -759,6 +1214,14 @@ func (*AdminMessage_EnterDfuModeRequest) isAdminMessage_PayloadVariant() {}
func (*AdminMessage_DeleteFileRequest) isAdminMessage_PayloadVariant() {}
+func (*AdminMessage_SetScale) isAdminMessage_PayloadVariant() {}
+
+func (*AdminMessage_BackupPreferences) isAdminMessage_PayloadVariant() {}
+
+func (*AdminMessage_RestorePreferences) isAdminMessage_PayloadVariant() {}
+
+func (*AdminMessage_RemoveBackupPreferences) isAdminMessage_PayloadVariant() {}
+
func (*AdminMessage_SetOwner) isAdminMessage_PayloadVariant() {}
func (*AdminMessage_SetChannel) isAdminMessage_PayloadVariant() {}
@@ -773,10 +1236,36 @@ func (*AdminMessage_SetRingtoneMessage) isAdminMessage_PayloadVariant() {}
func (*AdminMessage_RemoveByNodenum) isAdminMessage_PayloadVariant() {}
+func (*AdminMessage_SetFavoriteNode) isAdminMessage_PayloadVariant() {}
+
+func (*AdminMessage_RemoveFavoriteNode) isAdminMessage_PayloadVariant() {}
+
+func (*AdminMessage_SetFixedPosition) isAdminMessage_PayloadVariant() {}
+
+func (*AdminMessage_RemoveFixedPosition) isAdminMessage_PayloadVariant() {}
+
+func (*AdminMessage_SetTimeOnly) isAdminMessage_PayloadVariant() {}
+
+func (*AdminMessage_GetUiConfigRequest) isAdminMessage_PayloadVariant() {}
+
+func (*AdminMessage_GetUiConfigResponse) isAdminMessage_PayloadVariant() {}
+
+func (*AdminMessage_StoreUiConfig) isAdminMessage_PayloadVariant() {}
+
+func (*AdminMessage_SetIgnoredNode) isAdminMessage_PayloadVariant() {}
+
+func (*AdminMessage_RemoveIgnoredNode) isAdminMessage_PayloadVariant() {}
+
func (*AdminMessage_BeginEditSettings) isAdminMessage_PayloadVariant() {}
func (*AdminMessage_CommitEditSettings) isAdminMessage_PayloadVariant() {}
+func (*AdminMessage_AddContact) isAdminMessage_PayloadVariant() {}
+
+func (*AdminMessage_KeyVerification) isAdminMessage_PayloadVariant() {}
+
+func (*AdminMessage_FactoryResetDevice) isAdminMessage_PayloadVariant() {}
+
func (*AdminMessage_RebootOtaSeconds) isAdminMessage_PayloadVariant() {}
func (*AdminMessage_ExitSimulator) isAdminMessage_PayloadVariant() {}
@@ -785,16 +1274,13 @@ func (*AdminMessage_RebootSeconds) isAdminMessage_PayloadVariant() {}
func (*AdminMessage_ShutdownSeconds) isAdminMessage_PayloadVariant() {}
-func (*AdminMessage_FactoryReset) isAdminMessage_PayloadVariant() {}
+func (*AdminMessage_FactoryResetConfig) isAdminMessage_PayloadVariant() {}
func (*AdminMessage_NodedbReset) isAdminMessage_PayloadVariant() {}
// Parameters for setting up Meshtastic for ameteur radio usage
type HamParameters struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Amateur radio call sign, eg. KD2ABC
CallSign string `protobuf:"bytes,1,opt,name=call_sign,json=callSign,proto3" json:"call_sign,omitempty"`
// Transmit power in dBm at the LoRA transceiver, not including any amplification
@@ -804,16 +1290,16 @@ type HamParameters struct {
// Ensure your radio is capable of operating of the selected frequency before setting this.
Frequency float32 `protobuf:"fixed32,3,opt,name=frequency,proto3" json:"frequency,omitempty"`
// Optional short name of user
- ShortName string `protobuf:"bytes,4,opt,name=short_name,json=shortName,proto3" json:"short_name,omitempty"`
+ ShortName string `protobuf:"bytes,4,opt,name=short_name,json=shortName,proto3" json:"short_name,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *HamParameters) Reset() {
*x = HamParameters{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_admin_proto_msgTypes[1]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_admin_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *HamParameters) String() string {
@@ -824,7 +1310,7 @@ func (*HamParameters) ProtoMessage() {}
func (x *HamParameters) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_admin_proto_msgTypes[1]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -869,21 +1355,18 @@ func (x *HamParameters) GetShortName() string {
// Response envelope for node_remote_hardware_pins
type NodeRemoteHardwarePinsResponse struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Nodes and their respective remote hardware GPIO pins
NodeRemoteHardwarePins []*NodeRemoteHardwarePin `protobuf:"bytes,1,rep,name=node_remote_hardware_pins,json=nodeRemoteHardwarePins,proto3" json:"node_remote_hardware_pins,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *NodeRemoteHardwarePinsResponse) Reset() {
*x = NodeRemoteHardwarePinsResponse{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_admin_proto_msgTypes[2]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_admin_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *NodeRemoteHardwarePinsResponse) String() string {
@@ -894,7 +1377,7 @@ func (*NodeRemoteHardwarePinsResponse) ProtoMessage() {}
func (x *NodeRemoteHardwarePinsResponse) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_admin_proto_msgTypes[2]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -916,277 +1399,318 @@ func (x *NodeRemoteHardwarePinsResponse) GetNodeRemoteHardwarePins() []*NodeRemo
return nil
}
-var File_meshtastic_admin_proto protoreflect.FileDescriptor
+type SharedContact struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // The node number of the contact
+ NodeNum uint32 `protobuf:"varint,1,opt,name=node_num,json=nodeNum,proto3" json:"node_num,omitempty"`
+ // The User of the contact
+ User *User `protobuf:"bytes,2,opt,name=user,proto3" json:"user,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *SharedContact) Reset() {
+ *x = SharedContact{}
+ mi := &file_meshtastic_admin_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *SharedContact) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SharedContact) ProtoMessage() {}
+
+func (x *SharedContact) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_admin_proto_msgTypes[3]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SharedContact.ProtoReflect.Descriptor instead.
+func (*SharedContact) Descriptor() ([]byte, []int) {
+ return file_meshtastic_admin_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *SharedContact) GetNodeNum() uint32 {
+ if x != nil {
+ return x.NodeNum
+ }
+ return 0
+}
+
+func (x *SharedContact) GetUser() *User {
+ if x != nil {
+ return x.User
+ }
+ return nil
+}
+
+// This message is used by a client to initiate or complete a key verification
+type KeyVerificationAdmin struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ MessageType KeyVerificationAdmin_MessageType `protobuf:"varint,1,opt,name=message_type,json=messageType,proto3,enum=meshtastic.KeyVerificationAdmin_MessageType" json:"message_type,omitempty"`
+ // The nodenum we're requesting
+ RemoteNodenum uint32 `protobuf:"varint,2,opt,name=remote_nodenum,json=remoteNodenum,proto3" json:"remote_nodenum,omitempty"`
+ // The nonce is used to track the connection
+ Nonce uint64 `protobuf:"varint,3,opt,name=nonce,proto3" json:"nonce,omitempty"`
+ // The 4 digit code generated by the remote node, and communicated outside the mesh
+ SecurityNumber *uint32 `protobuf:"varint,4,opt,name=security_number,json=securityNumber,proto3,oneof" json:"security_number,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *KeyVerificationAdmin) Reset() {
+ *x = KeyVerificationAdmin{}
+ mi := &file_meshtastic_admin_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *KeyVerificationAdmin) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*KeyVerificationAdmin) ProtoMessage() {}
-var file_meshtastic_admin_proto_rawDesc = []byte{
- 0x0a, 0x16, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x61, 0x64, 0x6d,
- 0x69, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0a, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61,
- 0x73, 0x74, 0x69, 0x63, 0x1a, 0x18, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63,
- 0x2f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17,
- 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x22, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73,
- 0x74, 0x69, 0x63, 0x2f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73,
- 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x6d, 0x65, 0x73,
- 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x6f, 0x6e,
- 0x6c, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x15, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61,
- 0x73, 0x74, 0x69, 0x63, 0x2f, 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
- 0x1e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x6d, 0x6f, 0x64, 0x75,
- 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22,
- 0xc1, 0x16, 0x0a, 0x0c, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
- 0x12, 0x30, 0x0a, 0x13, 0x67, 0x65, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f,
- 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52,
- 0x11, 0x67, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x12, 0x47, 0x0a, 0x14, 0x67, 0x65, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
- 0x6c, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
- 0x32, 0x13, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x68,
- 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x48, 0x00, 0x52, 0x12, 0x67, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e,
- 0x6e, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2c, 0x0a, 0x11, 0x67,
- 0x65, 0x74, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
- 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x0f, 0x67, 0x65, 0x74, 0x4f, 0x77, 0x6e,
- 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x12, 0x67, 0x65, 0x74,
- 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18,
- 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74,
- 0x69, 0x63, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x48, 0x00, 0x52, 0x10, 0x67, 0x65, 0x74, 0x4f, 0x77,
- 0x6e, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x53, 0x0a, 0x12, 0x67,
- 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73,
- 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x23, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61,
- 0x73, 0x74, 0x69, 0x63, 0x2e, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
- 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x54, 0x79, 0x70, 0x65, 0x48, 0x00, 0x52, 0x10,
- 0x67, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
- 0x12, 0x44, 0x0a, 0x13, 0x67, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x72,
- 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e,
- 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x48, 0x00, 0x52, 0x11, 0x67, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65,
- 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x66, 0x0a, 0x19, 0x67, 0x65, 0x74, 0x5f, 0x6d, 0x6f,
- 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x72, 0x65, 0x71, 0x75,
- 0x65, 0x73, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x6d, 0x65, 0x73, 0x68,
- 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x4d, 0x65, 0x73, 0x73,
- 0x61, 0x67, 0x65, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
- 0x54, 0x79, 0x70, 0x65, 0x48, 0x00, 0x52, 0x16, 0x67, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x75, 0x6c,
- 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x57,
- 0x0a, 0x1a, 0x67, 0x65, 0x74, 0x5f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6e,
- 0x66, 0x69, 0x67, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x08, 0x20, 0x01,
- 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e,
- 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x17,
- 0x67, 0x65, 0x74, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52,
- 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5b, 0x0a, 0x2a, 0x67, 0x65, 0x74, 0x5f, 0x63,
- 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x6d, 0x6f,
- 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x5f, 0x72, 0x65,
- 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x25, 0x67,
- 0x65, 0x74, 0x43, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4d,
- 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x12, 0x5d, 0x0a, 0x2b, 0x67, 0x65, 0x74, 0x5f, 0x63, 0x61, 0x6e, 0x6e,
- 0x65, 0x64, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x75, 0x6c,
- 0x65, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f,
- 0x6e, 0x73, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x26, 0x67, 0x65, 0x74,
- 0x43, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4d, 0x6f, 0x64,
- 0x75, 0x6c, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
- 0x6e, 0x73, 0x65, 0x12, 0x3f, 0x0a, 0x1b, 0x67, 0x65, 0x74, 0x5f, 0x64, 0x65, 0x76, 0x69, 0x63,
- 0x65, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x18, 0x67, 0x65, 0x74, 0x44,
- 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x12, 0x5d, 0x0a, 0x1c, 0x67, 0x65, 0x74, 0x5f, 0x64, 0x65, 0x76, 0x69,
- 0x63, 0x65, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x5f, 0x72, 0x65, 0x73, 0x70,
- 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6d, 0x65, 0x73,
- 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65,
- 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x48, 0x00, 0x52, 0x19, 0x67, 0x65, 0x74, 0x44, 0x65, 0x76,
- 0x69, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x65, 0x73, 0x70, 0x6f,
- 0x6e, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x14, 0x67, 0x65, 0x74, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x74,
- 0x6f, 0x6e, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28,
- 0x08, 0x48, 0x00, 0x52, 0x12, 0x67, 0x65, 0x74, 0x52, 0x69, 0x6e, 0x67, 0x74, 0x6f, 0x6e, 0x65,
- 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x34, 0x0a, 0x15, 0x67, 0x65, 0x74, 0x5f, 0x72,
- 0x69, 0x6e, 0x67, 0x74, 0x6f, 0x6e, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
- 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x13, 0x67, 0x65, 0x74, 0x52, 0x69, 0x6e,
- 0x67, 0x74, 0x6f, 0x6e, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a,
- 0x24, 0x67, 0x65, 0x74, 0x5f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x6e,
- 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x72, 0x65,
- 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x20, 0x67,
- 0x65, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69,
- 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
- 0x76, 0x0a, 0x25, 0x67, 0x65, 0x74, 0x5f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x63, 0x6f,
- 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f,
- 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22,
- 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x44, 0x65, 0x76, 0x69,
- 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74,
- 0x75, 0x73, 0x48, 0x00, 0x52, 0x21, 0x67, 0x65, 0x74, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x43,
- 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52,
- 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x0c, 0x73, 0x65, 0x74, 0x5f, 0x68,
- 0x61, 0x6d, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e,
- 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x48, 0x61, 0x6d, 0x50, 0x61,
- 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x48, 0x00, 0x52, 0x0a, 0x73, 0x65, 0x74, 0x48,
- 0x61, 0x6d, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x51, 0x0a, 0x25, 0x67, 0x65, 0x74, 0x5f, 0x6e, 0x6f,
- 0x64, 0x65, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x68, 0x61, 0x72, 0x64, 0x77, 0x61,
- 0x72, 0x65, 0x5f, 0x70, 0x69, 0x6e, 0x73, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18,
- 0x13, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x20, 0x67, 0x65, 0x74, 0x4e, 0x6f, 0x64, 0x65,
- 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x50, 0x69,
- 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x7f, 0x0a, 0x26, 0x67, 0x65, 0x74,
- 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x68, 0x61, 0x72,
- 0x64, 0x77, 0x61, 0x72, 0x65, 0x5f, 0x70, 0x69, 0x6e, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f,
- 0x6e, 0x73, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x6d, 0x65, 0x73, 0x68,
- 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74,
- 0x65, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x50, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x73,
- 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x21, 0x67, 0x65, 0x74, 0x4e, 0x6f, 0x64, 0x65,
- 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x50, 0x69,
- 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x35, 0x0a, 0x16, 0x65, 0x6e,
- 0x74, 0x65, 0x72, 0x5f, 0x64, 0x66, 0x75, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x5f, 0x72, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x18, 0x15, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x13, 0x65, 0x6e,
- 0x74, 0x65, 0x72, 0x44, 0x66, 0x75, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
- 0x74, 0x12, 0x30, 0x0a, 0x13, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x66, 0x69, 0x6c, 0x65,
- 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x16, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00,
- 0x52, 0x11, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75,
- 0x65, 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x09, 0x73, 0x65, 0x74, 0x5f, 0x6f, 0x77, 0x6e, 0x65, 0x72,
- 0x18, 0x20, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73,
- 0x74, 0x69, 0x63, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x48, 0x00, 0x52, 0x08, 0x73, 0x65, 0x74, 0x4f,
- 0x77, 0x6e, 0x65, 0x72, 0x12, 0x36, 0x0a, 0x0b, 0x73, 0x65, 0x74, 0x5f, 0x63, 0x68, 0x61, 0x6e,
- 0x6e, 0x65, 0x6c, 0x18, 0x21, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6d, 0x65, 0x73, 0x68,
- 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x48, 0x00,
- 0x52, 0x0a, 0x73, 0x65, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x33, 0x0a, 0x0a,
- 0x73, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x22, 0x20, 0x01, 0x28, 0x0b,
- 0x32, 0x12, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x6f,
- 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x09, 0x73, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x12, 0x46, 0x0a, 0x11, 0x73, 0x65, 0x74, 0x5f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5f,
- 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x23, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6d,
- 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65,
- 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x0f, 0x73, 0x65, 0x74, 0x4d, 0x6f, 0x64,
- 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x4c, 0x0a, 0x22, 0x73, 0x65, 0x74,
- 0x5f, 0x63, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f,
- 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18,
- 0x24, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x1e, 0x73, 0x65, 0x74, 0x43, 0x61, 0x6e, 0x6e,
- 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x4d,
- 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x32, 0x0a, 0x14, 0x73, 0x65, 0x74, 0x5f, 0x72,
- 0x69, 0x6e, 0x67, 0x74, 0x6f, 0x6e, 0x65, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18,
- 0x25, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x12, 0x73, 0x65, 0x74, 0x52, 0x69, 0x6e, 0x67,
- 0x74, 0x6f, 0x6e, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x2c, 0x0a, 0x11, 0x72,
- 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x5f, 0x62, 0x79, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x6e, 0x75, 0x6d,
- 0x18, 0x26, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x0f, 0x72, 0x65, 0x6d, 0x6f, 0x76, 0x65,
- 0x42, 0x79, 0x4e, 0x6f, 0x64, 0x65, 0x6e, 0x75, 0x6d, 0x12, 0x30, 0x0a, 0x13, 0x62, 0x65, 0x67,
- 0x69, 0x6e, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x5f, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73,
- 0x18, 0x40, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x11, 0x62, 0x65, 0x67, 0x69, 0x6e, 0x45,
- 0x64, 0x69, 0x74, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x32, 0x0a, 0x14, 0x63,
- 0x6f, 0x6d, 0x6d, 0x69, 0x74, 0x5f, 0x65, 0x64, 0x69, 0x74, 0x5f, 0x73, 0x65, 0x74, 0x74, 0x69,
- 0x6e, 0x67, 0x73, 0x18, 0x41, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x12, 0x63, 0x6f, 0x6d,
- 0x6d, 0x69, 0x74, 0x45, 0x64, 0x69, 0x74, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12,
- 0x2e, 0x0a, 0x12, 0x72, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x5f, 0x6f, 0x74, 0x61, 0x5f, 0x73, 0x65,
- 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x5f, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x10, 0x72,
- 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x4f, 0x74, 0x61, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12,
- 0x27, 0x0a, 0x0e, 0x65, 0x78, 0x69, 0x74, 0x5f, 0x73, 0x69, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x6f,
- 0x72, 0x18, 0x60, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x0d, 0x65, 0x78, 0x69, 0x74, 0x53,
- 0x69, 0x6d, 0x75, 0x6c, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x27, 0x0a, 0x0e, 0x72, 0x65, 0x62, 0x6f,
- 0x6f, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x61, 0x20, 0x01, 0x28, 0x05,
- 0x48, 0x00, 0x52, 0x0d, 0x72, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64,
- 0x73, 0x12, 0x2b, 0x0a, 0x10, 0x73, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x73, 0x65,
- 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x62, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x0f, 0x73,
- 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x25,
- 0x0a, 0x0d, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x74, 0x18,
- 0x63, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x0c, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x79,
- 0x52, 0x65, 0x73, 0x65, 0x74, 0x12, 0x23, 0x0a, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x64, 0x62, 0x5f,
- 0x72, 0x65, 0x73, 0x65, 0x74, 0x18, 0x64, 0x20, 0x01, 0x28, 0x05, 0x48, 0x00, 0x52, 0x0b, 0x6e,
- 0x6f, 0x64, 0x65, 0x64, 0x62, 0x52, 0x65, 0x73, 0x65, 0x74, 0x22, 0x95, 0x01, 0x0a, 0x0a, 0x43,
- 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x11, 0x0a, 0x0d, 0x44, 0x45, 0x56,
- 0x49, 0x43, 0x45, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10, 0x00, 0x12, 0x13, 0x0a, 0x0f,
- 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10,
- 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x50, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49,
- 0x47, 0x10, 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x43,
- 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10, 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x44, 0x49, 0x53, 0x50, 0x4c,
- 0x41, 0x59, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10, 0x04, 0x12, 0x0f, 0x0a, 0x0b, 0x4c,
- 0x4f, 0x52, 0x41, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10, 0x05, 0x12, 0x14, 0x0a, 0x10,
- 0x42, 0x4c, 0x55, 0x45, 0x54, 0x4f, 0x4f, 0x54, 0x48, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47,
- 0x10, 0x06, 0x22, 0xbb, 0x02, 0x0a, 0x10, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e,
- 0x66, 0x69, 0x67, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x51, 0x54, 0x54, 0x5f,
- 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x45, 0x52, 0x49,
- 0x41, 0x4c, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x45,
- 0x58, 0x54, 0x4e, 0x4f, 0x54, 0x49, 0x46, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10, 0x02,
- 0x12, 0x17, 0x0a, 0x13, 0x53, 0x54, 0x4f, 0x52, 0x45, 0x46, 0x4f, 0x52, 0x57, 0x41, 0x52, 0x44,
- 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10, 0x03, 0x12, 0x14, 0x0a, 0x10, 0x52, 0x41, 0x4e,
- 0x47, 0x45, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10, 0x04, 0x12,
- 0x14, 0x0a, 0x10, 0x54, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x54, 0x52, 0x59, 0x5f, 0x43, 0x4f, 0x4e,
- 0x46, 0x49, 0x47, 0x10, 0x05, 0x12, 0x14, 0x0a, 0x10, 0x43, 0x41, 0x4e, 0x4e, 0x45, 0x44, 0x4d,
- 0x53, 0x47, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10, 0x06, 0x12, 0x10, 0x0a, 0x0c, 0x41,
- 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10, 0x07, 0x12, 0x19, 0x0a,
- 0x15, 0x52, 0x45, 0x4d, 0x4f, 0x54, 0x45, 0x48, 0x41, 0x52, 0x44, 0x57, 0x41, 0x52, 0x45, 0x5f,
- 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10, 0x08, 0x12, 0x17, 0x0a, 0x13, 0x4e, 0x45, 0x49, 0x47,
- 0x48, 0x42, 0x4f, 0x52, 0x49, 0x4e, 0x46, 0x4f, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10,
- 0x09, 0x12, 0x1a, 0x0a, 0x16, 0x41, 0x4d, 0x42, 0x49, 0x45, 0x4e, 0x54, 0x4c, 0x49, 0x47, 0x48,
- 0x54, 0x49, 0x4e, 0x47, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10, 0x0a, 0x12, 0x1a, 0x0a,
- 0x16, 0x44, 0x45, 0x54, 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x53, 0x45, 0x4e, 0x53, 0x4f, 0x52,
- 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10, 0x0b, 0x12, 0x15, 0x0a, 0x11, 0x50, 0x41, 0x58,
- 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x45, 0x52, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x47, 0x10, 0x0c,
- 0x42, 0x11, 0x0a, 0x0f, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x76, 0x61, 0x72, 0x69,
- 0x61, 0x6e, 0x74, 0x22, 0x84, 0x01, 0x0a, 0x0d, 0x48, 0x61, 0x6d, 0x50, 0x61, 0x72, 0x61, 0x6d,
- 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x73, 0x69,
- 0x67, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x61, 0x6c, 0x6c, 0x53, 0x69,
- 0x67, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x78, 0x5f, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x18, 0x02,
- 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x74, 0x78, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x12, 0x1c, 0x0a,
- 0x09, 0x66, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02,
- 0x52, 0x09, 0x66, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x1d, 0x0a, 0x0a, 0x73,
- 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52,
- 0x09, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x7e, 0x0a, 0x1e, 0x4e, 0x6f,
- 0x64, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65,
- 0x50, 0x69, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x19,
- 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x68, 0x61, 0x72, 0x64,
- 0x77, 0x61, 0x72, 0x65, 0x5f, 0x70, 0x69, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32,
- 0x21, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4e, 0x6f, 0x64,
- 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x50,
- 0x69, 0x6e, 0x52, 0x16, 0x6e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x48, 0x61,
- 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x50, 0x69, 0x6e, 0x73, 0x42, 0x60, 0x0a, 0x13, 0x63, 0x6f,
- 0x6d, 0x2e, 0x67, 0x65, 0x65, 0x6b, 0x73, 0x76, 0x69, 0x6c, 0x6c, 0x65, 0x2e, 0x6d, 0x65, 0x73,
- 0x68, 0x42, 0x0b, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x5a, 0x22,
- 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x65, 0x73, 0x68, 0x74,
- 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x67, 0x6f, 0x2f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74,
- 0x65, 0x64, 0xaa, 0x02, 0x14, 0x4d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e,
- 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x73, 0xba, 0x02, 0x00, 0x62, 0x06, 0x70, 0x72,
- 0x6f, 0x74, 0x6f, 0x33,
+func (x *KeyVerificationAdmin) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_admin_proto_msgTypes[4]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use KeyVerificationAdmin.ProtoReflect.Descriptor instead.
+func (*KeyVerificationAdmin) Descriptor() ([]byte, []int) {
+ return file_meshtastic_admin_proto_rawDescGZIP(), []int{4}
}
+func (x *KeyVerificationAdmin) GetMessageType() KeyVerificationAdmin_MessageType {
+ if x != nil {
+ return x.MessageType
+ }
+ return KeyVerificationAdmin_INITIATE_VERIFICATION
+}
+
+func (x *KeyVerificationAdmin) GetRemoteNodenum() uint32 {
+ if x != nil {
+ return x.RemoteNodenum
+ }
+ return 0
+}
+
+func (x *KeyVerificationAdmin) GetNonce() uint64 {
+ if x != nil {
+ return x.Nonce
+ }
+ return 0
+}
+
+func (x *KeyVerificationAdmin) GetSecurityNumber() uint32 {
+ if x != nil && x.SecurityNumber != nil {
+ return *x.SecurityNumber
+ }
+ return 0
+}
+
+var File_meshtastic_admin_proto protoreflect.FileDescriptor
+
+const file_meshtastic_admin_proto_rawDesc = "" +
+ "\n" +
+ "\x16meshtastic/admin.proto\x12\n" +
+ "meshtastic\x1a\x18meshtastic/channel.proto\x1a\x17meshtastic/config.proto\x1a\"meshtastic/connection_status.proto\x1a\x15meshtastic/mesh.proto\x1a\x1emeshtastic/module_config.proto\x1a\x1ameshtastic/device_ui.proto\"\x8a \n" +
+ "\fAdminMessage\x12'\n" +
+ "\x0fsession_passkey\x18e \x01(\fR\x0esessionPasskey\x120\n" +
+ "\x13get_channel_request\x18\x01 \x01(\rH\x00R\x11getChannelRequest\x12G\n" +
+ "\x14get_channel_response\x18\x02 \x01(\v2\x13.meshtastic.ChannelH\x00R\x12getChannelResponse\x12,\n" +
+ "\x11get_owner_request\x18\x03 \x01(\bH\x00R\x0fgetOwnerRequest\x12@\n" +
+ "\x12get_owner_response\x18\x04 \x01(\v2\x10.meshtastic.UserH\x00R\x10getOwnerResponse\x12S\n" +
+ "\x12get_config_request\x18\x05 \x01(\x0e2#.meshtastic.AdminMessage.ConfigTypeH\x00R\x10getConfigRequest\x12D\n" +
+ "\x13get_config_response\x18\x06 \x01(\v2\x12.meshtastic.ConfigH\x00R\x11getConfigResponse\x12f\n" +
+ "\x19get_module_config_request\x18\a \x01(\x0e2).meshtastic.AdminMessage.ModuleConfigTypeH\x00R\x16getModuleConfigRequest\x12W\n" +
+ "\x1aget_module_config_response\x18\b \x01(\v2\x18.meshtastic.ModuleConfigH\x00R\x17getModuleConfigResponse\x12[\n" +
+ "*get_canned_message_module_messages_request\x18\n" +
+ " \x01(\bH\x00R%getCannedMessageModuleMessagesRequest\x12]\n" +
+ "+get_canned_message_module_messages_response\x18\v \x01(\tH\x00R&getCannedMessageModuleMessagesResponse\x12?\n" +
+ "\x1bget_device_metadata_request\x18\f \x01(\bH\x00R\x18getDeviceMetadataRequest\x12]\n" +
+ "\x1cget_device_metadata_response\x18\r \x01(\v2\x1a.meshtastic.DeviceMetadataH\x00R\x19getDeviceMetadataResponse\x122\n" +
+ "\x14get_ringtone_request\x18\x0e \x01(\bH\x00R\x12getRingtoneRequest\x124\n" +
+ "\x15get_ringtone_response\x18\x0f \x01(\tH\x00R\x13getRingtoneResponse\x12P\n" +
+ "$get_device_connection_status_request\x18\x10 \x01(\bH\x00R getDeviceConnectionStatusRequest\x12v\n" +
+ "%get_device_connection_status_response\x18\x11 \x01(\v2\".meshtastic.DeviceConnectionStatusH\x00R!getDeviceConnectionStatusResponse\x12=\n" +
+ "\fset_ham_mode\x18\x12 \x01(\v2\x19.meshtastic.HamParametersH\x00R\n" +
+ "setHamMode\x12Q\n" +
+ "%get_node_remote_hardware_pins_request\x18\x13 \x01(\bH\x00R getNodeRemoteHardwarePinsRequest\x12\x7f\n" +
+ "&get_node_remote_hardware_pins_response\x18\x14 \x01(\v2*.meshtastic.NodeRemoteHardwarePinsResponseH\x00R!getNodeRemoteHardwarePinsResponse\x125\n" +
+ "\x16enter_dfu_mode_request\x18\x15 \x01(\bH\x00R\x13enterDfuModeRequest\x120\n" +
+ "\x13delete_file_request\x18\x16 \x01(\tH\x00R\x11deleteFileRequest\x12\x1d\n" +
+ "\tset_scale\x18\x17 \x01(\rH\x00R\bsetScale\x12X\n" +
+ "\x12backup_preferences\x18\x18 \x01(\x0e2'.meshtastic.AdminMessage.BackupLocationH\x00R\x11backupPreferences\x12Z\n" +
+ "\x13restore_preferences\x18\x19 \x01(\x0e2'.meshtastic.AdminMessage.BackupLocationH\x00R\x12restorePreferences\x12e\n" +
+ "\x19remove_backup_preferences\x18\x1a \x01(\x0e2'.meshtastic.AdminMessage.BackupLocationH\x00R\x17removeBackupPreferences\x12/\n" +
+ "\tset_owner\x18 \x01(\v2\x10.meshtastic.UserH\x00R\bsetOwner\x126\n" +
+ "\vset_channel\x18! \x01(\v2\x13.meshtastic.ChannelH\x00R\n" +
+ "setChannel\x123\n" +
+ "\n" +
+ "set_config\x18\" \x01(\v2\x12.meshtastic.ConfigH\x00R\tsetConfig\x12F\n" +
+ "\x11set_module_config\x18# \x01(\v2\x18.meshtastic.ModuleConfigH\x00R\x0fsetModuleConfig\x12L\n" +
+ "\"set_canned_message_module_messages\x18$ \x01(\tH\x00R\x1esetCannedMessageModuleMessages\x122\n" +
+ "\x14set_ringtone_message\x18% \x01(\tH\x00R\x12setRingtoneMessage\x12,\n" +
+ "\x11remove_by_nodenum\x18& \x01(\rH\x00R\x0fremoveByNodenum\x12,\n" +
+ "\x11set_favorite_node\x18' \x01(\rH\x00R\x0fsetFavoriteNode\x122\n" +
+ "\x14remove_favorite_node\x18( \x01(\rH\x00R\x12removeFavoriteNode\x12D\n" +
+ "\x12set_fixed_position\x18) \x01(\v2\x14.meshtastic.PositionH\x00R\x10setFixedPosition\x124\n" +
+ "\x15remove_fixed_position\x18* \x01(\bH\x00R\x13removeFixedPosition\x12$\n" +
+ "\rset_time_only\x18+ \x01(\aH\x00R\vsetTimeOnly\x123\n" +
+ "\x15get_ui_config_request\x18, \x01(\bH\x00R\x12getUiConfigRequest\x12Q\n" +
+ "\x16get_ui_config_response\x18- \x01(\v2\x1a.meshtastic.DeviceUIConfigH\x00R\x13getUiConfigResponse\x12D\n" +
+ "\x0fstore_ui_config\x18. \x01(\v2\x1a.meshtastic.DeviceUIConfigH\x00R\rstoreUiConfig\x12*\n" +
+ "\x10set_ignored_node\x18/ \x01(\rH\x00R\x0esetIgnoredNode\x120\n" +
+ "\x13remove_ignored_node\x180 \x01(\rH\x00R\x11removeIgnoredNode\x120\n" +
+ "\x13begin_edit_settings\x18@ \x01(\bH\x00R\x11beginEditSettings\x122\n" +
+ "\x14commit_edit_settings\x18A \x01(\bH\x00R\x12commitEditSettings\x12<\n" +
+ "\vadd_contact\x18B \x01(\v2\x19.meshtastic.SharedContactH\x00R\n" +
+ "addContact\x12M\n" +
+ "\x10key_verification\x18C \x01(\v2 .meshtastic.KeyVerificationAdminH\x00R\x0fkeyVerification\x122\n" +
+ "\x14factory_reset_device\x18^ \x01(\x05H\x00R\x12factoryResetDevice\x12.\n" +
+ "\x12reboot_ota_seconds\x18_ \x01(\x05H\x00R\x10rebootOtaSeconds\x12'\n" +
+ "\x0eexit_simulator\x18` \x01(\bH\x00R\rexitSimulator\x12'\n" +
+ "\x0ereboot_seconds\x18a \x01(\x05H\x00R\rrebootSeconds\x12+\n" +
+ "\x10shutdown_seconds\x18b \x01(\x05H\x00R\x0fshutdownSeconds\x122\n" +
+ "\x14factory_reset_config\x18c \x01(\x05H\x00R\x12factoryResetConfig\x12#\n" +
+ "\fnodedb_reset\x18d \x01(\x05H\x00R\vnodedbReset\"\xd6\x01\n" +
+ "\n" +
+ "ConfigType\x12\x11\n" +
+ "\rDEVICE_CONFIG\x10\x00\x12\x13\n" +
+ "\x0fPOSITION_CONFIG\x10\x01\x12\x10\n" +
+ "\fPOWER_CONFIG\x10\x02\x12\x12\n" +
+ "\x0eNETWORK_CONFIG\x10\x03\x12\x12\n" +
+ "\x0eDISPLAY_CONFIG\x10\x04\x12\x0f\n" +
+ "\vLORA_CONFIG\x10\x05\x12\x14\n" +
+ "\x10BLUETOOTH_CONFIG\x10\x06\x12\x13\n" +
+ "\x0fSECURITY_CONFIG\x10\a\x12\x15\n" +
+ "\x11SESSIONKEY_CONFIG\x10\b\x12\x13\n" +
+ "\x0fDEVICEUI_CONFIG\x10\t\"\xbb\x02\n" +
+ "\x10ModuleConfigType\x12\x0f\n" +
+ "\vMQTT_CONFIG\x10\x00\x12\x11\n" +
+ "\rSERIAL_CONFIG\x10\x01\x12\x13\n" +
+ "\x0fEXTNOTIF_CONFIG\x10\x02\x12\x17\n" +
+ "\x13STOREFORWARD_CONFIG\x10\x03\x12\x14\n" +
+ "\x10RANGETEST_CONFIG\x10\x04\x12\x14\n" +
+ "\x10TELEMETRY_CONFIG\x10\x05\x12\x14\n" +
+ "\x10CANNEDMSG_CONFIG\x10\x06\x12\x10\n" +
+ "\fAUDIO_CONFIG\x10\a\x12\x19\n" +
+ "\x15REMOTEHARDWARE_CONFIG\x10\b\x12\x17\n" +
+ "\x13NEIGHBORINFO_CONFIG\x10\t\x12\x1a\n" +
+ "\x16AMBIENTLIGHTING_CONFIG\x10\n" +
+ "\x12\x1a\n" +
+ "\x16DETECTIONSENSOR_CONFIG\x10\v\x12\x15\n" +
+ "\x11PAXCOUNTER_CONFIG\x10\f\"#\n" +
+ "\x0eBackupLocation\x12\t\n" +
+ "\x05FLASH\x10\x00\x12\x06\n" +
+ "\x02SD\x10\x01B\x11\n" +
+ "\x0fpayload_variant\"\x84\x01\n" +
+ "\rHamParameters\x12\x1b\n" +
+ "\tcall_sign\x18\x01 \x01(\tR\bcallSign\x12\x19\n" +
+ "\btx_power\x18\x02 \x01(\x05R\atxPower\x12\x1c\n" +
+ "\tfrequency\x18\x03 \x01(\x02R\tfrequency\x12\x1d\n" +
+ "\n" +
+ "short_name\x18\x04 \x01(\tR\tshortName\"~\n" +
+ "\x1eNodeRemoteHardwarePinsResponse\x12\\\n" +
+ "\x19node_remote_hardware_pins\x18\x01 \x03(\v2!.meshtastic.NodeRemoteHardwarePinR\x16nodeRemoteHardwarePins\"P\n" +
+ "\rSharedContact\x12\x19\n" +
+ "\bnode_num\x18\x01 \x01(\rR\anodeNum\x12$\n" +
+ "\x04user\x18\x02 \x01(\v2\x10.meshtastic.UserR\x04user\"\xcf\x02\n" +
+ "\x14KeyVerificationAdmin\x12O\n" +
+ "\fmessage_type\x18\x01 \x01(\x0e2,.meshtastic.KeyVerificationAdmin.MessageTypeR\vmessageType\x12%\n" +
+ "\x0eremote_nodenum\x18\x02 \x01(\rR\rremoteNodenum\x12\x14\n" +
+ "\x05nonce\x18\x03 \x01(\x04R\x05nonce\x12,\n" +
+ "\x0fsecurity_number\x18\x04 \x01(\rH\x00R\x0esecurityNumber\x88\x01\x01\"g\n" +
+ "\vMessageType\x12\x19\n" +
+ "\x15INITIATE_VERIFICATION\x10\x00\x12\x1b\n" +
+ "\x17PROVIDE_SECURITY_NUMBER\x10\x01\x12\r\n" +
+ "\tDO_VERIFY\x10\x02\x12\x11\n" +
+ "\rDO_NOT_VERIFY\x10\x03B\x12\n" +
+ "\x10_security_numberB`\n" +
+ "\x13com.geeksville.meshB\vAdminProtosZ\"github.com/meshtastic/go/generated\xaa\x02\x14Meshtastic.Protobufs\xba\x02\x00b\x06proto3"
+
var (
file_meshtastic_admin_proto_rawDescOnce sync.Once
- file_meshtastic_admin_proto_rawDescData = file_meshtastic_admin_proto_rawDesc
+ file_meshtastic_admin_proto_rawDescData []byte
)
func file_meshtastic_admin_proto_rawDescGZIP() []byte {
file_meshtastic_admin_proto_rawDescOnce.Do(func() {
- file_meshtastic_admin_proto_rawDescData = protoimpl.X.CompressGZIP(file_meshtastic_admin_proto_rawDescData)
+ file_meshtastic_admin_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_meshtastic_admin_proto_rawDesc), len(file_meshtastic_admin_proto_rawDesc)))
})
return file_meshtastic_admin_proto_rawDescData
}
-var file_meshtastic_admin_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
-var file_meshtastic_admin_proto_msgTypes = make([]protoimpl.MessageInfo, 3)
-var file_meshtastic_admin_proto_goTypes = []interface{}{
+var file_meshtastic_admin_proto_enumTypes = make([]protoimpl.EnumInfo, 4)
+var file_meshtastic_admin_proto_msgTypes = make([]protoimpl.MessageInfo, 5)
+var file_meshtastic_admin_proto_goTypes = []any{
(AdminMessage_ConfigType)(0), // 0: meshtastic.AdminMessage.ConfigType
(AdminMessage_ModuleConfigType)(0), // 1: meshtastic.AdminMessage.ModuleConfigType
- (*AdminMessage)(nil), // 2: meshtastic.AdminMessage
- (*HamParameters)(nil), // 3: meshtastic.HamParameters
- (*NodeRemoteHardwarePinsResponse)(nil), // 4: meshtastic.NodeRemoteHardwarePinsResponse
- (*Channel)(nil), // 5: meshtastic.Channel
- (*User)(nil), // 6: meshtastic.User
- (*Config)(nil), // 7: meshtastic.Config
- (*ModuleConfig)(nil), // 8: meshtastic.ModuleConfig
- (*DeviceMetadata)(nil), // 9: meshtastic.DeviceMetadata
- (*DeviceConnectionStatus)(nil), // 10: meshtastic.DeviceConnectionStatus
- (*NodeRemoteHardwarePin)(nil), // 11: meshtastic.NodeRemoteHardwarePin
+ (AdminMessage_BackupLocation)(0), // 2: meshtastic.AdminMessage.BackupLocation
+ (KeyVerificationAdmin_MessageType)(0), // 3: meshtastic.KeyVerificationAdmin.MessageType
+ (*AdminMessage)(nil), // 4: meshtastic.AdminMessage
+ (*HamParameters)(nil), // 5: meshtastic.HamParameters
+ (*NodeRemoteHardwarePinsResponse)(nil), // 6: meshtastic.NodeRemoteHardwarePinsResponse
+ (*SharedContact)(nil), // 7: meshtastic.SharedContact
+ (*KeyVerificationAdmin)(nil), // 8: meshtastic.KeyVerificationAdmin
+ (*Channel)(nil), // 9: meshtastic.Channel
+ (*User)(nil), // 10: meshtastic.User
+ (*Config)(nil), // 11: meshtastic.Config
+ (*ModuleConfig)(nil), // 12: meshtastic.ModuleConfig
+ (*DeviceMetadata)(nil), // 13: meshtastic.DeviceMetadata
+ (*DeviceConnectionStatus)(nil), // 14: meshtastic.DeviceConnectionStatus
+ (*Position)(nil), // 15: meshtastic.Position
+ (*DeviceUIConfig)(nil), // 16: meshtastic.DeviceUIConfig
+ (*NodeRemoteHardwarePin)(nil), // 17: meshtastic.NodeRemoteHardwarePin
}
var file_meshtastic_admin_proto_depIdxs = []int32{
- 5, // 0: meshtastic.AdminMessage.get_channel_response:type_name -> meshtastic.Channel
- 6, // 1: meshtastic.AdminMessage.get_owner_response:type_name -> meshtastic.User
+ 9, // 0: meshtastic.AdminMessage.get_channel_response:type_name -> meshtastic.Channel
+ 10, // 1: meshtastic.AdminMessage.get_owner_response:type_name -> meshtastic.User
0, // 2: meshtastic.AdminMessage.get_config_request:type_name -> meshtastic.AdminMessage.ConfigType
- 7, // 3: meshtastic.AdminMessage.get_config_response:type_name -> meshtastic.Config
+ 11, // 3: meshtastic.AdminMessage.get_config_response:type_name -> meshtastic.Config
1, // 4: meshtastic.AdminMessage.get_module_config_request:type_name -> meshtastic.AdminMessage.ModuleConfigType
- 8, // 5: meshtastic.AdminMessage.get_module_config_response:type_name -> meshtastic.ModuleConfig
- 9, // 6: meshtastic.AdminMessage.get_device_metadata_response:type_name -> meshtastic.DeviceMetadata
- 10, // 7: meshtastic.AdminMessage.get_device_connection_status_response:type_name -> meshtastic.DeviceConnectionStatus
- 3, // 8: meshtastic.AdminMessage.set_ham_mode:type_name -> meshtastic.HamParameters
- 4, // 9: meshtastic.AdminMessage.get_node_remote_hardware_pins_response:type_name -> meshtastic.NodeRemoteHardwarePinsResponse
- 6, // 10: meshtastic.AdminMessage.set_owner:type_name -> meshtastic.User
- 5, // 11: meshtastic.AdminMessage.set_channel:type_name -> meshtastic.Channel
- 7, // 12: meshtastic.AdminMessage.set_config:type_name -> meshtastic.Config
- 8, // 13: meshtastic.AdminMessage.set_module_config:type_name -> meshtastic.ModuleConfig
- 11, // 14: meshtastic.NodeRemoteHardwarePinsResponse.node_remote_hardware_pins:type_name -> meshtastic.NodeRemoteHardwarePin
- 15, // [15:15] is the sub-list for method output_type
- 15, // [15:15] is the sub-list for method input_type
- 15, // [15:15] is the sub-list for extension type_name
- 15, // [15:15] is the sub-list for extension extendee
- 0, // [0:15] is the sub-list for field type_name
+ 12, // 5: meshtastic.AdminMessage.get_module_config_response:type_name -> meshtastic.ModuleConfig
+ 13, // 6: meshtastic.AdminMessage.get_device_metadata_response:type_name -> meshtastic.DeviceMetadata
+ 14, // 7: meshtastic.AdminMessage.get_device_connection_status_response:type_name -> meshtastic.DeviceConnectionStatus
+ 5, // 8: meshtastic.AdminMessage.set_ham_mode:type_name -> meshtastic.HamParameters
+ 6, // 9: meshtastic.AdminMessage.get_node_remote_hardware_pins_response:type_name -> meshtastic.NodeRemoteHardwarePinsResponse
+ 2, // 10: meshtastic.AdminMessage.backup_preferences:type_name -> meshtastic.AdminMessage.BackupLocation
+ 2, // 11: meshtastic.AdminMessage.restore_preferences:type_name -> meshtastic.AdminMessage.BackupLocation
+ 2, // 12: meshtastic.AdminMessage.remove_backup_preferences:type_name -> meshtastic.AdminMessage.BackupLocation
+ 10, // 13: meshtastic.AdminMessage.set_owner:type_name -> meshtastic.User
+ 9, // 14: meshtastic.AdminMessage.set_channel:type_name -> meshtastic.Channel
+ 11, // 15: meshtastic.AdminMessage.set_config:type_name -> meshtastic.Config
+ 12, // 16: meshtastic.AdminMessage.set_module_config:type_name -> meshtastic.ModuleConfig
+ 15, // 17: meshtastic.AdminMessage.set_fixed_position:type_name -> meshtastic.Position
+ 16, // 18: meshtastic.AdminMessage.get_ui_config_response:type_name -> meshtastic.DeviceUIConfig
+ 16, // 19: meshtastic.AdminMessage.store_ui_config:type_name -> meshtastic.DeviceUIConfig
+ 7, // 20: meshtastic.AdminMessage.add_contact:type_name -> meshtastic.SharedContact
+ 8, // 21: meshtastic.AdminMessage.key_verification:type_name -> meshtastic.KeyVerificationAdmin
+ 17, // 22: meshtastic.NodeRemoteHardwarePinsResponse.node_remote_hardware_pins:type_name -> meshtastic.NodeRemoteHardwarePin
+ 10, // 23: meshtastic.SharedContact.user:type_name -> meshtastic.User
+ 3, // 24: meshtastic.KeyVerificationAdmin.message_type:type_name -> meshtastic.KeyVerificationAdmin.MessageType
+ 25, // [25:25] is the sub-list for method output_type
+ 25, // [25:25] is the sub-list for method input_type
+ 25, // [25:25] is the sub-list for extension type_name
+ 25, // [25:25] is the sub-list for extension extendee
+ 0, // [0:25] is the sub-list for field type_name
}
func init() { file_meshtastic_admin_proto_init() }
@@ -1197,48 +1721,10 @@ func file_meshtastic_admin_proto_init() {
file_meshtastic_channel_proto_init()
file_meshtastic_config_proto_init()
file_meshtastic_connection_status_proto_init()
- file_meshtastic_deviceonly_proto_init()
file_meshtastic_mesh_proto_init()
file_meshtastic_module_config_proto_init()
- if !protoimpl.UnsafeEnabled {
- file_meshtastic_admin_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*AdminMessage); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_admin_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*HamParameters); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_admin_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*NodeRemoteHardwarePinsResponse); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- }
- file_meshtastic_admin_proto_msgTypes[0].OneofWrappers = []interface{}{
+ file_meshtastic_device_ui_proto_init()
+ file_meshtastic_admin_proto_msgTypes[0].OneofWrappers = []any{
(*AdminMessage_GetChannelRequest)(nil),
(*AdminMessage_GetChannelResponse)(nil),
(*AdminMessage_GetOwnerRequest)(nil),
@@ -1260,6 +1746,10 @@ func file_meshtastic_admin_proto_init() {
(*AdminMessage_GetNodeRemoteHardwarePinsResponse)(nil),
(*AdminMessage_EnterDfuModeRequest)(nil),
(*AdminMessage_DeleteFileRequest)(nil),
+ (*AdminMessage_SetScale)(nil),
+ (*AdminMessage_BackupPreferences)(nil),
+ (*AdminMessage_RestorePreferences)(nil),
+ (*AdminMessage_RemoveBackupPreferences)(nil),
(*AdminMessage_SetOwner)(nil),
(*AdminMessage_SetChannel)(nil),
(*AdminMessage_SetConfig)(nil),
@@ -1267,22 +1757,36 @@ func file_meshtastic_admin_proto_init() {
(*AdminMessage_SetCannedMessageModuleMessages)(nil),
(*AdminMessage_SetRingtoneMessage)(nil),
(*AdminMessage_RemoveByNodenum)(nil),
+ (*AdminMessage_SetFavoriteNode)(nil),
+ (*AdminMessage_RemoveFavoriteNode)(nil),
+ (*AdminMessage_SetFixedPosition)(nil),
+ (*AdminMessage_RemoveFixedPosition)(nil),
+ (*AdminMessage_SetTimeOnly)(nil),
+ (*AdminMessage_GetUiConfigRequest)(nil),
+ (*AdminMessage_GetUiConfigResponse)(nil),
+ (*AdminMessage_StoreUiConfig)(nil),
+ (*AdminMessage_SetIgnoredNode)(nil),
+ (*AdminMessage_RemoveIgnoredNode)(nil),
(*AdminMessage_BeginEditSettings)(nil),
(*AdminMessage_CommitEditSettings)(nil),
+ (*AdminMessage_AddContact)(nil),
+ (*AdminMessage_KeyVerification)(nil),
+ (*AdminMessage_FactoryResetDevice)(nil),
(*AdminMessage_RebootOtaSeconds)(nil),
(*AdminMessage_ExitSimulator)(nil),
(*AdminMessage_RebootSeconds)(nil),
(*AdminMessage_ShutdownSeconds)(nil),
- (*AdminMessage_FactoryReset)(nil),
+ (*AdminMessage_FactoryResetConfig)(nil),
(*AdminMessage_NodedbReset)(nil),
}
+ file_meshtastic_admin_proto_msgTypes[4].OneofWrappers = []any{}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
- RawDescriptor: file_meshtastic_admin_proto_rawDesc,
- NumEnums: 2,
- NumMessages: 3,
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_meshtastic_admin_proto_rawDesc), len(file_meshtastic_admin_proto_rawDesc)),
+ NumEnums: 4,
+ NumMessages: 5,
NumExtensions: 0,
NumServices: 0,
},
@@ -1292,7 +1796,6 @@ func file_meshtastic_admin_proto_init() {
MessageInfos: file_meshtastic_admin_proto_msgTypes,
}.Build()
File_meshtastic_admin_proto = out.File
- file_meshtastic_admin_proto_rawDesc = nil
file_meshtastic_admin_proto_goTypes = nil
file_meshtastic_admin_proto_depIdxs = nil
}
diff --git a/meshtastic/admin_vtproto.pb.go b/meshtastic/admin_vtproto.pb.go
index 42b34d2..20c37e7 100644
--- a/meshtastic/admin_vtproto.pb.go
+++ b/meshtastic/admin_vtproto.pb.go
@@ -59,6 +59,15 @@ func (m *AdminMessage) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
}
i -= size
}
+ if len(m.SessionPasskey) > 0 {
+ i -= len(m.SessionPasskey)
+ copy(dAtA[i:], m.SessionPasskey)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.SessionPasskey)))
+ i--
+ dAtA[i] = 0x6
+ i--
+ dAtA[i] = 0xaa
+ }
return len(dAtA) - i, nil
}
@@ -425,6 +434,62 @@ func (m *AdminMessage_DeleteFileRequest) MarshalToSizedBufferVT(dAtA []byte) (in
dAtA[i] = 0xb2
return len(dAtA) - i, nil
}
+func (m *AdminMessage_SetScale) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *AdminMessage_SetScale) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.SetScale))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0xb8
+ return len(dAtA) - i, nil
+}
+func (m *AdminMessage_BackupPreferences) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *AdminMessage_BackupPreferences) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.BackupPreferences))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0xc0
+ return len(dAtA) - i, nil
+}
+func (m *AdminMessage_RestorePreferences) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *AdminMessage_RestorePreferences) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.RestorePreferences))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0xc8
+ return len(dAtA) - i, nil
+}
+func (m *AdminMessage_RemoveBackupPreferences) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *AdminMessage_RemoveBackupPreferences) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.RemoveBackupPreferences))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0xd0
+ return len(dAtA) - i, nil
+}
func (m *AdminMessage_SetOwner) MarshalToVT(dAtA []byte) (int, error) {
size := m.SizeVT()
return m.MarshalToSizedBufferVT(dAtA[:size])
@@ -555,6 +620,178 @@ func (m *AdminMessage_RemoveByNodenum) MarshalToSizedBufferVT(dAtA []byte) (int,
dAtA[i] = 0xb0
return len(dAtA) - i, nil
}
+func (m *AdminMessage_SetFavoriteNode) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *AdminMessage_SetFavoriteNode) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.SetFavoriteNode))
+ i--
+ dAtA[i] = 0x2
+ i--
+ dAtA[i] = 0xb8
+ return len(dAtA) - i, nil
+}
+func (m *AdminMessage_RemoveFavoriteNode) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *AdminMessage_RemoveFavoriteNode) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.RemoveFavoriteNode))
+ i--
+ dAtA[i] = 0x2
+ i--
+ dAtA[i] = 0xc0
+ return len(dAtA) - i, nil
+}
+func (m *AdminMessage_SetFixedPosition) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *AdminMessage_SetFixedPosition) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ if m.SetFixedPosition != nil {
+ size, err := m.SetFixedPosition.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x2
+ i--
+ dAtA[i] = 0xca
+ }
+ return len(dAtA) - i, nil
+}
+func (m *AdminMessage_RemoveFixedPosition) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *AdminMessage_RemoveFixedPosition) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ i--
+ if m.RemoveFixedPosition {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x2
+ i--
+ dAtA[i] = 0xd0
+ return len(dAtA) - i, nil
+}
+func (m *AdminMessage_SetTimeOnly) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *AdminMessage_SetTimeOnly) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(m.SetTimeOnly))
+ i--
+ dAtA[i] = 0x2
+ i--
+ dAtA[i] = 0xdd
+ return len(dAtA) - i, nil
+}
+func (m *AdminMessage_GetUiConfigRequest) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *AdminMessage_GetUiConfigRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ i--
+ if m.GetUiConfigRequest {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x2
+ i--
+ dAtA[i] = 0xe0
+ return len(dAtA) - i, nil
+}
+func (m *AdminMessage_GetUiConfigResponse) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *AdminMessage_GetUiConfigResponse) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ if m.GetUiConfigResponse != nil {
+ size, err := m.GetUiConfigResponse.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x2
+ i--
+ dAtA[i] = 0xea
+ }
+ return len(dAtA) - i, nil
+}
+func (m *AdminMessage_StoreUiConfig) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *AdminMessage_StoreUiConfig) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ if m.StoreUiConfig != nil {
+ size, err := m.StoreUiConfig.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x2
+ i--
+ dAtA[i] = 0xf2
+ }
+ return len(dAtA) - i, nil
+}
+func (m *AdminMessage_SetIgnoredNode) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *AdminMessage_SetIgnoredNode) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.SetIgnoredNode))
+ i--
+ dAtA[i] = 0x2
+ i--
+ dAtA[i] = 0xf8
+ return len(dAtA) - i, nil
+}
+func (m *AdminMessage_RemoveIgnoredNode) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *AdminMessage_RemoveIgnoredNode) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.RemoveIgnoredNode))
+ i--
+ dAtA[i] = 0x3
+ i--
+ dAtA[i] = 0x80
+ return len(dAtA) - i, nil
+}
func (m *AdminMessage_BeginEditSettings) MarshalToVT(dAtA []byte) (int, error) {
size := m.SizeVT()
return m.MarshalToSizedBufferVT(dAtA[:size])
@@ -593,6 +830,62 @@ func (m *AdminMessage_CommitEditSettings) MarshalToSizedBufferVT(dAtA []byte) (i
dAtA[i] = 0x88
return len(dAtA) - i, nil
}
+func (m *AdminMessage_AddContact) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *AdminMessage_AddContact) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ if m.AddContact != nil {
+ size, err := m.AddContact.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x4
+ i--
+ dAtA[i] = 0x92
+ }
+ return len(dAtA) - i, nil
+}
+func (m *AdminMessage_KeyVerification) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *AdminMessage_KeyVerification) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ if m.KeyVerification != nil {
+ size, err := m.KeyVerification.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x4
+ i--
+ dAtA[i] = 0x9a
+ }
+ return len(dAtA) - i, nil
+}
+func (m *AdminMessage_FactoryResetDevice) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *AdminMessage_FactoryResetDevice) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.FactoryResetDevice))
+ i--
+ dAtA[i] = 0x5
+ i--
+ dAtA[i] = 0xf0
+ return len(dAtA) - i, nil
+}
func (m *AdminMessage_RebootOtaSeconds) MarshalToVT(dAtA []byte) (int, error) {
size := m.SizeVT()
return m.MarshalToSizedBufferVT(dAtA[:size])
@@ -654,14 +947,14 @@ func (m *AdminMessage_ShutdownSeconds) MarshalToSizedBufferVT(dAtA []byte) (int,
dAtA[i] = 0x90
return len(dAtA) - i, nil
}
-func (m *AdminMessage_FactoryReset) MarshalToVT(dAtA []byte) (int, error) {
+func (m *AdminMessage_FactoryResetConfig) MarshalToVT(dAtA []byte) (int, error) {
size := m.SizeVT()
return m.MarshalToSizedBufferVT(dAtA[:size])
}
-func (m *AdminMessage_FactoryReset) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+func (m *AdminMessage_FactoryResetConfig) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i := len(dAtA)
- i = protohelpers.EncodeVarint(dAtA, i, uint64(m.FactoryReset))
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.FactoryResetConfig))
i--
dAtA[i] = 0x6
i--
@@ -785,6 +1078,107 @@ func (m *NodeRemoteHardwarePinsResponse) MarshalToSizedBufferVT(dAtA []byte) (in
return len(dAtA) - i, nil
}
+func (m *SharedContact) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *SharedContact) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *SharedContact) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if m.User != nil {
+ size, err := m.User.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x12
+ }
+ if m.NodeNum != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.NodeNum))
+ i--
+ dAtA[i] = 0x8
+ }
+ return len(dAtA) - i, nil
+}
+
+func (m *KeyVerificationAdmin) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *KeyVerificationAdmin) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *KeyVerificationAdmin) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if m.SecurityNumber != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.SecurityNumber))
+ i--
+ dAtA[i] = 0x20
+ }
+ if m.Nonce != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Nonce))
+ i--
+ dAtA[i] = 0x18
+ }
+ if m.RemoteNodenum != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.RemoteNodenum))
+ i--
+ dAtA[i] = 0x10
+ }
+ if m.MessageType != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.MessageType))
+ i--
+ dAtA[i] = 0x8
+ }
+ return len(dAtA) - i, nil
+}
+
func (m *AdminMessage) SizeVT() (n int) {
if m == nil {
return 0
@@ -794,6 +1188,10 @@ func (m *AdminMessage) SizeVT() (n int) {
if vtmsg, ok := m.PayloadVariant.(interface{ SizeVT() int }); ok {
n += vtmsg.SizeVT()
}
+ l = len(m.SessionPasskey)
+ if l > 0 {
+ n += 2 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
n += len(m.unknownFields)
return n
}
@@ -1014,6 +1412,42 @@ func (m *AdminMessage_DeleteFileRequest) SizeVT() (n int) {
n += 2 + l + protohelpers.SizeOfVarint(uint64(l))
return n
}
+func (m *AdminMessage_SetScale) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ n += 2 + protohelpers.SizeOfVarint(uint64(m.SetScale))
+ return n
+}
+func (m *AdminMessage_BackupPreferences) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ n += 2 + protohelpers.SizeOfVarint(uint64(m.BackupPreferences))
+ return n
+}
+func (m *AdminMessage_RestorePreferences) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ n += 2 + protohelpers.SizeOfVarint(uint64(m.RestorePreferences))
+ return n
+}
+func (m *AdminMessage_RemoveBackupPreferences) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ n += 2 + protohelpers.SizeOfVarint(uint64(m.RemoveBackupPreferences))
+ return n
+}
func (m *AdminMessage_SetOwner) SizeVT() (n int) {
if m == nil {
return 0
@@ -1091,6 +1525,105 @@ func (m *AdminMessage_RemoveByNodenum) SizeVT() (n int) {
n += 2 + protohelpers.SizeOfVarint(uint64(m.RemoveByNodenum))
return n
}
+func (m *AdminMessage_SetFavoriteNode) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ n += 2 + protohelpers.SizeOfVarint(uint64(m.SetFavoriteNode))
+ return n
+}
+func (m *AdminMessage_RemoveFavoriteNode) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ n += 2 + protohelpers.SizeOfVarint(uint64(m.RemoveFavoriteNode))
+ return n
+}
+func (m *AdminMessage_SetFixedPosition) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.SetFixedPosition != nil {
+ l = m.SetFixedPosition.SizeVT()
+ n += 2 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ return n
+}
+func (m *AdminMessage_RemoveFixedPosition) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ n += 3
+ return n
+}
+func (m *AdminMessage_SetTimeOnly) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ n += 6
+ return n
+}
+func (m *AdminMessage_GetUiConfigRequest) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ n += 3
+ return n
+}
+func (m *AdminMessage_GetUiConfigResponse) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.GetUiConfigResponse != nil {
+ l = m.GetUiConfigResponse.SizeVT()
+ n += 2 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ return n
+}
+func (m *AdminMessage_StoreUiConfig) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.StoreUiConfig != nil {
+ l = m.StoreUiConfig.SizeVT()
+ n += 2 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ return n
+}
+func (m *AdminMessage_SetIgnoredNode) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ n += 2 + protohelpers.SizeOfVarint(uint64(m.SetIgnoredNode))
+ return n
+}
+func (m *AdminMessage_RemoveIgnoredNode) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ n += 2 + protohelpers.SizeOfVarint(uint64(m.RemoveIgnoredNode))
+ return n
+}
func (m *AdminMessage_BeginEditSettings) SizeVT() (n int) {
if m == nil {
return 0
@@ -1109,6 +1642,39 @@ func (m *AdminMessage_CommitEditSettings) SizeVT() (n int) {
n += 3
return n
}
+func (m *AdminMessage_AddContact) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.AddContact != nil {
+ l = m.AddContact.SizeVT()
+ n += 2 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ return n
+}
+func (m *AdminMessage_KeyVerification) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.KeyVerification != nil {
+ l = m.KeyVerification.SizeVT()
+ n += 2 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ return n
+}
+func (m *AdminMessage_FactoryResetDevice) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ n += 2 + protohelpers.SizeOfVarint(uint64(m.FactoryResetDevice))
+ return n
+}
func (m *AdminMessage_RebootOtaSeconds) SizeVT() (n int) {
if m == nil {
return 0
@@ -1145,13 +1711,13 @@ func (m *AdminMessage_ShutdownSeconds) SizeVT() (n int) {
n += 2 + protohelpers.SizeOfVarint(uint64(m.ShutdownSeconds))
return n
}
-func (m *AdminMessage_FactoryReset) SizeVT() (n int) {
+func (m *AdminMessage_FactoryResetConfig) SizeVT() (n int) {
if m == nil {
return 0
}
var l int
_ = l
- n += 2 + protohelpers.SizeOfVarint(uint64(m.FactoryReset))
+ n += 2 + protohelpers.SizeOfVarint(uint64(m.FactoryResetConfig))
return n
}
func (m *AdminMessage_NodedbReset) SizeVT() (n int) {
@@ -1203,6 +1769,45 @@ func (m *NodeRemoteHardwarePinsResponse) SizeVT() (n int) {
return n
}
+func (m *SharedContact) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.NodeNum != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.NodeNum))
+ }
+ if m.User != nil {
+ l = m.User.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *KeyVerificationAdmin) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.MessageType != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.MessageType))
+ }
+ if m.RemoteNodenum != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.RemoteNodenum))
+ }
+ if m.Nonce != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Nonce))
+ }
+ if m.SecurityNumber != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.SecurityNumber))
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
func (m *AdminMessage) UnmarshalVT(dAtA []byte) error {
l := len(dAtA)
iNdEx := 0
@@ -1863,6 +2468,86 @@ func (m *AdminMessage) UnmarshalVT(dAtA []byte) error {
}
m.PayloadVariant = &AdminMessage_DeleteFileRequest{DeleteFileRequest: string(dAtA[iNdEx:postIndex])}
iNdEx = postIndex
+ case 23:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field SetScale", wireType)
+ }
+ var v uint32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.PayloadVariant = &AdminMessage_SetScale{SetScale: v}
+ case 24:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field BackupPreferences", wireType)
+ }
+ var v AdminMessage_BackupLocation
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= AdminMessage_BackupLocation(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.PayloadVariant = &AdminMessage_BackupPreferences{BackupPreferences: v}
+ case 25:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field RestorePreferences", wireType)
+ }
+ var v AdminMessage_BackupLocation
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= AdminMessage_BackupLocation(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.PayloadVariant = &AdminMessage_RestorePreferences{RestorePreferences: v}
+ case 26:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field RemoveBackupPreferences", wireType)
+ }
+ var v AdminMessage_BackupLocation
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= AdminMessage_BackupLocation(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.PayloadVariant = &AdminMessage_RemoveBackupPreferences{RemoveBackupPreferences: v}
case 32:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field SetOwner", wireType)
@@ -2111,6 +2796,262 @@ func (m *AdminMessage) UnmarshalVT(dAtA []byte) error {
}
}
m.PayloadVariant = &AdminMessage_RemoveByNodenum{RemoveByNodenum: v}
+ case 39:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field SetFavoriteNode", wireType)
+ }
+ var v uint32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.PayloadVariant = &AdminMessage_SetFavoriteNode{SetFavoriteNode: v}
+ case 40:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field RemoveFavoriteNode", wireType)
+ }
+ var v uint32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.PayloadVariant = &AdminMessage_RemoveFavoriteNode{RemoveFavoriteNode: v}
+ case 41:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field SetFixedPosition", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if oneof, ok := m.PayloadVariant.(*AdminMessage_SetFixedPosition); ok {
+ if err := oneof.SetFixedPosition.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ } else {
+ v := &Position{}
+ if err := v.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ m.PayloadVariant = &AdminMessage_SetFixedPosition{SetFixedPosition: v}
+ }
+ iNdEx = postIndex
+ case 42:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field RemoveFixedPosition", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ b := bool(v != 0)
+ m.PayloadVariant = &AdminMessage_RemoveFixedPosition{RemoveFixedPosition: b}
+ case 43:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field SetTimeOnly", wireType)
+ }
+ var v uint32
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ m.PayloadVariant = &AdminMessage_SetTimeOnly{SetTimeOnly: v}
+ case 44:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field GetUiConfigRequest", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ b := bool(v != 0)
+ m.PayloadVariant = &AdminMessage_GetUiConfigRequest{GetUiConfigRequest: b}
+ case 45:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field GetUiConfigResponse", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if oneof, ok := m.PayloadVariant.(*AdminMessage_GetUiConfigResponse); ok {
+ if err := oneof.GetUiConfigResponse.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ } else {
+ v := &DeviceUIConfig{}
+ if err := v.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ m.PayloadVariant = &AdminMessage_GetUiConfigResponse{GetUiConfigResponse: v}
+ }
+ iNdEx = postIndex
+ case 46:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field StoreUiConfig", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if oneof, ok := m.PayloadVariant.(*AdminMessage_StoreUiConfig); ok {
+ if err := oneof.StoreUiConfig.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ } else {
+ v := &DeviceUIConfig{}
+ if err := v.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ m.PayloadVariant = &AdminMessage_StoreUiConfig{StoreUiConfig: v}
+ }
+ iNdEx = postIndex
+ case 47:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field SetIgnoredNode", wireType)
+ }
+ var v uint32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.PayloadVariant = &AdminMessage_SetIgnoredNode{SetIgnoredNode: v}
+ case 48:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field RemoveIgnoredNode", wireType)
+ }
+ var v uint32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.PayloadVariant = &AdminMessage_RemoveIgnoredNode{RemoveIgnoredNode: v}
case 64:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field BeginEditSettings", wireType)
@@ -2153,6 +3094,108 @@ func (m *AdminMessage) UnmarshalVT(dAtA []byte) error {
}
b := bool(v != 0)
m.PayloadVariant = &AdminMessage_CommitEditSettings{CommitEditSettings: b}
+ case 66:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field AddContact", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if oneof, ok := m.PayloadVariant.(*AdminMessage_AddContact); ok {
+ if err := oneof.AddContact.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ } else {
+ v := &SharedContact{}
+ if err := v.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ m.PayloadVariant = &AdminMessage_AddContact{AddContact: v}
+ }
+ iNdEx = postIndex
+ case 67:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field KeyVerification", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if oneof, ok := m.PayloadVariant.(*AdminMessage_KeyVerification); ok {
+ if err := oneof.KeyVerification.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ } else {
+ v := &KeyVerificationAdmin{}
+ if err := v.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ m.PayloadVariant = &AdminMessage_KeyVerification{KeyVerification: v}
+ }
+ iNdEx = postIndex
+ case 94:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field FactoryResetDevice", wireType)
+ }
+ var v int32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.PayloadVariant = &AdminMessage_FactoryResetDevice{FactoryResetDevice: v}
case 95:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field RebootOtaSeconds", wireType)
@@ -2236,7 +3279,7 @@ func (m *AdminMessage) UnmarshalVT(dAtA []byte) error {
m.PayloadVariant = &AdminMessage_ShutdownSeconds{ShutdownSeconds: v}
case 99:
if wireType != 0 {
- return fmt.Errorf("proto: wrong wireType = %d for field FactoryReset", wireType)
+ return fmt.Errorf("proto: wrong wireType = %d for field FactoryResetConfig", wireType)
}
var v int32
for shift := uint(0); ; shift += 7 {
@@ -2253,7 +3296,7 @@ func (m *AdminMessage) UnmarshalVT(dAtA []byte) error {
break
}
}
- m.PayloadVariant = &AdminMessage_FactoryReset{FactoryReset: v}
+ m.PayloadVariant = &AdminMessage_FactoryResetConfig{FactoryResetConfig: v}
case 100:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field NodedbReset", wireType)
@@ -2274,6 +3317,40 @@ func (m *AdminMessage) UnmarshalVT(dAtA []byte) error {
}
}
m.PayloadVariant = &AdminMessage_NodedbReset{NodedbReset: v}
+ case 101:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field SessionPasskey", wireType)
+ }
+ var byteLen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ byteLen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if byteLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + byteLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.SessionPasskey = append(m.SessionPasskey[:0], dAtA[iNdEx:postIndex]...)
+ if m.SessionPasskey == nil {
+ m.SessionPasskey = []byte{}
+ }
+ iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
@@ -2526,3 +3603,237 @@ func (m *NodeRemoteHardwarePinsResponse) UnmarshalVT(dAtA []byte) error {
}
return nil
}
+func (m *SharedContact) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: SharedContact: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: SharedContact: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field NodeNum", wireType)
+ }
+ m.NodeNum = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.NodeNum |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 2:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field User", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if m.User == nil {
+ m.User = &User{}
+ }
+ if err := m.User.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *KeyVerificationAdmin) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: KeyVerificationAdmin: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: KeyVerificationAdmin: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field MessageType", wireType)
+ }
+ m.MessageType = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.MessageType |= KeyVerificationAdmin_MessageType(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 2:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field RemoteNodenum", wireType)
+ }
+ m.RemoteNodenum = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.RemoteNodenum |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 3:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Nonce", wireType)
+ }
+ m.Nonce = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.Nonce |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 4:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field SecurityNumber", wireType)
+ }
+ var v uint32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.SecurityNumber = &v
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
diff --git a/meshtastic/apponly.pb.go b/meshtastic/apponly.pb.go
index 42d7ee2..8d0240d 100644
--- a/meshtastic/apponly.pb.go
+++ b/meshtastic/apponly.pb.go
@@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.32.0
-// protoc v4.25.2
+// protoc-gen-go v1.36.6
+// protoc v3.21.12
// source: meshtastic/apponly.proto
package generated
@@ -11,6 +11,7 @@ import (
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
+ unsafe "unsafe"
)
const (
@@ -26,23 +27,20 @@ const (
// No DISABLED channels are included.
// This abstraction is used only on the the 'app side' of the world (ie python, javascript and android etc) to show a group of Channels as a (long) URL
type ChannelSet struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Channel list with settings
Settings []*ChannelSettings `protobuf:"bytes,1,rep,name=settings,proto3" json:"settings,omitempty"`
// LoRa config
- LoraConfig *Config_LoRaConfig `protobuf:"bytes,2,opt,name=lora_config,json=loraConfig,proto3" json:"lora_config,omitempty"`
+ LoraConfig *Config_LoRaConfig `protobuf:"bytes,2,opt,name=lora_config,json=loraConfig,proto3" json:"lora_config,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *ChannelSet) Reset() {
*x = ChannelSet{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_apponly_proto_msgTypes[0]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_apponly_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *ChannelSet) String() string {
@@ -53,7 +51,7 @@ func (*ChannelSet) ProtoMessage() {}
func (x *ChannelSet) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_apponly_proto_msgTypes[0]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -84,44 +82,31 @@ func (x *ChannelSet) GetLoraConfig() *Config_LoRaConfig {
var File_meshtastic_apponly_proto protoreflect.FileDescriptor
-var file_meshtastic_apponly_proto_rawDesc = []byte{
- 0x0a, 0x18, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x61, 0x70, 0x70,
- 0x6f, 0x6e, 0x6c, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0a, 0x6d, 0x65, 0x73, 0x68,
- 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x1a, 0x18, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74,
- 0x69, 0x63, 0x2f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
- 0x1a, 0x17, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x63, 0x6f, 0x6e,
- 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x85, 0x01, 0x0a, 0x0a, 0x43, 0x68,
- 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x65, 0x74, 0x12, 0x37, 0x0a, 0x08, 0x73, 0x65, 0x74, 0x74,
- 0x69, 0x6e, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x6d, 0x65, 0x73,
- 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53,
- 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x08, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67,
- 0x73, 0x12, 0x3e, 0x0a, 0x0b, 0x6c, 0x6f, 0x72, 0x61, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
- 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73,
- 0x74, 0x69, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x4c, 0x6f, 0x52, 0x61, 0x43,
- 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0a, 0x6c, 0x6f, 0x72, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x42, 0x62, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x65, 0x65, 0x6b, 0x73, 0x76, 0x69,
- 0x6c, 0x6c, 0x65, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x42, 0x0d, 0x41, 0x70, 0x70, 0x4f, 0x6e, 0x6c,
- 0x79, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x5a, 0x22, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e,
- 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x67,
- 0x6f, 0x2f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0xaa, 0x02, 0x14, 0x4d, 0x65,
- 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
- 0x66, 0x73, 0xba, 0x02, 0x00, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
-}
+const file_meshtastic_apponly_proto_rawDesc = "" +
+ "\n" +
+ "\x18meshtastic/apponly.proto\x12\n" +
+ "meshtastic\x1a\x18meshtastic/channel.proto\x1a\x17meshtastic/config.proto\"\x85\x01\n" +
+ "\n" +
+ "ChannelSet\x127\n" +
+ "\bsettings\x18\x01 \x03(\v2\x1b.meshtastic.ChannelSettingsR\bsettings\x12>\n" +
+ "\vlora_config\x18\x02 \x01(\v2\x1d.meshtastic.Config.LoRaConfigR\n" +
+ "loraConfigBb\n" +
+ "\x13com.geeksville.meshB\rAppOnlyProtosZ\"github.com/meshtastic/go/generated\xaa\x02\x14Meshtastic.Protobufs\xba\x02\x00b\x06proto3"
var (
file_meshtastic_apponly_proto_rawDescOnce sync.Once
- file_meshtastic_apponly_proto_rawDescData = file_meshtastic_apponly_proto_rawDesc
+ file_meshtastic_apponly_proto_rawDescData []byte
)
func file_meshtastic_apponly_proto_rawDescGZIP() []byte {
file_meshtastic_apponly_proto_rawDescOnce.Do(func() {
- file_meshtastic_apponly_proto_rawDescData = protoimpl.X.CompressGZIP(file_meshtastic_apponly_proto_rawDescData)
+ file_meshtastic_apponly_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_meshtastic_apponly_proto_rawDesc), len(file_meshtastic_apponly_proto_rawDesc)))
})
return file_meshtastic_apponly_proto_rawDescData
}
var file_meshtastic_apponly_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
-var file_meshtastic_apponly_proto_goTypes = []interface{}{
+var file_meshtastic_apponly_proto_goTypes = []any{
(*ChannelSet)(nil), // 0: meshtastic.ChannelSet
(*ChannelSettings)(nil), // 1: meshtastic.ChannelSettings
(*Config_LoRaConfig)(nil), // 2: meshtastic.Config.LoRaConfig
@@ -143,25 +128,11 @@ func file_meshtastic_apponly_proto_init() {
}
file_meshtastic_channel_proto_init()
file_meshtastic_config_proto_init()
- if !protoimpl.UnsafeEnabled {
- file_meshtastic_apponly_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ChannelSet); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- }
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
- RawDescriptor: file_meshtastic_apponly_proto_rawDesc,
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_meshtastic_apponly_proto_rawDesc), len(file_meshtastic_apponly_proto_rawDesc)),
NumEnums: 0,
NumMessages: 1,
NumExtensions: 0,
@@ -172,7 +143,6 @@ func file_meshtastic_apponly_proto_init() {
MessageInfos: file_meshtastic_apponly_proto_msgTypes,
}.Build()
File_meshtastic_apponly_proto = out.File
- file_meshtastic_apponly_proto_rawDesc = nil
file_meshtastic_apponly_proto_goTypes = nil
file_meshtastic_apponly_proto_depIdxs = nil
}
diff --git a/meshtastic/atak.pb.go b/meshtastic/atak.pb.go
index b748df9..af34b01 100644
--- a/meshtastic/atak.pb.go
+++ b/meshtastic/atak.pb.go
@@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.32.0
-// protoc v4.25.2
+// protoc-gen-go v1.36.6
+// protoc v3.21.12
// source: meshtastic/atak.proto
package generated
@@ -11,6 +11,7 @@ import (
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
+ unsafe "unsafe"
)
const (
@@ -199,10 +200,7 @@ func (MemberRole) EnumDescriptor() ([]byte, []int) {
// Packets for the official ATAK Plugin
type TAKPacket struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Are the payloads strings compressed for LoRA transport?
IsCompressed bool `protobuf:"varint,1,opt,name=is_compressed,json=isCompressed,proto3" json:"is_compressed,omitempty"`
// The contact / callsign for ATAK user
@@ -213,20 +211,21 @@ type TAKPacket struct {
Status *Status `protobuf:"bytes,4,opt,name=status,proto3" json:"status,omitempty"`
// The payload of the packet
//
- // Types that are assignable to PayloadVariant:
+ // Types that are valid to be assigned to PayloadVariant:
//
// *TAKPacket_Pli
// *TAKPacket_Chat
+ // *TAKPacket_Detail
PayloadVariant isTAKPacket_PayloadVariant `protobuf_oneof:"payload_variant"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *TAKPacket) Reset() {
*x = TAKPacket{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_atak_proto_msgTypes[0]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_atak_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *TAKPacket) String() string {
@@ -237,7 +236,7 @@ func (*TAKPacket) ProtoMessage() {}
func (x *TAKPacket) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_atak_proto_msgTypes[0]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -280,23 +279,36 @@ func (x *TAKPacket) GetStatus() *Status {
return nil
}
-func (m *TAKPacket) GetPayloadVariant() isTAKPacket_PayloadVariant {
- if m != nil {
- return m.PayloadVariant
+func (x *TAKPacket) GetPayloadVariant() isTAKPacket_PayloadVariant {
+ if x != nil {
+ return x.PayloadVariant
}
return nil
}
func (x *TAKPacket) GetPli() *PLI {
- if x, ok := x.GetPayloadVariant().(*TAKPacket_Pli); ok {
- return x.Pli
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*TAKPacket_Pli); ok {
+ return x.Pli
+ }
}
return nil
}
func (x *TAKPacket) GetChat() *GeoChat {
- if x, ok := x.GetPayloadVariant().(*TAKPacket_Chat); ok {
- return x.Chat
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*TAKPacket_Chat); ok {
+ return x.Chat
+ }
+ }
+ return nil
+}
+
+func (x *TAKPacket) GetDetail() []byte {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*TAKPacket_Detail); ok {
+ return x.Detail
+ }
}
return nil
}
@@ -315,29 +327,36 @@ type TAKPacket_Chat struct {
Chat *GeoChat `protobuf:"bytes,6,opt,name=chat,proto3,oneof"`
}
+type TAKPacket_Detail struct {
+ // Generic CoT detail XML
+ // May be compressed / truncated by the sender (EUD)
+ Detail []byte `protobuf:"bytes,7,opt,name=detail,proto3,oneof"`
+}
+
func (*TAKPacket_Pli) isTAKPacket_PayloadVariant() {}
func (*TAKPacket_Chat) isTAKPacket_PayloadVariant() {}
+func (*TAKPacket_Detail) isTAKPacket_PayloadVariant() {}
+
// ATAK GeoChat message
type GeoChat struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// The text message
Message string `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"`
// Uid recipient of the message
To *string `protobuf:"bytes,2,opt,name=to,proto3,oneof" json:"to,omitempty"`
+ // Callsign of the recipient for the message
+ ToCallsign *string `protobuf:"bytes,3,opt,name=to_callsign,json=toCallsign,proto3,oneof" json:"to_callsign,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *GeoChat) Reset() {
*x = GeoChat{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_atak_proto_msgTypes[1]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_atak_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *GeoChat) String() string {
@@ -348,7 +367,7 @@ func (*GeoChat) ProtoMessage() {}
func (x *GeoChat) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_atak_proto_msgTypes[1]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -377,27 +396,31 @@ func (x *GeoChat) GetTo() string {
return ""
}
+func (x *GeoChat) GetToCallsign() string {
+ if x != nil && x.ToCallsign != nil {
+ return *x.ToCallsign
+ }
+ return ""
+}
+
// ATAK Group
// <__group role='Team Member' name='Cyan'/>
type Group struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Role of the group member
Role MemberRole `protobuf:"varint,1,opt,name=role,proto3,enum=meshtastic.MemberRole" json:"role,omitempty"`
// Team (color)
// Default Cyan
- Team Team `protobuf:"varint,2,opt,name=team,proto3,enum=meshtastic.Team" json:"team,omitempty"`
+ Team Team `protobuf:"varint,2,opt,name=team,proto3,enum=meshtastic.Team" json:"team,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *Group) Reset() {
*x = Group{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_atak_proto_msgTypes[2]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_atak_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *Group) String() string {
@@ -408,7 +431,7 @@ func (*Group) ProtoMessage() {}
func (x *Group) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_atak_proto_msgTypes[2]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -440,21 +463,18 @@ func (x *Group) GetTeam() Team {
// ATAK EUD Status
// <status battery='100' />
type Status struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Battery level
- Battery uint32 `protobuf:"varint,1,opt,name=battery,proto3" json:"battery,omitempty"`
+ Battery uint32 `protobuf:"varint,1,opt,name=battery,proto3" json:"battery,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *Status) Reset() {
*x = Status{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_atak_proto_msgTypes[3]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_atak_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *Status) String() string {
@@ -465,7 +485,7 @@ func (*Status) ProtoMessage() {}
func (x *Status) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_atak_proto_msgTypes[3]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -490,23 +510,20 @@ func (x *Status) GetBattery() uint32 {
// ATAK Contact
// <contact endpoint='0.0.0.0:4242:tcp' phone='+12345678' callsign='FALKE'/>
type Contact struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Callsign
Callsign string `protobuf:"bytes,1,opt,name=callsign,proto3" json:"callsign,omitempty"`
// Device callsign
DeviceCallsign string `protobuf:"bytes,2,opt,name=device_callsign,json=deviceCallsign,proto3" json:"device_callsign,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *Contact) Reset() {
*x = Contact{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_atak_proto_msgTypes[4]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_atak_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *Contact) String() string {
@@ -517,7 +534,7 @@ func (*Contact) ProtoMessage() {}
func (x *Contact) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_atak_proto_msgTypes[4]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -548,10 +565,7 @@ func (x *Contact) GetDeviceCallsign() string {
// Position Location Information from ATAK
type PLI struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// The new preferred location encoding, multiply by 1e-7 to get degrees
// in floating point
LatitudeI int32 `protobuf:"fixed32,1,opt,name=latitude_i,json=latitudeI,proto3" json:"latitude_i,omitempty"`
@@ -563,16 +577,16 @@ type PLI struct {
// Speed
Speed uint32 `protobuf:"varint,4,opt,name=speed,proto3" json:"speed,omitempty"`
// Course in degrees
- Course uint32 `protobuf:"varint,5,opt,name=course,proto3" json:"course,omitempty"`
+ Course uint32 `protobuf:"varint,5,opt,name=course,proto3" json:"course,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *PLI) Reset() {
*x = PLI{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_atak_proto_msgTypes[5]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_atak_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *PLI) String() string {
@@ -583,7 +597,7 @@ func (*PLI) ProtoMessage() {}
func (x *PLI) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_atak_proto_msgTypes[5]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -635,97 +649,96 @@ func (x *PLI) GetCourse() uint32 {
var File_meshtastic_atak_proto protoreflect.FileDescriptor
-var file_meshtastic_atak_proto_rawDesc = []byte{
- 0x0a, 0x15, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x61, 0x74, 0x61,
- 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0a, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73,
- 0x74, 0x69, 0x63, 0x22, 0x97, 0x02, 0x0a, 0x09, 0x54, 0x41, 0x4b, 0x50, 0x61, 0x63, 0x6b, 0x65,
- 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x69, 0x73, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73,
- 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x69, 0x73, 0x43, 0x6f, 0x6d, 0x70,
- 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x12, 0x2d, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x63,
- 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61,
- 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x52, 0x07, 0x63, 0x6f,
- 0x6e, 0x74, 0x61, 0x63, 0x74, 0x12, 0x27, 0x0a, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x03,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69,
- 0x63, 0x2e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x05, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x2a,
- 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12,
- 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74,
- 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x23, 0x0a, 0x03, 0x70, 0x6c,
- 0x69, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61,
- 0x73, 0x74, 0x69, 0x63, 0x2e, 0x50, 0x4c, 0x49, 0x48, 0x00, 0x52, 0x03, 0x70, 0x6c, 0x69, 0x12,
- 0x29, 0x0a, 0x04, 0x63, 0x68, 0x61, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e,
- 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x47, 0x65, 0x6f, 0x43, 0x68,
- 0x61, 0x74, 0x48, 0x00, 0x52, 0x04, 0x63, 0x68, 0x61, 0x74, 0x42, 0x11, 0x0a, 0x0f, 0x70, 0x61,
- 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x22, 0x3f, 0x0a,
- 0x07, 0x47, 0x65, 0x6f, 0x43, 0x68, 0x61, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73,
- 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61,
- 0x67, 0x65, 0x12, 0x13, 0x0a, 0x02, 0x74, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00,
- 0x52, 0x02, 0x74, 0x6f, 0x88, 0x01, 0x01, 0x42, 0x05, 0x0a, 0x03, 0x5f, 0x74, 0x6f, 0x22, 0x59,
- 0x0a, 0x05, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x2a, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18,
- 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74,
- 0x69, 0x63, 0x2e, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x72,
- 0x6f, 0x6c, 0x65, 0x12, 0x24, 0x0a, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28,
- 0x0e, 0x32, 0x10, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x54,
- 0x65, 0x61, 0x6d, 0x52, 0x04, 0x74, 0x65, 0x61, 0x6d, 0x22, 0x22, 0x0a, 0x06, 0x53, 0x74, 0x61,
- 0x74, 0x75, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x62, 0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x62, 0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x22, 0x4e, 0x0a,
- 0x07, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x63, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x63, 0x61, 0x6c, 0x6c,
- 0x73, 0x69, 0x67, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, 0x61, 0x6c, 0x6c,
- 0x73, 0x69, 0x67, 0x6e, 0x12, 0x27, 0x0a, 0x0f, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x63,
- 0x61, 0x6c, 0x6c, 0x73, 0x69, 0x67, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x64,
- 0x65, 0x76, 0x69, 0x63, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x73, 0x69, 0x67, 0x6e, 0x22, 0x8f, 0x01,
- 0x0a, 0x03, 0x50, 0x4c, 0x49, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x61, 0x74, 0x69, 0x74, 0x75, 0x64,
- 0x65, 0x5f, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0f, 0x52, 0x09, 0x6c, 0x61, 0x74, 0x69, 0x74,
- 0x75, 0x64, 0x65, 0x49, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x6f, 0x6e, 0x67, 0x69, 0x74, 0x75, 0x64,
- 0x65, 0x5f, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0f, 0x52, 0x0a, 0x6c, 0x6f, 0x6e, 0x67, 0x69,
- 0x74, 0x75, 0x64, 0x65, 0x49, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x6c, 0x74, 0x69, 0x74, 0x75, 0x64,
- 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x61, 0x6c, 0x74, 0x69, 0x74, 0x75, 0x64,
- 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x70, 0x65, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d,
- 0x52, 0x05, 0x73, 0x70, 0x65, 0x65, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x63, 0x6f, 0x75, 0x72, 0x73,
- 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x63, 0x6f, 0x75, 0x72, 0x73, 0x65, 0x2a,
- 0xc0, 0x01, 0x0a, 0x04, 0x54, 0x65, 0x61, 0x6d, 0x12, 0x14, 0x0a, 0x10, 0x55, 0x6e, 0x73, 0x70,
- 0x65, 0x63, 0x69, 0x66, 0x65, 0x64, 0x5f, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x10, 0x00, 0x12, 0x09,
- 0x0a, 0x05, 0x57, 0x68, 0x69, 0x74, 0x65, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x59, 0x65, 0x6c,
- 0x6c, 0x6f, 0x77, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x4f, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x10,
- 0x03, 0x12, 0x0b, 0x0a, 0x07, 0x4d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x61, 0x10, 0x04, 0x12, 0x07,
- 0x0a, 0x03, 0x52, 0x65, 0x64, 0x10, 0x05, 0x12, 0x0a, 0x0a, 0x06, 0x4d, 0x61, 0x72, 0x6f, 0x6f,
- 0x6e, 0x10, 0x06, 0x12, 0x0a, 0x0a, 0x06, 0x50, 0x75, 0x72, 0x70, 0x6c, 0x65, 0x10, 0x07, 0x12,
- 0x0d, 0x0a, 0x09, 0x44, 0x61, 0x72, 0x6b, 0x5f, 0x42, 0x6c, 0x75, 0x65, 0x10, 0x08, 0x12, 0x08,
- 0x0a, 0x04, 0x42, 0x6c, 0x75, 0x65, 0x10, 0x09, 0x12, 0x08, 0x0a, 0x04, 0x43, 0x79, 0x61, 0x6e,
- 0x10, 0x0a, 0x12, 0x08, 0x0a, 0x04, 0x54, 0x65, 0x61, 0x6c, 0x10, 0x0b, 0x12, 0x09, 0x0a, 0x05,
- 0x47, 0x72, 0x65, 0x65, 0x6e, 0x10, 0x0c, 0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x61, 0x72, 0x6b, 0x5f,
- 0x47, 0x72, 0x65, 0x65, 0x6e, 0x10, 0x0d, 0x12, 0x09, 0x0a, 0x05, 0x42, 0x72, 0x6f, 0x77, 0x6e,
- 0x10, 0x0e, 0x2a, 0x7f, 0x0a, 0x0a, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x52, 0x6f, 0x6c, 0x65,
- 0x12, 0x0e, 0x0a, 0x0a, 0x55, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x65, 0x64, 0x10, 0x00,
- 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x65, 0x61, 0x6d, 0x4d, 0x65, 0x6d, 0x62, 0x65, 0x72, 0x10, 0x01,
- 0x12, 0x0c, 0x0a, 0x08, 0x54, 0x65, 0x61, 0x6d, 0x4c, 0x65, 0x61, 0x64, 0x10, 0x02, 0x12, 0x06,
- 0x0a, 0x02, 0x48, 0x51, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x6e, 0x69, 0x70, 0x65, 0x72,
- 0x10, 0x04, 0x12, 0x09, 0x0a, 0x05, 0x4d, 0x65, 0x64, 0x69, 0x63, 0x10, 0x05, 0x12, 0x13, 0x0a,
- 0x0f, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x4f, 0x62, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72,
- 0x10, 0x06, 0x12, 0x07, 0x0a, 0x03, 0x52, 0x54, 0x4f, 0x10, 0x07, 0x12, 0x06, 0x0a, 0x02, 0x4b,
- 0x39, 0x10, 0x08, 0x42, 0x5f, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x65, 0x65, 0x6b, 0x73,
- 0x76, 0x69, 0x6c, 0x6c, 0x65, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x42, 0x0a, 0x41, 0x54, 0x41, 0x4b,
- 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x5a, 0x22, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63,
- 0x6f, 0x6d, 0x2f, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x67, 0x6f,
- 0x2f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0xaa, 0x02, 0x14, 0x4d, 0x65, 0x73,
- 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
- 0x73, 0xba, 0x02, 0x00, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
-}
+const file_meshtastic_atak_proto_rawDesc = "" +
+ "\n" +
+ "\x15meshtastic/atak.proto\x12\n" +
+ "meshtastic\"\xb1\x02\n" +
+ "\tTAKPacket\x12#\n" +
+ "\ris_compressed\x18\x01 \x01(\bR\fisCompressed\x12-\n" +
+ "\acontact\x18\x02 \x01(\v2\x13.meshtastic.ContactR\acontact\x12'\n" +
+ "\x05group\x18\x03 \x01(\v2\x11.meshtastic.GroupR\x05group\x12*\n" +
+ "\x06status\x18\x04 \x01(\v2\x12.meshtastic.StatusR\x06status\x12#\n" +
+ "\x03pli\x18\x05 \x01(\v2\x0f.meshtastic.PLIH\x00R\x03pli\x12)\n" +
+ "\x04chat\x18\x06 \x01(\v2\x13.meshtastic.GeoChatH\x00R\x04chat\x12\x18\n" +
+ "\x06detail\x18\a \x01(\fH\x00R\x06detailB\x11\n" +
+ "\x0fpayload_variant\"u\n" +
+ "\aGeoChat\x12\x18\n" +
+ "\amessage\x18\x01 \x01(\tR\amessage\x12\x13\n" +
+ "\x02to\x18\x02 \x01(\tH\x00R\x02to\x88\x01\x01\x12$\n" +
+ "\vto_callsign\x18\x03 \x01(\tH\x01R\n" +
+ "toCallsign\x88\x01\x01B\x05\n" +
+ "\x03_toB\x0e\n" +
+ "\f_to_callsign\"Y\n" +
+ "\x05Group\x12*\n" +
+ "\x04role\x18\x01 \x01(\x0e2\x16.meshtastic.MemberRoleR\x04role\x12$\n" +
+ "\x04team\x18\x02 \x01(\x0e2\x10.meshtastic.TeamR\x04team\"\"\n" +
+ "\x06Status\x12\x18\n" +
+ "\abattery\x18\x01 \x01(\rR\abattery\"N\n" +
+ "\aContact\x12\x1a\n" +
+ "\bcallsign\x18\x01 \x01(\tR\bcallsign\x12'\n" +
+ "\x0fdevice_callsign\x18\x02 \x01(\tR\x0edeviceCallsign\"\x8f\x01\n" +
+ "\x03PLI\x12\x1d\n" +
+ "\n" +
+ "latitude_i\x18\x01 \x01(\x0fR\tlatitudeI\x12\x1f\n" +
+ "\vlongitude_i\x18\x02 \x01(\x0fR\n" +
+ "longitudeI\x12\x1a\n" +
+ "\baltitude\x18\x03 \x01(\x05R\baltitude\x12\x14\n" +
+ "\x05speed\x18\x04 \x01(\rR\x05speed\x12\x16\n" +
+ "\x06course\x18\x05 \x01(\rR\x06course*\xc0\x01\n" +
+ "\x04Team\x12\x14\n" +
+ "\x10Unspecifed_Color\x10\x00\x12\t\n" +
+ "\x05White\x10\x01\x12\n" +
+ "\n" +
+ "\x06Yellow\x10\x02\x12\n" +
+ "\n" +
+ "\x06Orange\x10\x03\x12\v\n" +
+ "\aMagenta\x10\x04\x12\a\n" +
+ "\x03Red\x10\x05\x12\n" +
+ "\n" +
+ "\x06Maroon\x10\x06\x12\n" +
+ "\n" +
+ "\x06Purple\x10\a\x12\r\n" +
+ "\tDark_Blue\x10\b\x12\b\n" +
+ "\x04Blue\x10\t\x12\b\n" +
+ "\x04Cyan\x10\n" +
+ "\x12\b\n" +
+ "\x04Teal\x10\v\x12\t\n" +
+ "\x05Green\x10\f\x12\x0e\n" +
+ "\n" +
+ "Dark_Green\x10\r\x12\t\n" +
+ "\x05Brown\x10\x0e*\x7f\n" +
+ "\n" +
+ "MemberRole\x12\x0e\n" +
+ "\n" +
+ "Unspecifed\x10\x00\x12\x0e\n" +
+ "\n" +
+ "TeamMember\x10\x01\x12\f\n" +
+ "\bTeamLead\x10\x02\x12\x06\n" +
+ "\x02HQ\x10\x03\x12\n" +
+ "\n" +
+ "\x06Sniper\x10\x04\x12\t\n" +
+ "\x05Medic\x10\x05\x12\x13\n" +
+ "\x0fForwardObserver\x10\x06\x12\a\n" +
+ "\x03RTO\x10\a\x12\x06\n" +
+ "\x02K9\x10\bB_\n" +
+ "\x13com.geeksville.meshB\n" +
+ "ATAKProtosZ\"github.com/meshtastic/go/generated\xaa\x02\x14Meshtastic.Protobufs\xba\x02\x00b\x06proto3"
var (
file_meshtastic_atak_proto_rawDescOnce sync.Once
- file_meshtastic_atak_proto_rawDescData = file_meshtastic_atak_proto_rawDesc
+ file_meshtastic_atak_proto_rawDescData []byte
)
func file_meshtastic_atak_proto_rawDescGZIP() []byte {
file_meshtastic_atak_proto_rawDescOnce.Do(func() {
- file_meshtastic_atak_proto_rawDescData = protoimpl.X.CompressGZIP(file_meshtastic_atak_proto_rawDescData)
+ file_meshtastic_atak_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_meshtastic_atak_proto_rawDesc), len(file_meshtastic_atak_proto_rawDesc)))
})
return file_meshtastic_atak_proto_rawDescData
}
var file_meshtastic_atak_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
var file_meshtastic_atak_proto_msgTypes = make([]protoimpl.MessageInfo, 6)
-var file_meshtastic_atak_proto_goTypes = []interface{}{
+var file_meshtastic_atak_proto_goTypes = []any{
(Team)(0), // 0: meshtastic.Team
(MemberRole)(0), // 1: meshtastic.MemberRole
(*TAKPacket)(nil), // 2: meshtastic.TAKPacket
@@ -755,90 +768,17 @@ func file_meshtastic_atak_proto_init() {
if File_meshtastic_atak_proto != nil {
return
}
- if !protoimpl.UnsafeEnabled {
- file_meshtastic_atak_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*TAKPacket); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_atak_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*GeoChat); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_atak_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*Group); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_atak_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*Status); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_atak_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*Contact); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_atak_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*PLI); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- }
- file_meshtastic_atak_proto_msgTypes[0].OneofWrappers = []interface{}{
+ file_meshtastic_atak_proto_msgTypes[0].OneofWrappers = []any{
(*TAKPacket_Pli)(nil),
(*TAKPacket_Chat)(nil),
+ (*TAKPacket_Detail)(nil),
}
- file_meshtastic_atak_proto_msgTypes[1].OneofWrappers = []interface{}{}
+ file_meshtastic_atak_proto_msgTypes[1].OneofWrappers = []any{}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
- RawDescriptor: file_meshtastic_atak_proto_rawDesc,
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_meshtastic_atak_proto_rawDesc), len(file_meshtastic_atak_proto_rawDesc)),
NumEnums: 2,
NumMessages: 6,
NumExtensions: 0,
@@ -850,7 +790,6 @@ func file_meshtastic_atak_proto_init() {
MessageInfos: file_meshtastic_atak_proto_msgTypes,
}.Build()
File_meshtastic_atak_proto = out.File
- file_meshtastic_atak_proto_rawDesc = nil
file_meshtastic_atak_proto_goTypes = nil
file_meshtastic_atak_proto_depIdxs = nil
}
diff --git a/meshtastic/atak_vtproto.pb.go b/meshtastic/atak_vtproto.pb.go
index ceb763c..26b1237 100644
--- a/meshtastic/atak_vtproto.pb.go
+++ b/meshtastic/atak_vtproto.pb.go
@@ -139,6 +139,20 @@ func (m *TAKPacket_Chat) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
}
return len(dAtA) - i, nil
}
+func (m *TAKPacket_Detail) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *TAKPacket_Detail) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ i -= len(m.Detail)
+ copy(dAtA[i:], m.Detail)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.Detail)))
+ i--
+ dAtA[i] = 0x3a
+ return len(dAtA) - i, nil
+}
func (m *GeoChat) MarshalVT() (dAtA []byte, err error) {
if m == nil {
return nil, nil
@@ -169,6 +183,13 @@ func (m *GeoChat) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
+ if m.ToCallsign != nil {
+ i -= len(*m.ToCallsign)
+ copy(dAtA[i:], *m.ToCallsign)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(*m.ToCallsign)))
+ i--
+ dAtA[i] = 0x1a
+ }
if m.To != nil {
i -= len(*m.To)
copy(dAtA[i:], *m.To)
@@ -426,6 +447,16 @@ func (m *TAKPacket_Chat) SizeVT() (n int) {
}
return n
}
+func (m *TAKPacket_Detail) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ l = len(m.Detail)
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ return n
+}
func (m *GeoChat) SizeVT() (n int) {
if m == nil {
return 0
@@ -440,6 +471,10 @@ func (m *GeoChat) SizeVT() (n int) {
l = len(*m.To)
n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
}
+ if m.ToCallsign != nil {
+ l = len(*m.ToCallsign)
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
n += len(m.unknownFields)
return n
}
@@ -755,6 +790,39 @@ func (m *TAKPacket) UnmarshalVT(dAtA []byte) error {
m.PayloadVariant = &TAKPacket_Chat{Chat: v}
}
iNdEx = postIndex
+ case 7:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Detail", wireType)
+ }
+ var byteLen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ byteLen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if byteLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + byteLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ v := make([]byte, postIndex-iNdEx)
+ copy(v, dAtA[iNdEx:postIndex])
+ m.PayloadVariant = &TAKPacket_Detail{Detail: v}
+ iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
@@ -871,6 +939,39 @@ func (m *GeoChat) UnmarshalVT(dAtA []byte) error {
s := string(dAtA[iNdEx:postIndex])
m.To = &s
iNdEx = postIndex
+ case 3:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field ToCallsign", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ s := string(dAtA[iNdEx:postIndex])
+ m.ToCallsign = &s
+ iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
diff --git a/meshtastic/cannedmessages.pb.go b/meshtastic/cannedmessages.pb.go
index 212a323..15022d9 100644
--- a/meshtastic/cannedmessages.pb.go
+++ b/meshtastic/cannedmessages.pb.go
@@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.32.0
-// protoc v4.25.2
+// protoc-gen-go v1.36.6
+// protoc v3.21.12
// source: meshtastic/cannedmessages.proto
package generated
@@ -11,6 +11,7 @@ import (
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
+ unsafe "unsafe"
)
const (
@@ -22,21 +23,18 @@ const (
// Canned message module configuration.
type CannedMessageModuleConfig struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Predefined messages for canned message module separated by '|' characters.
- Messages string `protobuf:"bytes,1,opt,name=messages,proto3" json:"messages,omitempty"`
+ Messages string `protobuf:"bytes,1,opt,name=messages,proto3" json:"messages,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *CannedMessageModuleConfig) Reset() {
*x = CannedMessageModuleConfig{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_cannedmessages_proto_msgTypes[0]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_cannedmessages_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *CannedMessageModuleConfig) String() string {
@@ -47,7 +45,7 @@ func (*CannedMessageModuleConfig) ProtoMessage() {}
func (x *CannedMessageModuleConfig) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_cannedmessages_proto_msgTypes[0]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -71,37 +69,28 @@ func (x *CannedMessageModuleConfig) GetMessages() string {
var File_meshtastic_cannedmessages_proto protoreflect.FileDescriptor
-var file_meshtastic_cannedmessages_proto_rawDesc = []byte{
- 0x0a, 0x1f, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x63, 0x61, 0x6e,
- 0x6e, 0x65, 0x64, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74,
- 0x6f, 0x12, 0x0a, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x22, 0x37, 0x0a,
- 0x19, 0x43, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x4d, 0x6f,
- 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65,
- 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x65,
- 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x42, 0x6e, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x65,
- 0x65, 0x6b, 0x73, 0x76, 0x69, 0x6c, 0x6c, 0x65, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x42, 0x19, 0x43,
- 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x66,
- 0x69, 0x67, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x5a, 0x22, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62,
- 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f,
- 0x67, 0x6f, 0x2f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0xaa, 0x02, 0x14, 0x4d,
- 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62,
- 0x75, 0x66, 0x73, 0xba, 0x02, 0x00, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
-}
+const file_meshtastic_cannedmessages_proto_rawDesc = "" +
+ "\n" +
+ "\x1fmeshtastic/cannedmessages.proto\x12\n" +
+ "meshtastic\"7\n" +
+ "\x19CannedMessageModuleConfig\x12\x1a\n" +
+ "\bmessages\x18\x01 \x01(\tR\bmessagesBn\n" +
+ "\x13com.geeksville.meshB\x19CannedMessageConfigProtosZ\"github.com/meshtastic/go/generated\xaa\x02\x14Meshtastic.Protobufs\xba\x02\x00b\x06proto3"
var (
file_meshtastic_cannedmessages_proto_rawDescOnce sync.Once
- file_meshtastic_cannedmessages_proto_rawDescData = file_meshtastic_cannedmessages_proto_rawDesc
+ file_meshtastic_cannedmessages_proto_rawDescData []byte
)
func file_meshtastic_cannedmessages_proto_rawDescGZIP() []byte {
file_meshtastic_cannedmessages_proto_rawDescOnce.Do(func() {
- file_meshtastic_cannedmessages_proto_rawDescData = protoimpl.X.CompressGZIP(file_meshtastic_cannedmessages_proto_rawDescData)
+ file_meshtastic_cannedmessages_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_meshtastic_cannedmessages_proto_rawDesc), len(file_meshtastic_cannedmessages_proto_rawDesc)))
})
return file_meshtastic_cannedmessages_proto_rawDescData
}
var file_meshtastic_cannedmessages_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
-var file_meshtastic_cannedmessages_proto_goTypes = []interface{}{
+var file_meshtastic_cannedmessages_proto_goTypes = []any{
(*CannedMessageModuleConfig)(nil), // 0: meshtastic.CannedMessageModuleConfig
}
var file_meshtastic_cannedmessages_proto_depIdxs = []int32{
@@ -117,25 +106,11 @@ func file_meshtastic_cannedmessages_proto_init() {
if File_meshtastic_cannedmessages_proto != nil {
return
}
- if !protoimpl.UnsafeEnabled {
- file_meshtastic_cannedmessages_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*CannedMessageModuleConfig); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- }
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
- RawDescriptor: file_meshtastic_cannedmessages_proto_rawDesc,
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_meshtastic_cannedmessages_proto_rawDesc), len(file_meshtastic_cannedmessages_proto_rawDesc)),
NumEnums: 0,
NumMessages: 1,
NumExtensions: 0,
@@ -146,7 +121,6 @@ func file_meshtastic_cannedmessages_proto_init() {
MessageInfos: file_meshtastic_cannedmessages_proto_msgTypes,
}.Build()
File_meshtastic_cannedmessages_proto = out.File
- file_meshtastic_cannedmessages_proto_rawDesc = nil
file_meshtastic_cannedmessages_proto_goTypes = nil
file_meshtastic_cannedmessages_proto_depIdxs = nil
}
diff --git a/meshtastic/channel.pb.go b/meshtastic/channel.pb.go
index cc6e1ca..66a2362 100644
--- a/meshtastic/channel.pb.go
+++ b/meshtastic/channel.pb.go
@@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.32.0
-// protoc v4.25.2
+// protoc-gen-go v1.36.6
+// protoc v3.21.12
// source: meshtastic/channel.proto
package generated
@@ -11,6 +11,7 @@ import (
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
+ unsafe "unsafe"
)
const (
@@ -98,10 +99,7 @@ func (Channel_Role) EnumDescriptor() ([]byte, []int) {
// FIXME: explain how apps use channels for security.
// explain how remote settings and remote gpio are managed as an example
type ChannelSettings struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Deprecated in favor of LoraConfig.channel_num
//
// Deprecated: Marked as deprecated in meshtastic/channel.proto.
@@ -144,15 +142,15 @@ type ChannelSettings struct {
DownlinkEnabled bool `protobuf:"varint,6,opt,name=downlink_enabled,json=downlinkEnabled,proto3" json:"downlink_enabled,omitempty"`
// Per-channel module settings.
ModuleSettings *ModuleSettings `protobuf:"bytes,7,opt,name=module_settings,json=moduleSettings,proto3" json:"module_settings,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *ChannelSettings) Reset() {
*x = ChannelSettings{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_channel_proto_msgTypes[0]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_channel_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *ChannelSettings) String() string {
@@ -163,7 +161,7 @@ func (*ChannelSettings) ProtoMessage() {}
func (x *ChannelSettings) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_channel_proto_msgTypes[0]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -230,21 +228,21 @@ func (x *ChannelSettings) GetModuleSettings() *ModuleSettings {
// This message is specifically for modules to store per-channel configuration data.
type ModuleSettings struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Bits of precision for the location sent in position packets.
PositionPrecision uint32 `protobuf:"varint,1,opt,name=position_precision,json=positionPrecision,proto3" json:"position_precision,omitempty"`
+ // Controls whether or not the phone / clients should mute the current channel
+ // Useful for noisy public channels you don't necessarily want to disable
+ IsClientMuted bool `protobuf:"varint,2,opt,name=is_client_muted,json=isClientMuted,proto3" json:"is_client_muted,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *ModuleSettings) Reset() {
*x = ModuleSettings{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_channel_proto_msgTypes[1]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_channel_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *ModuleSettings) String() string {
@@ -255,7 +253,7 @@ func (*ModuleSettings) ProtoMessage() {}
func (x *ModuleSettings) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_channel_proto_msgTypes[1]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -277,12 +275,16 @@ func (x *ModuleSettings) GetPositionPrecision() uint32 {
return 0
}
+func (x *ModuleSettings) GetIsClientMuted() bool {
+ if x != nil {
+ return x.IsClientMuted
+ }
+ return false
+}
+
// A pair of a channel number, mode and the (sharable) settings for that channel
type Channel struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// The index of this channel in the channel table (from 0 to MAX_NUM_CHANNELS-1)
// (Someday - not currently implemented) An index of -1 could be used to mean "set by name",
// in which case the target node will find and set the channel by settings.name.
@@ -290,16 +292,16 @@ type Channel struct {
// The new settings, or NULL to disable that channel
Settings *ChannelSettings `protobuf:"bytes,2,opt,name=settings,proto3" json:"settings,omitempty"`
// TODO: REPLACE
- Role Channel_Role `protobuf:"varint,3,opt,name=role,proto3,enum=meshtastic.Channel_Role" json:"role,omitempty"`
+ Role Channel_Role `protobuf:"varint,3,opt,name=role,proto3,enum=meshtastic.Channel_Role" json:"role,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *Channel) Reset() {
*x = Channel{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_channel_proto_msgTypes[2]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_channel_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *Channel) String() string {
@@ -310,7 +312,7 @@ func (*Channel) ProtoMessage() {}
func (x *Channel) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_channel_proto_msgTypes[2]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -348,66 +350,47 @@ func (x *Channel) GetRole() Channel_Role {
var File_meshtastic_channel_proto protoreflect.FileDescriptor
-var file_meshtastic_channel_proto_rawDesc = []byte{
- 0x0a, 0x18, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x63, 0x68, 0x61,
- 0x6e, 0x6e, 0x65, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0a, 0x6d, 0x65, 0x73, 0x68,
- 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x22, 0x83, 0x02, 0x0a, 0x0f, 0x43, 0x68, 0x61, 0x6e, 0x6e,
- 0x65, 0x6c, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x23, 0x0a, 0x0b, 0x63, 0x68,
- 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x42,
- 0x02, 0x18, 0x01, 0x52, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4e, 0x75, 0x6d, 0x12,
- 0x10, 0x0a, 0x03, 0x70, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x70, 0x73,
- 0x6b, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
- 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28,
- 0x07, 0x52, 0x02, 0x69, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x75, 0x70, 0x6c, 0x69, 0x6e, 0x6b, 0x5f,
- 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x75,
- 0x70, 0x6c, 0x69, 0x6e, 0x6b, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x29, 0x0a, 0x10,
- 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x69, 0x6e, 0x6b, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
- 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x69, 0x6e, 0x6b,
- 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x43, 0x0a, 0x0f, 0x6d, 0x6f, 0x64, 0x75, 0x6c,
- 0x65, 0x5f, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b,
- 0x32, 0x1a, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x6f,
- 0x64, 0x75, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x0e, 0x6d, 0x6f,
- 0x64, 0x75, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x22, 0x3f, 0x0a, 0x0e,
- 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x2d,
- 0x0a, 0x12, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x65, 0x63, 0x69,
- 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x70, 0x6f, 0x73, 0x69,
- 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x63, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0xb8, 0x01,
- 0x0a, 0x07, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64,
- 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12,
- 0x37, 0x0a, 0x08, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28,
- 0x0b, 0x32, 0x1b, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43,
- 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x08,
- 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x2c, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65,
- 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73,
- 0x74, 0x69, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x2e, 0x52, 0x6f, 0x6c, 0x65,
- 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x30, 0x0a, 0x04, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x0c,
- 0x0a, 0x08, 0x44, 0x49, 0x53, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07,
- 0x50, 0x52, 0x49, 0x4d, 0x41, 0x52, 0x59, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x45, 0x43,
- 0x4f, 0x4e, 0x44, 0x41, 0x52, 0x59, 0x10, 0x02, 0x42, 0x62, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x2e,
- 0x67, 0x65, 0x65, 0x6b, 0x73, 0x76, 0x69, 0x6c, 0x6c, 0x65, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x42,
- 0x0d, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x5a, 0x22,
- 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x65, 0x73, 0x68, 0x74,
- 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x67, 0x6f, 0x2f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74,
- 0x65, 0x64, 0xaa, 0x02, 0x14, 0x4d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e,
- 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x73, 0xba, 0x02, 0x00, 0x62, 0x06, 0x70, 0x72,
- 0x6f, 0x74, 0x6f, 0x33,
-}
+const file_meshtastic_channel_proto_rawDesc = "" +
+ "\n" +
+ "\x18meshtastic/channel.proto\x12\n" +
+ "meshtastic\"\x83\x02\n" +
+ "\x0fChannelSettings\x12#\n" +
+ "\vchannel_num\x18\x01 \x01(\rB\x02\x18\x01R\n" +
+ "channelNum\x12\x10\n" +
+ "\x03psk\x18\x02 \x01(\fR\x03psk\x12\x12\n" +
+ "\x04name\x18\x03 \x01(\tR\x04name\x12\x0e\n" +
+ "\x02id\x18\x04 \x01(\aR\x02id\x12%\n" +
+ "\x0euplink_enabled\x18\x05 \x01(\bR\ruplinkEnabled\x12)\n" +
+ "\x10downlink_enabled\x18\x06 \x01(\bR\x0fdownlinkEnabled\x12C\n" +
+ "\x0fmodule_settings\x18\a \x01(\v2\x1a.meshtastic.ModuleSettingsR\x0emoduleSettings\"g\n" +
+ "\x0eModuleSettings\x12-\n" +
+ "\x12position_precision\x18\x01 \x01(\rR\x11positionPrecision\x12&\n" +
+ "\x0fis_client_muted\x18\x02 \x01(\bR\risClientMuted\"\xb8\x01\n" +
+ "\aChannel\x12\x14\n" +
+ "\x05index\x18\x01 \x01(\x05R\x05index\x127\n" +
+ "\bsettings\x18\x02 \x01(\v2\x1b.meshtastic.ChannelSettingsR\bsettings\x12,\n" +
+ "\x04role\x18\x03 \x01(\x0e2\x18.meshtastic.Channel.RoleR\x04role\"0\n" +
+ "\x04Role\x12\f\n" +
+ "\bDISABLED\x10\x00\x12\v\n" +
+ "\aPRIMARY\x10\x01\x12\r\n" +
+ "\tSECONDARY\x10\x02Bb\n" +
+ "\x13com.geeksville.meshB\rChannelProtosZ\"github.com/meshtastic/go/generated\xaa\x02\x14Meshtastic.Protobufs\xba\x02\x00b\x06proto3"
var (
file_meshtastic_channel_proto_rawDescOnce sync.Once
- file_meshtastic_channel_proto_rawDescData = file_meshtastic_channel_proto_rawDesc
+ file_meshtastic_channel_proto_rawDescData []byte
)
func file_meshtastic_channel_proto_rawDescGZIP() []byte {
file_meshtastic_channel_proto_rawDescOnce.Do(func() {
- file_meshtastic_channel_proto_rawDescData = protoimpl.X.CompressGZIP(file_meshtastic_channel_proto_rawDescData)
+ file_meshtastic_channel_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_meshtastic_channel_proto_rawDesc), len(file_meshtastic_channel_proto_rawDesc)))
})
return file_meshtastic_channel_proto_rawDescData
}
var file_meshtastic_channel_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_meshtastic_channel_proto_msgTypes = make([]protoimpl.MessageInfo, 3)
-var file_meshtastic_channel_proto_goTypes = []interface{}{
+var file_meshtastic_channel_proto_goTypes = []any{
(Channel_Role)(0), // 0: meshtastic.Channel.Role
(*ChannelSettings)(nil), // 1: meshtastic.ChannelSettings
(*ModuleSettings)(nil), // 2: meshtastic.ModuleSettings
@@ -429,49 +412,11 @@ func file_meshtastic_channel_proto_init() {
if File_meshtastic_channel_proto != nil {
return
}
- if !protoimpl.UnsafeEnabled {
- file_meshtastic_channel_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ChannelSettings); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_channel_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ModuleSettings); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_channel_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*Channel); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- }
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
- RawDescriptor: file_meshtastic_channel_proto_rawDesc,
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_meshtastic_channel_proto_rawDesc), len(file_meshtastic_channel_proto_rawDesc)),
NumEnums: 1,
NumMessages: 3,
NumExtensions: 0,
@@ -483,7 +428,6 @@ func file_meshtastic_channel_proto_init() {
MessageInfos: file_meshtastic_channel_proto_msgTypes,
}.Build()
File_meshtastic_channel_proto = out.File
- file_meshtastic_channel_proto_rawDesc = nil
file_meshtastic_channel_proto_goTypes = nil
file_meshtastic_channel_proto_depIdxs = nil
}
diff --git a/meshtastic/channel_vtproto.pb.go b/meshtastic/channel_vtproto.pb.go
index a0b4fde..1ef03df 100644
--- a/meshtastic/channel_vtproto.pb.go
+++ b/meshtastic/channel_vtproto.pb.go
@@ -137,6 +137,16 @@ func (m *ModuleSettings) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
+ if m.IsClientMuted {
+ i--
+ if m.IsClientMuted {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x10
+ }
if m.PositionPrecision != 0 {
i = protohelpers.EncodeVarint(dAtA, i, uint64(m.PositionPrecision))
i--
@@ -241,6 +251,9 @@ func (m *ModuleSettings) SizeVT() (n int) {
if m.PositionPrecision != 0 {
n += 1 + protohelpers.SizeOfVarint(uint64(m.PositionPrecision))
}
+ if m.IsClientMuted {
+ n += 2
+ }
n += len(m.unknownFields)
return n
}
@@ -535,6 +548,26 @@ func (m *ModuleSettings) UnmarshalVT(dAtA []byte) error {
break
}
}
+ case 2:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field IsClientMuted", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.IsClientMuted = bool(v != 0)
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
diff --git a/meshtastic/clientonly.pb.go b/meshtastic/clientonly.pb.go
index 9730098..4f2a0f7 100644
--- a/meshtastic/clientonly.pb.go
+++ b/meshtastic/clientonly.pb.go
@@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.32.0
-// protoc v4.25.2
+// protoc-gen-go v1.36.6
+// protoc v3.21.12
// source: meshtastic/clientonly.proto
package generated
@@ -11,6 +11,7 @@ import (
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
+ unsafe "unsafe"
)
const (
@@ -23,10 +24,7 @@ const (
// This abstraction is used to contain any configuration for provisioning a node on any client.
// It is useful for importing and exporting configurations.
type DeviceProfile struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Long name for the node
LongName *string `protobuf:"bytes,1,opt,name=long_name,json=longName,proto3,oneof" json:"long_name,omitempty"`
// Short name of the node
@@ -37,15 +35,21 @@ type DeviceProfile struct {
Config *LocalConfig `protobuf:"bytes,4,opt,name=config,proto3,oneof" json:"config,omitempty"`
// The ModuleConfig of the node
ModuleConfig *LocalModuleConfig `protobuf:"bytes,5,opt,name=module_config,json=moduleConfig,proto3,oneof" json:"module_config,omitempty"`
+ // Fixed position data
+ FixedPosition *Position `protobuf:"bytes,6,opt,name=fixed_position,json=fixedPosition,proto3,oneof" json:"fixed_position,omitempty"`
+ // Ringtone for ExternalNotification
+ Ringtone *string `protobuf:"bytes,7,opt,name=ringtone,proto3,oneof" json:"ringtone,omitempty"`
+ // Predefined messages for CannedMessage
+ CannedMessages *string `protobuf:"bytes,8,opt,name=canned_messages,json=cannedMessages,proto3,oneof" json:"canned_messages,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *DeviceProfile) Reset() {
*x = DeviceProfile{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_clientonly_proto_msgTypes[0]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_clientonly_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *DeviceProfile) String() string {
@@ -56,7 +60,7 @@ func (*DeviceProfile) ProtoMessage() {}
func (x *DeviceProfile) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_clientonly_proto_msgTypes[0]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -106,69 +110,83 @@ func (x *DeviceProfile) GetModuleConfig() *LocalModuleConfig {
return nil
}
-var File_meshtastic_clientonly_proto protoreflect.FileDescriptor
+func (x *DeviceProfile) GetFixedPosition() *Position {
+ if x != nil {
+ return x.FixedPosition
+ }
+ return nil
+}
-var file_meshtastic_clientonly_proto_rawDesc = []byte{
- 0x0a, 0x1b, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x63, 0x6c, 0x69,
- 0x65, 0x6e, 0x74, 0x6f, 0x6e, 0x6c, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0a, 0x6d,
- 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x1a, 0x1a, 0x6d, 0x65, 0x73, 0x68, 0x74,
- 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x6f, 0x6e, 0x6c, 0x79, 0x2e,
- 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xc4, 0x02, 0x0a, 0x0d, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65,
- 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x09, 0x6c, 0x6f, 0x6e, 0x67, 0x5f,
- 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x08, 0x6c, 0x6f,
- 0x6e, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x22, 0x0a, 0x0a, 0x73, 0x68, 0x6f,
- 0x72, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52,
- 0x09, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x88, 0x01, 0x01, 0x12, 0x24, 0x0a,
- 0x0b, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01,
- 0x28, 0x09, 0x48, 0x02, 0x52, 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x55, 0x72, 0x6c,
- 0x88, 0x01, 0x01, 0x12, 0x34, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x04, 0x20,
- 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63,
- 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x03, 0x52, 0x06,
- 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x88, 0x01, 0x01, 0x12, 0x47, 0x0a, 0x0d, 0x6d, 0x6f, 0x64,
- 0x75, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b,
- 0x32, 0x1d, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4c, 0x6f,
- 0x63, 0x61, 0x6c, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48,
- 0x04, 0x52, 0x0c, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x88,
- 0x01, 0x01, 0x42, 0x0c, 0x0a, 0x0a, 0x5f, 0x6c, 0x6f, 0x6e, 0x67, 0x5f, 0x6e, 0x61, 0x6d, 0x65,
- 0x42, 0x0d, 0x0a, 0x0b, 0x5f, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x42,
- 0x0e, 0x0a, 0x0c, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x75, 0x72, 0x6c, 0x42,
- 0x09, 0x0a, 0x07, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x10, 0x0a, 0x0e, 0x5f, 0x6d,
- 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x65, 0x0a, 0x13,
- 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x65, 0x65, 0x6b, 0x73, 0x76, 0x69, 0x6c, 0x6c, 0x65, 0x2e, 0x6d,
- 0x65, 0x73, 0x68, 0x42, 0x10, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4f, 0x6e, 0x6c, 0x79, 0x50,
- 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x5a, 0x22, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f,
- 0x6d, 0x2f, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x67, 0x6f, 0x2f,
- 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0xaa, 0x02, 0x14, 0x4d, 0x65, 0x73, 0x68,
- 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x73,
- 0xba, 0x02, 0x00, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+func (x *DeviceProfile) GetRingtone() string {
+ if x != nil && x.Ringtone != nil {
+ return *x.Ringtone
+ }
+ return ""
+}
+
+func (x *DeviceProfile) GetCannedMessages() string {
+ if x != nil && x.CannedMessages != nil {
+ return *x.CannedMessages
+ }
+ return ""
}
+var File_meshtastic_clientonly_proto protoreflect.FileDescriptor
+
+const file_meshtastic_clientonly_proto_rawDesc = "" +
+ "\n" +
+ "\x1bmeshtastic/clientonly.proto\x12\n" +
+ "meshtastic\x1a\x1ameshtastic/localonly.proto\x1a\x15meshtastic/mesh.proto\"\x89\x04\n" +
+ "\rDeviceProfile\x12 \n" +
+ "\tlong_name\x18\x01 \x01(\tH\x00R\blongName\x88\x01\x01\x12\"\n" +
+ "\n" +
+ "short_name\x18\x02 \x01(\tH\x01R\tshortName\x88\x01\x01\x12$\n" +
+ "\vchannel_url\x18\x03 \x01(\tH\x02R\n" +
+ "channelUrl\x88\x01\x01\x124\n" +
+ "\x06config\x18\x04 \x01(\v2\x17.meshtastic.LocalConfigH\x03R\x06config\x88\x01\x01\x12G\n" +
+ "\rmodule_config\x18\x05 \x01(\v2\x1d.meshtastic.LocalModuleConfigH\x04R\fmoduleConfig\x88\x01\x01\x12@\n" +
+ "\x0efixed_position\x18\x06 \x01(\v2\x14.meshtastic.PositionH\x05R\rfixedPosition\x88\x01\x01\x12\x1f\n" +
+ "\bringtone\x18\a \x01(\tH\x06R\bringtone\x88\x01\x01\x12,\n" +
+ "\x0fcanned_messages\x18\b \x01(\tH\aR\x0ecannedMessages\x88\x01\x01B\f\n" +
+ "\n" +
+ "_long_nameB\r\n" +
+ "\v_short_nameB\x0e\n" +
+ "\f_channel_urlB\t\n" +
+ "\a_configB\x10\n" +
+ "\x0e_module_configB\x11\n" +
+ "\x0f_fixed_positionB\v\n" +
+ "\t_ringtoneB\x12\n" +
+ "\x10_canned_messagesBe\n" +
+ "\x13com.geeksville.meshB\x10ClientOnlyProtosZ\"github.com/meshtastic/go/generated\xaa\x02\x14Meshtastic.Protobufs\xba\x02\x00b\x06proto3"
+
var (
file_meshtastic_clientonly_proto_rawDescOnce sync.Once
- file_meshtastic_clientonly_proto_rawDescData = file_meshtastic_clientonly_proto_rawDesc
+ file_meshtastic_clientonly_proto_rawDescData []byte
)
func file_meshtastic_clientonly_proto_rawDescGZIP() []byte {
file_meshtastic_clientonly_proto_rawDescOnce.Do(func() {
- file_meshtastic_clientonly_proto_rawDescData = protoimpl.X.CompressGZIP(file_meshtastic_clientonly_proto_rawDescData)
+ file_meshtastic_clientonly_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_meshtastic_clientonly_proto_rawDesc), len(file_meshtastic_clientonly_proto_rawDesc)))
})
return file_meshtastic_clientonly_proto_rawDescData
}
var file_meshtastic_clientonly_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
-var file_meshtastic_clientonly_proto_goTypes = []interface{}{
+var file_meshtastic_clientonly_proto_goTypes = []any{
(*DeviceProfile)(nil), // 0: meshtastic.DeviceProfile
(*LocalConfig)(nil), // 1: meshtastic.LocalConfig
(*LocalModuleConfig)(nil), // 2: meshtastic.LocalModuleConfig
+ (*Position)(nil), // 3: meshtastic.Position
}
var file_meshtastic_clientonly_proto_depIdxs = []int32{
1, // 0: meshtastic.DeviceProfile.config:type_name -> meshtastic.LocalConfig
2, // 1: meshtastic.DeviceProfile.module_config:type_name -> meshtastic.LocalModuleConfig
- 2, // [2:2] is the sub-list for method output_type
- 2, // [2:2] is the sub-list for method input_type
- 2, // [2:2] is the sub-list for extension type_name
- 2, // [2:2] is the sub-list for extension extendee
- 0, // [0:2] is the sub-list for field type_name
+ 3, // 2: meshtastic.DeviceProfile.fixed_position:type_name -> meshtastic.Position
+ 3, // [3:3] is the sub-list for method output_type
+ 3, // [3:3] is the sub-list for method input_type
+ 3, // [3:3] is the sub-list for extension type_name
+ 3, // [3:3] is the sub-list for extension extendee
+ 0, // [0:3] is the sub-list for field type_name
}
func init() { file_meshtastic_clientonly_proto_init() }
@@ -177,26 +195,13 @@ func file_meshtastic_clientonly_proto_init() {
return
}
file_meshtastic_localonly_proto_init()
- if !protoimpl.UnsafeEnabled {
- file_meshtastic_clientonly_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DeviceProfile); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- }
- file_meshtastic_clientonly_proto_msgTypes[0].OneofWrappers = []interface{}{}
+ file_meshtastic_mesh_proto_init()
+ file_meshtastic_clientonly_proto_msgTypes[0].OneofWrappers = []any{}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
- RawDescriptor: file_meshtastic_clientonly_proto_rawDesc,
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_meshtastic_clientonly_proto_rawDesc), len(file_meshtastic_clientonly_proto_rawDesc)),
NumEnums: 0,
NumMessages: 1,
NumExtensions: 0,
@@ -207,7 +212,6 @@ func file_meshtastic_clientonly_proto_init() {
MessageInfos: file_meshtastic_clientonly_proto_msgTypes,
}.Build()
File_meshtastic_clientonly_proto = out.File
- file_meshtastic_clientonly_proto_rawDesc = nil
file_meshtastic_clientonly_proto_goTypes = nil
file_meshtastic_clientonly_proto_depIdxs = nil
}
diff --git a/meshtastic/clientonly_vtproto.pb.go b/meshtastic/clientonly_vtproto.pb.go
index 8ad1193..5600b00 100644
--- a/meshtastic/clientonly_vtproto.pb.go
+++ b/meshtastic/clientonly_vtproto.pb.go
@@ -48,6 +48,30 @@ func (m *DeviceProfile) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
+ if m.CannedMessages != nil {
+ i -= len(*m.CannedMessages)
+ copy(dAtA[i:], *m.CannedMessages)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(*m.CannedMessages)))
+ i--
+ dAtA[i] = 0x42
+ }
+ if m.Ringtone != nil {
+ i -= len(*m.Ringtone)
+ copy(dAtA[i:], *m.Ringtone)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(*m.Ringtone)))
+ i--
+ dAtA[i] = 0x3a
+ }
+ if m.FixedPosition != nil {
+ size, err := m.FixedPosition.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x32
+ }
if m.ModuleConfig != nil {
size, err := m.ModuleConfig.MarshalToSizedBufferVT(dAtA[:i])
if err != nil {
@@ -118,6 +142,18 @@ func (m *DeviceProfile) SizeVT() (n int) {
l = m.ModuleConfig.SizeVT()
n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
}
+ if m.FixedPosition != nil {
+ l = m.FixedPosition.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ if m.Ringtone != nil {
+ l = len(*m.Ringtone)
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ if m.CannedMessages != nil {
+ l = len(*m.CannedMessages)
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
n += len(m.unknownFields)
return n
}
@@ -322,6 +358,108 @@ func (m *DeviceProfile) UnmarshalVT(dAtA []byte) error {
return err
}
iNdEx = postIndex
+ case 6:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field FixedPosition", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if m.FixedPosition == nil {
+ m.FixedPosition = &Position{}
+ }
+ if err := m.FixedPosition.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ iNdEx = postIndex
+ case 7:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Ringtone", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ s := string(dAtA[iNdEx:postIndex])
+ m.Ringtone = &s
+ iNdEx = postIndex
+ case 8:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field CannedMessages", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ s := string(dAtA[iNdEx:postIndex])
+ m.CannedMessages = &s
+ iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
diff --git a/meshtastic/config.pb.go b/meshtastic/config.pb.go
index fd64176..79ca9b1 100644
--- a/meshtastic/config.pb.go
+++ b/meshtastic/config.pb.go
@@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.32.0
-// protoc v4.25.2
+// protoc-gen-go v1.36.6
+// protoc v3.21.12
// source: meshtastic/config.proto
package generated
@@ -11,6 +11,7 @@ import (
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
+ unsafe "unsafe"
)
const (
@@ -35,7 +36,7 @@ const (
// The wifi radio and the oled screen will be put to sleep.
// This mode may still potentially have higher power usage due to it's preference in message rebroadcasting on the mesh.
Config_DeviceConfig_ROUTER Config_DeviceConfig_Role = 2
- // Description: Combination of both ROUTER and CLIENT. Not for mobile devices.
+ // Deprecated: Marked as deprecated in meshtastic/config.proto.
Config_DeviceConfig_ROUTER_CLIENT Config_DeviceConfig_Role = 3
// Description: Infrastructure node for extending network coverage by relaying messages with minimal overhead. Not visible in Nodes list.
// Technical Details: Mesh packets will simply be rebroadcasted over this node. Nodes configured with this role will not originate NodeInfo, Position, Telemetry
@@ -79,6 +80,13 @@ const (
// and automatic TAK PLI (position location information) broadcasts.
// Uses position module configuration to determine TAK PLI broadcast interval.
Config_DeviceConfig_TAK_TRACKER Config_DeviceConfig_Role = 10
+ // Description: Will always rebroadcast packets, but will do so after all other modes.
+ // Technical Details: Used for router nodes that are intended to provide additional coverage
+ //
+ // in areas not already covered by other routers, or to bridge around problematic terrain,
+ // but should not be given priority over other routers in order to avoid unnecessaraily
+ // consuming hops.
+ Config_DeviceConfig_ROUTER_LATE Config_DeviceConfig_Role = 11
)
// Enum value maps for Config_DeviceConfig_Role.
@@ -95,6 +103,7 @@ var (
8: "CLIENT_HIDDEN",
9: "LOST_AND_FOUND",
10: "TAK_TRACKER",
+ 11: "ROUTER_LATE",
}
Config_DeviceConfig_Role_value = map[string]int32{
"CLIENT": 0,
@@ -108,6 +117,7 @@ var (
"CLIENT_HIDDEN": 8,
"LOST_AND_FOUND": 9,
"TAK_TRACKER": 10,
+ "ROUTER_LATE": 11,
}
)
@@ -154,6 +164,11 @@ const (
// Ignores observed messages from foreign meshes like LOCAL_ONLY,
// but takes it step further by also ignoring messages from nodenums not in the node's known list (NodeDB)
Config_DeviceConfig_KNOWN_ONLY Config_DeviceConfig_RebroadcastMode = 3
+ // Only permitted for SENSOR, TRACKER and TAK_TRACKER roles, this will inhibit all rebroadcasts, not unlike CLIENT_MUTE role.
+ Config_DeviceConfig_NONE Config_DeviceConfig_RebroadcastMode = 4
+ // Ignores packets from non-standard portnums such as: TAK, RangeTest, PaxCounter, etc.
+ // Only rebroadcasts packets with standard portnums: NodeInfo, Text, Position, Telemetry, and Routing.
+ Config_DeviceConfig_CORE_PORTNUMS_ONLY Config_DeviceConfig_RebroadcastMode = 5
)
// Enum value maps for Config_DeviceConfig_RebroadcastMode.
@@ -163,12 +178,16 @@ var (
1: "ALL_SKIP_DECODING",
2: "LOCAL_ONLY",
3: "KNOWN_ONLY",
+ 4: "NONE",
+ 5: "CORE_PORTNUMS_ONLY",
}
Config_DeviceConfig_RebroadcastMode_value = map[string]int32{
- "ALL": 0,
- "ALL_SKIP_DECODING": 1,
- "LOCAL_ONLY": 2,
- "KNOWN_ONLY": 3,
+ "ALL": 0,
+ "ALL_SKIP_DECODING": 1,
+ "LOCAL_ONLY": 2,
+ "KNOWN_ONLY": 3,
+ "NONE": 4,
+ "CORE_PORTNUMS_ONLY": 5,
}
)
@@ -394,6 +413,55 @@ func (Config_NetworkConfig_AddressMode) EnumDescriptor() ([]byte, []int) {
return file_meshtastic_config_proto_rawDescGZIP(), []int{0, 3, 0}
}
+// Available flags auxiliary network protocols
+type Config_NetworkConfig_ProtocolFlags int32
+
+const (
+ // Do not broadcast packets over any network protocol
+ Config_NetworkConfig_NO_BROADCAST Config_NetworkConfig_ProtocolFlags = 0
+ // Enable broadcasting packets via UDP over the local network
+ Config_NetworkConfig_UDP_BROADCAST Config_NetworkConfig_ProtocolFlags = 1
+)
+
+// Enum value maps for Config_NetworkConfig_ProtocolFlags.
+var (
+ Config_NetworkConfig_ProtocolFlags_name = map[int32]string{
+ 0: "NO_BROADCAST",
+ 1: "UDP_BROADCAST",
+ }
+ Config_NetworkConfig_ProtocolFlags_value = map[string]int32{
+ "NO_BROADCAST": 0,
+ "UDP_BROADCAST": 1,
+ }
+)
+
+func (x Config_NetworkConfig_ProtocolFlags) Enum() *Config_NetworkConfig_ProtocolFlags {
+ p := new(Config_NetworkConfig_ProtocolFlags)
+ *p = x
+ return p
+}
+
+func (x Config_NetworkConfig_ProtocolFlags) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Config_NetworkConfig_ProtocolFlags) Descriptor() protoreflect.EnumDescriptor {
+ return file_meshtastic_config_proto_enumTypes[5].Descriptor()
+}
+
+func (Config_NetworkConfig_ProtocolFlags) Type() protoreflect.EnumType {
+ return &file_meshtastic_config_proto_enumTypes[5]
+}
+
+func (x Config_NetworkConfig_ProtocolFlags) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Config_NetworkConfig_ProtocolFlags.Descriptor instead.
+func (Config_NetworkConfig_ProtocolFlags) EnumDescriptor() ([]byte, []int) {
+ return file_meshtastic_config_proto_rawDescGZIP(), []int{0, 3, 1}
+}
+
// How the GPS coordinates are displayed on the OLED screen.
type Config_DisplayConfig_GpsCoordinateFormat int32
@@ -450,11 +518,11 @@ func (x Config_DisplayConfig_GpsCoordinateFormat) String() string {
}
func (Config_DisplayConfig_GpsCoordinateFormat) Descriptor() protoreflect.EnumDescriptor {
- return file_meshtastic_config_proto_enumTypes[5].Descriptor()
+ return file_meshtastic_config_proto_enumTypes[6].Descriptor()
}
func (Config_DisplayConfig_GpsCoordinateFormat) Type() protoreflect.EnumType {
- return &file_meshtastic_config_proto_enumTypes[5]
+ return &file_meshtastic_config_proto_enumTypes[6]
}
func (x Config_DisplayConfig_GpsCoordinateFormat) Number() protoreflect.EnumNumber {
@@ -499,11 +567,11 @@ func (x Config_DisplayConfig_DisplayUnits) String() string {
}
func (Config_DisplayConfig_DisplayUnits) Descriptor() protoreflect.EnumDescriptor {
- return file_meshtastic_config_proto_enumTypes[6].Descriptor()
+ return file_meshtastic_config_proto_enumTypes[7].Descriptor()
}
func (Config_DisplayConfig_DisplayUnits) Type() protoreflect.EnumType {
- return &file_meshtastic_config_proto_enumTypes[6]
+ return &file_meshtastic_config_proto_enumTypes[7]
}
func (x Config_DisplayConfig_DisplayUnits) Number() protoreflect.EnumNumber {
@@ -519,14 +587,16 @@ func (Config_DisplayConfig_DisplayUnits) EnumDescriptor() ([]byte, []int) {
type Config_DisplayConfig_OledType int32
const (
- // Default / Auto
+ // Default / Autodetect
Config_DisplayConfig_OLED_AUTO Config_DisplayConfig_OledType = 0
- // Default / Auto
+ // Default / Autodetect
Config_DisplayConfig_OLED_SSD1306 Config_DisplayConfig_OledType = 1
- // Default / Auto
+ // Default / Autodetect
Config_DisplayConfig_OLED_SH1106 Config_DisplayConfig_OledType = 2
// Can not be auto detected but set by proto. Used for 128x128 screens
Config_DisplayConfig_OLED_SH1107 Config_DisplayConfig_OledType = 3
+ // Can not be auto detected but set by proto. Used for 128x64 screens
+ Config_DisplayConfig_OLED_SH1107_128_64 Config_DisplayConfig_OledType = 4
)
// Enum value maps for Config_DisplayConfig_OledType.
@@ -536,12 +606,14 @@ var (
1: "OLED_SSD1306",
2: "OLED_SH1106",
3: "OLED_SH1107",
+ 4: "OLED_SH1107_128_64",
}
Config_DisplayConfig_OledType_value = map[string]int32{
- "OLED_AUTO": 0,
- "OLED_SSD1306": 1,
- "OLED_SH1106": 2,
- "OLED_SH1107": 3,
+ "OLED_AUTO": 0,
+ "OLED_SSD1306": 1,
+ "OLED_SH1106": 2,
+ "OLED_SH1107": 3,
+ "OLED_SH1107_128_64": 4,
}
)
@@ -556,11 +628,11 @@ func (x Config_DisplayConfig_OledType) String() string {
}
func (Config_DisplayConfig_OledType) Descriptor() protoreflect.EnumDescriptor {
- return file_meshtastic_config_proto_enumTypes[7].Descriptor()
+ return file_meshtastic_config_proto_enumTypes[8].Descriptor()
}
func (Config_DisplayConfig_OledType) Type() protoreflect.EnumType {
- return &file_meshtastic_config_proto_enumTypes[7]
+ return &file_meshtastic_config_proto_enumTypes[8]
}
func (x Config_DisplayConfig_OledType) Number() protoreflect.EnumNumber {
@@ -612,11 +684,11 @@ func (x Config_DisplayConfig_DisplayMode) String() string {
}
func (Config_DisplayConfig_DisplayMode) Descriptor() protoreflect.EnumDescriptor {
- return file_meshtastic_config_proto_enumTypes[8].Descriptor()
+ return file_meshtastic_config_proto_enumTypes[9].Descriptor()
}
func (Config_DisplayConfig_DisplayMode) Type() protoreflect.EnumType {
- return &file_meshtastic_config_proto_enumTypes[8]
+ return &file_meshtastic_config_proto_enumTypes[9]
}
func (x Config_DisplayConfig_DisplayMode) Number() protoreflect.EnumNumber {
@@ -628,6 +700,78 @@ func (Config_DisplayConfig_DisplayMode) EnumDescriptor() ([]byte, []int) {
return file_meshtastic_config_proto_rawDescGZIP(), []int{0, 4, 3}
}
+type Config_DisplayConfig_CompassOrientation int32
+
+const (
+ // The compass and the display are in the same orientation.
+ Config_DisplayConfig_DEGREES_0 Config_DisplayConfig_CompassOrientation = 0
+ // Rotate the compass by 90 degrees.
+ Config_DisplayConfig_DEGREES_90 Config_DisplayConfig_CompassOrientation = 1
+ // Rotate the compass by 180 degrees.
+ Config_DisplayConfig_DEGREES_180 Config_DisplayConfig_CompassOrientation = 2
+ // Rotate the compass by 270 degrees.
+ Config_DisplayConfig_DEGREES_270 Config_DisplayConfig_CompassOrientation = 3
+ // Don't rotate the compass, but invert the result.
+ Config_DisplayConfig_DEGREES_0_INVERTED Config_DisplayConfig_CompassOrientation = 4
+ // Rotate the compass by 90 degrees and invert.
+ Config_DisplayConfig_DEGREES_90_INVERTED Config_DisplayConfig_CompassOrientation = 5
+ // Rotate the compass by 180 degrees and invert.
+ Config_DisplayConfig_DEGREES_180_INVERTED Config_DisplayConfig_CompassOrientation = 6
+ // Rotate the compass by 270 degrees and invert.
+ Config_DisplayConfig_DEGREES_270_INVERTED Config_DisplayConfig_CompassOrientation = 7
+)
+
+// Enum value maps for Config_DisplayConfig_CompassOrientation.
+var (
+ Config_DisplayConfig_CompassOrientation_name = map[int32]string{
+ 0: "DEGREES_0",
+ 1: "DEGREES_90",
+ 2: "DEGREES_180",
+ 3: "DEGREES_270",
+ 4: "DEGREES_0_INVERTED",
+ 5: "DEGREES_90_INVERTED",
+ 6: "DEGREES_180_INVERTED",
+ 7: "DEGREES_270_INVERTED",
+ }
+ Config_DisplayConfig_CompassOrientation_value = map[string]int32{
+ "DEGREES_0": 0,
+ "DEGREES_90": 1,
+ "DEGREES_180": 2,
+ "DEGREES_270": 3,
+ "DEGREES_0_INVERTED": 4,
+ "DEGREES_90_INVERTED": 5,
+ "DEGREES_180_INVERTED": 6,
+ "DEGREES_270_INVERTED": 7,
+ }
+)
+
+func (x Config_DisplayConfig_CompassOrientation) Enum() *Config_DisplayConfig_CompassOrientation {
+ p := new(Config_DisplayConfig_CompassOrientation)
+ *p = x
+ return p
+}
+
+func (x Config_DisplayConfig_CompassOrientation) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Config_DisplayConfig_CompassOrientation) Descriptor() protoreflect.EnumDescriptor {
+ return file_meshtastic_config_proto_enumTypes[10].Descriptor()
+}
+
+func (Config_DisplayConfig_CompassOrientation) Type() protoreflect.EnumType {
+ return &file_meshtastic_config_proto_enumTypes[10]
+}
+
+func (x Config_DisplayConfig_CompassOrientation) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Config_DisplayConfig_CompassOrientation.Descriptor instead.
+func (Config_DisplayConfig_CompassOrientation) EnumDescriptor() ([]byte, []int) {
+ return file_meshtastic_config_proto_rawDescGZIP(), []int{0, 4, 4}
+}
+
type Config_LoRaConfig_RegionCode int32
const (
@@ -669,6 +813,12 @@ const (
Config_LoRaConfig_MY_919 Config_LoRaConfig_RegionCode = 17
// Singapore 923mhz
Config_LoRaConfig_SG_923 Config_LoRaConfig_RegionCode = 18
+ // Philippines 433mhz
+ Config_LoRaConfig_PH_433 Config_LoRaConfig_RegionCode = 19
+ // Philippines 868mhz
+ Config_LoRaConfig_PH_868 Config_LoRaConfig_RegionCode = 20
+ // Philippines 915mhz
+ Config_LoRaConfig_PH_915 Config_LoRaConfig_RegionCode = 21
)
// Enum value maps for Config_LoRaConfig_RegionCode.
@@ -693,6 +843,9 @@ var (
16: "MY_433",
17: "MY_919",
18: "SG_923",
+ 19: "PH_433",
+ 20: "PH_868",
+ 21: "PH_915",
}
Config_LoRaConfig_RegionCode_value = map[string]int32{
"UNSET": 0,
@@ -714,6 +867,9 @@ var (
"MY_433": 16,
"MY_919": 17,
"SG_923": 18,
+ "PH_433": 19,
+ "PH_868": 20,
+ "PH_915": 21,
}
)
@@ -728,11 +884,11 @@ func (x Config_LoRaConfig_RegionCode) String() string {
}
func (Config_LoRaConfig_RegionCode) Descriptor() protoreflect.EnumDescriptor {
- return file_meshtastic_config_proto_enumTypes[9].Descriptor()
+ return file_meshtastic_config_proto_enumTypes[11].Descriptor()
}
func (Config_LoRaConfig_RegionCode) Type() protoreflect.EnumType {
- return &file_meshtastic_config_proto_enumTypes[9]
+ return &file_meshtastic_config_proto_enumTypes[11]
}
func (x Config_LoRaConfig_RegionCode) Number() protoreflect.EnumNumber {
@@ -754,6 +910,9 @@ const (
// Long Range - Slow
Config_LoRaConfig_LONG_SLOW Config_LoRaConfig_ModemPreset = 1
// Very Long Range - Slow
+ // Deprecated in 2.5: Works only with txco and is unusably slow
+ //
+ // Deprecated: Marked as deprecated in meshtastic/config.proto.
Config_LoRaConfig_VERY_LONG_SLOW Config_LoRaConfig_ModemPreset = 2
// Medium Range - Slow
Config_LoRaConfig_MEDIUM_SLOW Config_LoRaConfig_ModemPreset = 3
@@ -765,6 +924,10 @@ const (
Config_LoRaConfig_SHORT_FAST Config_LoRaConfig_ModemPreset = 6
// Long Range - Moderately Fast
Config_LoRaConfig_LONG_MODERATE Config_LoRaConfig_ModemPreset = 7
+ // Short Range - Turbo
+ // This is the fastest preset and the only one with 500kHz bandwidth.
+ // It is not legal to use in all regions due to this wider bandwidth.
+ Config_LoRaConfig_SHORT_TURBO Config_LoRaConfig_ModemPreset = 8
)
// Enum value maps for Config_LoRaConfig_ModemPreset.
@@ -778,6 +941,7 @@ var (
5: "SHORT_SLOW",
6: "SHORT_FAST",
7: "LONG_MODERATE",
+ 8: "SHORT_TURBO",
}
Config_LoRaConfig_ModemPreset_value = map[string]int32{
"LONG_FAST": 0,
@@ -788,6 +952,7 @@ var (
"SHORT_SLOW": 5,
"SHORT_FAST": 6,
"LONG_MODERATE": 7,
+ "SHORT_TURBO": 8,
}
)
@@ -802,11 +967,11 @@ func (x Config_LoRaConfig_ModemPreset) String() string {
}
func (Config_LoRaConfig_ModemPreset) Descriptor() protoreflect.EnumDescriptor {
- return file_meshtastic_config_proto_enumTypes[10].Descriptor()
+ return file_meshtastic_config_proto_enumTypes[12].Descriptor()
}
func (Config_LoRaConfig_ModemPreset) Type() protoreflect.EnumType {
- return &file_meshtastic_config_proto_enumTypes[10]
+ return &file_meshtastic_config_proto_enumTypes[12]
}
func (x Config_LoRaConfig_ModemPreset) Number() protoreflect.EnumNumber {
@@ -854,11 +1019,11 @@ func (x Config_BluetoothConfig_PairingMode) String() string {
}
func (Config_BluetoothConfig_PairingMode) Descriptor() protoreflect.EnumDescriptor {
- return file_meshtastic_config_proto_enumTypes[11].Descriptor()
+ return file_meshtastic_config_proto_enumTypes[13].Descriptor()
}
func (Config_BluetoothConfig_PairingMode) Type() protoreflect.EnumType {
- return &file_meshtastic_config_proto_enumTypes[11]
+ return &file_meshtastic_config_proto_enumTypes[13]
}
func (x Config_BluetoothConfig_PairingMode) Number() protoreflect.EnumNumber {
@@ -871,13 +1036,10 @@ func (Config_BluetoothConfig_PairingMode) EnumDescriptor() ([]byte, []int) {
}
type Config struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Payload Variant
//
- // Types that are assignable to PayloadVariant:
+ // Types that are valid to be assigned to PayloadVariant:
//
// *Config_Device
// *Config_Position
@@ -886,16 +1048,19 @@ type Config struct {
// *Config_Display
// *Config_Lora
// *Config_Bluetooth
+ // *Config_Security
+ // *Config_Sessionkey
+ // *Config_DeviceUi
PayloadVariant isConfig_PayloadVariant `protobuf_oneof:"payload_variant"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *Config) Reset() {
*x = Config{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_config_proto_msgTypes[0]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_config_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *Config) String() string {
@@ -906,7 +1071,7 @@ func (*Config) ProtoMessage() {}
func (x *Config) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_config_proto_msgTypes[0]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -921,58 +1086,99 @@ func (*Config) Descriptor() ([]byte, []int) {
return file_meshtastic_config_proto_rawDescGZIP(), []int{0}
}
-func (m *Config) GetPayloadVariant() isConfig_PayloadVariant {
- if m != nil {
- return m.PayloadVariant
+func (x *Config) GetPayloadVariant() isConfig_PayloadVariant {
+ if x != nil {
+ return x.PayloadVariant
}
return nil
}
func (x *Config) GetDevice() *Config_DeviceConfig {
- if x, ok := x.GetPayloadVariant().(*Config_Device); ok {
- return x.Device
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*Config_Device); ok {
+ return x.Device
+ }
}
return nil
}
func (x *Config) GetPosition() *Config_PositionConfig {
- if x, ok := x.GetPayloadVariant().(*Config_Position); ok {
- return x.Position
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*Config_Position); ok {
+ return x.Position
+ }
}
return nil
}
func (x *Config) GetPower() *Config_PowerConfig {
- if x, ok := x.GetPayloadVariant().(*Config_Power); ok {
- return x.Power
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*Config_Power); ok {
+ return x.Power
+ }
}
return nil
}
func (x *Config) GetNetwork() *Config_NetworkConfig {
- if x, ok := x.GetPayloadVariant().(*Config_Network); ok {
- return x.Network
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*Config_Network); ok {
+ return x.Network
+ }
}
return nil
}
func (x *Config) GetDisplay() *Config_DisplayConfig {
- if x, ok := x.GetPayloadVariant().(*Config_Display); ok {
- return x.Display
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*Config_Display); ok {
+ return x.Display
+ }
}
return nil
}
func (x *Config) GetLora() *Config_LoRaConfig {
- if x, ok := x.GetPayloadVariant().(*Config_Lora); ok {
- return x.Lora
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*Config_Lora); ok {
+ return x.Lora
+ }
}
return nil
}
func (x *Config) GetBluetooth() *Config_BluetoothConfig {
- if x, ok := x.GetPayloadVariant().(*Config_Bluetooth); ok {
- return x.Bluetooth
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*Config_Bluetooth); ok {
+ return x.Bluetooth
+ }
+ }
+ return nil
+}
+
+func (x *Config) GetSecurity() *Config_SecurityConfig {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*Config_Security); ok {
+ return x.Security
+ }
+ }
+ return nil
+}
+
+func (x *Config) GetSessionkey() *Config_SessionkeyConfig {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*Config_Sessionkey); ok {
+ return x.Sessionkey
+ }
+ }
+ return nil
+}
+
+func (x *Config) GetDeviceUi() *DeviceUIConfig {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*Config_DeviceUi); ok {
+ return x.DeviceUi
+ }
}
return nil
}
@@ -1009,6 +1215,18 @@ type Config_Bluetooth struct {
Bluetooth *Config_BluetoothConfig `protobuf:"bytes,7,opt,name=bluetooth,proto3,oneof"`
}
+type Config_Security struct {
+ Security *Config_SecurityConfig `protobuf:"bytes,8,opt,name=security,proto3,oneof"`
+}
+
+type Config_Sessionkey struct {
+ Sessionkey *Config_SessionkeyConfig `protobuf:"bytes,9,opt,name=sessionkey,proto3,oneof"`
+}
+
+type Config_DeviceUi struct {
+ DeviceUi *DeviceUIConfig `protobuf:"bytes,10,opt,name=device_ui,json=deviceUi,proto3,oneof"`
+}
+
func (*Config_Device) isConfig_PayloadVariant() {}
func (*Config_Position) isConfig_PayloadVariant() {}
@@ -1023,19 +1241,22 @@ func (*Config_Lora) isConfig_PayloadVariant() {}
func (*Config_Bluetooth) isConfig_PayloadVariant() {}
+func (*Config_Security) isConfig_PayloadVariant() {}
+
+func (*Config_Sessionkey) isConfig_PayloadVariant() {}
+
+func (*Config_DeviceUi) isConfig_PayloadVariant() {}
+
// Configuration
type Config_DeviceConfig struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Sets the role of node
Role Config_DeviceConfig_Role `protobuf:"varint,1,opt,name=role,proto3,enum=meshtastic.Config_DeviceConfig_Role" json:"role,omitempty"`
// Disabling this will disable the SerialConsole by not initilizing the StreamAPI
+ // Moved to SecurityConfig
+ //
+ // Deprecated: Marked as deprecated in meshtastic/config.proto.
SerialEnabled bool `protobuf:"varint,2,opt,name=serial_enabled,json=serialEnabled,proto3" json:"serial_enabled,omitempty"`
- // By default we turn off logging as soon as an API client connects (to keep shared serial link quiet).
- // Set this to true to leave the debug log outputting even when API is active.
- DebugLogEnabled bool `protobuf:"varint,3,opt,name=debug_log_enabled,json=debugLogEnabled,proto3" json:"debug_log_enabled,omitempty"`
// For boards without a hard wired button, this is the pin number that will be used
// Boards that have more than one button can swap the function with this one. defaults to BUTTON_PIN if defined.
ButtonGpio uint32 `protobuf:"varint,4,opt,name=button_gpio,json=buttonGpio,proto3" json:"button_gpio,omitempty"`
@@ -1051,18 +1272,25 @@ type Config_DeviceConfig struct {
DoubleTapAsButtonPress bool `protobuf:"varint,8,opt,name=double_tap_as_button_press,json=doubleTapAsButtonPress,proto3" json:"double_tap_as_button_press,omitempty"`
// If true, device is considered to be "managed" by a mesh administrator
// Clients should then limit available configuration and administrative options inside the user interface
+ // Moved to SecurityConfig
+ //
+ // Deprecated: Marked as deprecated in meshtastic/config.proto.
IsManaged bool `protobuf:"varint,9,opt,name=is_managed,json=isManaged,proto3" json:"is_managed,omitempty"`
// Disables the triple-press of user button to enable or disable GPS
DisableTripleClick bool `protobuf:"varint,10,opt,name=disable_triple_click,json=disableTripleClick,proto3" json:"disable_triple_click,omitempty"`
+ // POSIX Timezone definition string from https://github.com/nayarsystems/posix_tz_db/blob/master/zones.csv.
+ Tzdef string `protobuf:"bytes,11,opt,name=tzdef,proto3" json:"tzdef,omitempty"`
+ // If true, disable the default blinking LED (LED_PIN) behavior on the device
+ LedHeartbeatDisabled bool `protobuf:"varint,12,opt,name=led_heartbeat_disabled,json=ledHeartbeatDisabled,proto3" json:"led_heartbeat_disabled,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *Config_DeviceConfig) Reset() {
*x = Config_DeviceConfig{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_config_proto_msgTypes[1]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_config_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *Config_DeviceConfig) String() string {
@@ -1073,7 +1301,7 @@ func (*Config_DeviceConfig) ProtoMessage() {}
func (x *Config_DeviceConfig) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_config_proto_msgTypes[1]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -1095,6 +1323,7 @@ func (x *Config_DeviceConfig) GetRole() Config_DeviceConfig_Role {
return Config_DeviceConfig_CLIENT
}
+// Deprecated: Marked as deprecated in meshtastic/config.proto.
func (x *Config_DeviceConfig) GetSerialEnabled() bool {
if x != nil {
return x.SerialEnabled
@@ -1102,13 +1331,6 @@ func (x *Config_DeviceConfig) GetSerialEnabled() bool {
return false
}
-func (x *Config_DeviceConfig) GetDebugLogEnabled() bool {
- if x != nil {
- return x.DebugLogEnabled
- }
- return false
-}
-
func (x *Config_DeviceConfig) GetButtonGpio() uint32 {
if x != nil {
return x.ButtonGpio
@@ -1144,6 +1366,7 @@ func (x *Config_DeviceConfig) GetDoubleTapAsButtonPress() bool {
return false
}
+// Deprecated: Marked as deprecated in meshtastic/config.proto.
func (x *Config_DeviceConfig) GetIsManaged() bool {
if x != nil {
return x.IsManaged
@@ -1158,12 +1381,23 @@ func (x *Config_DeviceConfig) GetDisableTripleClick() bool {
return false
}
+func (x *Config_DeviceConfig) GetTzdef() string {
+ if x != nil {
+ return x.Tzdef
+ }
+ return ""
+}
+
+func (x *Config_DeviceConfig) GetLedHeartbeatDisabled() bool {
+ if x != nil {
+ return x.LedHeartbeatDisabled
+ }
+ return false
+}
+
// Position Config
type Config_PositionConfig struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// We should send our position this often (but only if it has changed significantly)
// Defaults to 15 minutes
PositionBroadcastSecs uint32 `protobuf:"varint,1,opt,name=position_broadcast_secs,json=positionBroadcastSecs,proto3" json:"position_broadcast_secs,omitempty"`
@@ -1199,16 +1433,16 @@ type Config_PositionConfig struct {
// (Re)define PIN_GPS_EN for your board.
GpsEnGpio uint32 `protobuf:"varint,12,opt,name=gps_en_gpio,json=gpsEnGpio,proto3" json:"gps_en_gpio,omitempty"`
// Set where GPS is enabled, disabled, or not present
- GpsMode Config_PositionConfig_GpsMode `protobuf:"varint,13,opt,name=gps_mode,json=gpsMode,proto3,enum=meshtastic.Config_PositionConfig_GpsMode" json:"gps_mode,omitempty"`
+ GpsMode Config_PositionConfig_GpsMode `protobuf:"varint,13,opt,name=gps_mode,json=gpsMode,proto3,enum=meshtastic.Config_PositionConfig_GpsMode" json:"gps_mode,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *Config_PositionConfig) Reset() {
*x = Config_PositionConfig{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_config_proto_msgTypes[2]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_config_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *Config_PositionConfig) String() string {
@@ -1219,7 +1453,7 @@ func (*Config_PositionConfig) ProtoMessage() {}
func (x *Config_PositionConfig) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_config_proto_msgTypes[2]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -1330,51 +1564,46 @@ func (x *Config_PositionConfig) GetGpsMode() Config_PositionConfig_GpsMode {
// Power Config\
// See [Power Config](/docs/settings/config/power) for additional power config details.
type Config_PowerConfig struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- // If set, we are powered from a low-current source (i.e. solar), so even if it looks like we have power flowing in
- // we should try to minimize power consumption as much as possible.
- // YOU DO NOT NEED TO SET THIS IF YOU'VE set is_router (it is implied in that case).
- // Advanced Option
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // Description: Will sleep everything as much as possible, for the tracker and sensor role this will also include the lora radio.
+ // Don't use this setting if you want to use your device with the phone apps or are using a device without a user button.
+ // Technical Details: Works for ESP32 devices and NRF52 devices in the Sensor or Tracker roles
IsPowerSaving bool `protobuf:"varint,1,opt,name=is_power_saving,json=isPowerSaving,proto3" json:"is_power_saving,omitempty"`
- // If non-zero, the device will fully power off this many seconds after external power is removed.
+ // Description: If non-zero, the device will fully power off this many seconds after external power is removed.
OnBatteryShutdownAfterSecs uint32 `protobuf:"varint,2,opt,name=on_battery_shutdown_after_secs,json=onBatteryShutdownAfterSecs,proto3" json:"on_battery_shutdown_after_secs,omitempty"`
// Ratio of voltage divider for battery pin eg. 3.20 (R1=100k, R2=220k)
// Overrides the ADC_MULTIPLIER defined in variant for battery voltage calculation.
- // Should be set to floating point value between 2 and 4
- // Fixes issues on Heltec v2
+ // https://meshtastic.org/docs/configuration/radio/power/#adc-multiplier-override
+ // Should be set to floating point value between 2 and 6
AdcMultiplierOverride float32 `protobuf:"fixed32,3,opt,name=adc_multiplier_override,json=adcMultiplierOverride,proto3" json:"adc_multiplier_override,omitempty"`
- // Wait Bluetooth Seconds
- // The number of seconds for to wait before turning off BLE in No Bluetooth states
- // 0 for default of 1 minute
+ // Description: The number of seconds for to wait before turning off BLE in No Bluetooth states
+ // Technical Details: ESP32 Only 0 for default of 1 minute
WaitBluetoothSecs uint32 `protobuf:"varint,4,opt,name=wait_bluetooth_secs,json=waitBluetoothSecs,proto3" json:"wait_bluetooth_secs,omitempty"`
// Super Deep Sleep Seconds
// While in Light Sleep if mesh_sds_timeout_secs is exceeded we will lower into super deep sleep
// for this value (default 1 year) or a button press
// 0 for default of one year
SdsSecs uint32 `protobuf:"varint,6,opt,name=sds_secs,json=sdsSecs,proto3" json:"sds_secs,omitempty"`
- // Light Sleep Seconds
- // In light sleep the CPU is suspended, LoRa radio is on, BLE is off an GPS is on
- // ESP32 Only
- // 0 for default of 300
+ // Description: In light sleep the CPU is suspended, LoRa radio is on, BLE is off an GPS is on
+ // Technical Details: ESP32 Only 0 for default of 300
LsSecs uint32 `protobuf:"varint,7,opt,name=ls_secs,json=lsSecs,proto3" json:"ls_secs,omitempty"`
- // Minimum Wake Seconds
- // While in light sleep when we receive packets on the LoRa radio we will wake and handle them and stay awake in no BLE mode for this value
- // 0 for default of 10 seconds
+ // Description: While in light sleep when we receive packets on the LoRa radio we will wake and handle them and stay awake in no BLE mode for this value
+ // Technical Details: ESP32 Only 0 for default of 10 seconds
MinWakeSecs uint32 `protobuf:"varint,8,opt,name=min_wake_secs,json=minWakeSecs,proto3" json:"min_wake_secs,omitempty"`
// I2C address of INA_2XX to use for reading device battery voltage
DeviceBatteryInaAddress uint32 `protobuf:"varint,9,opt,name=device_battery_ina_address,json=deviceBatteryInaAddress,proto3" json:"device_battery_ina_address,omitempty"`
+ // If non-zero, we want powermon log outputs. With the particular (bitfield) sources enabled.
+ // Note: we picked an ID of 32 so that lower more efficient IDs can be used for more frequently used options.
+ PowermonEnables uint64 `protobuf:"varint,32,opt,name=powermon_enables,json=powermonEnables,proto3" json:"powermon_enables,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *Config_PowerConfig) Reset() {
*x = Config_PowerConfig{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_config_proto_msgTypes[3]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_config_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *Config_PowerConfig) String() string {
@@ -1385,7 +1614,7 @@ func (*Config_PowerConfig) ProtoMessage() {}
func (x *Config_PowerConfig) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_config_proto_msgTypes[3]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -1456,12 +1685,16 @@ func (x *Config_PowerConfig) GetDeviceBatteryInaAddress() uint32 {
return 0
}
+func (x *Config_PowerConfig) GetPowermonEnables() uint64 {
+ if x != nil {
+ return x.PowermonEnables
+ }
+ return 0
+}
+
// Network Config
type Config_NetworkConfig struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Enable WiFi (disables Bluetooth)
WifiEnabled bool `protobuf:"varint,1,opt,name=wifi_enabled,json=wifiEnabled,proto3" json:"wifi_enabled,omitempty"`
// If set, this node will try to join the specified wifi network and
@@ -1469,7 +1702,7 @@ type Config_NetworkConfig struct {
WifiSsid string `protobuf:"bytes,3,opt,name=wifi_ssid,json=wifiSsid,proto3" json:"wifi_ssid,omitempty"`
// If set, will be use to authenticate to the named wifi
WifiPsk string `protobuf:"bytes,4,opt,name=wifi_psk,json=wifiPsk,proto3" json:"wifi_psk,omitempty"`
- // NTP server to use if WiFi is conneced, defaults to `0.pool.ntp.org`
+ // NTP server to use if WiFi is conneced, defaults to `meshtastic.pool.ntp.org`
NtpServer string `protobuf:"bytes,5,opt,name=ntp_server,json=ntpServer,proto3" json:"ntp_server,omitempty"`
// Enable Ethernet
EthEnabled bool `protobuf:"varint,6,opt,name=eth_enabled,json=ethEnabled,proto3" json:"eth_enabled,omitempty"`
@@ -1479,15 +1712,19 @@ type Config_NetworkConfig struct {
Ipv4Config *Config_NetworkConfig_IpV4Config `protobuf:"bytes,8,opt,name=ipv4_config,json=ipv4Config,proto3" json:"ipv4_config,omitempty"`
// rsyslog Server and Port
RsyslogServer string `protobuf:"bytes,9,opt,name=rsyslog_server,json=rsyslogServer,proto3" json:"rsyslog_server,omitempty"`
+ // Flags for enabling/disabling network protocols
+ EnabledProtocols uint32 `protobuf:"varint,10,opt,name=enabled_protocols,json=enabledProtocols,proto3" json:"enabled_protocols,omitempty"`
+ // Enable/Disable ipv6 support
+ Ipv6Enabled bool `protobuf:"varint,11,opt,name=ipv6_enabled,json=ipv6Enabled,proto3" json:"ipv6_enabled,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *Config_NetworkConfig) Reset() {
*x = Config_NetworkConfig{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_config_proto_msgTypes[4]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_config_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *Config_NetworkConfig) String() string {
@@ -1498,7 +1735,7 @@ func (*Config_NetworkConfig) ProtoMessage() {}
func (x *Config_NetworkConfig) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_config_proto_msgTypes[4]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -1569,12 +1806,23 @@ func (x *Config_NetworkConfig) GetRsyslogServer() string {
return ""
}
+func (x *Config_NetworkConfig) GetEnabledProtocols() uint32 {
+ if x != nil {
+ return x.EnabledProtocols
+ }
+ return 0
+}
+
+func (x *Config_NetworkConfig) GetIpv6Enabled() bool {
+ if x != nil {
+ return x.Ipv6Enabled
+ }
+ return false
+}
+
// Display Config
type Config_DisplayConfig struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Number of seconds the screen stays on after pressing the user button or receiving a message
// 0 for default of one minute MAXUINT for always on
ScreenOnSecs uint32 `protobuf:"varint,1,opt,name=screen_on_secs,json=screenOnSecs,proto3" json:"screen_on_secs,omitempty"`
@@ -1598,15 +1846,20 @@ type Config_DisplayConfig struct {
HeadingBold bool `protobuf:"varint,9,opt,name=heading_bold,json=headingBold,proto3" json:"heading_bold,omitempty"`
// Should we wake the screen up on accelerometer detected motion or tap
WakeOnTapOrMotion bool `protobuf:"varint,10,opt,name=wake_on_tap_or_motion,json=wakeOnTapOrMotion,proto3" json:"wake_on_tap_or_motion,omitempty"`
+ // Indicates how to rotate or invert the compass output to accurate display on the display.
+ CompassOrientation Config_DisplayConfig_CompassOrientation `protobuf:"varint,11,opt,name=compass_orientation,json=compassOrientation,proto3,enum=meshtastic.Config_DisplayConfig_CompassOrientation" json:"compass_orientation,omitempty"`
+ // If false (default), the device will display the time in 24-hour format on screen.
+ // If true, the device will display the time in 12-hour format on screen.
+ Use_12HClock bool `protobuf:"varint,12,opt,name=use_12h_clock,json=use12hClock,proto3" json:"use_12h_clock,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *Config_DisplayConfig) Reset() {
*x = Config_DisplayConfig{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_config_proto_msgTypes[5]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_config_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *Config_DisplayConfig) String() string {
@@ -1617,7 +1870,7 @@ func (*Config_DisplayConfig) ProtoMessage() {}
func (x *Config_DisplayConfig) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_config_proto_msgTypes[5]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -1702,12 +1955,23 @@ func (x *Config_DisplayConfig) GetWakeOnTapOrMotion() bool {
return false
}
+func (x *Config_DisplayConfig) GetCompassOrientation() Config_DisplayConfig_CompassOrientation {
+ if x != nil {
+ return x.CompassOrientation
+ }
+ return Config_DisplayConfig_DEGREES_0
+}
+
+func (x *Config_DisplayConfig) GetUse_12HClock() bool {
+ if x != nil {
+ return x.Use_12HClock
+ }
+ return false
+}
+
// Lora Config
type Config_LoRaConfig struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// When enabled, the `modem_preset` fields will be adhered to, else the `bandwidth`/`spread_factor`/`coding_rate`
// will be taked from their respective manually defined fields
UsePreset bool `protobuf:"varint,1,opt,name=use_preset,json=usePreset,proto3" json:"use_preset,omitempty"`
@@ -1765,21 +2029,25 @@ type Config_LoRaConfig struct {
// Please respect your local laws and regulations. If you are a HAM, make sure you
// enable HAM mode and turn off encryption.
OverrideFrequency float32 `protobuf:"fixed32,14,opt,name=override_frequency,json=overrideFrequency,proto3" json:"override_frequency,omitempty"`
+ // If true, disable the build-in PA FAN using pin define in RF95_FAN_EN.
+ PaFanDisabled bool `protobuf:"varint,15,opt,name=pa_fan_disabled,json=paFanDisabled,proto3" json:"pa_fan_disabled,omitempty"`
// For testing it is useful sometimes to force a node to never listen to
// particular other nodes (simulating radio out of range). All nodenums listed
// in ignore_incoming will have packets they send dropped on receive (by router.cpp)
IgnoreIncoming []uint32 `protobuf:"varint,103,rep,packed,name=ignore_incoming,json=ignoreIncoming,proto3" json:"ignore_incoming,omitempty"`
// If true, the device will not process any packets received via LoRa that passed via MQTT anywhere on the path towards it.
IgnoreMqtt bool `protobuf:"varint,104,opt,name=ignore_mqtt,json=ignoreMqtt,proto3" json:"ignore_mqtt,omitempty"`
+ // Sets the ok_to_mqtt bit on outgoing packets
+ ConfigOkToMqtt bool `protobuf:"varint,105,opt,name=config_ok_to_mqtt,json=configOkToMqtt,proto3" json:"config_ok_to_mqtt,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *Config_LoRaConfig) Reset() {
*x = Config_LoRaConfig{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_config_proto_msgTypes[6]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_config_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *Config_LoRaConfig) String() string {
@@ -1790,7 +2058,7 @@ func (*Config_LoRaConfig) ProtoMessage() {}
func (x *Config_LoRaConfig) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_config_proto_msgTypes[6]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -1903,6 +2171,13 @@ func (x *Config_LoRaConfig) GetOverrideFrequency() float32 {
return 0
}
+func (x *Config_LoRaConfig) GetPaFanDisabled() bool {
+ if x != nil {
+ return x.PaFanDisabled
+ }
+ return false
+}
+
func (x *Config_LoRaConfig) GetIgnoreIncoming() []uint32 {
if x != nil {
return x.IgnoreIncoming
@@ -1917,26 +2192,30 @@ func (x *Config_LoRaConfig) GetIgnoreMqtt() bool {
return false
}
-type Config_BluetoothConfig struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
+func (x *Config_LoRaConfig) GetConfigOkToMqtt() bool {
+ if x != nil {
+ return x.ConfigOkToMqtt
+ }
+ return false
+}
+type Config_BluetoothConfig struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
// Enable Bluetooth on the device
Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
// Determines the pairing strategy for the device
Mode Config_BluetoothConfig_PairingMode `protobuf:"varint,2,opt,name=mode,proto3,enum=meshtastic.Config_BluetoothConfig_PairingMode" json:"mode,omitempty"`
// Specified PIN for PairingMode.FixedPin
- FixedPin uint32 `protobuf:"varint,3,opt,name=fixed_pin,json=fixedPin,proto3" json:"fixed_pin,omitempty"`
+ FixedPin uint32 `protobuf:"varint,3,opt,name=fixed_pin,json=fixedPin,proto3" json:"fixed_pin,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *Config_BluetoothConfig) Reset() {
*x = Config_BluetoothConfig{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_config_proto_msgTypes[7]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_config_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *Config_BluetoothConfig) String() string {
@@ -1947,7 +2226,7 @@ func (*Config_BluetoothConfig) ProtoMessage() {}
func (x *Config_BluetoothConfig) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_config_proto_msgTypes[7]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -1983,11 +2262,148 @@ func (x *Config_BluetoothConfig) GetFixedPin() uint32 {
return 0
}
-type Config_NetworkConfig_IpV4Config struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
+type Config_SecurityConfig struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // The public key of the user's device.
+ // Sent out to other nodes on the mesh to allow them to compute a shared secret key.
+ PublicKey []byte `protobuf:"bytes,1,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"`
+ // The private key of the device.
+ // Used to create a shared key with a remote device.
+ PrivateKey []byte `protobuf:"bytes,2,opt,name=private_key,json=privateKey,proto3" json:"private_key,omitempty"`
+ // The public key authorized to send admin messages to this node.
+ AdminKey [][]byte `protobuf:"bytes,3,rep,name=admin_key,json=adminKey,proto3" json:"admin_key,omitempty"`
+ // If true, device is considered to be "managed" by a mesh administrator via admin messages
+ // Device is managed by a mesh administrator.
+ IsManaged bool `protobuf:"varint,4,opt,name=is_managed,json=isManaged,proto3" json:"is_managed,omitempty"`
+ // Serial Console over the Stream API."
+ SerialEnabled bool `protobuf:"varint,5,opt,name=serial_enabled,json=serialEnabled,proto3" json:"serial_enabled,omitempty"`
+ // By default we turn off logging as soon as an API client connects (to keep shared serial link quiet).
+ // Output live debug logging over serial or bluetooth is set to true.
+ DebugLogApiEnabled bool `protobuf:"varint,6,opt,name=debug_log_api_enabled,json=debugLogApiEnabled,proto3" json:"debug_log_api_enabled,omitempty"`
+ // Allow incoming device control over the insecure legacy admin channel.
+ AdminChannelEnabled bool `protobuf:"varint,8,opt,name=admin_channel_enabled,json=adminChannelEnabled,proto3" json:"admin_channel_enabled,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *Config_SecurityConfig) Reset() {
+ *x = Config_SecurityConfig{}
+ mi := &file_meshtastic_config_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *Config_SecurityConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Config_SecurityConfig) ProtoMessage() {}
+
+func (x *Config_SecurityConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_config_proto_msgTypes[8]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Config_SecurityConfig.ProtoReflect.Descriptor instead.
+func (*Config_SecurityConfig) Descriptor() ([]byte, []int) {
+ return file_meshtastic_config_proto_rawDescGZIP(), []int{0, 7}
+}
+
+func (x *Config_SecurityConfig) GetPublicKey() []byte {
+ if x != nil {
+ return x.PublicKey
+ }
+ return nil
+}
+
+func (x *Config_SecurityConfig) GetPrivateKey() []byte {
+ if x != nil {
+ return x.PrivateKey
+ }
+ return nil
+}
+
+func (x *Config_SecurityConfig) GetAdminKey() [][]byte {
+ if x != nil {
+ return x.AdminKey
+ }
+ return nil
+}
+
+func (x *Config_SecurityConfig) GetIsManaged() bool {
+ if x != nil {
+ return x.IsManaged
+ }
+ return false
+}
+
+func (x *Config_SecurityConfig) GetSerialEnabled() bool {
+ if x != nil {
+ return x.SerialEnabled
+ }
+ return false
+}
+
+func (x *Config_SecurityConfig) GetDebugLogApiEnabled() bool {
+ if x != nil {
+ return x.DebugLogApiEnabled
+ }
+ return false
+}
+
+func (x *Config_SecurityConfig) GetAdminChannelEnabled() bool {
+ if x != nil {
+ return x.AdminChannelEnabled
+ }
+ return false
+}
+
+// Blank config request, strictly for getting the session key
+type Config_SessionkeyConfig struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *Config_SessionkeyConfig) Reset() {
+ *x = Config_SessionkeyConfig{}
+ mi := &file_meshtastic_config_proto_msgTypes[9]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *Config_SessionkeyConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Config_SessionkeyConfig) ProtoMessage() {}
+
+func (x *Config_SessionkeyConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_config_proto_msgTypes[9]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Config_SessionkeyConfig.ProtoReflect.Descriptor instead.
+func (*Config_SessionkeyConfig) Descriptor() ([]byte, []int) {
+ return file_meshtastic_config_proto_rawDescGZIP(), []int{0, 8}
+}
+type Config_NetworkConfig_IpV4Config struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
// Static IP address
Ip uint32 `protobuf:"fixed32,1,opt,name=ip,proto3" json:"ip,omitempty"`
// Static gateway address
@@ -1995,16 +2411,16 @@ type Config_NetworkConfig_IpV4Config struct {
// Static subnet mask
Subnet uint32 `protobuf:"fixed32,3,opt,name=subnet,proto3" json:"subnet,omitempty"`
// Static DNS server address
- Dns uint32 `protobuf:"fixed32,4,opt,name=dns,proto3" json:"dns,omitempty"`
+ Dns uint32 `protobuf:"fixed32,4,opt,name=dns,proto3" json:"dns,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *Config_NetworkConfig_IpV4Config) Reset() {
*x = Config_NetworkConfig_IpV4Config{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_config_proto_msgTypes[8]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_config_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *Config_NetworkConfig_IpV4Config) String() string {
@@ -2014,8 +2430,8 @@ func (x *Config_NetworkConfig_IpV4Config) String() string {
func (*Config_NetworkConfig_IpV4Config) ProtoMessage() {}
func (x *Config_NetworkConfig_IpV4Config) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_config_proto_msgTypes[8]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_config_proto_msgTypes[10]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -2060,398 +2476,356 @@ func (x *Config_NetworkConfig_IpV4Config) GetDns() uint32 {
var File_meshtastic_config_proto protoreflect.FileDescriptor
-var file_meshtastic_config_proto_rawDesc = []byte{
- 0x0a, 0x17, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x63, 0x6f, 0x6e,
- 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0a, 0x6d, 0x65, 0x73, 0x68, 0x74,
- 0x61, 0x73, 0x74, 0x69, 0x63, 0x22, 0xd2, 0x27, 0x0a, 0x06, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
- 0x12, 0x39, 0x0a, 0x06, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
- 0x32, 0x1f, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x6f,
- 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x48, 0x00, 0x52, 0x06, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x3f, 0x0a, 0x08, 0x70,
- 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e,
- 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
- 0x48, 0x00, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x36, 0x0a, 0x05,
- 0x70, 0x6f, 0x77, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6d, 0x65,
- 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
- 0x50, 0x6f, 0x77, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x05, 0x70,
- 0x6f, 0x77, 0x65, 0x72, 0x12, 0x3c, 0x0a, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18,
- 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74,
- 0x69, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72,
- 0x6b, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f,
- 0x72, 0x6b, 0x12, 0x3c, 0x0a, 0x07, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x18, 0x05, 0x20,
- 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63,
- 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x43,
- 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x07, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79,
- 0x12, 0x33, 0x0a, 0x04, 0x6c, 0x6f, 0x72, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d,
- 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x66,
- 0x69, 0x67, 0x2e, 0x4c, 0x6f, 0x52, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52,
- 0x04, 0x6c, 0x6f, 0x72, 0x61, 0x12, 0x42, 0x0a, 0x09, 0x62, 0x6c, 0x75, 0x65, 0x74, 0x6f, 0x6f,
- 0x74, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74,
- 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x42, 0x6c, 0x75,
- 0x65, 0x74, 0x6f, 0x6f, 0x74, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x09,
- 0x62, 0x6c, 0x75, 0x65, 0x74, 0x6f, 0x6f, 0x74, 0x68, 0x1a, 0xff, 0x05, 0x0a, 0x0c, 0x44, 0x65,
- 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x38, 0x0a, 0x04, 0x72, 0x6f,
- 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x24, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74,
- 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x44, 0x65, 0x76,
- 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04,
- 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x5f, 0x65,
- 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x73, 0x65,
- 0x72, 0x69, 0x61, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x64,
- 0x65, 0x62, 0x75, 0x67, 0x5f, 0x6c, 0x6f, 0x67, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
- 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x64, 0x65, 0x62, 0x75, 0x67, 0x4c, 0x6f, 0x67,
- 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x75, 0x74, 0x74, 0x6f,
- 0x6e, 0x5f, 0x67, 0x70, 0x69, 0x6f, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x62, 0x75,
- 0x74, 0x74, 0x6f, 0x6e, 0x47, 0x70, 0x69, 0x6f, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x75, 0x7a, 0x7a,
- 0x65, 0x72, 0x5f, 0x67, 0x70, 0x69, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x62,
- 0x75, 0x7a, 0x7a, 0x65, 0x72, 0x47, 0x70, 0x69, 0x6f, 0x12, 0x5a, 0x0a, 0x10, 0x72, 0x65, 0x62,
- 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x06, 0x20,
- 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63,
- 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f,
- 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x52, 0x65, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74,
- 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x0f, 0x72, 0x65, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73,
- 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x37, 0x0a, 0x18, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x6e,
- 0x66, 0x6f, 0x5f, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x65, 0x63,
- 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x15, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66,
- 0x6f, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x53, 0x65, 0x63, 0x73, 0x12, 0x3a,
- 0x0a, 0x1a, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x5f, 0x74, 0x61, 0x70, 0x5f, 0x61, 0x73, 0x5f,
- 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x65, 0x73, 0x73, 0x18, 0x08, 0x20, 0x01,
- 0x28, 0x08, 0x52, 0x16, 0x64, 0x6f, 0x75, 0x62, 0x6c, 0x65, 0x54, 0x61, 0x70, 0x41, 0x73, 0x42,
- 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x50, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x73,
- 0x5f, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09,
- 0x69, 0x73, 0x4d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x64, 0x69, 0x73,
- 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x74, 0x72, 0x69, 0x70, 0x6c, 0x65, 0x5f, 0x63, 0x6c, 0x69, 0x63,
- 0x6b, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65,
- 0x54, 0x72, 0x69, 0x70, 0x6c, 0x65, 0x43, 0x6c, 0x69, 0x63, 0x6b, 0x22, 0xaa, 0x01, 0x0a, 0x04,
- 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x0a, 0x0a, 0x06, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x10, 0x00,
- 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x4d, 0x55, 0x54, 0x45, 0x10,
- 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x52, 0x4f, 0x55, 0x54, 0x45, 0x52, 0x10, 0x02, 0x12, 0x11, 0x0a,
- 0x0d, 0x52, 0x4f, 0x55, 0x54, 0x45, 0x52, 0x5f, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x10, 0x03,
- 0x12, 0x0c, 0x0a, 0x08, 0x52, 0x45, 0x50, 0x45, 0x41, 0x54, 0x45, 0x52, 0x10, 0x04, 0x12, 0x0b,
- 0x0a, 0x07, 0x54, 0x52, 0x41, 0x43, 0x4b, 0x45, 0x52, 0x10, 0x05, 0x12, 0x0a, 0x0a, 0x06, 0x53,
- 0x45, 0x4e, 0x53, 0x4f, 0x52, 0x10, 0x06, 0x12, 0x07, 0x0a, 0x03, 0x54, 0x41, 0x4b, 0x10, 0x07,
- 0x12, 0x11, 0x0a, 0x0d, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x48, 0x49, 0x44, 0x44, 0x45,
- 0x4e, 0x10, 0x08, 0x12, 0x12, 0x0a, 0x0e, 0x4c, 0x4f, 0x53, 0x54, 0x5f, 0x41, 0x4e, 0x44, 0x5f,
- 0x46, 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x09, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x41, 0x4b, 0x5f, 0x54,
- 0x52, 0x41, 0x43, 0x4b, 0x45, 0x52, 0x10, 0x0a, 0x22, 0x51, 0x0a, 0x0f, 0x52, 0x65, 0x62, 0x72,
- 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x07, 0x0a, 0x03, 0x41,
- 0x4c, 0x4c, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x4c, 0x4c, 0x5f, 0x53, 0x4b, 0x49, 0x50,
- 0x5f, 0x44, 0x45, 0x43, 0x4f, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x4c,
- 0x4f, 0x43, 0x41, 0x4c, 0x5f, 0x4f, 0x4e, 0x4c, 0x59, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x4b,
- 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x4f, 0x4e, 0x4c, 0x59, 0x10, 0x03, 0x1a, 0xfa, 0x06, 0x0a, 0x0e,
- 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x36,
- 0x0a, 0x17, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x72, 0x6f, 0x61, 0x64,
- 0x63, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52,
- 0x15, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61,
- 0x73, 0x74, 0x53, 0x65, 0x63, 0x73, 0x12, 0x47, 0x0a, 0x20, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69,
- 0x6f, 0x6e, 0x5f, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x6d, 0x61,
- 0x72, 0x74, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08,
- 0x52, 0x1d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63,
- 0x61, 0x73, 0x74, 0x53, 0x6d, 0x61, 0x72, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12,
- 0x25, 0x0a, 0x0e, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f,
- 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x66, 0x69, 0x78, 0x65, 0x64, 0x50, 0x6f,
- 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x23, 0x0a, 0x0b, 0x67, 0x70, 0x73, 0x5f, 0x65, 0x6e,
- 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x42, 0x02, 0x18, 0x01, 0x52,
- 0x0a, 0x67, 0x70, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x67,
- 0x70, 0x73, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76,
- 0x61, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x67, 0x70, 0x73, 0x55, 0x70, 0x64,
- 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x2c, 0x0a, 0x10, 0x67,
- 0x70, 0x73, 0x5f, 0x61, 0x74, 0x74, 0x65, 0x6d, 0x70, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18,
- 0x06, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0e, 0x67, 0x70, 0x73, 0x41, 0x74,
- 0x74, 0x65, 0x6d, 0x70, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x6f, 0x73,
- 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28,
- 0x0d, 0x52, 0x0d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x6c, 0x61, 0x67, 0x73,
- 0x12, 0x17, 0x0a, 0x07, 0x72, 0x78, 0x5f, 0x67, 0x70, 0x69, 0x6f, 0x18, 0x08, 0x20, 0x01, 0x28,
- 0x0d, 0x52, 0x06, 0x72, 0x78, 0x47, 0x70, 0x69, 0x6f, 0x12, 0x17, 0x0a, 0x07, 0x74, 0x78, 0x5f,
- 0x67, 0x70, 0x69, 0x6f, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x74, 0x78, 0x47, 0x70,
- 0x69, 0x6f, 0x12, 0x47, 0x0a, 0x20, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x5f,
- 0x73, 0x6d, 0x61, 0x72, 0x74, 0x5f, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x64, 0x69,
- 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1d, 0x62, 0x72,
- 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x53, 0x6d, 0x61, 0x72, 0x74, 0x4d, 0x69, 0x6e, 0x69,
- 0x6d, 0x75, 0x6d, 0x44, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x50, 0x0a, 0x25, 0x62,
- 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x6d, 0x61, 0x72, 0x74, 0x5f, 0x6d,
- 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x5f,
- 0x73, 0x65, 0x63, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x21, 0x62, 0x72, 0x6f, 0x61,
- 0x64, 0x63, 0x61, 0x73, 0x74, 0x53, 0x6d, 0x61, 0x72, 0x74, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x75,
- 0x6d, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x53, 0x65, 0x63, 0x73, 0x12, 0x1e, 0x0a,
- 0x0b, 0x67, 0x70, 0x73, 0x5f, 0x65, 0x6e, 0x5f, 0x67, 0x70, 0x69, 0x6f, 0x18, 0x0c, 0x20, 0x01,
- 0x28, 0x0d, 0x52, 0x09, 0x67, 0x70, 0x73, 0x45, 0x6e, 0x47, 0x70, 0x69, 0x6f, 0x12, 0x44, 0x0a,
- 0x08, 0x67, 0x70, 0x73, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0e, 0x32,
- 0x29, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x6f, 0x6e,
- 0x66, 0x69, 0x67, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66,
- 0x69, 0x67, 0x2e, 0x47, 0x70, 0x73, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x67, 0x70, 0x73, 0x4d,
- 0x6f, 0x64, 0x65, 0x22, 0xab, 0x01, 0x0a, 0x0d, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e,
- 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x09, 0x0a, 0x05, 0x55, 0x4e, 0x53, 0x45, 0x54, 0x10, 0x00,
- 0x12, 0x0c, 0x0a, 0x08, 0x41, 0x4c, 0x54, 0x49, 0x54, 0x55, 0x44, 0x45, 0x10, 0x01, 0x12, 0x10,
- 0x0a, 0x0c, 0x41, 0x4c, 0x54, 0x49, 0x54, 0x55, 0x44, 0x45, 0x5f, 0x4d, 0x53, 0x4c, 0x10, 0x02,
- 0x12, 0x16, 0x0a, 0x12, 0x47, 0x45, 0x4f, 0x49, 0x44, 0x41, 0x4c, 0x5f, 0x53, 0x45, 0x50, 0x41,
- 0x52, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x04, 0x12, 0x07, 0x0a, 0x03, 0x44, 0x4f, 0x50, 0x10,
- 0x08, 0x12, 0x09, 0x0a, 0x05, 0x48, 0x56, 0x44, 0x4f, 0x50, 0x10, 0x10, 0x12, 0x0d, 0x0a, 0x09,
- 0x53, 0x41, 0x54, 0x49, 0x4e, 0x56, 0x49, 0x45, 0x57, 0x10, 0x20, 0x12, 0x0a, 0x0a, 0x06, 0x53,
- 0x45, 0x51, 0x5f, 0x4e, 0x4f, 0x10, 0x40, 0x12, 0x0e, 0x0a, 0x09, 0x54, 0x49, 0x4d, 0x45, 0x53,
- 0x54, 0x41, 0x4d, 0x50, 0x10, 0x80, 0x01, 0x12, 0x0c, 0x0a, 0x07, 0x48, 0x45, 0x41, 0x44, 0x49,
- 0x4e, 0x47, 0x10, 0x80, 0x02, 0x12, 0x0a, 0x0a, 0x05, 0x53, 0x50, 0x45, 0x45, 0x44, 0x10, 0x80,
- 0x04, 0x22, 0x35, 0x0a, 0x07, 0x47, 0x70, 0x73, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x0c, 0x0a, 0x08,
- 0x44, 0x49, 0x53, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x4e,
- 0x41, 0x42, 0x4c, 0x45, 0x44, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x4e, 0x4f, 0x54, 0x5f, 0x50,
- 0x52, 0x45, 0x53, 0x45, 0x4e, 0x54, 0x10, 0x02, 0x1a, 0xf6, 0x02, 0x0a, 0x0b, 0x50, 0x6f, 0x77,
- 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x26, 0x0a, 0x0f, 0x69, 0x73, 0x5f, 0x70,
- 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x73, 0x61, 0x76, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x08, 0x52, 0x0d, 0x69, 0x73, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x53, 0x61, 0x76, 0x69, 0x6e, 0x67,
- 0x12, 0x42, 0x0a, 0x1e, 0x6f, 0x6e, 0x5f, 0x62, 0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x5f, 0x73,
- 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x5f, 0x61, 0x66, 0x74, 0x65, 0x72, 0x5f, 0x73, 0x65,
- 0x63, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x1a, 0x6f, 0x6e, 0x42, 0x61, 0x74, 0x74,
- 0x65, 0x72, 0x79, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e, 0x41, 0x66, 0x74, 0x65, 0x72,
- 0x53, 0x65, 0x63, 0x73, 0x12, 0x36, 0x0a, 0x17, 0x61, 0x64, 0x63, 0x5f, 0x6d, 0x75, 0x6c, 0x74,
- 0x69, 0x70, 0x6c, 0x69, 0x65, 0x72, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x18,
- 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x15, 0x61, 0x64, 0x63, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x70,
- 0x6c, 0x69, 0x65, 0x72, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x12, 0x2e, 0x0a, 0x13,
- 0x77, 0x61, 0x69, 0x74, 0x5f, 0x62, 0x6c, 0x75, 0x65, 0x74, 0x6f, 0x6f, 0x74, 0x68, 0x5f, 0x73,
- 0x65, 0x63, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x77, 0x61, 0x69, 0x74, 0x42,
- 0x6c, 0x75, 0x65, 0x74, 0x6f, 0x6f, 0x74, 0x68, 0x53, 0x65, 0x63, 0x73, 0x12, 0x19, 0x0a, 0x08,
- 0x73, 0x64, 0x73, 0x5f, 0x73, 0x65, 0x63, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07,
- 0x73, 0x64, 0x73, 0x53, 0x65, 0x63, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x6c, 0x73, 0x5f, 0x73, 0x65,
- 0x63, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6c, 0x73, 0x53, 0x65, 0x63, 0x73,
- 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x69, 0x6e, 0x5f, 0x77, 0x61, 0x6b, 0x65, 0x5f, 0x73, 0x65, 0x63,
- 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6d, 0x69, 0x6e, 0x57, 0x61, 0x6b, 0x65,
- 0x53, 0x65, 0x63, 0x73, 0x12, 0x3b, 0x0a, 0x1a, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x62,
- 0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x5f, 0x69, 0x6e, 0x61, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65,
- 0x73, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x17, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65,
- 0x42, 0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x49, 0x6e, 0x61, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73,
- 0x73, 0x1a, 0xf7, 0x03, 0x0a, 0x0d, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e,
- 0x66, 0x69, 0x67, 0x12, 0x21, 0x0a, 0x0c, 0x77, 0x69, 0x66, 0x69, 0x5f, 0x65, 0x6e, 0x61, 0x62,
- 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x77, 0x69, 0x66, 0x69, 0x45,
- 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x77, 0x69, 0x66, 0x69, 0x5f, 0x73,
- 0x73, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x77, 0x69, 0x66, 0x69, 0x53,
- 0x73, 0x69, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x77, 0x69, 0x66, 0x69, 0x5f, 0x70, 0x73, 0x6b, 0x18,
- 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x77, 0x69, 0x66, 0x69, 0x50, 0x73, 0x6b, 0x12, 0x1d,
- 0x0a, 0x0a, 0x6e, 0x74, 0x70, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01,
- 0x28, 0x09, 0x52, 0x09, 0x6e, 0x74, 0x70, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x12, 0x1f, 0x0a,
- 0x0b, 0x65, 0x74, 0x68, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01,
- 0x28, 0x08, 0x52, 0x0a, 0x65, 0x74, 0x68, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x4f,
- 0x0a, 0x0c, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x07,
- 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69,
- 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
- 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x4d, 0x6f,
- 0x64, 0x65, 0x52, 0x0b, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x4d, 0x6f, 0x64, 0x65, 0x12,
- 0x4c, 0x0a, 0x0b, 0x69, 0x70, 0x76, 0x34, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x08,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69,
- 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b,
- 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x49, 0x70, 0x56, 0x34, 0x43, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x52, 0x0a, 0x69, 0x70, 0x76, 0x34, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x25, 0x0a,
- 0x0e, 0x72, 0x73, 0x79, 0x73, 0x6c, 0x6f, 0x67, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x18,
- 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x73, 0x79, 0x73, 0x6c, 0x6f, 0x67, 0x53, 0x65,
- 0x72, 0x76, 0x65, 0x72, 0x1a, 0x60, 0x0a, 0x0a, 0x49, 0x70, 0x56, 0x34, 0x43, 0x6f, 0x6e, 0x66,
- 0x69, 0x67, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x02,
- 0x69, 0x70, 0x12, 0x18, 0x0a, 0x07, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x18, 0x02, 0x20,
- 0x01, 0x28, 0x07, 0x52, 0x07, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x12, 0x16, 0x0a, 0x06,
- 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x07, 0x52, 0x06, 0x73, 0x75,
- 0x62, 0x6e, 0x65, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x64, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28,
- 0x07, 0x52, 0x03, 0x64, 0x6e, 0x73, 0x22, 0x23, 0x0a, 0x0b, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73,
- 0x73, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x08, 0x0a, 0x04, 0x44, 0x48, 0x43, 0x50, 0x10, 0x00, 0x12,
- 0x0a, 0x0a, 0x06, 0x53, 0x54, 0x41, 0x54, 0x49, 0x43, 0x10, 0x01, 0x1a, 0xc6, 0x06, 0x0a, 0x0d,
- 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x24, 0x0a,
- 0x0e, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x5f, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x63, 0x73, 0x18,
- 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x4f, 0x6e, 0x53,
- 0x65, 0x63, 0x73, 0x12, 0x53, 0x0a, 0x0a, 0x67, 0x70, 0x73, 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61,
- 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61,
- 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x44, 0x69, 0x73, 0x70,
- 0x6c, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x47, 0x70, 0x73, 0x43, 0x6f, 0x6f,
- 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x52, 0x09, 0x67,
- 0x70, 0x73, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x39, 0x0a, 0x19, 0x61, 0x75, 0x74, 0x6f,
- 0x5f, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x5f, 0x63, 0x61, 0x72, 0x6f, 0x75, 0x73, 0x65, 0x6c,
- 0x5f, 0x73, 0x65, 0x63, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x16, 0x61, 0x75, 0x74,
- 0x6f, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x43, 0x61, 0x72, 0x6f, 0x75, 0x73, 0x65, 0x6c, 0x53,
- 0x65, 0x63, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x73, 0x73, 0x5f, 0x6e,
- 0x6f, 0x72, 0x74, 0x68, 0x5f, 0x74, 0x6f, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f,
- 0x63, 0x6f, 0x6d, 0x70, 0x61, 0x73, 0x73, 0x4e, 0x6f, 0x72, 0x74, 0x68, 0x54, 0x6f, 0x70, 0x12,
- 0x1f, 0x0a, 0x0b, 0x66, 0x6c, 0x69, 0x70, 0x5f, 0x73, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x18, 0x05,
- 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x66, 0x6c, 0x69, 0x70, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e,
- 0x12, 0x43, 0x0a, 0x05, 0x75, 0x6e, 0x69, 0x74, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32,
- 0x2d, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x6f, 0x6e,
- 0x66, 0x69, 0x67, 0x2e, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x2e, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x55, 0x6e, 0x69, 0x74, 0x73, 0x52, 0x05,
- 0x75, 0x6e, 0x69, 0x74, 0x73, 0x12, 0x3d, 0x0a, 0x04, 0x6f, 0x6c, 0x65, 0x64, 0x18, 0x07, 0x20,
- 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63,
- 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x43,
- 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x4f, 0x6c, 0x65, 0x64, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04,
- 0x6f, 0x6c, 0x65, 0x64, 0x12, 0x4e, 0x0a, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x6d,
- 0x6f, 0x64, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x6d, 0x65, 0x73, 0x68,
- 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x44, 0x69,
- 0x73, 0x70, 0x6c, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x44, 0x69, 0x73, 0x70,
- 0x6c, 0x61, 0x79, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79,
- 0x6d, 0x6f, 0x64, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x68, 0x65, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x5f,
- 0x62, 0x6f, 0x6c, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x68, 0x65, 0x61, 0x64,
- 0x69, 0x6e, 0x67, 0x42, 0x6f, 0x6c, 0x64, 0x12, 0x30, 0x0a, 0x15, 0x77, 0x61, 0x6b, 0x65, 0x5f,
- 0x6f, 0x6e, 0x5f, 0x74, 0x61, 0x70, 0x5f, 0x6f, 0x72, 0x5f, 0x6d, 0x6f, 0x74, 0x69, 0x6f, 0x6e,
- 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x77, 0x61, 0x6b, 0x65, 0x4f, 0x6e, 0x54, 0x61,
- 0x70, 0x4f, 0x72, 0x4d, 0x6f, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x4d, 0x0a, 0x13, 0x47, 0x70, 0x73,
- 0x43, 0x6f, 0x6f, 0x72, 0x64, 0x69, 0x6e, 0x61, 0x74, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74,
- 0x12, 0x07, 0x0a, 0x03, 0x44, 0x45, 0x43, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x44, 0x4d, 0x53,
- 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x55, 0x54, 0x4d, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x4d,
- 0x47, 0x52, 0x53, 0x10, 0x03, 0x12, 0x07, 0x0a, 0x03, 0x4f, 0x4c, 0x43, 0x10, 0x04, 0x12, 0x08,
- 0x0a, 0x04, 0x4f, 0x53, 0x47, 0x52, 0x10, 0x05, 0x22, 0x28, 0x0a, 0x0c, 0x44, 0x69, 0x73, 0x70,
- 0x6c, 0x61, 0x79, 0x55, 0x6e, 0x69, 0x74, 0x73, 0x12, 0x0a, 0x0a, 0x06, 0x4d, 0x45, 0x54, 0x52,
- 0x49, 0x43, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x49, 0x4d, 0x50, 0x45, 0x52, 0x49, 0x41, 0x4c,
- 0x10, 0x01, 0x22, 0x4d, 0x0a, 0x08, 0x4f, 0x6c, 0x65, 0x64, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0d,
- 0x0a, 0x09, 0x4f, 0x4c, 0x45, 0x44, 0x5f, 0x41, 0x55, 0x54, 0x4f, 0x10, 0x00, 0x12, 0x10, 0x0a,
- 0x0c, 0x4f, 0x4c, 0x45, 0x44, 0x5f, 0x53, 0x53, 0x44, 0x31, 0x33, 0x30, 0x36, 0x10, 0x01, 0x12,
- 0x0f, 0x0a, 0x0b, 0x4f, 0x4c, 0x45, 0x44, 0x5f, 0x53, 0x48, 0x31, 0x31, 0x30, 0x36, 0x10, 0x02,
- 0x12, 0x0f, 0x0a, 0x0b, 0x4f, 0x4c, 0x45, 0x44, 0x5f, 0x53, 0x48, 0x31, 0x31, 0x30, 0x37, 0x10,
- 0x03, 0x22, 0x41, 0x0a, 0x0b, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4d, 0x6f, 0x64, 0x65,
- 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x00, 0x12, 0x0c, 0x0a,
- 0x08, 0x54, 0x57, 0x4f, 0x43, 0x4f, 0x4c, 0x4f, 0x52, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x49,
- 0x4e, 0x56, 0x45, 0x52, 0x54, 0x45, 0x44, 0x10, 0x02, 0x12, 0x09, 0x0a, 0x05, 0x43, 0x4f, 0x4c,
- 0x4f, 0x52, 0x10, 0x03, 0x1a, 0x87, 0x08, 0x0a, 0x0a, 0x4c, 0x6f, 0x52, 0x61, 0x43, 0x6f, 0x6e,
- 0x66, 0x69, 0x67, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x73, 0x65, 0x5f, 0x70, 0x72, 0x65, 0x73, 0x65,
- 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x75, 0x73, 0x65, 0x50, 0x72, 0x65, 0x73,
- 0x65, 0x74, 0x12, 0x4c, 0x0a, 0x0c, 0x6d, 0x6f, 0x64, 0x65, 0x6d, 0x5f, 0x70, 0x72, 0x65, 0x73,
- 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74,
- 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x4c, 0x6f, 0x52,
- 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x4d, 0x6f, 0x64, 0x65, 0x6d, 0x50, 0x72, 0x65,
- 0x73, 0x65, 0x74, 0x52, 0x0b, 0x6d, 0x6f, 0x64, 0x65, 0x6d, 0x50, 0x72, 0x65, 0x73, 0x65, 0x74,
- 0x12, 0x1c, 0x0a, 0x09, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x03, 0x20,
- 0x01, 0x28, 0x0d, 0x52, 0x09, 0x62, 0x61, 0x6e, 0x64, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x23,
- 0x0a, 0x0d, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x5f, 0x66, 0x61, 0x63, 0x74, 0x6f, 0x72, 0x18,
- 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x73, 0x70, 0x72, 0x65, 0x61, 0x64, 0x46, 0x61, 0x63,
- 0x74, 0x6f, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x61,
- 0x74, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67,
- 0x52, 0x61, 0x74, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x66, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63,
- 0x79, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f,
- 0x66, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12,
- 0x40, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32,
- 0x28, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x6f, 0x6e,
- 0x66, 0x69, 0x67, 0x2e, 0x4c, 0x6f, 0x52, 0x61, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x52,
- 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f,
- 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x6f, 0x70, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x08,
- 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x68, 0x6f, 0x70, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x1d,
- 0x0a, 0x0a, 0x74, 0x78, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01,
- 0x28, 0x08, 0x52, 0x09, 0x74, 0x78, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x19, 0x0a,
- 0x08, 0x74, 0x78, 0x5f, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x05, 0x52,
- 0x07, 0x74, 0x78, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x68, 0x61, 0x6e,
- 0x6e, 0x65, 0x6c, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x63,
- 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4e, 0x75, 0x6d, 0x12, 0x2e, 0x0a, 0x13, 0x6f, 0x76, 0x65,
- 0x72, 0x72, 0x69, 0x64, 0x65, 0x5f, 0x64, 0x75, 0x74, 0x79, 0x5f, 0x63, 0x79, 0x63, 0x6c, 0x65,
- 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65,
- 0x44, 0x75, 0x74, 0x79, 0x43, 0x79, 0x63, 0x6c, 0x65, 0x12, 0x33, 0x0a, 0x16, 0x73, 0x78, 0x31,
- 0x32, 0x36, 0x78, 0x5f, 0x72, 0x78, 0x5f, 0x62, 0x6f, 0x6f, 0x73, 0x74, 0x65, 0x64, 0x5f, 0x67,
- 0x61, 0x69, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x73, 0x78, 0x31, 0x32, 0x36,
- 0x78, 0x52, 0x78, 0x42, 0x6f, 0x6f, 0x73, 0x74, 0x65, 0x64, 0x47, 0x61, 0x69, 0x6e, 0x12, 0x2d,
- 0x0a, 0x12, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x5f, 0x66, 0x72, 0x65, 0x71, 0x75,
- 0x65, 0x6e, 0x63, 0x79, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x02, 0x52, 0x11, 0x6f, 0x76, 0x65, 0x72,
- 0x72, 0x69, 0x64, 0x65, 0x46, 0x72, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x79, 0x12, 0x27, 0x0a,
- 0x0f, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x5f, 0x69, 0x6e, 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67,
- 0x18, 0x67, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x0e, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65, 0x49, 0x6e,
- 0x63, 0x6f, 0x6d, 0x69, 0x6e, 0x67, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x67, 0x6e, 0x6f, 0x72, 0x65,
- 0x5f, 0x6d, 0x71, 0x74, 0x74, 0x18, 0x68, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x67, 0x6e,
- 0x6f, 0x72, 0x65, 0x4d, 0x71, 0x74, 0x74, 0x22, 0xcd, 0x01, 0x0a, 0x0a, 0x52, 0x65, 0x67, 0x69,
- 0x6f, 0x6e, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x09, 0x0a, 0x05, 0x55, 0x4e, 0x53, 0x45, 0x54, 0x10,
- 0x00, 0x12, 0x06, 0x0a, 0x02, 0x55, 0x53, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x45, 0x55, 0x5f,
- 0x34, 0x33, 0x33, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x45, 0x55, 0x5f, 0x38, 0x36, 0x38, 0x10,
- 0x03, 0x12, 0x06, 0x0a, 0x02, 0x43, 0x4e, 0x10, 0x04, 0x12, 0x06, 0x0a, 0x02, 0x4a, 0x50, 0x10,
- 0x05, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x4e, 0x5a, 0x10, 0x06, 0x12, 0x06, 0x0a, 0x02, 0x4b, 0x52,
- 0x10, 0x07, 0x12, 0x06, 0x0a, 0x02, 0x54, 0x57, 0x10, 0x08, 0x12, 0x06, 0x0a, 0x02, 0x52, 0x55,
- 0x10, 0x09, 0x12, 0x06, 0x0a, 0x02, 0x49, 0x4e, 0x10, 0x0a, 0x12, 0x0a, 0x0a, 0x06, 0x4e, 0x5a,
- 0x5f, 0x38, 0x36, 0x35, 0x10, 0x0b, 0x12, 0x06, 0x0a, 0x02, 0x54, 0x48, 0x10, 0x0c, 0x12, 0x0b,
- 0x0a, 0x07, 0x4c, 0x4f, 0x52, 0x41, 0x5f, 0x32, 0x34, 0x10, 0x0d, 0x12, 0x0a, 0x0a, 0x06, 0x55,
- 0x41, 0x5f, 0x34, 0x33, 0x33, 0x10, 0x0e, 0x12, 0x0a, 0x0a, 0x06, 0x55, 0x41, 0x5f, 0x38, 0x36,
- 0x38, 0x10, 0x0f, 0x12, 0x0a, 0x0a, 0x06, 0x4d, 0x59, 0x5f, 0x34, 0x33, 0x33, 0x10, 0x10, 0x12,
- 0x0a, 0x0a, 0x06, 0x4d, 0x59, 0x5f, 0x39, 0x31, 0x39, 0x10, 0x11, 0x12, 0x0a, 0x0a, 0x06, 0x53,
- 0x47, 0x5f, 0x39, 0x32, 0x33, 0x10, 0x12, 0x22, 0x94, 0x01, 0x0a, 0x0b, 0x4d, 0x6f, 0x64, 0x65,
- 0x6d, 0x50, 0x72, 0x65, 0x73, 0x65, 0x74, 0x12, 0x0d, 0x0a, 0x09, 0x4c, 0x4f, 0x4e, 0x47, 0x5f,
- 0x46, 0x41, 0x53, 0x54, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x4c, 0x4f, 0x4e, 0x47, 0x5f, 0x53,
- 0x4c, 0x4f, 0x57, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x56, 0x45, 0x52, 0x59, 0x5f, 0x4c, 0x4f,
- 0x4e, 0x47, 0x5f, 0x53, 0x4c, 0x4f, 0x57, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x45, 0x44,
- 0x49, 0x55, 0x4d, 0x5f, 0x53, 0x4c, 0x4f, 0x57, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x45,
- 0x44, 0x49, 0x55, 0x4d, 0x5f, 0x46, 0x41, 0x53, 0x54, 0x10, 0x04, 0x12, 0x0e, 0x0a, 0x0a, 0x53,
- 0x48, 0x4f, 0x52, 0x54, 0x5f, 0x53, 0x4c, 0x4f, 0x57, 0x10, 0x05, 0x12, 0x0e, 0x0a, 0x0a, 0x53,
- 0x48, 0x4f, 0x52, 0x54, 0x5f, 0x46, 0x41, 0x53, 0x54, 0x10, 0x06, 0x12, 0x11, 0x0a, 0x0d, 0x4c,
- 0x4f, 0x4e, 0x47, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x52, 0x41, 0x54, 0x45, 0x10, 0x07, 0x1a, 0xc6,
- 0x01, 0x0a, 0x0f, 0x42, 0x6c, 0x75, 0x65, 0x74, 0x6f, 0x6f, 0x74, 0x68, 0x43, 0x6f, 0x6e, 0x66,
- 0x69, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20,
- 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x42, 0x0a, 0x04,
- 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x6d, 0x65, 0x73,
- 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x42,
- 0x6c, 0x75, 0x65, 0x74, 0x6f, 0x6f, 0x74, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x50,
- 0x61, 0x69, 0x72, 0x69, 0x6e, 0x67, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6d, 0x6f, 0x64, 0x65,
- 0x12, 0x1b, 0x0a, 0x09, 0x66, 0x69, 0x78, 0x65, 0x64, 0x5f, 0x70, 0x69, 0x6e, 0x18, 0x03, 0x20,
- 0x01, 0x28, 0x0d, 0x52, 0x08, 0x66, 0x69, 0x78, 0x65, 0x64, 0x50, 0x69, 0x6e, 0x22, 0x38, 0x0a,
- 0x0b, 0x50, 0x61, 0x69, 0x72, 0x69, 0x6e, 0x67, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x0e, 0x0a, 0x0a,
- 0x52, 0x41, 0x4e, 0x44, 0x4f, 0x4d, 0x5f, 0x50, 0x49, 0x4e, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09,
- 0x46, 0x49, 0x58, 0x45, 0x44, 0x5f, 0x50, 0x49, 0x4e, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x4e,
- 0x4f, 0x5f, 0x50, 0x49, 0x4e, 0x10, 0x02, 0x42, 0x11, 0x0a, 0x0f, 0x70, 0x61, 0x79, 0x6c, 0x6f,
- 0x61, 0x64, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x42, 0x61, 0x0a, 0x13, 0x63, 0x6f,
- 0x6d, 0x2e, 0x67, 0x65, 0x65, 0x6b, 0x73, 0x76, 0x69, 0x6c, 0x6c, 0x65, 0x2e, 0x6d, 0x65, 0x73,
- 0x68, 0x42, 0x0c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x5a,
- 0x22, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x65, 0x73, 0x68,
- 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x67, 0x6f, 0x2f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61,
- 0x74, 0x65, 0x64, 0xaa, 0x02, 0x14, 0x4d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63,
- 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x73, 0xba, 0x02, 0x00, 0x62, 0x06, 0x70,
- 0x72, 0x6f, 0x74, 0x6f, 0x33,
-}
+const file_meshtastic_config_proto_rawDesc = "" +
+ "\n" +
+ "\x17meshtastic/config.proto\x12\n" +
+ "meshtastic\x1a\x1ameshtastic/device_ui.proto\"\xc11\n" +
+ "\x06Config\x129\n" +
+ "\x06device\x18\x01 \x01(\v2\x1f.meshtastic.Config.DeviceConfigH\x00R\x06device\x12?\n" +
+ "\bposition\x18\x02 \x01(\v2!.meshtastic.Config.PositionConfigH\x00R\bposition\x126\n" +
+ "\x05power\x18\x03 \x01(\v2\x1e.meshtastic.Config.PowerConfigH\x00R\x05power\x12<\n" +
+ "\anetwork\x18\x04 \x01(\v2 .meshtastic.Config.NetworkConfigH\x00R\anetwork\x12<\n" +
+ "\adisplay\x18\x05 \x01(\v2 .meshtastic.Config.DisplayConfigH\x00R\adisplay\x123\n" +
+ "\x04lora\x18\x06 \x01(\v2\x1d.meshtastic.Config.LoRaConfigH\x00R\x04lora\x12B\n" +
+ "\tbluetooth\x18\a \x01(\v2\".meshtastic.Config.BluetoothConfigH\x00R\tbluetooth\x12?\n" +
+ "\bsecurity\x18\b \x01(\v2!.meshtastic.Config.SecurityConfigH\x00R\bsecurity\x12E\n" +
+ "\n" +
+ "sessionkey\x18\t \x01(\v2#.meshtastic.Config.SessionkeyConfigH\x00R\n" +
+ "sessionkey\x129\n" +
+ "\tdevice_ui\x18\n" +
+ " \x01(\v2\x1a.meshtastic.DeviceUIConfigH\x00R\bdeviceUi\x1a\xde\x06\n" +
+ "\fDeviceConfig\x128\n" +
+ "\x04role\x18\x01 \x01(\x0e2$.meshtastic.Config.DeviceConfig.RoleR\x04role\x12)\n" +
+ "\x0eserial_enabled\x18\x02 \x01(\bB\x02\x18\x01R\rserialEnabled\x12\x1f\n" +
+ "\vbutton_gpio\x18\x04 \x01(\rR\n" +
+ "buttonGpio\x12\x1f\n" +
+ "\vbuzzer_gpio\x18\x05 \x01(\rR\n" +
+ "buzzerGpio\x12Z\n" +
+ "\x10rebroadcast_mode\x18\x06 \x01(\x0e2/.meshtastic.Config.DeviceConfig.RebroadcastModeR\x0frebroadcastMode\x127\n" +
+ "\x18node_info_broadcast_secs\x18\a \x01(\rR\x15nodeInfoBroadcastSecs\x12:\n" +
+ "\x1adouble_tap_as_button_press\x18\b \x01(\bR\x16doubleTapAsButtonPress\x12!\n" +
+ "\n" +
+ "is_managed\x18\t \x01(\bB\x02\x18\x01R\tisManaged\x120\n" +
+ "\x14disable_triple_click\x18\n" +
+ " \x01(\bR\x12disableTripleClick\x12\x14\n" +
+ "\x05tzdef\x18\v \x01(\tR\x05tzdef\x124\n" +
+ "\x16led_heartbeat_disabled\x18\f \x01(\bR\x14ledHeartbeatDisabled\"\xbf\x01\n" +
+ "\x04Role\x12\n" +
+ "\n" +
+ "\x06CLIENT\x10\x00\x12\x0f\n" +
+ "\vCLIENT_MUTE\x10\x01\x12\n" +
+ "\n" +
+ "\x06ROUTER\x10\x02\x12\x15\n" +
+ "\rROUTER_CLIENT\x10\x03\x1a\x02\b\x01\x12\f\n" +
+ "\bREPEATER\x10\x04\x12\v\n" +
+ "\aTRACKER\x10\x05\x12\n" +
+ "\n" +
+ "\x06SENSOR\x10\x06\x12\a\n" +
+ "\x03TAK\x10\a\x12\x11\n" +
+ "\rCLIENT_HIDDEN\x10\b\x12\x12\n" +
+ "\x0eLOST_AND_FOUND\x10\t\x12\x0f\n" +
+ "\vTAK_TRACKER\x10\n" +
+ "\x12\x0f\n" +
+ "\vROUTER_LATE\x10\v\"s\n" +
+ "\x0fRebroadcastMode\x12\a\n" +
+ "\x03ALL\x10\x00\x12\x15\n" +
+ "\x11ALL_SKIP_DECODING\x10\x01\x12\x0e\n" +
+ "\n" +
+ "LOCAL_ONLY\x10\x02\x12\x0e\n" +
+ "\n" +
+ "KNOWN_ONLY\x10\x03\x12\b\n" +
+ "\x04NONE\x10\x04\x12\x16\n" +
+ "\x12CORE_PORTNUMS_ONLY\x10\x05\x1a\xfa\x06\n" +
+ "\x0ePositionConfig\x126\n" +
+ "\x17position_broadcast_secs\x18\x01 \x01(\rR\x15positionBroadcastSecs\x12G\n" +
+ " position_broadcast_smart_enabled\x18\x02 \x01(\bR\x1dpositionBroadcastSmartEnabled\x12%\n" +
+ "\x0efixed_position\x18\x03 \x01(\bR\rfixedPosition\x12#\n" +
+ "\vgps_enabled\x18\x04 \x01(\bB\x02\x18\x01R\n" +
+ "gpsEnabled\x12.\n" +
+ "\x13gps_update_interval\x18\x05 \x01(\rR\x11gpsUpdateInterval\x12,\n" +
+ "\x10gps_attempt_time\x18\x06 \x01(\rB\x02\x18\x01R\x0egpsAttemptTime\x12%\n" +
+ "\x0eposition_flags\x18\a \x01(\rR\rpositionFlags\x12\x17\n" +
+ "\arx_gpio\x18\b \x01(\rR\x06rxGpio\x12\x17\n" +
+ "\atx_gpio\x18\t \x01(\rR\x06txGpio\x12G\n" +
+ " broadcast_smart_minimum_distance\x18\n" +
+ " \x01(\rR\x1dbroadcastSmartMinimumDistance\x12P\n" +
+ "%broadcast_smart_minimum_interval_secs\x18\v \x01(\rR!broadcastSmartMinimumIntervalSecs\x12\x1e\n" +
+ "\vgps_en_gpio\x18\f \x01(\rR\tgpsEnGpio\x12D\n" +
+ "\bgps_mode\x18\r \x01(\x0e2).meshtastic.Config.PositionConfig.GpsModeR\agpsMode\"\xab\x01\n" +
+ "\rPositionFlags\x12\t\n" +
+ "\x05UNSET\x10\x00\x12\f\n" +
+ "\bALTITUDE\x10\x01\x12\x10\n" +
+ "\fALTITUDE_MSL\x10\x02\x12\x16\n" +
+ "\x12GEOIDAL_SEPARATION\x10\x04\x12\a\n" +
+ "\x03DOP\x10\b\x12\t\n" +
+ "\x05HVDOP\x10\x10\x12\r\n" +
+ "\tSATINVIEW\x10 \x12\n" +
+ "\n" +
+ "\x06SEQ_NO\x10@\x12\x0e\n" +
+ "\tTIMESTAMP\x10\x80\x01\x12\f\n" +
+ "\aHEADING\x10\x80\x02\x12\n" +
+ "\n" +
+ "\x05SPEED\x10\x80\x04\"5\n" +
+ "\aGpsMode\x12\f\n" +
+ "\bDISABLED\x10\x00\x12\v\n" +
+ "\aENABLED\x10\x01\x12\x0f\n" +
+ "\vNOT_PRESENT\x10\x02\x1a\xa1\x03\n" +
+ "\vPowerConfig\x12&\n" +
+ "\x0fis_power_saving\x18\x01 \x01(\bR\risPowerSaving\x12B\n" +
+ "\x1eon_battery_shutdown_after_secs\x18\x02 \x01(\rR\x1aonBatteryShutdownAfterSecs\x126\n" +
+ "\x17adc_multiplier_override\x18\x03 \x01(\x02R\x15adcMultiplierOverride\x12.\n" +
+ "\x13wait_bluetooth_secs\x18\x04 \x01(\rR\x11waitBluetoothSecs\x12\x19\n" +
+ "\bsds_secs\x18\x06 \x01(\rR\asdsSecs\x12\x17\n" +
+ "\als_secs\x18\a \x01(\rR\x06lsSecs\x12\"\n" +
+ "\rmin_wake_secs\x18\b \x01(\rR\vminWakeSecs\x12;\n" +
+ "\x1adevice_battery_ina_address\x18\t \x01(\rR\x17deviceBatteryInaAddress\x12)\n" +
+ "\x10powermon_enables\x18 \x01(\x04R\x0fpowermonEnables\x1a\xfd\x04\n" +
+ "\rNetworkConfig\x12!\n" +
+ "\fwifi_enabled\x18\x01 \x01(\bR\vwifiEnabled\x12\x1b\n" +
+ "\twifi_ssid\x18\x03 \x01(\tR\bwifiSsid\x12\x19\n" +
+ "\bwifi_psk\x18\x04 \x01(\tR\awifiPsk\x12\x1d\n" +
+ "\n" +
+ "ntp_server\x18\x05 \x01(\tR\tntpServer\x12\x1f\n" +
+ "\veth_enabled\x18\x06 \x01(\bR\n" +
+ "ethEnabled\x12O\n" +
+ "\faddress_mode\x18\a \x01(\x0e2,.meshtastic.Config.NetworkConfig.AddressModeR\vaddressMode\x12L\n" +
+ "\vipv4_config\x18\b \x01(\v2+.meshtastic.Config.NetworkConfig.IpV4ConfigR\n" +
+ "ipv4Config\x12%\n" +
+ "\x0ersyslog_server\x18\t \x01(\tR\rrsyslogServer\x12+\n" +
+ "\x11enabled_protocols\x18\n" +
+ " \x01(\rR\x10enabledProtocols\x12!\n" +
+ "\fipv6_enabled\x18\v \x01(\bR\vipv6Enabled\x1a`\n" +
+ "\n" +
+ "IpV4Config\x12\x0e\n" +
+ "\x02ip\x18\x01 \x01(\aR\x02ip\x12\x18\n" +
+ "\agateway\x18\x02 \x01(\aR\agateway\x12\x16\n" +
+ "\x06subnet\x18\x03 \x01(\aR\x06subnet\x12\x10\n" +
+ "\x03dns\x18\x04 \x01(\aR\x03dns\"#\n" +
+ "\vAddressMode\x12\b\n" +
+ "\x04DHCP\x10\x00\x12\n" +
+ "\n" +
+ "\x06STATIC\x10\x01\"4\n" +
+ "\rProtocolFlags\x12\x10\n" +
+ "\fNO_BROADCAST\x10\x00\x12\x11\n" +
+ "\rUDP_BROADCAST\x10\x01\x1a\xa5\t\n" +
+ "\rDisplayConfig\x12$\n" +
+ "\x0escreen_on_secs\x18\x01 \x01(\rR\fscreenOnSecs\x12S\n" +
+ "\n" +
+ "gps_format\x18\x02 \x01(\x0e24.meshtastic.Config.DisplayConfig.GpsCoordinateFormatR\tgpsFormat\x129\n" +
+ "\x19auto_screen_carousel_secs\x18\x03 \x01(\rR\x16autoScreenCarouselSecs\x12*\n" +
+ "\x11compass_north_top\x18\x04 \x01(\bR\x0fcompassNorthTop\x12\x1f\n" +
+ "\vflip_screen\x18\x05 \x01(\bR\n" +
+ "flipScreen\x12C\n" +
+ "\x05units\x18\x06 \x01(\x0e2-.meshtastic.Config.DisplayConfig.DisplayUnitsR\x05units\x12=\n" +
+ "\x04oled\x18\a \x01(\x0e2).meshtastic.Config.DisplayConfig.OledTypeR\x04oled\x12N\n" +
+ "\vdisplaymode\x18\b \x01(\x0e2,.meshtastic.Config.DisplayConfig.DisplayModeR\vdisplaymode\x12!\n" +
+ "\fheading_bold\x18\t \x01(\bR\vheadingBold\x120\n" +
+ "\x15wake_on_tap_or_motion\x18\n" +
+ " \x01(\bR\x11wakeOnTapOrMotion\x12d\n" +
+ "\x13compass_orientation\x18\v \x01(\x0e23.meshtastic.Config.DisplayConfig.CompassOrientationR\x12compassOrientation\x12\"\n" +
+ "\ruse_12h_clock\x18\f \x01(\bR\vuse12hClock\"M\n" +
+ "\x13GpsCoordinateFormat\x12\a\n" +
+ "\x03DEC\x10\x00\x12\a\n" +
+ "\x03DMS\x10\x01\x12\a\n" +
+ "\x03UTM\x10\x02\x12\b\n" +
+ "\x04MGRS\x10\x03\x12\a\n" +
+ "\x03OLC\x10\x04\x12\b\n" +
+ "\x04OSGR\x10\x05\"(\n" +
+ "\fDisplayUnits\x12\n" +
+ "\n" +
+ "\x06METRIC\x10\x00\x12\f\n" +
+ "\bIMPERIAL\x10\x01\"e\n" +
+ "\bOledType\x12\r\n" +
+ "\tOLED_AUTO\x10\x00\x12\x10\n" +
+ "\fOLED_SSD1306\x10\x01\x12\x0f\n" +
+ "\vOLED_SH1106\x10\x02\x12\x0f\n" +
+ "\vOLED_SH1107\x10\x03\x12\x16\n" +
+ "\x12OLED_SH1107_128_64\x10\x04\"A\n" +
+ "\vDisplayMode\x12\v\n" +
+ "\aDEFAULT\x10\x00\x12\f\n" +
+ "\bTWOCOLOR\x10\x01\x12\f\n" +
+ "\bINVERTED\x10\x02\x12\t\n" +
+ "\x05COLOR\x10\x03\"\xba\x01\n" +
+ "\x12CompassOrientation\x12\r\n" +
+ "\tDEGREES_0\x10\x00\x12\x0e\n" +
+ "\n" +
+ "DEGREES_90\x10\x01\x12\x0f\n" +
+ "\vDEGREES_180\x10\x02\x12\x0f\n" +
+ "\vDEGREES_270\x10\x03\x12\x16\n" +
+ "\x12DEGREES_0_INVERTED\x10\x04\x12\x17\n" +
+ "\x13DEGREES_90_INVERTED\x10\x05\x12\x18\n" +
+ "\x14DEGREES_180_INVERTED\x10\x06\x12\x18\n" +
+ "\x14DEGREES_270_INVERTED\x10\a\x1a\x93\t\n" +
+ "\n" +
+ "LoRaConfig\x12\x1d\n" +
+ "\n" +
+ "use_preset\x18\x01 \x01(\bR\tusePreset\x12L\n" +
+ "\fmodem_preset\x18\x02 \x01(\x0e2).meshtastic.Config.LoRaConfig.ModemPresetR\vmodemPreset\x12\x1c\n" +
+ "\tbandwidth\x18\x03 \x01(\rR\tbandwidth\x12#\n" +
+ "\rspread_factor\x18\x04 \x01(\rR\fspreadFactor\x12\x1f\n" +
+ "\vcoding_rate\x18\x05 \x01(\rR\n" +
+ "codingRate\x12)\n" +
+ "\x10frequency_offset\x18\x06 \x01(\x02R\x0ffrequencyOffset\x12@\n" +
+ "\x06region\x18\a \x01(\x0e2(.meshtastic.Config.LoRaConfig.RegionCodeR\x06region\x12\x1b\n" +
+ "\thop_limit\x18\b \x01(\rR\bhopLimit\x12\x1d\n" +
+ "\n" +
+ "tx_enabled\x18\t \x01(\bR\ttxEnabled\x12\x19\n" +
+ "\btx_power\x18\n" +
+ " \x01(\x05R\atxPower\x12\x1f\n" +
+ "\vchannel_num\x18\v \x01(\rR\n" +
+ "channelNum\x12.\n" +
+ "\x13override_duty_cycle\x18\f \x01(\bR\x11overrideDutyCycle\x123\n" +
+ "\x16sx126x_rx_boosted_gain\x18\r \x01(\bR\x13sx126xRxBoostedGain\x12-\n" +
+ "\x12override_frequency\x18\x0e \x01(\x02R\x11overrideFrequency\x12&\n" +
+ "\x0fpa_fan_disabled\x18\x0f \x01(\bR\rpaFanDisabled\x12'\n" +
+ "\x0fignore_incoming\x18g \x03(\rR\x0eignoreIncoming\x12\x1f\n" +
+ "\vignore_mqtt\x18h \x01(\bR\n" +
+ "ignoreMqtt\x12)\n" +
+ "\x11config_ok_to_mqtt\x18i \x01(\bR\x0econfigOkToMqtt\"\xf1\x01\n" +
+ "\n" +
+ "RegionCode\x12\t\n" +
+ "\x05UNSET\x10\x00\x12\x06\n" +
+ "\x02US\x10\x01\x12\n" +
+ "\n" +
+ "\x06EU_433\x10\x02\x12\n" +
+ "\n" +
+ "\x06EU_868\x10\x03\x12\x06\n" +
+ "\x02CN\x10\x04\x12\x06\n" +
+ "\x02JP\x10\x05\x12\a\n" +
+ "\x03ANZ\x10\x06\x12\x06\n" +
+ "\x02KR\x10\a\x12\x06\n" +
+ "\x02TW\x10\b\x12\x06\n" +
+ "\x02RU\x10\t\x12\x06\n" +
+ "\x02IN\x10\n" +
+ "\x12\n" +
+ "\n" +
+ "\x06NZ_865\x10\v\x12\x06\n" +
+ "\x02TH\x10\f\x12\v\n" +
+ "\aLORA_24\x10\r\x12\n" +
+ "\n" +
+ "\x06UA_433\x10\x0e\x12\n" +
+ "\n" +
+ "\x06UA_868\x10\x0f\x12\n" +
+ "\n" +
+ "\x06MY_433\x10\x10\x12\n" +
+ "\n" +
+ "\x06MY_919\x10\x11\x12\n" +
+ "\n" +
+ "\x06SG_923\x10\x12\x12\n" +
+ "\n" +
+ "\x06PH_433\x10\x13\x12\n" +
+ "\n" +
+ "\x06PH_868\x10\x14\x12\n" +
+ "\n" +
+ "\x06PH_915\x10\x15\"\xa9\x01\n" +
+ "\vModemPreset\x12\r\n" +
+ "\tLONG_FAST\x10\x00\x12\r\n" +
+ "\tLONG_SLOW\x10\x01\x12\x16\n" +
+ "\x0eVERY_LONG_SLOW\x10\x02\x1a\x02\b\x01\x12\x0f\n" +
+ "\vMEDIUM_SLOW\x10\x03\x12\x0f\n" +
+ "\vMEDIUM_FAST\x10\x04\x12\x0e\n" +
+ "\n" +
+ "SHORT_SLOW\x10\x05\x12\x0e\n" +
+ "\n" +
+ "SHORT_FAST\x10\x06\x12\x11\n" +
+ "\rLONG_MODERATE\x10\a\x12\x0f\n" +
+ "\vSHORT_TURBO\x10\b\x1a\xc6\x01\n" +
+ "\x0fBluetoothConfig\x12\x18\n" +
+ "\aenabled\x18\x01 \x01(\bR\aenabled\x12B\n" +
+ "\x04mode\x18\x02 \x01(\x0e2..meshtastic.Config.BluetoothConfig.PairingModeR\x04mode\x12\x1b\n" +
+ "\tfixed_pin\x18\x03 \x01(\rR\bfixedPin\"8\n" +
+ "\vPairingMode\x12\x0e\n" +
+ "\n" +
+ "RANDOM_PIN\x10\x00\x12\r\n" +
+ "\tFIXED_PIN\x10\x01\x12\n" +
+ "\n" +
+ "\x06NO_PIN\x10\x02\x1a\x9a\x02\n" +
+ "\x0eSecurityConfig\x12\x1d\n" +
+ "\n" +
+ "public_key\x18\x01 \x01(\fR\tpublicKey\x12\x1f\n" +
+ "\vprivate_key\x18\x02 \x01(\fR\n" +
+ "privateKey\x12\x1b\n" +
+ "\tadmin_key\x18\x03 \x03(\fR\badminKey\x12\x1d\n" +
+ "\n" +
+ "is_managed\x18\x04 \x01(\bR\tisManaged\x12%\n" +
+ "\x0eserial_enabled\x18\x05 \x01(\bR\rserialEnabled\x121\n" +
+ "\x15debug_log_api_enabled\x18\x06 \x01(\bR\x12debugLogApiEnabled\x122\n" +
+ "\x15admin_channel_enabled\x18\b \x01(\bR\x13adminChannelEnabled\x1a\x12\n" +
+ "\x10SessionkeyConfigB\x11\n" +
+ "\x0fpayload_variantBa\n" +
+ "\x13com.geeksville.meshB\fConfigProtosZ\"github.com/meshtastic/go/generated\xaa\x02\x14Meshtastic.Protobufs\xba\x02\x00b\x06proto3"
var (
file_meshtastic_config_proto_rawDescOnce sync.Once
- file_meshtastic_config_proto_rawDescData = file_meshtastic_config_proto_rawDesc
+ file_meshtastic_config_proto_rawDescData []byte
)
func file_meshtastic_config_proto_rawDescGZIP() []byte {
file_meshtastic_config_proto_rawDescOnce.Do(func() {
- file_meshtastic_config_proto_rawDescData = protoimpl.X.CompressGZIP(file_meshtastic_config_proto_rawDescData)
+ file_meshtastic_config_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_meshtastic_config_proto_rawDesc), len(file_meshtastic_config_proto_rawDesc)))
})
return file_meshtastic_config_proto_rawDescData
}
-var file_meshtastic_config_proto_enumTypes = make([]protoimpl.EnumInfo, 12)
-var file_meshtastic_config_proto_msgTypes = make([]protoimpl.MessageInfo, 9)
-var file_meshtastic_config_proto_goTypes = []interface{}{
+var file_meshtastic_config_proto_enumTypes = make([]protoimpl.EnumInfo, 14)
+var file_meshtastic_config_proto_msgTypes = make([]protoimpl.MessageInfo, 11)
+var file_meshtastic_config_proto_goTypes = []any{
(Config_DeviceConfig_Role)(0), // 0: meshtastic.Config.DeviceConfig.Role
(Config_DeviceConfig_RebroadcastMode)(0), // 1: meshtastic.Config.DeviceConfig.RebroadcastMode
(Config_PositionConfig_PositionFlags)(0), // 2: meshtastic.Config.PositionConfig.PositionFlags
(Config_PositionConfig_GpsMode)(0), // 3: meshtastic.Config.PositionConfig.GpsMode
(Config_NetworkConfig_AddressMode)(0), // 4: meshtastic.Config.NetworkConfig.AddressMode
- (Config_DisplayConfig_GpsCoordinateFormat)(0), // 5: meshtastic.Config.DisplayConfig.GpsCoordinateFormat
- (Config_DisplayConfig_DisplayUnits)(0), // 6: meshtastic.Config.DisplayConfig.DisplayUnits
- (Config_DisplayConfig_OledType)(0), // 7: meshtastic.Config.DisplayConfig.OledType
- (Config_DisplayConfig_DisplayMode)(0), // 8: meshtastic.Config.DisplayConfig.DisplayMode
- (Config_LoRaConfig_RegionCode)(0), // 9: meshtastic.Config.LoRaConfig.RegionCode
- (Config_LoRaConfig_ModemPreset)(0), // 10: meshtastic.Config.LoRaConfig.ModemPreset
- (Config_BluetoothConfig_PairingMode)(0), // 11: meshtastic.Config.BluetoothConfig.PairingMode
- (*Config)(nil), // 12: meshtastic.Config
- (*Config_DeviceConfig)(nil), // 13: meshtastic.Config.DeviceConfig
- (*Config_PositionConfig)(nil), // 14: meshtastic.Config.PositionConfig
- (*Config_PowerConfig)(nil), // 15: meshtastic.Config.PowerConfig
- (*Config_NetworkConfig)(nil), // 16: meshtastic.Config.NetworkConfig
- (*Config_DisplayConfig)(nil), // 17: meshtastic.Config.DisplayConfig
- (*Config_LoRaConfig)(nil), // 18: meshtastic.Config.LoRaConfig
- (*Config_BluetoothConfig)(nil), // 19: meshtastic.Config.BluetoothConfig
- (*Config_NetworkConfig_IpV4Config)(nil), // 20: meshtastic.Config.NetworkConfig.IpV4Config
+ (Config_NetworkConfig_ProtocolFlags)(0), // 5: meshtastic.Config.NetworkConfig.ProtocolFlags
+ (Config_DisplayConfig_GpsCoordinateFormat)(0), // 6: meshtastic.Config.DisplayConfig.GpsCoordinateFormat
+ (Config_DisplayConfig_DisplayUnits)(0), // 7: meshtastic.Config.DisplayConfig.DisplayUnits
+ (Config_DisplayConfig_OledType)(0), // 8: meshtastic.Config.DisplayConfig.OledType
+ (Config_DisplayConfig_DisplayMode)(0), // 9: meshtastic.Config.DisplayConfig.DisplayMode
+ (Config_DisplayConfig_CompassOrientation)(0), // 10: meshtastic.Config.DisplayConfig.CompassOrientation
+ (Config_LoRaConfig_RegionCode)(0), // 11: meshtastic.Config.LoRaConfig.RegionCode
+ (Config_LoRaConfig_ModemPreset)(0), // 12: meshtastic.Config.LoRaConfig.ModemPreset
+ (Config_BluetoothConfig_PairingMode)(0), // 13: meshtastic.Config.BluetoothConfig.PairingMode
+ (*Config)(nil), // 14: meshtastic.Config
+ (*Config_DeviceConfig)(nil), // 15: meshtastic.Config.DeviceConfig
+ (*Config_PositionConfig)(nil), // 16: meshtastic.Config.PositionConfig
+ (*Config_PowerConfig)(nil), // 17: meshtastic.Config.PowerConfig
+ (*Config_NetworkConfig)(nil), // 18: meshtastic.Config.NetworkConfig
+ (*Config_DisplayConfig)(nil), // 19: meshtastic.Config.DisplayConfig
+ (*Config_LoRaConfig)(nil), // 20: meshtastic.Config.LoRaConfig
+ (*Config_BluetoothConfig)(nil), // 21: meshtastic.Config.BluetoothConfig
+ (*Config_SecurityConfig)(nil), // 22: meshtastic.Config.SecurityConfig
+ (*Config_SessionkeyConfig)(nil), // 23: meshtastic.Config.SessionkeyConfig
+ (*Config_NetworkConfig_IpV4Config)(nil), // 24: meshtastic.Config.NetworkConfig.IpV4Config
+ (*DeviceUIConfig)(nil), // 25: meshtastic.DeviceUIConfig
}
var file_meshtastic_config_proto_depIdxs = []int32{
- 13, // 0: meshtastic.Config.device:type_name -> meshtastic.Config.DeviceConfig
- 14, // 1: meshtastic.Config.position:type_name -> meshtastic.Config.PositionConfig
- 15, // 2: meshtastic.Config.power:type_name -> meshtastic.Config.PowerConfig
- 16, // 3: meshtastic.Config.network:type_name -> meshtastic.Config.NetworkConfig
- 17, // 4: meshtastic.Config.display:type_name -> meshtastic.Config.DisplayConfig
- 18, // 5: meshtastic.Config.lora:type_name -> meshtastic.Config.LoRaConfig
- 19, // 6: meshtastic.Config.bluetooth:type_name -> meshtastic.Config.BluetoothConfig
- 0, // 7: meshtastic.Config.DeviceConfig.role:type_name -> meshtastic.Config.DeviceConfig.Role
- 1, // 8: meshtastic.Config.DeviceConfig.rebroadcast_mode:type_name -> meshtastic.Config.DeviceConfig.RebroadcastMode
- 3, // 9: meshtastic.Config.PositionConfig.gps_mode:type_name -> meshtastic.Config.PositionConfig.GpsMode
- 4, // 10: meshtastic.Config.NetworkConfig.address_mode:type_name -> meshtastic.Config.NetworkConfig.AddressMode
- 20, // 11: meshtastic.Config.NetworkConfig.ipv4_config:type_name -> meshtastic.Config.NetworkConfig.IpV4Config
- 5, // 12: meshtastic.Config.DisplayConfig.gps_format:type_name -> meshtastic.Config.DisplayConfig.GpsCoordinateFormat
- 6, // 13: meshtastic.Config.DisplayConfig.units:type_name -> meshtastic.Config.DisplayConfig.DisplayUnits
- 7, // 14: meshtastic.Config.DisplayConfig.oled:type_name -> meshtastic.Config.DisplayConfig.OledType
- 8, // 15: meshtastic.Config.DisplayConfig.displaymode:type_name -> meshtastic.Config.DisplayConfig.DisplayMode
- 10, // 16: meshtastic.Config.LoRaConfig.modem_preset:type_name -> meshtastic.Config.LoRaConfig.ModemPreset
- 9, // 17: meshtastic.Config.LoRaConfig.region:type_name -> meshtastic.Config.LoRaConfig.RegionCode
- 11, // 18: meshtastic.Config.BluetoothConfig.mode:type_name -> meshtastic.Config.BluetoothConfig.PairingMode
- 19, // [19:19] is the sub-list for method output_type
- 19, // [19:19] is the sub-list for method input_type
- 19, // [19:19] is the sub-list for extension type_name
- 19, // [19:19] is the sub-list for extension extendee
- 0, // [0:19] is the sub-list for field type_name
+ 15, // 0: meshtastic.Config.device:type_name -> meshtastic.Config.DeviceConfig
+ 16, // 1: meshtastic.Config.position:type_name -> meshtastic.Config.PositionConfig
+ 17, // 2: meshtastic.Config.power:type_name -> meshtastic.Config.PowerConfig
+ 18, // 3: meshtastic.Config.network:type_name -> meshtastic.Config.NetworkConfig
+ 19, // 4: meshtastic.Config.display:type_name -> meshtastic.Config.DisplayConfig
+ 20, // 5: meshtastic.Config.lora:type_name -> meshtastic.Config.LoRaConfig
+ 21, // 6: meshtastic.Config.bluetooth:type_name -> meshtastic.Config.BluetoothConfig
+ 22, // 7: meshtastic.Config.security:type_name -> meshtastic.Config.SecurityConfig
+ 23, // 8: meshtastic.Config.sessionkey:type_name -> meshtastic.Config.SessionkeyConfig
+ 25, // 9: meshtastic.Config.device_ui:type_name -> meshtastic.DeviceUIConfig
+ 0, // 10: meshtastic.Config.DeviceConfig.role:type_name -> meshtastic.Config.DeviceConfig.Role
+ 1, // 11: meshtastic.Config.DeviceConfig.rebroadcast_mode:type_name -> meshtastic.Config.DeviceConfig.RebroadcastMode
+ 3, // 12: meshtastic.Config.PositionConfig.gps_mode:type_name -> meshtastic.Config.PositionConfig.GpsMode
+ 4, // 13: meshtastic.Config.NetworkConfig.address_mode:type_name -> meshtastic.Config.NetworkConfig.AddressMode
+ 24, // 14: meshtastic.Config.NetworkConfig.ipv4_config:type_name -> meshtastic.Config.NetworkConfig.IpV4Config
+ 6, // 15: meshtastic.Config.DisplayConfig.gps_format:type_name -> meshtastic.Config.DisplayConfig.GpsCoordinateFormat
+ 7, // 16: meshtastic.Config.DisplayConfig.units:type_name -> meshtastic.Config.DisplayConfig.DisplayUnits
+ 8, // 17: meshtastic.Config.DisplayConfig.oled:type_name -> meshtastic.Config.DisplayConfig.OledType
+ 9, // 18: meshtastic.Config.DisplayConfig.displaymode:type_name -> meshtastic.Config.DisplayConfig.DisplayMode
+ 10, // 19: meshtastic.Config.DisplayConfig.compass_orientation:type_name -> meshtastic.Config.DisplayConfig.CompassOrientation
+ 12, // 20: meshtastic.Config.LoRaConfig.modem_preset:type_name -> meshtastic.Config.LoRaConfig.ModemPreset
+ 11, // 21: meshtastic.Config.LoRaConfig.region:type_name -> meshtastic.Config.LoRaConfig.RegionCode
+ 13, // 22: meshtastic.Config.BluetoothConfig.mode:type_name -> meshtastic.Config.BluetoothConfig.PairingMode
+ 23, // [23:23] is the sub-list for method output_type
+ 23, // [23:23] is the sub-list for method input_type
+ 23, // [23:23] is the sub-list for extension type_name
+ 23, // [23:23] is the sub-list for extension extendee
+ 0, // [0:23] is the sub-list for field type_name
}
func init() { file_meshtastic_config_proto_init() }
@@ -2459,117 +2833,8 @@ func file_meshtastic_config_proto_init() {
if File_meshtastic_config_proto != nil {
return
}
- if !protoimpl.UnsafeEnabled {
- file_meshtastic_config_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*Config); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_config_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*Config_DeviceConfig); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_config_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*Config_PositionConfig); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_config_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*Config_PowerConfig); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_config_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*Config_NetworkConfig); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_config_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*Config_DisplayConfig); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_config_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*Config_LoRaConfig); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_config_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*Config_BluetoothConfig); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_config_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*Config_NetworkConfig_IpV4Config); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- }
- file_meshtastic_config_proto_msgTypes[0].OneofWrappers = []interface{}{
+ file_meshtastic_device_ui_proto_init()
+ file_meshtastic_config_proto_msgTypes[0].OneofWrappers = []any{
(*Config_Device)(nil),
(*Config_Position)(nil),
(*Config_Power)(nil),
@@ -2577,14 +2842,17 @@ func file_meshtastic_config_proto_init() {
(*Config_Display)(nil),
(*Config_Lora)(nil),
(*Config_Bluetooth)(nil),
+ (*Config_Security)(nil),
+ (*Config_Sessionkey)(nil),
+ (*Config_DeviceUi)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
- RawDescriptor: file_meshtastic_config_proto_rawDesc,
- NumEnums: 12,
- NumMessages: 9,
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_meshtastic_config_proto_rawDesc), len(file_meshtastic_config_proto_rawDesc)),
+ NumEnums: 14,
+ NumMessages: 11,
NumExtensions: 0,
NumServices: 0,
},
@@ -2594,7 +2862,6 @@ func file_meshtastic_config_proto_init() {
MessageInfos: file_meshtastic_config_proto_msgTypes,
}.Build()
File_meshtastic_config_proto = out.File
- file_meshtastic_config_proto_rawDesc = nil
file_meshtastic_config_proto_goTypes = nil
file_meshtastic_config_proto_depIdxs = nil
}
diff --git a/meshtastic/config_vtproto.pb.go b/meshtastic/config_vtproto.pb.go
index 2069eec..40c0329 100644
--- a/meshtastic/config_vtproto.pb.go
+++ b/meshtastic/config_vtproto.pb.go
@@ -50,6 +50,23 @@ func (m *Config_DeviceConfig) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
+ if m.LedHeartbeatDisabled {
+ i--
+ if m.LedHeartbeatDisabled {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x60
+ }
+ if len(m.Tzdef) > 0 {
+ i -= len(m.Tzdef)
+ copy(dAtA[i:], m.Tzdef)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.Tzdef)))
+ i--
+ dAtA[i] = 0x5a
+ }
if m.DisableTripleClick {
i--
if m.DisableTripleClick {
@@ -100,16 +117,6 @@ func (m *Config_DeviceConfig) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i--
dAtA[i] = 0x20
}
- if m.DebugLogEnabled {
- i--
- if m.DebugLogEnabled {
- dAtA[i] = 1
- } else {
- dAtA[i] = 0
- }
- i--
- dAtA[i] = 0x18
- }
if m.SerialEnabled {
i--
if m.SerialEnabled {
@@ -271,6 +278,13 @@ func (m *Config_PowerConfig) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
+ if m.PowermonEnables != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.PowermonEnables))
+ i--
+ dAtA[i] = 0x2
+ i--
+ dAtA[i] = 0x80
+ }
if m.DeviceBatteryInaAddress != 0 {
i = protohelpers.EncodeVarint(dAtA, i, uint64(m.DeviceBatteryInaAddress))
i--
@@ -407,6 +421,21 @@ func (m *Config_NetworkConfig) MarshalToSizedBufferVT(dAtA []byte) (int, error)
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
+ if m.Ipv6Enabled {
+ i--
+ if m.Ipv6Enabled {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x58
+ }
+ if m.EnabledProtocols != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.EnabledProtocols))
+ i--
+ dAtA[i] = 0x50
+ }
if len(m.RsyslogServer) > 0 {
i -= len(m.RsyslogServer)
copy(dAtA[i:], m.RsyslogServer)
@@ -503,6 +532,21 @@ func (m *Config_DisplayConfig) MarshalToSizedBufferVT(dAtA []byte) (int, error)
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
+ if m.Use_12HClock {
+ i--
+ if m.Use_12HClock {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x60
+ }
+ if m.CompassOrientation != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.CompassOrientation))
+ i--
+ dAtA[i] = 0x58
+ }
if m.WakeOnTapOrMotion {
i--
if m.WakeOnTapOrMotion {
@@ -606,6 +650,18 @@ func (m *Config_LoRaConfig) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
+ if m.ConfigOkToMqtt {
+ i--
+ if m.ConfigOkToMqtt {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x6
+ i--
+ dAtA[i] = 0xc8
+ }
if m.IgnoreMqtt {
i--
if m.IgnoreMqtt {
@@ -640,6 +696,16 @@ func (m *Config_LoRaConfig) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i--
dAtA[i] = 0xba
}
+ if m.PaFanDisabled {
+ i--
+ if m.PaFanDisabled {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x78
+ }
if m.OverrideFrequency != 0 {
i -= 4
binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.OverrideFrequency))))
@@ -788,6 +854,135 @@ func (m *Config_BluetoothConfig) MarshalToSizedBufferVT(dAtA []byte) (int, error
return len(dAtA) - i, nil
}
+func (m *Config_SecurityConfig) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *Config_SecurityConfig) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *Config_SecurityConfig) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if m.AdminChannelEnabled {
+ i--
+ if m.AdminChannelEnabled {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x40
+ }
+ if m.DebugLogApiEnabled {
+ i--
+ if m.DebugLogApiEnabled {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x30
+ }
+ if m.SerialEnabled {
+ i--
+ if m.SerialEnabled {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x28
+ }
+ if m.IsManaged {
+ i--
+ if m.IsManaged {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x20
+ }
+ if len(m.AdminKey) > 0 {
+ for iNdEx := len(m.AdminKey) - 1; iNdEx >= 0; iNdEx-- {
+ i -= len(m.AdminKey[iNdEx])
+ copy(dAtA[i:], m.AdminKey[iNdEx])
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.AdminKey[iNdEx])))
+ i--
+ dAtA[i] = 0x1a
+ }
+ }
+ if len(m.PrivateKey) > 0 {
+ i -= len(m.PrivateKey)
+ copy(dAtA[i:], m.PrivateKey)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.PrivateKey)))
+ i--
+ dAtA[i] = 0x12
+ }
+ if len(m.PublicKey) > 0 {
+ i -= len(m.PublicKey)
+ copy(dAtA[i:], m.PublicKey)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.PublicKey)))
+ i--
+ dAtA[i] = 0xa
+ }
+ return len(dAtA) - i, nil
+}
+
+func (m *Config_SessionkeyConfig) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *Config_SessionkeyConfig) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *Config_SessionkeyConfig) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ return len(dAtA) - i, nil
+}
+
func (m *Config) MarshalVT() (dAtA []byte, err error) {
if m == nil {
return nil, nil
@@ -963,6 +1158,63 @@ func (m *Config_Bluetooth) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
}
return len(dAtA) - i, nil
}
+func (m *Config_Security) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *Config_Security) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ if m.Security != nil {
+ size, err := m.Security.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x42
+ }
+ return len(dAtA) - i, nil
+}
+func (m *Config_Sessionkey) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *Config_Sessionkey) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ if m.Sessionkey != nil {
+ size, err := m.Sessionkey.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x4a
+ }
+ return len(dAtA) - i, nil
+}
+func (m *Config_DeviceUi) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *Config_DeviceUi) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ if m.DeviceUi != nil {
+ size, err := m.DeviceUi.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x52
+ }
+ return len(dAtA) - i, nil
+}
func (m *Config_DeviceConfig) SizeVT() (n int) {
if m == nil {
return 0
@@ -975,9 +1227,6 @@ func (m *Config_DeviceConfig) SizeVT() (n int) {
if m.SerialEnabled {
n += 2
}
- if m.DebugLogEnabled {
- n += 2
- }
if m.ButtonGpio != 0 {
n += 1 + protohelpers.SizeOfVarint(uint64(m.ButtonGpio))
}
@@ -999,6 +1248,13 @@ func (m *Config_DeviceConfig) SizeVT() (n int) {
if m.DisableTripleClick {
n += 2
}
+ l = len(m.Tzdef)
+ if l > 0 {
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ if m.LedHeartbeatDisabled {
+ n += 2
+ }
n += len(m.unknownFields)
return n
}
@@ -1082,6 +1338,9 @@ func (m *Config_PowerConfig) SizeVT() (n int) {
if m.DeviceBatteryInaAddress != 0 {
n += 1 + protohelpers.SizeOfVarint(uint64(m.DeviceBatteryInaAddress))
}
+ if m.PowermonEnables != 0 {
+ n += 2 + protohelpers.SizeOfVarint(uint64(m.PowermonEnables))
+ }
n += len(m.unknownFields)
return n
}
@@ -1143,6 +1402,12 @@ func (m *Config_NetworkConfig) SizeVT() (n int) {
if l > 0 {
n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
}
+ if m.EnabledProtocols != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.EnabledProtocols))
+ }
+ if m.Ipv6Enabled {
+ n += 2
+ }
n += len(m.unknownFields)
return n
}
@@ -1183,6 +1448,12 @@ func (m *Config_DisplayConfig) SizeVT() (n int) {
if m.WakeOnTapOrMotion {
n += 2
}
+ if m.CompassOrientation != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.CompassOrientation))
+ }
+ if m.Use_12HClock {
+ n += 2
+ }
n += len(m.unknownFields)
return n
}
@@ -1235,6 +1506,9 @@ func (m *Config_LoRaConfig) SizeVT() (n int) {
if m.OverrideFrequency != 0 {
n += 5
}
+ if m.PaFanDisabled {
+ n += 2
+ }
if len(m.IgnoreIncoming) > 0 {
l = 0
for _, e := range m.IgnoreIncoming {
@@ -1245,6 +1519,9 @@ func (m *Config_LoRaConfig) SizeVT() (n int) {
if m.IgnoreMqtt {
n += 3
}
+ if m.ConfigOkToMqtt {
+ n += 3
+ }
n += len(m.unknownFields)
return n
}
@@ -1268,6 +1545,52 @@ func (m *Config_BluetoothConfig) SizeVT() (n int) {
return n
}
+func (m *Config_SecurityConfig) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ l = len(m.PublicKey)
+ if l > 0 {
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ l = len(m.PrivateKey)
+ if l > 0 {
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ if len(m.AdminKey) > 0 {
+ for _, b := range m.AdminKey {
+ l = len(b)
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ }
+ if m.IsManaged {
+ n += 2
+ }
+ if m.SerialEnabled {
+ n += 2
+ }
+ if m.DebugLogApiEnabled {
+ n += 2
+ }
+ if m.AdminChannelEnabled {
+ n += 2
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *Config_SessionkeyConfig) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ n += len(m.unknownFields)
+ return n
+}
+
func (m *Config) SizeVT() (n int) {
if m == nil {
return 0
@@ -1365,6 +1688,42 @@ func (m *Config_Bluetooth) SizeVT() (n int) {
}
return n
}
+func (m *Config_Security) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.Security != nil {
+ l = m.Security.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ return n
+}
+func (m *Config_Sessionkey) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.Sessionkey != nil {
+ l = m.Sessionkey.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ return n
+}
+func (m *Config_DeviceUi) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.DeviceUi != nil {
+ l = m.DeviceUi.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ return n
+}
func (m *Config_DeviceConfig) UnmarshalVT(dAtA []byte) error {
l := len(dAtA)
iNdEx := 0
@@ -1433,26 +1792,6 @@ func (m *Config_DeviceConfig) UnmarshalVT(dAtA []byte) error {
}
}
m.SerialEnabled = bool(v != 0)
- case 3:
- if wireType != 0 {
- return fmt.Errorf("proto: wrong wireType = %d for field DebugLogEnabled", wireType)
- }
- var v int
- for shift := uint(0); ; shift += 7 {
- if shift >= 64 {
- return protohelpers.ErrIntOverflow
- }
- if iNdEx >= l {
- return io.ErrUnexpectedEOF
- }
- b := dAtA[iNdEx]
- iNdEx++
- v |= int(b&0x7F) << shift
- if b < 0x80 {
- break
- }
- }
- m.DebugLogEnabled = bool(v != 0)
case 4:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field ButtonGpio", wireType)
@@ -1589,6 +1928,58 @@ func (m *Config_DeviceConfig) UnmarshalVT(dAtA []byte) error {
}
}
m.DisableTripleClick = bool(v != 0)
+ case 11:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Tzdef", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.Tzdef = string(dAtA[iNdEx:postIndex])
+ iNdEx = postIndex
+ case 12:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field LedHeartbeatDisabled", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.LedHeartbeatDisabled = bool(v != 0)
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
@@ -2086,6 +2477,25 @@ func (m *Config_PowerConfig) UnmarshalVT(dAtA []byte) error {
break
}
}
+ case 32:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field PowermonEnables", wireType)
+ }
+ m.PowermonEnables = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.PowermonEnables |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
@@ -2451,6 +2861,45 @@ func (m *Config_NetworkConfig) UnmarshalVT(dAtA []byte) error {
}
m.RsyslogServer = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
+ case 10:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field EnabledProtocols", wireType)
+ }
+ m.EnabledProtocols = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.EnabledProtocols |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 11:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Ipv6Enabled", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.Ipv6Enabled = bool(v != 0)
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
@@ -2696,6 +3145,45 @@ func (m *Config_DisplayConfig) UnmarshalVT(dAtA []byte) error {
}
}
m.WakeOnTapOrMotion = bool(v != 0)
+ case 11:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field CompassOrientation", wireType)
+ }
+ m.CompassOrientation = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.CompassOrientation |= Config_DisplayConfig_CompassOrientation(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 12:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Use_12HClock", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.Use_12HClock = bool(v != 0)
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
@@ -3001,6 +3489,26 @@ func (m *Config_LoRaConfig) UnmarshalVT(dAtA []byte) error {
v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
iNdEx += 4
m.OverrideFrequency = float32(math.Float32frombits(v))
+ case 15:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field PaFanDisabled", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.PaFanDisabled = bool(v != 0)
case 103:
if wireType == 0 {
var v uint32
@@ -3097,6 +3605,26 @@ func (m *Config_LoRaConfig) UnmarshalVT(dAtA []byte) error {
}
}
m.IgnoreMqtt = bool(v != 0)
+ case 105:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field ConfigOkToMqtt", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.ConfigOkToMqtt = bool(v != 0)
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
@@ -3228,6 +3756,288 @@ func (m *Config_BluetoothConfig) UnmarshalVT(dAtA []byte) error {
}
return nil
}
+func (m *Config_SecurityConfig) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: Config_SecurityConfig: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: Config_SecurityConfig: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field PublicKey", wireType)
+ }
+ var byteLen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ byteLen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if byteLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + byteLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.PublicKey = append(m.PublicKey[:0], dAtA[iNdEx:postIndex]...)
+ if m.PublicKey == nil {
+ m.PublicKey = []byte{}
+ }
+ iNdEx = postIndex
+ case 2:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field PrivateKey", wireType)
+ }
+ var byteLen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ byteLen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if byteLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + byteLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.PrivateKey = append(m.PrivateKey[:0], dAtA[iNdEx:postIndex]...)
+ if m.PrivateKey == nil {
+ m.PrivateKey = []byte{}
+ }
+ iNdEx = postIndex
+ case 3:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field AdminKey", wireType)
+ }
+ var byteLen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ byteLen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if byteLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + byteLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.AdminKey = append(m.AdminKey, make([]byte, postIndex-iNdEx))
+ copy(m.AdminKey[len(m.AdminKey)-1], dAtA[iNdEx:postIndex])
+ iNdEx = postIndex
+ case 4:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field IsManaged", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.IsManaged = bool(v != 0)
+ case 5:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field SerialEnabled", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.SerialEnabled = bool(v != 0)
+ case 6:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field DebugLogApiEnabled", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.DebugLogApiEnabled = bool(v != 0)
+ case 8:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field AdminChannelEnabled", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.AdminChannelEnabled = bool(v != 0)
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *Config_SessionkeyConfig) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: Config_SessionkeyConfig: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: Config_SessionkeyConfig: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
func (m *Config) UnmarshalVT(dAtA []byte) error {
l := len(dAtA)
iNdEx := 0
@@ -3544,6 +4354,129 @@ func (m *Config) UnmarshalVT(dAtA []byte) error {
m.PayloadVariant = &Config_Bluetooth{Bluetooth: v}
}
iNdEx = postIndex
+ case 8:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Security", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if oneof, ok := m.PayloadVariant.(*Config_Security); ok {
+ if err := oneof.Security.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ } else {
+ v := &Config_SecurityConfig{}
+ if err := v.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ m.PayloadVariant = &Config_Security{Security: v}
+ }
+ iNdEx = postIndex
+ case 9:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Sessionkey", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if oneof, ok := m.PayloadVariant.(*Config_Sessionkey); ok {
+ if err := oneof.Sessionkey.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ } else {
+ v := &Config_SessionkeyConfig{}
+ if err := v.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ m.PayloadVariant = &Config_Sessionkey{Sessionkey: v}
+ }
+ iNdEx = postIndex
+ case 10:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field DeviceUi", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if oneof, ok := m.PayloadVariant.(*Config_DeviceUi); ok {
+ if err := oneof.DeviceUi.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ } else {
+ v := &DeviceUIConfig{}
+ if err := v.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ m.PayloadVariant = &Config_DeviceUi{DeviceUi: v}
+ }
+ iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
diff --git a/meshtastic/connection_status.pb.go b/meshtastic/connection_status.pb.go
index a5b49bd..a8b9e3f 100644
--- a/meshtastic/connection_status.pb.go
+++ b/meshtastic/connection_status.pb.go
@@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.32.0
-// protoc v4.25.2
+// protoc-gen-go v1.36.6
+// protoc v3.21.12
// source: meshtastic/connection_status.proto
package generated
@@ -11,6 +11,7 @@ import (
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
+ unsafe "unsafe"
)
const (
@@ -21,10 +22,7 @@ const (
)
type DeviceConnectionStatus struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// WiFi Status
Wifi *WifiConnectionStatus `protobuf:"bytes,1,opt,name=wifi,proto3,oneof" json:"wifi,omitempty"`
// WiFi Status
@@ -32,16 +30,16 @@ type DeviceConnectionStatus struct {
// Bluetooth Status
Bluetooth *BluetoothConnectionStatus `protobuf:"bytes,3,opt,name=bluetooth,proto3,oneof" json:"bluetooth,omitempty"`
// Serial Status
- Serial *SerialConnectionStatus `protobuf:"bytes,4,opt,name=serial,proto3,oneof" json:"serial,omitempty"`
+ Serial *SerialConnectionStatus `protobuf:"bytes,4,opt,name=serial,proto3,oneof" json:"serial,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *DeviceConnectionStatus) Reset() {
*x = DeviceConnectionStatus{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_connection_status_proto_msgTypes[0]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_connection_status_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *DeviceConnectionStatus) String() string {
@@ -52,7 +50,7 @@ func (*DeviceConnectionStatus) ProtoMessage() {}
func (x *DeviceConnectionStatus) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_connection_status_proto_msgTypes[0]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -97,25 +95,22 @@ func (x *DeviceConnectionStatus) GetSerial() *SerialConnectionStatus {
// WiFi connection status
type WifiConnectionStatus struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Connection status
Status *NetworkConnectionStatus `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
// WiFi access point SSID
Ssid string `protobuf:"bytes,2,opt,name=ssid,proto3" json:"ssid,omitempty"`
// RSSI of wireless connection
- Rssi int32 `protobuf:"varint,3,opt,name=rssi,proto3" json:"rssi,omitempty"`
+ Rssi int32 `protobuf:"varint,3,opt,name=rssi,proto3" json:"rssi,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *WifiConnectionStatus) Reset() {
*x = WifiConnectionStatus{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_connection_status_proto_msgTypes[1]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_connection_status_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *WifiConnectionStatus) String() string {
@@ -126,7 +121,7 @@ func (*WifiConnectionStatus) ProtoMessage() {}
func (x *WifiConnectionStatus) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_connection_status_proto_msgTypes[1]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -164,21 +159,18 @@ func (x *WifiConnectionStatus) GetRssi() int32 {
// Ethernet connection status
type EthernetConnectionStatus struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Connection status
- Status *NetworkConnectionStatus `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
+ Status *NetworkConnectionStatus `protobuf:"bytes,1,opt,name=status,proto3" json:"status,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *EthernetConnectionStatus) Reset() {
*x = EthernetConnectionStatus{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_connection_status_proto_msgTypes[2]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_connection_status_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *EthernetConnectionStatus) String() string {
@@ -189,7 +181,7 @@ func (*EthernetConnectionStatus) ProtoMessage() {}
func (x *EthernetConnectionStatus) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_connection_status_proto_msgTypes[2]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -213,10 +205,7 @@ func (x *EthernetConnectionStatus) GetStatus() *NetworkConnectionStatus {
// Ethernet or WiFi connection status
type NetworkConnectionStatus struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// IP address of device
IpAddress uint32 `protobuf:"fixed32,1,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
// Whether the device has an active connection or not
@@ -225,15 +214,15 @@ type NetworkConnectionStatus struct {
IsMqttConnected bool `protobuf:"varint,3,opt,name=is_mqtt_connected,json=isMqttConnected,proto3" json:"is_mqtt_connected,omitempty"`
// Whether the device is actively remote syslogging or not
IsSyslogConnected bool `protobuf:"varint,4,opt,name=is_syslog_connected,json=isSyslogConnected,proto3" json:"is_syslog_connected,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *NetworkConnectionStatus) Reset() {
*x = NetworkConnectionStatus{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_connection_status_proto_msgTypes[3]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_connection_status_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *NetworkConnectionStatus) String() string {
@@ -244,7 +233,7 @@ func (*NetworkConnectionStatus) ProtoMessage() {}
func (x *NetworkConnectionStatus) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_connection_status_proto_msgTypes[3]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -289,25 +278,22 @@ func (x *NetworkConnectionStatus) GetIsSyslogConnected() bool {
// Bluetooth connection status
type BluetoothConnectionStatus struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// The pairing PIN for bluetooth
Pin uint32 `protobuf:"varint,1,opt,name=pin,proto3" json:"pin,omitempty"`
// RSSI of bluetooth connection
Rssi int32 `protobuf:"varint,2,opt,name=rssi,proto3" json:"rssi,omitempty"`
// Whether the device has an active connection or not
- IsConnected bool `protobuf:"varint,3,opt,name=is_connected,json=isConnected,proto3" json:"is_connected,omitempty"`
+ IsConnected bool `protobuf:"varint,3,opt,name=is_connected,json=isConnected,proto3" json:"is_connected,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *BluetoothConnectionStatus) Reset() {
*x = BluetoothConnectionStatus{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_connection_status_proto_msgTypes[4]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_connection_status_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *BluetoothConnectionStatus) String() string {
@@ -318,7 +304,7 @@ func (*BluetoothConnectionStatus) ProtoMessage() {}
func (x *BluetoothConnectionStatus) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_connection_status_proto_msgTypes[4]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -356,23 +342,20 @@ func (x *BluetoothConnectionStatus) GetIsConnected() bool {
// Serial connection status
type SerialConnectionStatus struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Serial baud rate
Baud uint32 `protobuf:"varint,1,opt,name=baud,proto3" json:"baud,omitempty"`
// Whether the device has an active connection or not
- IsConnected bool `protobuf:"varint,2,opt,name=is_connected,json=isConnected,proto3" json:"is_connected,omitempty"`
+ IsConnected bool `protobuf:"varint,2,opt,name=is_connected,json=isConnected,proto3" json:"is_connected,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *SerialConnectionStatus) Reset() {
*x = SerialConnectionStatus{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_connection_status_proto_msgTypes[5]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_connection_status_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *SerialConnectionStatus) String() string {
@@ -383,7 +366,7 @@ func (*SerialConnectionStatus) ProtoMessage() {}
func (x *SerialConnectionStatus) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_connection_status_proto_msgTypes[5]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -414,91 +397,55 @@ func (x *SerialConnectionStatus) GetIsConnected() bool {
var File_meshtastic_connection_status_proto protoreflect.FileDescriptor
-var file_meshtastic_connection_status_proto_rawDesc = []byte{
- 0x0a, 0x22, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x63, 0x6f, 0x6e,
- 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70,
- 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0a, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63,
- 0x22, 0xd4, 0x02, 0x0a, 0x16, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x6e, 0x65,
- 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x39, 0x0a, 0x04, 0x77,
- 0x69, 0x66, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x6d, 0x65, 0x73, 0x68,
- 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x57, 0x69, 0x66, 0x69, 0x43, 0x6f, 0x6e, 0x6e, 0x65,
- 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x48, 0x00, 0x52, 0x04, 0x77,
- 0x69, 0x66, 0x69, 0x88, 0x01, 0x01, 0x12, 0x45, 0x0a, 0x08, 0x65, 0x74, 0x68, 0x65, 0x72, 0x6e,
- 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74,
- 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x45, 0x74, 0x68, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x43, 0x6f,
- 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x48, 0x01,
- 0x52, 0x08, 0x65, 0x74, 0x68, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x88, 0x01, 0x01, 0x12, 0x48, 0x0a,
- 0x09, 0x62, 0x6c, 0x75, 0x65, 0x74, 0x6f, 0x6f, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
- 0x32, 0x25, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x42, 0x6c,
- 0x75, 0x65, 0x74, 0x6f, 0x6f, 0x74, 0x68, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f,
- 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x48, 0x02, 0x52, 0x09, 0x62, 0x6c, 0x75, 0x65, 0x74,
- 0x6f, 0x6f, 0x74, 0x68, 0x88, 0x01, 0x01, 0x12, 0x3f, 0x0a, 0x06, 0x73, 0x65, 0x72, 0x69, 0x61,
- 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61,
- 0x73, 0x74, 0x69, 0x63, 0x2e, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x6e, 0x65,
- 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x48, 0x03, 0x52, 0x06, 0x73,
- 0x65, 0x72, 0x69, 0x61, 0x6c, 0x88, 0x01, 0x01, 0x42, 0x07, 0x0a, 0x05, 0x5f, 0x77, 0x69, 0x66,
- 0x69, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x65, 0x74, 0x68, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x42, 0x0c,
- 0x0a, 0x0a, 0x5f, 0x62, 0x6c, 0x75, 0x65, 0x74, 0x6f, 0x6f, 0x74, 0x68, 0x42, 0x09, 0x0a, 0x07,
- 0x5f, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x22, 0x7b, 0x0a, 0x14, 0x57, 0x69, 0x66, 0x69, 0x43,
- 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12,
- 0x3b, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
- 0x23, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4e, 0x65, 0x74,
- 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74,
- 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04,
- 0x73, 0x73, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x73, 0x73, 0x69, 0x64,
- 0x12, 0x12, 0x0a, 0x04, 0x72, 0x73, 0x73, 0x69, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04,
- 0x72, 0x73, 0x73, 0x69, 0x22, 0x57, 0x0a, 0x18, 0x45, 0x74, 0x68, 0x65, 0x72, 0x6e, 0x65, 0x74,
- 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73,
- 0x12, 0x3b, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
- 0x32, 0x23, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4e, 0x65,
- 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53,
- 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xb7, 0x01,
- 0x0a, 0x17, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
- 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x70, 0x5f,
- 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x07, 0x52, 0x09, 0x69,
- 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x73, 0x5f, 0x63,
- 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b,
- 0x69, 0x73, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x69,
- 0x73, 0x5f, 0x6d, 0x71, 0x74, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64,
- 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x69, 0x73, 0x4d, 0x71, 0x74, 0x74, 0x43, 0x6f,
- 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x69, 0x73, 0x5f, 0x73, 0x79,
- 0x73, 0x6c, 0x6f, 0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x04,
- 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x69, 0x73, 0x53, 0x79, 0x73, 0x6c, 0x6f, 0x67, 0x43, 0x6f,
- 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x22, 0x64, 0x0a, 0x19, 0x42, 0x6c, 0x75, 0x65, 0x74,
- 0x6f, 0x6f, 0x74, 0x68, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74,
- 0x61, 0x74, 0x75, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x0d, 0x52, 0x03, 0x70, 0x69, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x73, 0x73, 0x69, 0x18, 0x02,
- 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x72, 0x73, 0x73, 0x69, 0x12, 0x21, 0x0a, 0x0c, 0x69, 0x73,
- 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08,
- 0x52, 0x0b, 0x69, 0x73, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x22, 0x4f, 0x0a,
- 0x16, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f,
- 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x61, 0x75, 0x64, 0x18,
- 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x62, 0x61, 0x75, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x69,
- 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
- 0x08, 0x52, 0x0b, 0x69, 0x73, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x65, 0x64, 0x42, 0x65,
- 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x65, 0x65, 0x6b, 0x73, 0x76, 0x69, 0x6c, 0x6c, 0x65,
- 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x42, 0x10, 0x43, 0x6f, 0x6e, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75,
- 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x5a, 0x22, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e,
- 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x67,
- 0x6f, 0x2f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0xaa, 0x02, 0x14, 0x4d, 0x65,
- 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
- 0x66, 0x73, 0xba, 0x02, 0x00, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
-}
+const file_meshtastic_connection_status_proto_rawDesc = "" +
+ "\n" +
+ "\"meshtastic/connection_status.proto\x12\n" +
+ "meshtastic\"\xd4\x02\n" +
+ "\x16DeviceConnectionStatus\x129\n" +
+ "\x04wifi\x18\x01 \x01(\v2 .meshtastic.WifiConnectionStatusH\x00R\x04wifi\x88\x01\x01\x12E\n" +
+ "\bethernet\x18\x02 \x01(\v2$.meshtastic.EthernetConnectionStatusH\x01R\bethernet\x88\x01\x01\x12H\n" +
+ "\tbluetooth\x18\x03 \x01(\v2%.meshtastic.BluetoothConnectionStatusH\x02R\tbluetooth\x88\x01\x01\x12?\n" +
+ "\x06serial\x18\x04 \x01(\v2\".meshtastic.SerialConnectionStatusH\x03R\x06serial\x88\x01\x01B\a\n" +
+ "\x05_wifiB\v\n" +
+ "\t_ethernetB\f\n" +
+ "\n" +
+ "_bluetoothB\t\n" +
+ "\a_serial\"{\n" +
+ "\x14WifiConnectionStatus\x12;\n" +
+ "\x06status\x18\x01 \x01(\v2#.meshtastic.NetworkConnectionStatusR\x06status\x12\x12\n" +
+ "\x04ssid\x18\x02 \x01(\tR\x04ssid\x12\x12\n" +
+ "\x04rssi\x18\x03 \x01(\x05R\x04rssi\"W\n" +
+ "\x18EthernetConnectionStatus\x12;\n" +
+ "\x06status\x18\x01 \x01(\v2#.meshtastic.NetworkConnectionStatusR\x06status\"\xb7\x01\n" +
+ "\x17NetworkConnectionStatus\x12\x1d\n" +
+ "\n" +
+ "ip_address\x18\x01 \x01(\aR\tipAddress\x12!\n" +
+ "\fis_connected\x18\x02 \x01(\bR\visConnected\x12*\n" +
+ "\x11is_mqtt_connected\x18\x03 \x01(\bR\x0fisMqttConnected\x12.\n" +
+ "\x13is_syslog_connected\x18\x04 \x01(\bR\x11isSyslogConnected\"d\n" +
+ "\x19BluetoothConnectionStatus\x12\x10\n" +
+ "\x03pin\x18\x01 \x01(\rR\x03pin\x12\x12\n" +
+ "\x04rssi\x18\x02 \x01(\x05R\x04rssi\x12!\n" +
+ "\fis_connected\x18\x03 \x01(\bR\visConnected\"O\n" +
+ "\x16SerialConnectionStatus\x12\x12\n" +
+ "\x04baud\x18\x01 \x01(\rR\x04baud\x12!\n" +
+ "\fis_connected\x18\x02 \x01(\bR\visConnectedBe\n" +
+ "\x13com.geeksville.meshB\x10ConnStatusProtosZ\"github.com/meshtastic/go/generated\xaa\x02\x14Meshtastic.Protobufs\xba\x02\x00b\x06proto3"
var (
file_meshtastic_connection_status_proto_rawDescOnce sync.Once
- file_meshtastic_connection_status_proto_rawDescData = file_meshtastic_connection_status_proto_rawDesc
+ file_meshtastic_connection_status_proto_rawDescData []byte
)
func file_meshtastic_connection_status_proto_rawDescGZIP() []byte {
file_meshtastic_connection_status_proto_rawDescOnce.Do(func() {
- file_meshtastic_connection_status_proto_rawDescData = protoimpl.X.CompressGZIP(file_meshtastic_connection_status_proto_rawDescData)
+ file_meshtastic_connection_status_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_meshtastic_connection_status_proto_rawDesc), len(file_meshtastic_connection_status_proto_rawDesc)))
})
return file_meshtastic_connection_status_proto_rawDescData
}
var file_meshtastic_connection_status_proto_msgTypes = make([]protoimpl.MessageInfo, 6)
-var file_meshtastic_connection_status_proto_goTypes = []interface{}{
+var file_meshtastic_connection_status_proto_goTypes = []any{
(*DeviceConnectionStatus)(nil), // 0: meshtastic.DeviceConnectionStatus
(*WifiConnectionStatus)(nil), // 1: meshtastic.WifiConnectionStatus
(*EthernetConnectionStatus)(nil), // 2: meshtastic.EthernetConnectionStatus
@@ -525,86 +472,12 @@ func file_meshtastic_connection_status_proto_init() {
if File_meshtastic_connection_status_proto != nil {
return
}
- if !protoimpl.UnsafeEnabled {
- file_meshtastic_connection_status_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DeviceConnectionStatus); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_connection_status_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*WifiConnectionStatus); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_connection_status_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*EthernetConnectionStatus); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_connection_status_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*NetworkConnectionStatus); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_connection_status_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*BluetoothConnectionStatus); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_connection_status_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*SerialConnectionStatus); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- }
- file_meshtastic_connection_status_proto_msgTypes[0].OneofWrappers = []interface{}{}
+ file_meshtastic_connection_status_proto_msgTypes[0].OneofWrappers = []any{}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
- RawDescriptor: file_meshtastic_connection_status_proto_rawDesc,
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_meshtastic_connection_status_proto_rawDesc), len(file_meshtastic_connection_status_proto_rawDesc)),
NumEnums: 0,
NumMessages: 6,
NumExtensions: 0,
@@ -615,7 +488,6 @@ func file_meshtastic_connection_status_proto_init() {
MessageInfos: file_meshtastic_connection_status_proto_msgTypes,
}.Build()
File_meshtastic_connection_status_proto = out.File
- file_meshtastic_connection_status_proto_rawDesc = nil
file_meshtastic_connection_status_proto_goTypes = nil
file_meshtastic_connection_status_proto_depIdxs = nil
}
diff --git a/meshtastic/device_ui.pb.go b/meshtastic/device_ui.pb.go
new file mode 100644
index 0000000..bd40715
--- /dev/null
+++ b/meshtastic/device_ui.pb.go
@@ -0,0 +1,809 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.36.6
+// protoc v3.21.12
+// source: meshtastic/device_ui.proto
+
+package generated
+
+import (
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ reflect "reflect"
+ sync "sync"
+ unsafe "unsafe"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+type Theme int32
+
+const (
+ // Dark
+ Theme_DARK Theme = 0
+ // Light
+ Theme_LIGHT Theme = 1
+ // Red
+ Theme_RED Theme = 2
+)
+
+// Enum value maps for Theme.
+var (
+ Theme_name = map[int32]string{
+ 0: "DARK",
+ 1: "LIGHT",
+ 2: "RED",
+ }
+ Theme_value = map[string]int32{
+ "DARK": 0,
+ "LIGHT": 1,
+ "RED": 2,
+ }
+)
+
+func (x Theme) Enum() *Theme {
+ p := new(Theme)
+ *p = x
+ return p
+}
+
+func (x Theme) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Theme) Descriptor() protoreflect.EnumDescriptor {
+ return file_meshtastic_device_ui_proto_enumTypes[0].Descriptor()
+}
+
+func (Theme) Type() protoreflect.EnumType {
+ return &file_meshtastic_device_ui_proto_enumTypes[0]
+}
+
+func (x Theme) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Theme.Descriptor instead.
+func (Theme) EnumDescriptor() ([]byte, []int) {
+ return file_meshtastic_device_ui_proto_rawDescGZIP(), []int{0}
+}
+
+// Localization
+type Language int32
+
+const (
+ // English
+ Language_ENGLISH Language = 0
+ // French
+ Language_FRENCH Language = 1
+ // German
+ Language_GERMAN Language = 2
+ // Italian
+ Language_ITALIAN Language = 3
+ // Portuguese
+ Language_PORTUGUESE Language = 4
+ // Spanish
+ Language_SPANISH Language = 5
+ // Swedish
+ Language_SWEDISH Language = 6
+ // Finnish
+ Language_FINNISH Language = 7
+ // Polish
+ Language_POLISH Language = 8
+ // Turkish
+ Language_TURKISH Language = 9
+ // Serbian
+ Language_SERBIAN Language = 10
+ // Russian
+ Language_RUSSIAN Language = 11
+ // Dutch
+ Language_DUTCH Language = 12
+ // Greek
+ Language_GREEK Language = 13
+ // Norwegian
+ Language_NORWEGIAN Language = 14
+ // Slovenian
+ Language_SLOVENIAN Language = 15
+ // Ukrainian
+ Language_UKRAINIAN Language = 16
+ // Simplified Chinese (experimental)
+ Language_SIMPLIFIED_CHINESE Language = 30
+ // Traditional Chinese (experimental)
+ Language_TRADITIONAL_CHINESE Language = 31
+)
+
+// Enum value maps for Language.
+var (
+ Language_name = map[int32]string{
+ 0: "ENGLISH",
+ 1: "FRENCH",
+ 2: "GERMAN",
+ 3: "ITALIAN",
+ 4: "PORTUGUESE",
+ 5: "SPANISH",
+ 6: "SWEDISH",
+ 7: "FINNISH",
+ 8: "POLISH",
+ 9: "TURKISH",
+ 10: "SERBIAN",
+ 11: "RUSSIAN",
+ 12: "DUTCH",
+ 13: "GREEK",
+ 14: "NORWEGIAN",
+ 15: "SLOVENIAN",
+ 16: "UKRAINIAN",
+ 30: "SIMPLIFIED_CHINESE",
+ 31: "TRADITIONAL_CHINESE",
+ }
+ Language_value = map[string]int32{
+ "ENGLISH": 0,
+ "FRENCH": 1,
+ "GERMAN": 2,
+ "ITALIAN": 3,
+ "PORTUGUESE": 4,
+ "SPANISH": 5,
+ "SWEDISH": 6,
+ "FINNISH": 7,
+ "POLISH": 8,
+ "TURKISH": 9,
+ "SERBIAN": 10,
+ "RUSSIAN": 11,
+ "DUTCH": 12,
+ "GREEK": 13,
+ "NORWEGIAN": 14,
+ "SLOVENIAN": 15,
+ "UKRAINIAN": 16,
+ "SIMPLIFIED_CHINESE": 30,
+ "TRADITIONAL_CHINESE": 31,
+ }
+)
+
+func (x Language) Enum() *Language {
+ p := new(Language)
+ *p = x
+ return p
+}
+
+func (x Language) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Language) Descriptor() protoreflect.EnumDescriptor {
+ return file_meshtastic_device_ui_proto_enumTypes[1].Descriptor()
+}
+
+func (Language) Type() protoreflect.EnumType {
+ return &file_meshtastic_device_ui_proto_enumTypes[1]
+}
+
+func (x Language) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Language.Descriptor instead.
+func (Language) EnumDescriptor() ([]byte, []int) {
+ return file_meshtastic_device_ui_proto_rawDescGZIP(), []int{1}
+}
+
+type DeviceUIConfig struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // A version integer used to invalidate saved files when we make incompatible changes.
+ Version uint32 `protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty"`
+ // TFT display brightness 1..255
+ ScreenBrightness uint32 `protobuf:"varint,2,opt,name=screen_brightness,json=screenBrightness,proto3" json:"screen_brightness,omitempty"`
+ // Screen timeout 0..900
+ ScreenTimeout uint32 `protobuf:"varint,3,opt,name=screen_timeout,json=screenTimeout,proto3" json:"screen_timeout,omitempty"`
+ // Screen/Settings lock enabled
+ ScreenLock bool `protobuf:"varint,4,opt,name=screen_lock,json=screenLock,proto3" json:"screen_lock,omitempty"`
+ SettingsLock bool `protobuf:"varint,5,opt,name=settings_lock,json=settingsLock,proto3" json:"settings_lock,omitempty"`
+ PinCode uint32 `protobuf:"varint,6,opt,name=pin_code,json=pinCode,proto3" json:"pin_code,omitempty"`
+ // Color theme
+ Theme Theme `protobuf:"varint,7,opt,name=theme,proto3,enum=meshtastic.Theme" json:"theme,omitempty"`
+ // Audible message, banner and ring tone
+ AlertEnabled bool `protobuf:"varint,8,opt,name=alert_enabled,json=alertEnabled,proto3" json:"alert_enabled,omitempty"`
+ BannerEnabled bool `protobuf:"varint,9,opt,name=banner_enabled,json=bannerEnabled,proto3" json:"banner_enabled,omitempty"`
+ RingToneId uint32 `protobuf:"varint,10,opt,name=ring_tone_id,json=ringToneId,proto3" json:"ring_tone_id,omitempty"`
+ // Localization
+ Language Language `protobuf:"varint,11,opt,name=language,proto3,enum=meshtastic.Language" json:"language,omitempty"`
+ // Node list filter
+ NodeFilter *NodeFilter `protobuf:"bytes,12,opt,name=node_filter,json=nodeFilter,proto3" json:"node_filter,omitempty"`
+ // Node list highlightening
+ NodeHighlight *NodeHighlight `protobuf:"bytes,13,opt,name=node_highlight,json=nodeHighlight,proto3" json:"node_highlight,omitempty"`
+ // 8 integers for screen calibration data
+ CalibrationData []byte `protobuf:"bytes,14,opt,name=calibration_data,json=calibrationData,proto3" json:"calibration_data,omitempty"`
+ // Map related data
+ MapData *Map `protobuf:"bytes,15,opt,name=map_data,json=mapData,proto3" json:"map_data,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *DeviceUIConfig) Reset() {
+ *x = DeviceUIConfig{}
+ mi := &file_meshtastic_device_ui_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *DeviceUIConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeviceUIConfig) ProtoMessage() {}
+
+func (x *DeviceUIConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_device_ui_proto_msgTypes[0]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeviceUIConfig.ProtoReflect.Descriptor instead.
+func (*DeviceUIConfig) Descriptor() ([]byte, []int) {
+ return file_meshtastic_device_ui_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *DeviceUIConfig) GetVersion() uint32 {
+ if x != nil {
+ return x.Version
+ }
+ return 0
+}
+
+func (x *DeviceUIConfig) GetScreenBrightness() uint32 {
+ if x != nil {
+ return x.ScreenBrightness
+ }
+ return 0
+}
+
+func (x *DeviceUIConfig) GetScreenTimeout() uint32 {
+ if x != nil {
+ return x.ScreenTimeout
+ }
+ return 0
+}
+
+func (x *DeviceUIConfig) GetScreenLock() bool {
+ if x != nil {
+ return x.ScreenLock
+ }
+ return false
+}
+
+func (x *DeviceUIConfig) GetSettingsLock() bool {
+ if x != nil {
+ return x.SettingsLock
+ }
+ return false
+}
+
+func (x *DeviceUIConfig) GetPinCode() uint32 {
+ if x != nil {
+ return x.PinCode
+ }
+ return 0
+}
+
+func (x *DeviceUIConfig) GetTheme() Theme {
+ if x != nil {
+ return x.Theme
+ }
+ return Theme_DARK
+}
+
+func (x *DeviceUIConfig) GetAlertEnabled() bool {
+ if x != nil {
+ return x.AlertEnabled
+ }
+ return false
+}
+
+func (x *DeviceUIConfig) GetBannerEnabled() bool {
+ if x != nil {
+ return x.BannerEnabled
+ }
+ return false
+}
+
+func (x *DeviceUIConfig) GetRingToneId() uint32 {
+ if x != nil {
+ return x.RingToneId
+ }
+ return 0
+}
+
+func (x *DeviceUIConfig) GetLanguage() Language {
+ if x != nil {
+ return x.Language
+ }
+ return Language_ENGLISH
+}
+
+func (x *DeviceUIConfig) GetNodeFilter() *NodeFilter {
+ if x != nil {
+ return x.NodeFilter
+ }
+ return nil
+}
+
+func (x *DeviceUIConfig) GetNodeHighlight() *NodeHighlight {
+ if x != nil {
+ return x.NodeHighlight
+ }
+ return nil
+}
+
+func (x *DeviceUIConfig) GetCalibrationData() []byte {
+ if x != nil {
+ return x.CalibrationData
+ }
+ return nil
+}
+
+func (x *DeviceUIConfig) GetMapData() *Map {
+ if x != nil {
+ return x.MapData
+ }
+ return nil
+}
+
+type NodeFilter struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // Filter unknown nodes
+ UnknownSwitch bool `protobuf:"varint,1,opt,name=unknown_switch,json=unknownSwitch,proto3" json:"unknown_switch,omitempty"`
+ // Filter offline nodes
+ OfflineSwitch bool `protobuf:"varint,2,opt,name=offline_switch,json=offlineSwitch,proto3" json:"offline_switch,omitempty"`
+ // Filter nodes w/o public key
+ PublicKeySwitch bool `protobuf:"varint,3,opt,name=public_key_switch,json=publicKeySwitch,proto3" json:"public_key_switch,omitempty"`
+ // Filter based on hops away
+ HopsAway int32 `protobuf:"varint,4,opt,name=hops_away,json=hopsAway,proto3" json:"hops_away,omitempty"`
+ // Filter nodes w/o position
+ PositionSwitch bool `protobuf:"varint,5,opt,name=position_switch,json=positionSwitch,proto3" json:"position_switch,omitempty"`
+ // Filter nodes by matching name string
+ NodeName string `protobuf:"bytes,6,opt,name=node_name,json=nodeName,proto3" json:"node_name,omitempty"`
+ // Filter based on channel
+ Channel int32 `protobuf:"varint,7,opt,name=channel,proto3" json:"channel,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *NodeFilter) Reset() {
+ *x = NodeFilter{}
+ mi := &file_meshtastic_device_ui_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *NodeFilter) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*NodeFilter) ProtoMessage() {}
+
+func (x *NodeFilter) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_device_ui_proto_msgTypes[1]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use NodeFilter.ProtoReflect.Descriptor instead.
+func (*NodeFilter) Descriptor() ([]byte, []int) {
+ return file_meshtastic_device_ui_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *NodeFilter) GetUnknownSwitch() bool {
+ if x != nil {
+ return x.UnknownSwitch
+ }
+ return false
+}
+
+func (x *NodeFilter) GetOfflineSwitch() bool {
+ if x != nil {
+ return x.OfflineSwitch
+ }
+ return false
+}
+
+func (x *NodeFilter) GetPublicKeySwitch() bool {
+ if x != nil {
+ return x.PublicKeySwitch
+ }
+ return false
+}
+
+func (x *NodeFilter) GetHopsAway() int32 {
+ if x != nil {
+ return x.HopsAway
+ }
+ return 0
+}
+
+func (x *NodeFilter) GetPositionSwitch() bool {
+ if x != nil {
+ return x.PositionSwitch
+ }
+ return false
+}
+
+func (x *NodeFilter) GetNodeName() string {
+ if x != nil {
+ return x.NodeName
+ }
+ return ""
+}
+
+func (x *NodeFilter) GetChannel() int32 {
+ if x != nil {
+ return x.Channel
+ }
+ return 0
+}
+
+type NodeHighlight struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // Hightlight nodes w/ active chat
+ ChatSwitch bool `protobuf:"varint,1,opt,name=chat_switch,json=chatSwitch,proto3" json:"chat_switch,omitempty"`
+ // Highlight nodes w/ position
+ PositionSwitch bool `protobuf:"varint,2,opt,name=position_switch,json=positionSwitch,proto3" json:"position_switch,omitempty"`
+ // Highlight nodes w/ telemetry data
+ TelemetrySwitch bool `protobuf:"varint,3,opt,name=telemetry_switch,json=telemetrySwitch,proto3" json:"telemetry_switch,omitempty"`
+ // Highlight nodes w/ iaq data
+ IaqSwitch bool `protobuf:"varint,4,opt,name=iaq_switch,json=iaqSwitch,proto3" json:"iaq_switch,omitempty"`
+ // Highlight nodes by matching name string
+ NodeName string `protobuf:"bytes,5,opt,name=node_name,json=nodeName,proto3" json:"node_name,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *NodeHighlight) Reset() {
+ *x = NodeHighlight{}
+ mi := &file_meshtastic_device_ui_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *NodeHighlight) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*NodeHighlight) ProtoMessage() {}
+
+func (x *NodeHighlight) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_device_ui_proto_msgTypes[2]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use NodeHighlight.ProtoReflect.Descriptor instead.
+func (*NodeHighlight) Descriptor() ([]byte, []int) {
+ return file_meshtastic_device_ui_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *NodeHighlight) GetChatSwitch() bool {
+ if x != nil {
+ return x.ChatSwitch
+ }
+ return false
+}
+
+func (x *NodeHighlight) GetPositionSwitch() bool {
+ if x != nil {
+ return x.PositionSwitch
+ }
+ return false
+}
+
+func (x *NodeHighlight) GetTelemetrySwitch() bool {
+ if x != nil {
+ return x.TelemetrySwitch
+ }
+ return false
+}
+
+func (x *NodeHighlight) GetIaqSwitch() bool {
+ if x != nil {
+ return x.IaqSwitch
+ }
+ return false
+}
+
+func (x *NodeHighlight) GetNodeName() string {
+ if x != nil {
+ return x.NodeName
+ }
+ return ""
+}
+
+type GeoPoint struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // Zoom level
+ Zoom int32 `protobuf:"varint,1,opt,name=zoom,proto3" json:"zoom,omitempty"`
+ // Coordinate: latitude
+ Latitude int32 `protobuf:"varint,2,opt,name=latitude,proto3" json:"latitude,omitempty"`
+ // Coordinate: longitude
+ Longitude int32 `protobuf:"varint,3,opt,name=longitude,proto3" json:"longitude,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *GeoPoint) Reset() {
+ *x = GeoPoint{}
+ mi := &file_meshtastic_device_ui_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *GeoPoint) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GeoPoint) ProtoMessage() {}
+
+func (x *GeoPoint) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_device_ui_proto_msgTypes[3]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GeoPoint.ProtoReflect.Descriptor instead.
+func (*GeoPoint) Descriptor() ([]byte, []int) {
+ return file_meshtastic_device_ui_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *GeoPoint) GetZoom() int32 {
+ if x != nil {
+ return x.Zoom
+ }
+ return 0
+}
+
+func (x *GeoPoint) GetLatitude() int32 {
+ if x != nil {
+ return x.Latitude
+ }
+ return 0
+}
+
+func (x *GeoPoint) GetLongitude() int32 {
+ if x != nil {
+ return x.Longitude
+ }
+ return 0
+}
+
+type Map struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // Home coordinates
+ Home *GeoPoint `protobuf:"bytes,1,opt,name=home,proto3" json:"home,omitempty"`
+ // Map tile style
+ Style string `protobuf:"bytes,2,opt,name=style,proto3" json:"style,omitempty"`
+ // Map scroll follows GPS
+ FollowGps bool `protobuf:"varint,3,opt,name=follow_gps,json=followGps,proto3" json:"follow_gps,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *Map) Reset() {
+ *x = Map{}
+ mi := &file_meshtastic_device_ui_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *Map) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Map) ProtoMessage() {}
+
+func (x *Map) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_device_ui_proto_msgTypes[4]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Map.ProtoReflect.Descriptor instead.
+func (*Map) Descriptor() ([]byte, []int) {
+ return file_meshtastic_device_ui_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *Map) GetHome() *GeoPoint {
+ if x != nil {
+ return x.Home
+ }
+ return nil
+}
+
+func (x *Map) GetStyle() string {
+ if x != nil {
+ return x.Style
+ }
+ return ""
+}
+
+func (x *Map) GetFollowGps() bool {
+ if x != nil {
+ return x.FollowGps
+ }
+ return false
+}
+
+var File_meshtastic_device_ui_proto protoreflect.FileDescriptor
+
+const file_meshtastic_device_ui_proto_rawDesc = "" +
+ "\n" +
+ "\x1ameshtastic/device_ui.proto\x12\n" +
+ "meshtastic\"\xfa\x04\n" +
+ "\x0eDeviceUIConfig\x12\x18\n" +
+ "\aversion\x18\x01 \x01(\rR\aversion\x12+\n" +
+ "\x11screen_brightness\x18\x02 \x01(\rR\x10screenBrightness\x12%\n" +
+ "\x0escreen_timeout\x18\x03 \x01(\rR\rscreenTimeout\x12\x1f\n" +
+ "\vscreen_lock\x18\x04 \x01(\bR\n" +
+ "screenLock\x12#\n" +
+ "\rsettings_lock\x18\x05 \x01(\bR\fsettingsLock\x12\x19\n" +
+ "\bpin_code\x18\x06 \x01(\rR\apinCode\x12'\n" +
+ "\x05theme\x18\a \x01(\x0e2\x11.meshtastic.ThemeR\x05theme\x12#\n" +
+ "\ralert_enabled\x18\b \x01(\bR\falertEnabled\x12%\n" +
+ "\x0ebanner_enabled\x18\t \x01(\bR\rbannerEnabled\x12 \n" +
+ "\fring_tone_id\x18\n" +
+ " \x01(\rR\n" +
+ "ringToneId\x120\n" +
+ "\blanguage\x18\v \x01(\x0e2\x14.meshtastic.LanguageR\blanguage\x127\n" +
+ "\vnode_filter\x18\f \x01(\v2\x16.meshtastic.NodeFilterR\n" +
+ "nodeFilter\x12@\n" +
+ "\x0enode_highlight\x18\r \x01(\v2\x19.meshtastic.NodeHighlightR\rnodeHighlight\x12)\n" +
+ "\x10calibration_data\x18\x0e \x01(\fR\x0fcalibrationData\x12*\n" +
+ "\bmap_data\x18\x0f \x01(\v2\x0f.meshtastic.MapR\amapData\"\x83\x02\n" +
+ "\n" +
+ "NodeFilter\x12%\n" +
+ "\x0eunknown_switch\x18\x01 \x01(\bR\runknownSwitch\x12%\n" +
+ "\x0eoffline_switch\x18\x02 \x01(\bR\rofflineSwitch\x12*\n" +
+ "\x11public_key_switch\x18\x03 \x01(\bR\x0fpublicKeySwitch\x12\x1b\n" +
+ "\thops_away\x18\x04 \x01(\x05R\bhopsAway\x12'\n" +
+ "\x0fposition_switch\x18\x05 \x01(\bR\x0epositionSwitch\x12\x1b\n" +
+ "\tnode_name\x18\x06 \x01(\tR\bnodeName\x12\x18\n" +
+ "\achannel\x18\a \x01(\x05R\achannel\"\xc0\x01\n" +
+ "\rNodeHighlight\x12\x1f\n" +
+ "\vchat_switch\x18\x01 \x01(\bR\n" +
+ "chatSwitch\x12'\n" +
+ "\x0fposition_switch\x18\x02 \x01(\bR\x0epositionSwitch\x12)\n" +
+ "\x10telemetry_switch\x18\x03 \x01(\bR\x0ftelemetrySwitch\x12\x1d\n" +
+ "\n" +
+ "iaq_switch\x18\x04 \x01(\bR\tiaqSwitch\x12\x1b\n" +
+ "\tnode_name\x18\x05 \x01(\tR\bnodeName\"X\n" +
+ "\bGeoPoint\x12\x12\n" +
+ "\x04zoom\x18\x01 \x01(\x05R\x04zoom\x12\x1a\n" +
+ "\blatitude\x18\x02 \x01(\x05R\blatitude\x12\x1c\n" +
+ "\tlongitude\x18\x03 \x01(\x05R\tlongitude\"d\n" +
+ "\x03Map\x12(\n" +
+ "\x04home\x18\x01 \x01(\v2\x14.meshtastic.GeoPointR\x04home\x12\x14\n" +
+ "\x05style\x18\x02 \x01(\tR\x05style\x12\x1d\n" +
+ "\n" +
+ "follow_gps\x18\x03 \x01(\bR\tfollowGps*%\n" +
+ "\x05Theme\x12\b\n" +
+ "\x04DARK\x10\x00\x12\t\n" +
+ "\x05LIGHT\x10\x01\x12\a\n" +
+ "\x03RED\x10\x02*\x9a\x02\n" +
+ "\bLanguage\x12\v\n" +
+ "\aENGLISH\x10\x00\x12\n" +
+ "\n" +
+ "\x06FRENCH\x10\x01\x12\n" +
+ "\n" +
+ "\x06GERMAN\x10\x02\x12\v\n" +
+ "\aITALIAN\x10\x03\x12\x0e\n" +
+ "\n" +
+ "PORTUGUESE\x10\x04\x12\v\n" +
+ "\aSPANISH\x10\x05\x12\v\n" +
+ "\aSWEDISH\x10\x06\x12\v\n" +
+ "\aFINNISH\x10\a\x12\n" +
+ "\n" +
+ "\x06POLISH\x10\b\x12\v\n" +
+ "\aTURKISH\x10\t\x12\v\n" +
+ "\aSERBIAN\x10\n" +
+ "\x12\v\n" +
+ "\aRUSSIAN\x10\v\x12\t\n" +
+ "\x05DUTCH\x10\f\x12\t\n" +
+ "\x05GREEK\x10\r\x12\r\n" +
+ "\tNORWEGIAN\x10\x0e\x12\r\n" +
+ "\tSLOVENIAN\x10\x0f\x12\r\n" +
+ "\tUKRAINIAN\x10\x10\x12\x16\n" +
+ "\x12SIMPLIFIED_CHINESE\x10\x1e\x12\x17\n" +
+ "\x13TRADITIONAL_CHINESE\x10\x1fBc\n" +
+ "\x13com.geeksville.meshB\x0eDeviceUIProtosZ\"github.com/meshtastic/go/generated\xaa\x02\x14Meshtastic.Protobufs\xba\x02\x00b\x06proto3"
+
+var (
+ file_meshtastic_device_ui_proto_rawDescOnce sync.Once
+ file_meshtastic_device_ui_proto_rawDescData []byte
+)
+
+func file_meshtastic_device_ui_proto_rawDescGZIP() []byte {
+ file_meshtastic_device_ui_proto_rawDescOnce.Do(func() {
+ file_meshtastic_device_ui_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_meshtastic_device_ui_proto_rawDesc), len(file_meshtastic_device_ui_proto_rawDesc)))
+ })
+ return file_meshtastic_device_ui_proto_rawDescData
+}
+
+var file_meshtastic_device_ui_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
+var file_meshtastic_device_ui_proto_msgTypes = make([]protoimpl.MessageInfo, 5)
+var file_meshtastic_device_ui_proto_goTypes = []any{
+ (Theme)(0), // 0: meshtastic.Theme
+ (Language)(0), // 1: meshtastic.Language
+ (*DeviceUIConfig)(nil), // 2: meshtastic.DeviceUIConfig
+ (*NodeFilter)(nil), // 3: meshtastic.NodeFilter
+ (*NodeHighlight)(nil), // 4: meshtastic.NodeHighlight
+ (*GeoPoint)(nil), // 5: meshtastic.GeoPoint
+ (*Map)(nil), // 6: meshtastic.Map
+}
+var file_meshtastic_device_ui_proto_depIdxs = []int32{
+ 0, // 0: meshtastic.DeviceUIConfig.theme:type_name -> meshtastic.Theme
+ 1, // 1: meshtastic.DeviceUIConfig.language:type_name -> meshtastic.Language
+ 3, // 2: meshtastic.DeviceUIConfig.node_filter:type_name -> meshtastic.NodeFilter
+ 4, // 3: meshtastic.DeviceUIConfig.node_highlight:type_name -> meshtastic.NodeHighlight
+ 6, // 4: meshtastic.DeviceUIConfig.map_data:type_name -> meshtastic.Map
+ 5, // 5: meshtastic.Map.home:type_name -> meshtastic.GeoPoint
+ 6, // [6:6] is the sub-list for method output_type
+ 6, // [6:6] is the sub-list for method input_type
+ 6, // [6:6] is the sub-list for extension type_name
+ 6, // [6:6] is the sub-list for extension extendee
+ 0, // [0:6] is the sub-list for field type_name
+}
+
+func init() { file_meshtastic_device_ui_proto_init() }
+func file_meshtastic_device_ui_proto_init() {
+ if File_meshtastic_device_ui_proto != nil {
+ return
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_meshtastic_device_ui_proto_rawDesc), len(file_meshtastic_device_ui_proto_rawDesc)),
+ NumEnums: 2,
+ NumMessages: 5,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_meshtastic_device_ui_proto_goTypes,
+ DependencyIndexes: file_meshtastic_device_ui_proto_depIdxs,
+ EnumInfos: file_meshtastic_device_ui_proto_enumTypes,
+ MessageInfos: file_meshtastic_device_ui_proto_msgTypes,
+ }.Build()
+ File_meshtastic_device_ui_proto = out.File
+ file_meshtastic_device_ui_proto_goTypes = nil
+ file_meshtastic_device_ui_proto_depIdxs = nil
+}
diff --git a/meshtastic/device_ui_vtproto.pb.go b/meshtastic/device_ui_vtproto.pb.go
new file mode 100644
index 0000000..a997d14
--- /dev/null
+++ b/meshtastic/device_ui_vtproto.pb.go
@@ -0,0 +1,1617 @@
+// Code generated by protoc-gen-go-vtproto. DO NOT EDIT.
+// protoc-gen-go-vtproto version: v0.6.0
+// source: meshtastic/device_ui.proto
+
+package generated
+
+import (
+ fmt "fmt"
+ protohelpers "github.com/planetscale/vtprotobuf/protohelpers"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ io "io"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+func (m *DeviceUIConfig) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *DeviceUIConfig) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *DeviceUIConfig) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if m.MapData != nil {
+ size, err := m.MapData.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x7a
+ }
+ if len(m.CalibrationData) > 0 {
+ i -= len(m.CalibrationData)
+ copy(dAtA[i:], m.CalibrationData)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.CalibrationData)))
+ i--
+ dAtA[i] = 0x72
+ }
+ if m.NodeHighlight != nil {
+ size, err := m.NodeHighlight.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x6a
+ }
+ if m.NodeFilter != nil {
+ size, err := m.NodeFilter.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x62
+ }
+ if m.Language != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Language))
+ i--
+ dAtA[i] = 0x58
+ }
+ if m.RingToneId != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.RingToneId))
+ i--
+ dAtA[i] = 0x50
+ }
+ if m.BannerEnabled {
+ i--
+ if m.BannerEnabled {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x48
+ }
+ if m.AlertEnabled {
+ i--
+ if m.AlertEnabled {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x40
+ }
+ if m.Theme != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Theme))
+ i--
+ dAtA[i] = 0x38
+ }
+ if m.PinCode != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.PinCode))
+ i--
+ dAtA[i] = 0x30
+ }
+ if m.SettingsLock {
+ i--
+ if m.SettingsLock {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x28
+ }
+ if m.ScreenLock {
+ i--
+ if m.ScreenLock {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x20
+ }
+ if m.ScreenTimeout != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.ScreenTimeout))
+ i--
+ dAtA[i] = 0x18
+ }
+ if m.ScreenBrightness != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.ScreenBrightness))
+ i--
+ dAtA[i] = 0x10
+ }
+ if m.Version != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Version))
+ i--
+ dAtA[i] = 0x8
+ }
+ return len(dAtA) - i, nil
+}
+
+func (m *NodeFilter) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *NodeFilter) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *NodeFilter) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if m.Channel != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Channel))
+ i--
+ dAtA[i] = 0x38
+ }
+ if len(m.NodeName) > 0 {
+ i -= len(m.NodeName)
+ copy(dAtA[i:], m.NodeName)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.NodeName)))
+ i--
+ dAtA[i] = 0x32
+ }
+ if m.PositionSwitch {
+ i--
+ if m.PositionSwitch {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x28
+ }
+ if m.HopsAway != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.HopsAway))
+ i--
+ dAtA[i] = 0x20
+ }
+ if m.PublicKeySwitch {
+ i--
+ if m.PublicKeySwitch {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x18
+ }
+ if m.OfflineSwitch {
+ i--
+ if m.OfflineSwitch {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x10
+ }
+ if m.UnknownSwitch {
+ i--
+ if m.UnknownSwitch {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x8
+ }
+ return len(dAtA) - i, nil
+}
+
+func (m *NodeHighlight) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *NodeHighlight) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *NodeHighlight) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if len(m.NodeName) > 0 {
+ i -= len(m.NodeName)
+ copy(dAtA[i:], m.NodeName)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.NodeName)))
+ i--
+ dAtA[i] = 0x2a
+ }
+ if m.IaqSwitch {
+ i--
+ if m.IaqSwitch {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x20
+ }
+ if m.TelemetrySwitch {
+ i--
+ if m.TelemetrySwitch {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x18
+ }
+ if m.PositionSwitch {
+ i--
+ if m.PositionSwitch {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x10
+ }
+ if m.ChatSwitch {
+ i--
+ if m.ChatSwitch {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x8
+ }
+ return len(dAtA) - i, nil
+}
+
+func (m *GeoPoint) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *GeoPoint) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *GeoPoint) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if m.Longitude != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Longitude))
+ i--
+ dAtA[i] = 0x18
+ }
+ if m.Latitude != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Latitude))
+ i--
+ dAtA[i] = 0x10
+ }
+ if m.Zoom != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Zoom))
+ i--
+ dAtA[i] = 0x8
+ }
+ return len(dAtA) - i, nil
+}
+
+func (m *Map) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *Map) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *Map) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if m.FollowGps {
+ i--
+ if m.FollowGps {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x18
+ }
+ if len(m.Style) > 0 {
+ i -= len(m.Style)
+ copy(dAtA[i:], m.Style)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.Style)))
+ i--
+ dAtA[i] = 0x12
+ }
+ if m.Home != nil {
+ size, err := m.Home.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0xa
+ }
+ return len(dAtA) - i, nil
+}
+
+func (m *DeviceUIConfig) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.Version != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Version))
+ }
+ if m.ScreenBrightness != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.ScreenBrightness))
+ }
+ if m.ScreenTimeout != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.ScreenTimeout))
+ }
+ if m.ScreenLock {
+ n += 2
+ }
+ if m.SettingsLock {
+ n += 2
+ }
+ if m.PinCode != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.PinCode))
+ }
+ if m.Theme != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Theme))
+ }
+ if m.AlertEnabled {
+ n += 2
+ }
+ if m.BannerEnabled {
+ n += 2
+ }
+ if m.RingToneId != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.RingToneId))
+ }
+ if m.Language != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Language))
+ }
+ if m.NodeFilter != nil {
+ l = m.NodeFilter.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ if m.NodeHighlight != nil {
+ l = m.NodeHighlight.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ l = len(m.CalibrationData)
+ if l > 0 {
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ if m.MapData != nil {
+ l = m.MapData.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *NodeFilter) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.UnknownSwitch {
+ n += 2
+ }
+ if m.OfflineSwitch {
+ n += 2
+ }
+ if m.PublicKeySwitch {
+ n += 2
+ }
+ if m.HopsAway != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.HopsAway))
+ }
+ if m.PositionSwitch {
+ n += 2
+ }
+ l = len(m.NodeName)
+ if l > 0 {
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ if m.Channel != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Channel))
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *NodeHighlight) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.ChatSwitch {
+ n += 2
+ }
+ if m.PositionSwitch {
+ n += 2
+ }
+ if m.TelemetrySwitch {
+ n += 2
+ }
+ if m.IaqSwitch {
+ n += 2
+ }
+ l = len(m.NodeName)
+ if l > 0 {
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *GeoPoint) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.Zoom != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Zoom))
+ }
+ if m.Latitude != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Latitude))
+ }
+ if m.Longitude != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Longitude))
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *Map) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.Home != nil {
+ l = m.Home.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ l = len(m.Style)
+ if l > 0 {
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ if m.FollowGps {
+ n += 2
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *DeviceUIConfig) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: DeviceUIConfig: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: DeviceUIConfig: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Version", wireType)
+ }
+ m.Version = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.Version |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 2:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field ScreenBrightness", wireType)
+ }
+ m.ScreenBrightness = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.ScreenBrightness |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 3:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field ScreenTimeout", wireType)
+ }
+ m.ScreenTimeout = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.ScreenTimeout |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 4:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field ScreenLock", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.ScreenLock = bool(v != 0)
+ case 5:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field SettingsLock", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.SettingsLock = bool(v != 0)
+ case 6:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field PinCode", wireType)
+ }
+ m.PinCode = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.PinCode |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 7:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Theme", wireType)
+ }
+ m.Theme = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.Theme |= Theme(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 8:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field AlertEnabled", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.AlertEnabled = bool(v != 0)
+ case 9:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field BannerEnabled", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.BannerEnabled = bool(v != 0)
+ case 10:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field RingToneId", wireType)
+ }
+ m.RingToneId = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.RingToneId |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 11:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Language", wireType)
+ }
+ m.Language = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.Language |= Language(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 12:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field NodeFilter", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if m.NodeFilter == nil {
+ m.NodeFilter = &NodeFilter{}
+ }
+ if err := m.NodeFilter.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ iNdEx = postIndex
+ case 13:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field NodeHighlight", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if m.NodeHighlight == nil {
+ m.NodeHighlight = &NodeHighlight{}
+ }
+ if err := m.NodeHighlight.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ iNdEx = postIndex
+ case 14:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field CalibrationData", wireType)
+ }
+ var byteLen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ byteLen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if byteLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + byteLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.CalibrationData = append(m.CalibrationData[:0], dAtA[iNdEx:postIndex]...)
+ if m.CalibrationData == nil {
+ m.CalibrationData = []byte{}
+ }
+ iNdEx = postIndex
+ case 15:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field MapData", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if m.MapData == nil {
+ m.MapData = &Map{}
+ }
+ if err := m.MapData.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *NodeFilter) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: NodeFilter: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: NodeFilter: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field UnknownSwitch", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.UnknownSwitch = bool(v != 0)
+ case 2:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field OfflineSwitch", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.OfflineSwitch = bool(v != 0)
+ case 3:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field PublicKeySwitch", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.PublicKeySwitch = bool(v != 0)
+ case 4:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field HopsAway", wireType)
+ }
+ m.HopsAway = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.HopsAway |= int32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 5:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field PositionSwitch", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.PositionSwitch = bool(v != 0)
+ case 6:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field NodeName", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.NodeName = string(dAtA[iNdEx:postIndex])
+ iNdEx = postIndex
+ case 7:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Channel", wireType)
+ }
+ m.Channel = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.Channel |= int32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *NodeHighlight) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: NodeHighlight: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: NodeHighlight: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field ChatSwitch", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.ChatSwitch = bool(v != 0)
+ case 2:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field PositionSwitch", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.PositionSwitch = bool(v != 0)
+ case 3:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field TelemetrySwitch", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.TelemetrySwitch = bool(v != 0)
+ case 4:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field IaqSwitch", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.IaqSwitch = bool(v != 0)
+ case 5:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field NodeName", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.NodeName = string(dAtA[iNdEx:postIndex])
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *GeoPoint) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: GeoPoint: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: GeoPoint: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Zoom", wireType)
+ }
+ m.Zoom = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.Zoom |= int32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 2:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Latitude", wireType)
+ }
+ m.Latitude = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.Latitude |= int32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 3:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Longitude", wireType)
+ }
+ m.Longitude = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.Longitude |= int32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *Map) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: Map: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: Map: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Home", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if m.Home == nil {
+ m.Home = &GeoPoint{}
+ }
+ if err := m.Home.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ iNdEx = postIndex
+ case 2:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Style", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.Style = string(dAtA[iNdEx:postIndex])
+ iNdEx = postIndex
+ case 3:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field FollowGps", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.FollowGps = bool(v != 0)
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
diff --git a/meshtastic/deviceonly.pb.go b/meshtastic/deviceonly.pb.go
index dfe32c8..66f389b 100644
--- a/meshtastic/deviceonly.pb.go
+++ b/meshtastic/deviceonly.pb.go
@@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.32.0
-// protoc v4.25.2
+// protoc-gen-go v1.36.6
+// protoc v3.21.12
// source: meshtastic/deviceonly.proto
package generated
@@ -11,6 +11,7 @@ import (
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
+ unsafe "unsafe"
)
const (
@@ -20,116 +21,140 @@ const (
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
-// TODO: REPLACE
-type ScreenFonts int32
-
-const (
- // TODO: REPLACE
- ScreenFonts_FONT_SMALL ScreenFonts = 0
+// Position with static location information only for NodeDBLite
+type PositionLite struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // The new preferred location encoding, multiply by 1e-7 to get degrees
+ // in floating point
+ LatitudeI int32 `protobuf:"fixed32,1,opt,name=latitude_i,json=latitudeI,proto3" json:"latitude_i,omitempty"`
// TODO: REPLACE
- ScreenFonts_FONT_MEDIUM ScreenFonts = 1
+ LongitudeI int32 `protobuf:"fixed32,2,opt,name=longitude_i,json=longitudeI,proto3" json:"longitude_i,omitempty"`
+ // In meters above MSL (but see issue #359)
+ Altitude int32 `protobuf:"varint,3,opt,name=altitude,proto3" json:"altitude,omitempty"`
+ // This is usually not sent over the mesh (to save space), but it is sent
+ // from the phone so that the local device can set its RTC If it is sent over
+ // the mesh (because there are devices on the mesh without GPS), it will only
+ // be sent by devices which has a hardware GPS clock.
+ // seconds since 1970
+ Time uint32 `protobuf:"fixed32,4,opt,name=time,proto3" json:"time,omitempty"`
// TODO: REPLACE
- ScreenFonts_FONT_LARGE ScreenFonts = 2
-)
-
-// Enum value maps for ScreenFonts.
-var (
- ScreenFonts_name = map[int32]string{
- 0: "FONT_SMALL",
- 1: "FONT_MEDIUM",
- 2: "FONT_LARGE",
- }
- ScreenFonts_value = map[string]int32{
- "FONT_SMALL": 0,
- "FONT_MEDIUM": 1,
- "FONT_LARGE": 2,
- }
-)
+ LocationSource Position_LocSource `protobuf:"varint,5,opt,name=location_source,json=locationSource,proto3,enum=meshtastic.Position_LocSource" json:"location_source,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
-func (x ScreenFonts) Enum() *ScreenFonts {
- p := new(ScreenFonts)
- *p = x
- return p
+func (x *PositionLite) Reset() {
+ *x = PositionLite{}
+ mi := &file_meshtastic_deviceonly_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
-func (x ScreenFonts) String() string {
- return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+func (x *PositionLite) String() string {
+ return protoimpl.X.MessageStringOf(x)
}
-func (ScreenFonts) Descriptor() protoreflect.EnumDescriptor {
- return file_meshtastic_deviceonly_proto_enumTypes[0].Descriptor()
+func (*PositionLite) ProtoMessage() {}
+
+func (x *PositionLite) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_deviceonly_proto_msgTypes[0]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
}
-func (ScreenFonts) Type() protoreflect.EnumType {
- return &file_meshtastic_deviceonly_proto_enumTypes[0]
+// Deprecated: Use PositionLite.ProtoReflect.Descriptor instead.
+func (*PositionLite) Descriptor() ([]byte, []int) {
+ return file_meshtastic_deviceonly_proto_rawDescGZIP(), []int{0}
}
-func (x ScreenFonts) Number() protoreflect.EnumNumber {
- return protoreflect.EnumNumber(x)
+func (x *PositionLite) GetLatitudeI() int32 {
+ if x != nil {
+ return x.LatitudeI
+ }
+ return 0
}
-// Deprecated: Use ScreenFonts.Descriptor instead.
-func (ScreenFonts) EnumDescriptor() ([]byte, []int) {
- return file_meshtastic_deviceonly_proto_rawDescGZIP(), []int{0}
+func (x *PositionLite) GetLongitudeI() int32 {
+ if x != nil {
+ return x.LongitudeI
+ }
+ return 0
}
-// This message is never sent over the wire, but it is used for serializing DB
-// state to flash in the device code
-// FIXME, since we write this each time we enter deep sleep (and have infinite
-// flash) it would be better to use some sort of append only data structure for
-// the receive queue and use the preferences store for the other stuff
-type DeviceState struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
+func (x *PositionLite) GetAltitude() int32 {
+ if x != nil {
+ return x.Altitude
+ }
+ return 0
+}
- // Read only settings/info about this node
- MyNode *MyNodeInfo `protobuf:"bytes,2,opt,name=my_node,json=myNode,proto3" json:"my_node,omitempty"`
- // My owner info
- Owner *User `protobuf:"bytes,3,opt,name=owner,proto3" json:"owner,omitempty"`
- // Received packets saved for delivery to the phone
- ReceiveQueue []*MeshPacket `protobuf:"bytes,5,rep,name=receive_queue,json=receiveQueue,proto3" json:"receive_queue,omitempty"`
- // A version integer used to invalidate old save files when we make
- // incompatible changes This integer is set at build time and is private to
- // NodeDB.cpp in the device code.
- Version uint32 `protobuf:"varint,8,opt,name=version,proto3" json:"version,omitempty"`
- // We keep the last received text message (only) stored in the device flash,
- // so we can show it on the screen.
- // Might be null
- RxTextMessage *MeshPacket `protobuf:"bytes,7,opt,name=rx_text_message,json=rxTextMessage,proto3" json:"rx_text_message,omitempty"`
- // Used only during development.
- // Indicates developer is testing and changes should never be saved to flash.
- NoSave bool `protobuf:"varint,9,opt,name=no_save,json=noSave,proto3" json:"no_save,omitempty"`
- // Some GPS receivers seem to have bogus settings from the factory, so we always do one factory reset.
- DidGpsReset bool `protobuf:"varint,11,opt,name=did_gps_reset,json=didGpsReset,proto3" json:"did_gps_reset,omitempty"`
- // We keep the last received waypoint stored in the device flash,
- // so we can show it on the screen.
- // Might be null
- RxWaypoint *MeshPacket `protobuf:"bytes,12,opt,name=rx_waypoint,json=rxWaypoint,proto3" json:"rx_waypoint,omitempty"`
- // The mesh's nodes with their available gpio pins for RemoteHardware module
- NodeRemoteHardwarePins []*NodeRemoteHardwarePin `protobuf:"bytes,13,rep,name=node_remote_hardware_pins,json=nodeRemoteHardwarePins,proto3" json:"node_remote_hardware_pins,omitempty"`
- // New lite version of NodeDB to decrease memory footprint
- NodeDbLite []*NodeInfoLite `protobuf:"bytes,14,rep,name=node_db_lite,json=nodeDbLite,proto3" json:"node_db_lite,omitempty"`
+func (x *PositionLite) GetTime() uint32 {
+ if x != nil {
+ return x.Time
+ }
+ return 0
}
-func (x *DeviceState) Reset() {
- *x = DeviceState{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_deviceonly_proto_msgTypes[0]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *PositionLite) GetLocationSource() Position_LocSource {
+ if x != nil {
+ return x.LocationSource
}
+ return Position_LOC_UNSET
}
-func (x *DeviceState) String() string {
+type UserLite struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // This is the addr of the radio.
+ //
+ // Deprecated: Marked as deprecated in meshtastic/deviceonly.proto.
+ Macaddr []byte `protobuf:"bytes,1,opt,name=macaddr,proto3" json:"macaddr,omitempty"`
+ // A full name for this user, i.e. "Kevin Hester"
+ LongName string `protobuf:"bytes,2,opt,name=long_name,json=longName,proto3" json:"long_name,omitempty"`
+ // A VERY short name, ideally two characters.
+ // Suitable for a tiny OLED screen
+ ShortName string `protobuf:"bytes,3,opt,name=short_name,json=shortName,proto3" json:"short_name,omitempty"`
+ // TBEAM, HELTEC, etc...
+ // Starting in 1.2.11 moved to hw_model enum in the NodeInfo object.
+ // Apps will still need the string here for older builds
+ // (so OTA update can find the right image), but if the enum is available it will be used instead.
+ HwModel HardwareModel `protobuf:"varint,4,opt,name=hw_model,json=hwModel,proto3,enum=meshtastic.HardwareModel" json:"hw_model,omitempty"`
+ // In some regions Ham radio operators have different bandwidth limitations than others.
+ // If this user is a licensed operator, set this flag.
+ // Also, "long_name" should be their licence number.
+ IsLicensed bool `protobuf:"varint,5,opt,name=is_licensed,json=isLicensed,proto3" json:"is_licensed,omitempty"`
+ // Indicates that the user's role in the mesh
+ Role Config_DeviceConfig_Role `protobuf:"varint,6,opt,name=role,proto3,enum=meshtastic.Config_DeviceConfig_Role" json:"role,omitempty"`
+ // The public key of the user's device.
+ // This is sent out to other nodes on the mesh to allow them to compute a shared secret key.
+ PublicKey []byte `protobuf:"bytes,7,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"`
+ // Whether or not the node can be messaged
+ IsUnmessagable *bool `protobuf:"varint,9,opt,name=is_unmessagable,json=isUnmessagable,proto3,oneof" json:"is_unmessagable,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *UserLite) Reset() {
+ *x = UserLite{}
+ mi := &file_meshtastic_deviceonly_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *UserLite) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*DeviceState) ProtoMessage() {}
+func (*UserLite) ProtoMessage() {}
-func (x *DeviceState) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_deviceonly_proto_msgTypes[0]
- if protoimpl.UnsafeEnabled && x != nil {
+func (x *UserLite) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_deviceonly_proto_msgTypes[1]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -139,90 +164,74 @@ func (x *DeviceState) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use DeviceState.ProtoReflect.Descriptor instead.
-func (*DeviceState) Descriptor() ([]byte, []int) {
- return file_meshtastic_deviceonly_proto_rawDescGZIP(), []int{0}
-}
-
-func (x *DeviceState) GetMyNode() *MyNodeInfo {
- if x != nil {
- return x.MyNode
- }
- return nil
-}
-
-func (x *DeviceState) GetOwner() *User {
- if x != nil {
- return x.Owner
- }
- return nil
+// Deprecated: Use UserLite.ProtoReflect.Descriptor instead.
+func (*UserLite) Descriptor() ([]byte, []int) {
+ return file_meshtastic_deviceonly_proto_rawDescGZIP(), []int{1}
}
-func (x *DeviceState) GetReceiveQueue() []*MeshPacket {
+// Deprecated: Marked as deprecated in meshtastic/deviceonly.proto.
+func (x *UserLite) GetMacaddr() []byte {
if x != nil {
- return x.ReceiveQueue
+ return x.Macaddr
}
return nil
}
-func (x *DeviceState) GetVersion() uint32 {
+func (x *UserLite) GetLongName() string {
if x != nil {
- return x.Version
+ return x.LongName
}
- return 0
+ return ""
}
-func (x *DeviceState) GetRxTextMessage() *MeshPacket {
+func (x *UserLite) GetShortName() string {
if x != nil {
- return x.RxTextMessage
+ return x.ShortName
}
- return nil
+ return ""
}
-func (x *DeviceState) GetNoSave() bool {
+func (x *UserLite) GetHwModel() HardwareModel {
if x != nil {
- return x.NoSave
+ return x.HwModel
}
- return false
+ return HardwareModel_UNSET
}
-func (x *DeviceState) GetDidGpsReset() bool {
+func (x *UserLite) GetIsLicensed() bool {
if x != nil {
- return x.DidGpsReset
+ return x.IsLicensed
}
return false
}
-func (x *DeviceState) GetRxWaypoint() *MeshPacket {
+func (x *UserLite) GetRole() Config_DeviceConfig_Role {
if x != nil {
- return x.RxWaypoint
+ return x.Role
}
- return nil
+ return Config_DeviceConfig_CLIENT
}
-func (x *DeviceState) GetNodeRemoteHardwarePins() []*NodeRemoteHardwarePin {
+func (x *UserLite) GetPublicKey() []byte {
if x != nil {
- return x.NodeRemoteHardwarePins
+ return x.PublicKey
}
return nil
}
-func (x *DeviceState) GetNodeDbLite() []*NodeInfoLite {
- if x != nil {
- return x.NodeDbLite
+func (x *UserLite) GetIsUnmessagable() bool {
+ if x != nil && x.IsUnmessagable != nil {
+ return *x.IsUnmessagable
}
- return nil
+ return false
}
type NodeInfoLite struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// The node number
Num uint32 `protobuf:"varint,1,opt,name=num,proto3" json:"num,omitempty"`
// The user info for this node
- User *User `protobuf:"bytes,2,opt,name=user,proto3" json:"user,omitempty"`
+ User *UserLite `protobuf:"bytes,2,opt,name=user,proto3" json:"user,omitempty"`
// This position data. Note: before 1.2.14 we would also store the last time we've heard from this node in position.time, that is no longer true.
// Position.time now indicates the last time we received a POSITION from that node.
Position *PositionLite `protobuf:"bytes,3,opt,name=position,proto3" json:"position,omitempty"`
@@ -235,15 +244,30 @@ type NodeInfoLite struct {
DeviceMetrics *DeviceMetrics `protobuf:"bytes,6,opt,name=device_metrics,json=deviceMetrics,proto3" json:"device_metrics,omitempty"`
// local channel index we heard that node on. Only populated if its not the default channel.
Channel uint32 `protobuf:"varint,7,opt,name=channel,proto3" json:"channel,omitempty"`
+ // True if we witnessed the node over MQTT instead of LoRA transport
+ ViaMqtt bool `protobuf:"varint,8,opt,name=via_mqtt,json=viaMqtt,proto3" json:"via_mqtt,omitempty"`
+ // Number of hops away from us this node is (0 if direct neighbor)
+ HopsAway *uint32 `protobuf:"varint,9,opt,name=hops_away,json=hopsAway,proto3,oneof" json:"hops_away,omitempty"`
+ // True if node is in our favorites list
+ // Persists between NodeDB internal clean ups
+ IsFavorite bool `protobuf:"varint,10,opt,name=is_favorite,json=isFavorite,proto3" json:"is_favorite,omitempty"`
+ // True if node is in our ignored list
+ // Persists between NodeDB internal clean ups
+ IsIgnored bool `protobuf:"varint,11,opt,name=is_ignored,json=isIgnored,proto3" json:"is_ignored,omitempty"`
+ // Last byte of the node number of the node that should be used as the next hop to reach this node.
+ NextHop uint32 `protobuf:"varint,12,opt,name=next_hop,json=nextHop,proto3" json:"next_hop,omitempty"`
+ // Bitfield for storing booleans.
+ // LSB 0 is_key_manually_verified
+ Bitfield uint32 `protobuf:"varint,13,opt,name=bitfield,proto3" json:"bitfield,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *NodeInfoLite) Reset() {
*x = NodeInfoLite{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_deviceonly_proto_msgTypes[1]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_deviceonly_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *NodeInfoLite) String() string {
@@ -253,8 +277,8 @@ func (x *NodeInfoLite) String() string {
func (*NodeInfoLite) ProtoMessage() {}
func (x *NodeInfoLite) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_deviceonly_proto_msgTypes[1]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_deviceonly_proto_msgTypes[2]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -266,7 +290,7 @@ func (x *NodeInfoLite) ProtoReflect() protoreflect.Message {
// Deprecated: Use NodeInfoLite.ProtoReflect.Descriptor instead.
func (*NodeInfoLite) Descriptor() ([]byte, []int) {
- return file_meshtastic_deviceonly_proto_rawDescGZIP(), []int{1}
+ return file_meshtastic_deviceonly_proto_rawDescGZIP(), []int{2}
}
func (x *NodeInfoLite) GetNum() uint32 {
@@ -276,7 +300,7 @@ func (x *NodeInfoLite) GetNum() uint32 {
return 0
}
-func (x *NodeInfoLite) GetUser() *User {
+func (x *NodeInfoLite) GetUser() *UserLite {
if x != nil {
return x.User
}
@@ -318,47 +342,106 @@ func (x *NodeInfoLite) GetChannel() uint32 {
return 0
}
-// Position with static location information only for NodeDBLite
-type PositionLite struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
+func (x *NodeInfoLite) GetViaMqtt() bool {
+ if x != nil {
+ return x.ViaMqtt
+ }
+ return false
+}
- // The new preferred location encoding, multiply by 1e-7 to get degrees
- // in floating point
- LatitudeI int32 `protobuf:"fixed32,1,opt,name=latitude_i,json=latitudeI,proto3" json:"latitude_i,omitempty"`
- // TODO: REPLACE
- LongitudeI int32 `protobuf:"fixed32,2,opt,name=longitude_i,json=longitudeI,proto3" json:"longitude_i,omitempty"`
- // In meters above MSL (but see issue #359)
- Altitude int32 `protobuf:"varint,3,opt,name=altitude,proto3" json:"altitude,omitempty"`
- // This is usually not sent over the mesh (to save space), but it is sent
- // from the phone so that the local device can set its RTC If it is sent over
- // the mesh (because there are devices on the mesh without GPS), it will only
- // be sent by devices which has a hardware GPS clock.
- // seconds since 1970
- Time uint32 `protobuf:"fixed32,4,opt,name=time,proto3" json:"time,omitempty"`
- // TODO: REPLACE
- LocationSource Position_LocSource `protobuf:"varint,5,opt,name=location_source,json=locationSource,proto3,enum=meshtastic.Position_LocSource" json:"location_source,omitempty"`
+func (x *NodeInfoLite) GetHopsAway() uint32 {
+ if x != nil && x.HopsAway != nil {
+ return *x.HopsAway
+ }
+ return 0
}
-func (x *PositionLite) Reset() {
- *x = PositionLite{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_deviceonly_proto_msgTypes[2]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
+func (x *NodeInfoLite) GetIsFavorite() bool {
+ if x != nil {
+ return x.IsFavorite
+ }
+ return false
+}
+
+func (x *NodeInfoLite) GetIsIgnored() bool {
+ if x != nil {
+ return x.IsIgnored
}
+ return false
}
-func (x *PositionLite) String() string {
+func (x *NodeInfoLite) GetNextHop() uint32 {
+ if x != nil {
+ return x.NextHop
+ }
+ return 0
+}
+
+func (x *NodeInfoLite) GetBitfield() uint32 {
+ if x != nil {
+ return x.Bitfield
+ }
+ return 0
+}
+
+// This message is never sent over the wire, but it is used for serializing DB
+// state to flash in the device code
+// FIXME, since we write this each time we enter deep sleep (and have infinite
+// flash) it would be better to use some sort of append only data structure for
+// the receive queue and use the preferences store for the other stuff
+type DeviceState struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // Read only settings/info about this node
+ MyNode *MyNodeInfo `protobuf:"bytes,2,opt,name=my_node,json=myNode,proto3" json:"my_node,omitempty"`
+ // My owner info
+ Owner *User `protobuf:"bytes,3,opt,name=owner,proto3" json:"owner,omitempty"`
+ // Received packets saved for delivery to the phone
+ ReceiveQueue []*MeshPacket `protobuf:"bytes,5,rep,name=receive_queue,json=receiveQueue,proto3" json:"receive_queue,omitempty"`
+ // A version integer used to invalidate old save files when we make
+ // incompatible changes This integer is set at build time and is private to
+ // NodeDB.cpp in the device code.
+ Version uint32 `protobuf:"varint,8,opt,name=version,proto3" json:"version,omitempty"`
+ // We keep the last received text message (only) stored in the device flash,
+ // so we can show it on the screen.
+ // Might be null
+ RxTextMessage *MeshPacket `protobuf:"bytes,7,opt,name=rx_text_message,json=rxTextMessage,proto3" json:"rx_text_message,omitempty"`
+ // Used only during development.
+ // Indicates developer is testing and changes should never be saved to flash.
+ // Deprecated in 2.3.1
+ //
+ // Deprecated: Marked as deprecated in meshtastic/deviceonly.proto.
+ NoSave bool `protobuf:"varint,9,opt,name=no_save,json=noSave,proto3" json:"no_save,omitempty"`
+ // Previously used to manage GPS factory resets.
+ // Deprecated in 2.5.23
+ //
+ // Deprecated: Marked as deprecated in meshtastic/deviceonly.proto.
+ DidGpsReset bool `protobuf:"varint,11,opt,name=did_gps_reset,json=didGpsReset,proto3" json:"did_gps_reset,omitempty"`
+ // We keep the last received waypoint stored in the device flash,
+ // so we can show it on the screen.
+ // Might be null
+ RxWaypoint *MeshPacket `protobuf:"bytes,12,opt,name=rx_waypoint,json=rxWaypoint,proto3" json:"rx_waypoint,omitempty"`
+ // The mesh's nodes with their available gpio pins for RemoteHardware module
+ NodeRemoteHardwarePins []*NodeRemoteHardwarePin `protobuf:"bytes,13,rep,name=node_remote_hardware_pins,json=nodeRemoteHardwarePins,proto3" json:"node_remote_hardware_pins,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *DeviceState) Reset() {
+ *x = DeviceState{}
+ mi := &file_meshtastic_deviceonly_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *DeviceState) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*PositionLite) ProtoMessage() {}
+func (*DeviceState) ProtoMessage() {}
-func (x *PositionLite) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_deviceonly_proto_msgTypes[2]
- if protoimpl.UnsafeEnabled && x != nil {
+func (x *DeviceState) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_deviceonly_proto_msgTypes[3]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -368,67 +451,150 @@ func (x *PositionLite) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use PositionLite.ProtoReflect.Descriptor instead.
-func (*PositionLite) Descriptor() ([]byte, []int) {
- return file_meshtastic_deviceonly_proto_rawDescGZIP(), []int{2}
+// Deprecated: Use DeviceState.ProtoReflect.Descriptor instead.
+func (*DeviceState) Descriptor() ([]byte, []int) {
+ return file_meshtastic_deviceonly_proto_rawDescGZIP(), []int{3}
}
-func (x *PositionLite) GetLatitudeI() int32 {
+func (x *DeviceState) GetMyNode() *MyNodeInfo {
if x != nil {
- return x.LatitudeI
+ return x.MyNode
}
- return 0
+ return nil
}
-func (x *PositionLite) GetLongitudeI() int32 {
+func (x *DeviceState) GetOwner() *User {
if x != nil {
- return x.LongitudeI
+ return x.Owner
}
- return 0
+ return nil
}
-func (x *PositionLite) GetAltitude() int32 {
+func (x *DeviceState) GetReceiveQueue() []*MeshPacket {
if x != nil {
- return x.Altitude
+ return x.ReceiveQueue
+ }
+ return nil
+}
+
+func (x *DeviceState) GetVersion() uint32 {
+ if x != nil {
+ return x.Version
}
return 0
}
-func (x *PositionLite) GetTime() uint32 {
+func (x *DeviceState) GetRxTextMessage() *MeshPacket {
if x != nil {
- return x.Time
+ return x.RxTextMessage
+ }
+ return nil
+}
+
+// Deprecated: Marked as deprecated in meshtastic/deviceonly.proto.
+func (x *DeviceState) GetNoSave() bool {
+ if x != nil {
+ return x.NoSave
+ }
+ return false
+}
+
+// Deprecated: Marked as deprecated in meshtastic/deviceonly.proto.
+func (x *DeviceState) GetDidGpsReset() bool {
+ if x != nil {
+ return x.DidGpsReset
+ }
+ return false
+}
+
+func (x *DeviceState) GetRxWaypoint() *MeshPacket {
+ if x != nil {
+ return x.RxWaypoint
+ }
+ return nil
+}
+
+func (x *DeviceState) GetNodeRemoteHardwarePins() []*NodeRemoteHardwarePin {
+ if x != nil {
+ return x.NodeRemoteHardwarePins
+ }
+ return nil
+}
+
+type NodeDatabase struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // A version integer used to invalidate old save files when we make
+ // incompatible changes This integer is set at build time and is private to
+ // NodeDB.cpp in the device code.
+ Version uint32 `protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty"`
+ // New lite version of NodeDB to decrease memory footprint
+ Nodes []*NodeInfoLite `protobuf:"bytes,2,rep,name=nodes,proto3" json:"nodes,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *NodeDatabase) Reset() {
+ *x = NodeDatabase{}
+ mi := &file_meshtastic_deviceonly_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *NodeDatabase) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*NodeDatabase) ProtoMessage() {}
+
+func (x *NodeDatabase) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_deviceonly_proto_msgTypes[4]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use NodeDatabase.ProtoReflect.Descriptor instead.
+func (*NodeDatabase) Descriptor() ([]byte, []int) {
+ return file_meshtastic_deviceonly_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *NodeDatabase) GetVersion() uint32 {
+ if x != nil {
+ return x.Version
}
return 0
}
-func (x *PositionLite) GetLocationSource() Position_LocSource {
+func (x *NodeDatabase) GetNodes() []*NodeInfoLite {
if x != nil {
- return x.LocationSource
+ return x.Nodes
}
- return Position_LOC_UNSET
+ return nil
}
// The on-disk saved channels
type ChannelFile struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// The channels our node knows about
Channels []*Channel `protobuf:"bytes,1,rep,name=channels,proto3" json:"channels,omitempty"`
// A version integer used to invalidate old save files when we make
// incompatible changes This integer is set at build time and is private to
// NodeDB.cpp in the device code.
- Version uint32 `protobuf:"varint,2,opt,name=version,proto3" json:"version,omitempty"`
+ Version uint32 `protobuf:"varint,2,opt,name=version,proto3" json:"version,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *ChannelFile) Reset() {
*x = ChannelFile{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_deviceonly_proto_msgTypes[3]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_deviceonly_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *ChannelFile) String() string {
@@ -438,8 +604,8 @@ func (x *ChannelFile) String() string {
func (*ChannelFile) ProtoMessage() {}
func (x *ChannelFile) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_deviceonly_proto_msgTypes[3]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_deviceonly_proto_msgTypes[5]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -451,7 +617,7 @@ func (x *ChannelFile) ProtoReflect() protoreflect.Message {
// Deprecated: Use ChannelFile.ProtoReflect.Descriptor instead.
func (*ChannelFile) Descriptor() ([]byte, []int) {
- return file_meshtastic_deviceonly_proto_rawDescGZIP(), []int{3}
+ return file_meshtastic_deviceonly_proto_rawDescGZIP(), []int{5}
}
func (x *ChannelFile) GetChannels() []*Channel {
@@ -468,49 +634,41 @@ func (x *ChannelFile) GetVersion() uint32 {
return 0
}
-// This can be used for customizing the firmware distribution. If populated,
-// show a secondary bootup screen with custom logo and text for 2.5 seconds.
-type OEMStore struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
+// The on-disk backup of the node's preferences
+type BackupPreferences struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // The version of the backup
+ Version uint32 `protobuf:"varint,1,opt,name=version,proto3" json:"version,omitempty"`
+ // The timestamp of the backup (if node has time)
+ Timestamp uint32 `protobuf:"fixed32,2,opt,name=timestamp,proto3" json:"timestamp,omitempty"`
+ // The node's configuration
+ Config *LocalConfig `protobuf:"bytes,3,opt,name=config,proto3" json:"config,omitempty"`
+ // The node's module configuration
+ ModuleConfig *LocalModuleConfig `protobuf:"bytes,4,opt,name=module_config,json=moduleConfig,proto3" json:"module_config,omitempty"`
+ // The node's channels
+ Channels *ChannelFile `protobuf:"bytes,5,opt,name=channels,proto3" json:"channels,omitempty"`
+ // The node's user (owner) information
+ Owner *User `protobuf:"bytes,6,opt,name=owner,proto3" json:"owner,omitempty"`
unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
- // The Logo width in Px
- OemIconWidth uint32 `protobuf:"varint,1,opt,name=oem_icon_width,json=oemIconWidth,proto3" json:"oem_icon_width,omitempty"`
- // The Logo height in Px
- OemIconHeight uint32 `protobuf:"varint,2,opt,name=oem_icon_height,json=oemIconHeight,proto3" json:"oem_icon_height,omitempty"`
- // The Logo in XBM bytechar format
- OemIconBits []byte `protobuf:"bytes,3,opt,name=oem_icon_bits,json=oemIconBits,proto3" json:"oem_icon_bits,omitempty"`
- // Use this font for the OEM text.
- OemFont ScreenFonts `protobuf:"varint,4,opt,name=oem_font,json=oemFont,proto3,enum=meshtastic.ScreenFonts" json:"oem_font,omitempty"`
- // Use this font for the OEM text.
- OemText string `protobuf:"bytes,5,opt,name=oem_text,json=oemText,proto3" json:"oem_text,omitempty"`
- // The default device encryption key, 16 or 32 byte
- OemAesKey []byte `protobuf:"bytes,6,opt,name=oem_aes_key,json=oemAesKey,proto3" json:"oem_aes_key,omitempty"`
- // A Preset LocalConfig to apply during factory reset
- OemLocalConfig *LocalConfig `protobuf:"bytes,7,opt,name=oem_local_config,json=oemLocalConfig,proto3" json:"oem_local_config,omitempty"`
- // A Preset LocalModuleConfig to apply during factory reset
- OemLocalModuleConfig *LocalModuleConfig `protobuf:"bytes,8,opt,name=oem_local_module_config,json=oemLocalModuleConfig,proto3" json:"oem_local_module_config,omitempty"`
-}
-
-func (x *OEMStore) Reset() {
- *x = OEMStore{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_deviceonly_proto_msgTypes[4]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+func (x *BackupPreferences) Reset() {
+ *x = BackupPreferences{}
+ mi := &file_meshtastic_deviceonly_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
-func (x *OEMStore) String() string {
+func (x *BackupPreferences) String() string {
return protoimpl.X.MessageStringOf(x)
}
-func (*OEMStore) ProtoMessage() {}
+func (*BackupPreferences) ProtoMessage() {}
-func (x *OEMStore) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_deviceonly_proto_msgTypes[4]
- if protoimpl.UnsafeEnabled && x != nil {
+func (x *BackupPreferences) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_deviceonly_proto_msgTypes[6]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -520,305 +678,184 @@ func (x *OEMStore) ProtoReflect() protoreflect.Message {
return mi.MessageOf(x)
}
-// Deprecated: Use OEMStore.ProtoReflect.Descriptor instead.
-func (*OEMStore) Descriptor() ([]byte, []int) {
- return file_meshtastic_deviceonly_proto_rawDescGZIP(), []int{4}
+// Deprecated: Use BackupPreferences.ProtoReflect.Descriptor instead.
+func (*BackupPreferences) Descriptor() ([]byte, []int) {
+ return file_meshtastic_deviceonly_proto_rawDescGZIP(), []int{6}
}
-func (x *OEMStore) GetOemIconWidth() uint32 {
+func (x *BackupPreferences) GetVersion() uint32 {
if x != nil {
- return x.OemIconWidth
+ return x.Version
}
return 0
}
-func (x *OEMStore) GetOemIconHeight() uint32 {
+func (x *BackupPreferences) GetTimestamp() uint32 {
if x != nil {
- return x.OemIconHeight
+ return x.Timestamp
}
return 0
}
-func (x *OEMStore) GetOemIconBits() []byte {
- if x != nil {
- return x.OemIconBits
- }
- return nil
-}
-
-func (x *OEMStore) GetOemFont() ScreenFonts {
- if x != nil {
- return x.OemFont
- }
- return ScreenFonts_FONT_SMALL
-}
-
-func (x *OEMStore) GetOemText() string {
+func (x *BackupPreferences) GetConfig() *LocalConfig {
if x != nil {
- return x.OemText
- }
- return ""
-}
-
-func (x *OEMStore) GetOemAesKey() []byte {
- if x != nil {
- return x.OemAesKey
+ return x.Config
}
return nil
}
-func (x *OEMStore) GetOemLocalConfig() *LocalConfig {
+func (x *BackupPreferences) GetModuleConfig() *LocalModuleConfig {
if x != nil {
- return x.OemLocalConfig
+ return x.ModuleConfig
}
return nil
}
-func (x *OEMStore) GetOemLocalModuleConfig() *LocalModuleConfig {
+func (x *BackupPreferences) GetChannels() *ChannelFile {
if x != nil {
- return x.OemLocalModuleConfig
+ return x.Channels
}
return nil
}
-// RemoteHardwarePins associated with a node
-type NodeRemoteHardwarePin struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- // The node_num exposing the available gpio pin
- NodeNum uint32 `protobuf:"varint,1,opt,name=node_num,json=nodeNum,proto3" json:"node_num,omitempty"`
- // The the available gpio pin for usage with RemoteHardware module
- Pin *RemoteHardwarePin `protobuf:"bytes,2,opt,name=pin,proto3" json:"pin,omitempty"`
-}
-
-func (x *NodeRemoteHardwarePin) Reset() {
- *x = NodeRemoteHardwarePin{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_deviceonly_proto_msgTypes[5]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
-}
-
-func (x *NodeRemoteHardwarePin) String() string {
- return protoimpl.X.MessageStringOf(x)
-}
-
-func (*NodeRemoteHardwarePin) ProtoMessage() {}
-
-func (x *NodeRemoteHardwarePin) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_deviceonly_proto_msgTypes[5]
- if protoimpl.UnsafeEnabled && x != nil {
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- if ms.LoadMessageInfo() == nil {
- ms.StoreMessageInfo(mi)
- }
- return ms
- }
- return mi.MessageOf(x)
-}
-
-// Deprecated: Use NodeRemoteHardwarePin.ProtoReflect.Descriptor instead.
-func (*NodeRemoteHardwarePin) Descriptor() ([]byte, []int) {
- return file_meshtastic_deviceonly_proto_rawDescGZIP(), []int{5}
-}
-
-func (x *NodeRemoteHardwarePin) GetNodeNum() uint32 {
+func (x *BackupPreferences) GetOwner() *User {
if x != nil {
- return x.NodeNum
- }
- return 0
-}
-
-func (x *NodeRemoteHardwarePin) GetPin() *RemoteHardwarePin {
- if x != nil {
- return x.Pin
+ return x.Owner
}
return nil
}
var File_meshtastic_deviceonly_proto protoreflect.FileDescriptor
-var file_meshtastic_deviceonly_proto_rawDesc = []byte{
- 0x0a, 0x1b, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x64, 0x65, 0x76,
- 0x69, 0x63, 0x65, 0x6f, 0x6e, 0x6c, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0a, 0x6d,
- 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x1a, 0x18, 0x6d, 0x65, 0x73, 0x68, 0x74,
- 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x2e, 0x70, 0x72,
- 0x6f, 0x74, 0x6f, 0x1a, 0x1a, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f,
- 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x6f, 0x6e, 0x6c, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
- 0x15, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x6d, 0x65, 0x73, 0x68,
- 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1a, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74,
- 0x69, 0x63, 0x2f, 0x74, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x2e, 0x70, 0x72, 0x6f,
- 0x74, 0x6f, 0x1a, 0x1e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x6d,
- 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f,
- 0x74, 0x6f, 0x22, 0x8d, 0x04, 0x0a, 0x0b, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61,
- 0x74, 0x65, 0x12, 0x2f, 0x0a, 0x07, 0x6d, 0x79, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20,
- 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63,
- 0x2e, 0x4d, 0x79, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x6d, 0x79, 0x4e,
- 0x6f, 0x64, 0x65, 0x12, 0x26, 0x0a, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01,
- 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e,
- 0x55, 0x73, 0x65, 0x72, 0x52, 0x05, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x12, 0x3b, 0x0a, 0x0d, 0x72,
- 0x65, 0x63, 0x65, 0x69, 0x76, 0x65, 0x5f, 0x71, 0x75, 0x65, 0x75, 0x65, 0x18, 0x05, 0x20, 0x03,
- 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e,
- 0x4d, 0x65, 0x73, 0x68, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x0c, 0x72, 0x65, 0x63, 0x65,
- 0x69, 0x76, 0x65, 0x51, 0x75, 0x65, 0x75, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73,
- 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69,
- 0x6f, 0x6e, 0x12, 0x3e, 0x0a, 0x0f, 0x72, 0x78, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x6d, 0x65,
- 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6d, 0x65,
- 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x65, 0x73, 0x68, 0x50, 0x61, 0x63,
- 0x6b, 0x65, 0x74, 0x52, 0x0d, 0x72, 0x78, 0x54, 0x65, 0x78, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61,
- 0x67, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x6e, 0x6f, 0x5f, 0x73, 0x61, 0x76, 0x65, 0x18, 0x09, 0x20,
- 0x01, 0x28, 0x08, 0x52, 0x06, 0x6e, 0x6f, 0x53, 0x61, 0x76, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x64,
- 0x69, 0x64, 0x5f, 0x67, 0x70, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x65, 0x74, 0x18, 0x0b, 0x20, 0x01,
- 0x28, 0x08, 0x52, 0x0b, 0x64, 0x69, 0x64, 0x47, 0x70, 0x73, 0x52, 0x65, 0x73, 0x65, 0x74, 0x12,
- 0x37, 0x0a, 0x0b, 0x72, 0x78, 0x5f, 0x77, 0x61, 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x0c,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69,
- 0x63, 0x2e, 0x4d, 0x65, 0x73, 0x68, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x0a, 0x72, 0x78,
- 0x57, 0x61, 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x5c, 0x0a, 0x19, 0x6e, 0x6f, 0x64, 0x65,
- 0x5f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x68, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65,
- 0x5f, 0x70, 0x69, 0x6e, 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6d, 0x65,
- 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x6d,
- 0x6f, 0x74, 0x65, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x50, 0x69, 0x6e, 0x52, 0x16,
- 0x6e, 0x6f, 0x64, 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61,
- 0x72, 0x65, 0x50, 0x69, 0x6e, 0x73, 0x12, 0x3a, 0x0a, 0x0c, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x64,
- 0x62, 0x5f, 0x6c, 0x69, 0x74, 0x65, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6d,
- 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e,
- 0x66, 0x6f, 0x4c, 0x69, 0x74, 0x65, 0x52, 0x0a, 0x6e, 0x6f, 0x64, 0x65, 0x44, 0x62, 0x4c, 0x69,
- 0x74, 0x65, 0x22, 0x89, 0x02, 0x0a, 0x0c, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x4c,
- 0x69, 0x74, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d,
- 0x52, 0x03, 0x6e, 0x75, 0x6d, 0x12, 0x24, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x02, 0x20,
- 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63,
- 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x34, 0x0a, 0x08, 0x70,
- 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e,
- 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74,
- 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x74, 0x65, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f,
- 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x6e, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x03,
- 0x73, 0x6e, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, 0x65, 0x61, 0x72,
- 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x07, 0x52, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x48, 0x65, 0x61,
- 0x72, 0x64, 0x12, 0x40, 0x0a, 0x0e, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6d, 0x65, 0x74,
- 0x72, 0x69, 0x63, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6d, 0x65, 0x73,
- 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65,
- 0x74, 0x72, 0x69, 0x63, 0x73, 0x52, 0x0d, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65, 0x74,
- 0x72, 0x69, 0x63, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x18,
- 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x22, 0xc7,
- 0x01, 0x0a, 0x0c, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x4c, 0x69, 0x74, 0x65, 0x12,
- 0x1d, 0x0a, 0x0a, 0x6c, 0x61, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x5f, 0x69, 0x18, 0x01, 0x20,
- 0x01, 0x28, 0x0f, 0x52, 0x09, 0x6c, 0x61, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x49, 0x12, 0x1f,
- 0x0a, 0x0b, 0x6c, 0x6f, 0x6e, 0x67, 0x69, 0x74, 0x75, 0x64, 0x65, 0x5f, 0x69, 0x18, 0x02, 0x20,
- 0x01, 0x28, 0x0f, 0x52, 0x0a, 0x6c, 0x6f, 0x6e, 0x67, 0x69, 0x74, 0x75, 0x64, 0x65, 0x49, 0x12,
- 0x1a, 0x0a, 0x08, 0x61, 0x6c, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
- 0x05, 0x52, 0x08, 0x61, 0x6c, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74,
- 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x07, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x12,
- 0x47, 0x0a, 0x0f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x6f, 0x75, 0x72,
- 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74,
- 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4c,
- 0x6f, 0x63, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x0e, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x58, 0x0a, 0x0b, 0x43, 0x68, 0x61, 0x6e,
- 0x6e, 0x65, 0x6c, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x2f, 0x0a, 0x08, 0x63, 0x68, 0x61, 0x6e, 0x6e,
- 0x65, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6d, 0x65, 0x73, 0x68,
- 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x52, 0x08,
- 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73,
- 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69,
- 0x6f, 0x6e, 0x22, 0x84, 0x03, 0x0a, 0x08, 0x4f, 0x45, 0x4d, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x12,
- 0x24, 0x0a, 0x0e, 0x6f, 0x65, 0x6d, 0x5f, 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x77, 0x69, 0x64, 0x74,
- 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6f, 0x65, 0x6d, 0x49, 0x63, 0x6f, 0x6e,
- 0x57, 0x69, 0x64, 0x74, 0x68, 0x12, 0x26, 0x0a, 0x0f, 0x6f, 0x65, 0x6d, 0x5f, 0x69, 0x63, 0x6f,
- 0x6e, 0x5f, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d,
- 0x6f, 0x65, 0x6d, 0x49, 0x63, 0x6f, 0x6e, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x22, 0x0a,
- 0x0d, 0x6f, 0x65, 0x6d, 0x5f, 0x69, 0x63, 0x6f, 0x6e, 0x5f, 0x62, 0x69, 0x74, 0x73, 0x18, 0x03,
- 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x6f, 0x65, 0x6d, 0x49, 0x63, 0x6f, 0x6e, 0x42, 0x69, 0x74,
- 0x73, 0x12, 0x32, 0x0a, 0x08, 0x6f, 0x65, 0x6d, 0x5f, 0x66, 0x6f, 0x6e, 0x74, 0x18, 0x04, 0x20,
- 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63,
- 0x2e, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x46, 0x6f, 0x6e, 0x74, 0x73, 0x52, 0x07, 0x6f, 0x65,
- 0x6d, 0x46, 0x6f, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x6f, 0x65, 0x6d, 0x5f, 0x74, 0x65, 0x78,
- 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6f, 0x65, 0x6d, 0x54, 0x65, 0x78, 0x74,
- 0x12, 0x1e, 0x0a, 0x0b, 0x6f, 0x65, 0x6d, 0x5f, 0x61, 0x65, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18,
- 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x6f, 0x65, 0x6d, 0x41, 0x65, 0x73, 0x4b, 0x65, 0x79,
- 0x12, 0x41, 0x0a, 0x10, 0x6f, 0x65, 0x6d, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x63, 0x6f,
- 0x6e, 0x66, 0x69, 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x6d, 0x65, 0x73,
- 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x43, 0x6f, 0x6e,
- 0x66, 0x69, 0x67, 0x52, 0x0e, 0x6f, 0x65, 0x6d, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x43, 0x6f, 0x6e,
- 0x66, 0x69, 0x67, 0x12, 0x54, 0x0a, 0x17, 0x6f, 0x65, 0x6d, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x6c,
- 0x5f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x08,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69,
- 0x63, 0x2e, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e,
- 0x66, 0x69, 0x67, 0x52, 0x14, 0x6f, 0x65, 0x6d, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x4d, 0x6f, 0x64,
- 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x63, 0x0a, 0x15, 0x4e, 0x6f, 0x64,
- 0x65, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x50,
- 0x69, 0x6e, 0x12, 0x19, 0x0a, 0x08, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x6e, 0x6f, 0x64, 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x2f, 0x0a,
- 0x03, 0x70, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6d, 0x65, 0x73,
- 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x48, 0x61,
- 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x50, 0x69, 0x6e, 0x52, 0x03, 0x70, 0x69, 0x6e, 0x2a, 0x3e,
- 0x0a, 0x0b, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x46, 0x6f, 0x6e, 0x74, 0x73, 0x12, 0x0e, 0x0a,
- 0x0a, 0x46, 0x4f, 0x4e, 0x54, 0x5f, 0x53, 0x4d, 0x41, 0x4c, 0x4c, 0x10, 0x00, 0x12, 0x0f, 0x0a,
- 0x0b, 0x46, 0x4f, 0x4e, 0x54, 0x5f, 0x4d, 0x45, 0x44, 0x49, 0x55, 0x4d, 0x10, 0x01, 0x12, 0x0e,
- 0x0a, 0x0a, 0x46, 0x4f, 0x4e, 0x54, 0x5f, 0x4c, 0x41, 0x52, 0x47, 0x45, 0x10, 0x02, 0x42, 0x5f,
- 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x65, 0x65, 0x6b, 0x73, 0x76, 0x69, 0x6c, 0x6c, 0x65,
- 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x42, 0x0a, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4f, 0x6e, 0x6c,
- 0x79, 0x5a, 0x22, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x65,
- 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x67, 0x6f, 0x2f, 0x67, 0x65, 0x6e, 0x65,
- 0x72, 0x61, 0x74, 0x65, 0x64, 0xaa, 0x02, 0x14, 0x4d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74,
- 0x69, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x73, 0xba, 0x02, 0x00, 0x62,
- 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
-}
+const file_meshtastic_deviceonly_proto_rawDesc = "" +
+ "\n" +
+ "\x1bmeshtastic/deviceonly.proto\x12\n" +
+ "meshtastic\x1a\x18meshtastic/channel.proto\x1a\x15meshtastic/mesh.proto\x1a\x1ameshtastic/telemetry.proto\x1a\x17meshtastic/config.proto\x1a\x1ameshtastic/localonly.proto\x1a\fnanopb.proto\"\xc7\x01\n" +
+ "\fPositionLite\x12\x1d\n" +
+ "\n" +
+ "latitude_i\x18\x01 \x01(\x0fR\tlatitudeI\x12\x1f\n" +
+ "\vlongitude_i\x18\x02 \x01(\x0fR\n" +
+ "longitudeI\x12\x1a\n" +
+ "\baltitude\x18\x03 \x01(\x05R\baltitude\x12\x12\n" +
+ "\x04time\x18\x04 \x01(\aR\x04time\x12G\n" +
+ "\x0flocation_source\x18\x05 \x01(\x0e2\x1e.meshtastic.Position.LocSourceR\x0elocationSource\"\xd6\x02\n" +
+ "\bUserLite\x12\x1c\n" +
+ "\amacaddr\x18\x01 \x01(\fB\x02\x18\x01R\amacaddr\x12\x1b\n" +
+ "\tlong_name\x18\x02 \x01(\tR\blongName\x12\x1d\n" +
+ "\n" +
+ "short_name\x18\x03 \x01(\tR\tshortName\x124\n" +
+ "\bhw_model\x18\x04 \x01(\x0e2\x19.meshtastic.HardwareModelR\ahwModel\x12\x1f\n" +
+ "\vis_licensed\x18\x05 \x01(\bR\n" +
+ "isLicensed\x128\n" +
+ "\x04role\x18\x06 \x01(\x0e2$.meshtastic.Config.DeviceConfig.RoleR\x04role\x12\x1d\n" +
+ "\n" +
+ "public_key\x18\a \x01(\fR\tpublicKey\x12,\n" +
+ "\x0fis_unmessagable\x18\t \x01(\bH\x00R\x0eisUnmessagable\x88\x01\x01B\x12\n" +
+ "\x10_is_unmessagable\"\xcf\x03\n" +
+ "\fNodeInfoLite\x12\x10\n" +
+ "\x03num\x18\x01 \x01(\rR\x03num\x12(\n" +
+ "\x04user\x18\x02 \x01(\v2\x14.meshtastic.UserLiteR\x04user\x124\n" +
+ "\bposition\x18\x03 \x01(\v2\x18.meshtastic.PositionLiteR\bposition\x12\x10\n" +
+ "\x03snr\x18\x04 \x01(\x02R\x03snr\x12\x1d\n" +
+ "\n" +
+ "last_heard\x18\x05 \x01(\aR\tlastHeard\x12@\n" +
+ "\x0edevice_metrics\x18\x06 \x01(\v2\x19.meshtastic.DeviceMetricsR\rdeviceMetrics\x12\x18\n" +
+ "\achannel\x18\a \x01(\rR\achannel\x12\x19\n" +
+ "\bvia_mqtt\x18\b \x01(\bR\aviaMqtt\x12 \n" +
+ "\thops_away\x18\t \x01(\rH\x00R\bhopsAway\x88\x01\x01\x12\x1f\n" +
+ "\vis_favorite\x18\n" +
+ " \x01(\bR\n" +
+ "isFavorite\x12\x1d\n" +
+ "\n" +
+ "is_ignored\x18\v \x01(\bR\tisIgnored\x12\x19\n" +
+ "\bnext_hop\x18\f \x01(\rR\anextHop\x12\x1a\n" +
+ "\bbitfield\x18\r \x01(\rR\bbitfieldB\f\n" +
+ "\n" +
+ "_hops_away\"\xd9\x03\n" +
+ "\vDeviceState\x12/\n" +
+ "\amy_node\x18\x02 \x01(\v2\x16.meshtastic.MyNodeInfoR\x06myNode\x12&\n" +
+ "\x05owner\x18\x03 \x01(\v2\x10.meshtastic.UserR\x05owner\x12;\n" +
+ "\rreceive_queue\x18\x05 \x03(\v2\x16.meshtastic.MeshPacketR\freceiveQueue\x12\x18\n" +
+ "\aversion\x18\b \x01(\rR\aversion\x12>\n" +
+ "\x0frx_text_message\x18\a \x01(\v2\x16.meshtastic.MeshPacketR\rrxTextMessage\x12\x1b\n" +
+ "\ano_save\x18\t \x01(\bB\x02\x18\x01R\x06noSave\x12&\n" +
+ "\rdid_gps_reset\x18\v \x01(\bB\x02\x18\x01R\vdidGpsReset\x127\n" +
+ "\vrx_waypoint\x18\f \x01(\v2\x16.meshtastic.MeshPacketR\n" +
+ "rxWaypoint\x12\\\n" +
+ "\x19node_remote_hardware_pins\x18\r \x03(\v2!.meshtastic.NodeRemoteHardwarePinR\x16nodeRemoteHardwarePins\"\x84\x01\n" +
+ "\fNodeDatabase\x12\x18\n" +
+ "\aversion\x18\x01 \x01(\rR\aversion\x12Z\n" +
+ "\x05nodes\x18\x02 \x03(\v2\x18.meshtastic.NodeInfoLiteB*\x92?'\x92\x01$std::vector<meshtastic_NodeInfoLite>R\x05nodes\"X\n" +
+ "\vChannelFile\x12/\n" +
+ "\bchannels\x18\x01 \x03(\v2\x13.meshtastic.ChannelR\bchannels\x12\x18\n" +
+ "\aversion\x18\x02 \x01(\rR\aversion\"\x9d\x02\n" +
+ "\x11BackupPreferences\x12\x18\n" +
+ "\aversion\x18\x01 \x01(\rR\aversion\x12\x1c\n" +
+ "\ttimestamp\x18\x02 \x01(\aR\ttimestamp\x12/\n" +
+ "\x06config\x18\x03 \x01(\v2\x17.meshtastic.LocalConfigR\x06config\x12B\n" +
+ "\rmodule_config\x18\x04 \x01(\v2\x1d.meshtastic.LocalModuleConfigR\fmoduleConfig\x123\n" +
+ "\bchannels\x18\x05 \x01(\v2\x17.meshtastic.ChannelFileR\bchannels\x12&\n" +
+ "\x05owner\x18\x06 \x01(\v2\x10.meshtastic.UserR\x05ownerBm\x92?\v\xc2\x01\b<vector>\n" +
+ "\x13com.geeksville.meshB\n" +
+ "DeviceOnlyZ\"github.com/meshtastic/go/generated\xaa\x02\x14Meshtastic.Protobufs\xba\x02\x00b\x06proto3"
var (
file_meshtastic_deviceonly_proto_rawDescOnce sync.Once
- file_meshtastic_deviceonly_proto_rawDescData = file_meshtastic_deviceonly_proto_rawDesc
+ file_meshtastic_deviceonly_proto_rawDescData []byte
)
func file_meshtastic_deviceonly_proto_rawDescGZIP() []byte {
file_meshtastic_deviceonly_proto_rawDescOnce.Do(func() {
- file_meshtastic_deviceonly_proto_rawDescData = protoimpl.X.CompressGZIP(file_meshtastic_deviceonly_proto_rawDescData)
+ file_meshtastic_deviceonly_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_meshtastic_deviceonly_proto_rawDesc), len(file_meshtastic_deviceonly_proto_rawDesc)))
})
return file_meshtastic_deviceonly_proto_rawDescData
}
-var file_meshtastic_deviceonly_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
-var file_meshtastic_deviceonly_proto_msgTypes = make([]protoimpl.MessageInfo, 6)
-var file_meshtastic_deviceonly_proto_goTypes = []interface{}{
- (ScreenFonts)(0), // 0: meshtastic.ScreenFonts
- (*DeviceState)(nil), // 1: meshtastic.DeviceState
+var file_meshtastic_deviceonly_proto_msgTypes = make([]protoimpl.MessageInfo, 7)
+var file_meshtastic_deviceonly_proto_goTypes = []any{
+ (*PositionLite)(nil), // 0: meshtastic.PositionLite
+ (*UserLite)(nil), // 1: meshtastic.UserLite
(*NodeInfoLite)(nil), // 2: meshtastic.NodeInfoLite
- (*PositionLite)(nil), // 3: meshtastic.PositionLite
- (*ChannelFile)(nil), // 4: meshtastic.ChannelFile
- (*OEMStore)(nil), // 5: meshtastic.OEMStore
- (*NodeRemoteHardwarePin)(nil), // 6: meshtastic.NodeRemoteHardwarePin
- (*MyNodeInfo)(nil), // 7: meshtastic.MyNodeInfo
- (*User)(nil), // 8: meshtastic.User
- (*MeshPacket)(nil), // 9: meshtastic.MeshPacket
+ (*DeviceState)(nil), // 3: meshtastic.DeviceState
+ (*NodeDatabase)(nil), // 4: meshtastic.NodeDatabase
+ (*ChannelFile)(nil), // 5: meshtastic.ChannelFile
+ (*BackupPreferences)(nil), // 6: meshtastic.BackupPreferences
+ (Position_LocSource)(0), // 7: meshtastic.Position.LocSource
+ (HardwareModel)(0), // 8: meshtastic.HardwareModel
+ (Config_DeviceConfig_Role)(0), // 9: meshtastic.Config.DeviceConfig.Role
(*DeviceMetrics)(nil), // 10: meshtastic.DeviceMetrics
- (Position_LocSource)(0), // 11: meshtastic.Position.LocSource
- (*Channel)(nil), // 12: meshtastic.Channel
- (*LocalConfig)(nil), // 13: meshtastic.LocalConfig
- (*LocalModuleConfig)(nil), // 14: meshtastic.LocalModuleConfig
- (*RemoteHardwarePin)(nil), // 15: meshtastic.RemoteHardwarePin
+ (*MyNodeInfo)(nil), // 11: meshtastic.MyNodeInfo
+ (*User)(nil), // 12: meshtastic.User
+ (*MeshPacket)(nil), // 13: meshtastic.MeshPacket
+ (*NodeRemoteHardwarePin)(nil), // 14: meshtastic.NodeRemoteHardwarePin
+ (*Channel)(nil), // 15: meshtastic.Channel
+ (*LocalConfig)(nil), // 16: meshtastic.LocalConfig
+ (*LocalModuleConfig)(nil), // 17: meshtastic.LocalModuleConfig
}
var file_meshtastic_deviceonly_proto_depIdxs = []int32{
- 7, // 0: meshtastic.DeviceState.my_node:type_name -> meshtastic.MyNodeInfo
- 8, // 1: meshtastic.DeviceState.owner:type_name -> meshtastic.User
- 9, // 2: meshtastic.DeviceState.receive_queue:type_name -> meshtastic.MeshPacket
- 9, // 3: meshtastic.DeviceState.rx_text_message:type_name -> meshtastic.MeshPacket
- 9, // 4: meshtastic.DeviceState.rx_waypoint:type_name -> meshtastic.MeshPacket
- 6, // 5: meshtastic.DeviceState.node_remote_hardware_pins:type_name -> meshtastic.NodeRemoteHardwarePin
- 2, // 6: meshtastic.DeviceState.node_db_lite:type_name -> meshtastic.NodeInfoLite
- 8, // 7: meshtastic.NodeInfoLite.user:type_name -> meshtastic.User
- 3, // 8: meshtastic.NodeInfoLite.position:type_name -> meshtastic.PositionLite
- 10, // 9: meshtastic.NodeInfoLite.device_metrics:type_name -> meshtastic.DeviceMetrics
- 11, // 10: meshtastic.PositionLite.location_source:type_name -> meshtastic.Position.LocSource
- 12, // 11: meshtastic.ChannelFile.channels:type_name -> meshtastic.Channel
- 0, // 12: meshtastic.OEMStore.oem_font:type_name -> meshtastic.ScreenFonts
- 13, // 13: meshtastic.OEMStore.oem_local_config:type_name -> meshtastic.LocalConfig
- 14, // 14: meshtastic.OEMStore.oem_local_module_config:type_name -> meshtastic.LocalModuleConfig
- 15, // 15: meshtastic.NodeRemoteHardwarePin.pin:type_name -> meshtastic.RemoteHardwarePin
- 16, // [16:16] is the sub-list for method output_type
- 16, // [16:16] is the sub-list for method input_type
- 16, // [16:16] is the sub-list for extension type_name
- 16, // [16:16] is the sub-list for extension extendee
- 0, // [0:16] is the sub-list for field type_name
+ 7, // 0: meshtastic.PositionLite.location_source:type_name -> meshtastic.Position.LocSource
+ 8, // 1: meshtastic.UserLite.hw_model:type_name -> meshtastic.HardwareModel
+ 9, // 2: meshtastic.UserLite.role:type_name -> meshtastic.Config.DeviceConfig.Role
+ 1, // 3: meshtastic.NodeInfoLite.user:type_name -> meshtastic.UserLite
+ 0, // 4: meshtastic.NodeInfoLite.position:type_name -> meshtastic.PositionLite
+ 10, // 5: meshtastic.NodeInfoLite.device_metrics:type_name -> meshtastic.DeviceMetrics
+ 11, // 6: meshtastic.DeviceState.my_node:type_name -> meshtastic.MyNodeInfo
+ 12, // 7: meshtastic.DeviceState.owner:type_name -> meshtastic.User
+ 13, // 8: meshtastic.DeviceState.receive_queue:type_name -> meshtastic.MeshPacket
+ 13, // 9: meshtastic.DeviceState.rx_text_message:type_name -> meshtastic.MeshPacket
+ 13, // 10: meshtastic.DeviceState.rx_waypoint:type_name -> meshtastic.MeshPacket
+ 14, // 11: meshtastic.DeviceState.node_remote_hardware_pins:type_name -> meshtastic.NodeRemoteHardwarePin
+ 2, // 12: meshtastic.NodeDatabase.nodes:type_name -> meshtastic.NodeInfoLite
+ 15, // 13: meshtastic.ChannelFile.channels:type_name -> meshtastic.Channel
+ 16, // 14: meshtastic.BackupPreferences.config:type_name -> meshtastic.LocalConfig
+ 17, // 15: meshtastic.BackupPreferences.module_config:type_name -> meshtastic.LocalModuleConfig
+ 5, // 16: meshtastic.BackupPreferences.channels:type_name -> meshtastic.ChannelFile
+ 12, // 17: meshtastic.BackupPreferences.owner:type_name -> meshtastic.User
+ 18, // [18:18] is the sub-list for method output_type
+ 18, // [18:18] is the sub-list for method input_type
+ 18, // [18:18] is the sub-list for extension type_name
+ 18, // [18:18] is the sub-list for extension extendee
+ 0, // [0:18] is the sub-list for field type_name
}
func init() { file_meshtastic_deviceonly_proto_init() }
@@ -827,101 +864,28 @@ func file_meshtastic_deviceonly_proto_init() {
return
}
file_meshtastic_channel_proto_init()
- file_meshtastic_localonly_proto_init()
file_meshtastic_mesh_proto_init()
file_meshtastic_telemetry_proto_init()
- file_meshtastic_module_config_proto_init()
- if !protoimpl.UnsafeEnabled {
- file_meshtastic_deviceonly_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DeviceState); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_deviceonly_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*NodeInfoLite); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_deviceonly_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*PositionLite); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_deviceonly_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ChannelFile); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_deviceonly_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*OEMStore); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_deviceonly_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*NodeRemoteHardwarePin); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- }
+ file_meshtastic_config_proto_init()
+ file_meshtastic_localonly_proto_init()
+ file_nanopb_proto_init()
+ file_meshtastic_deviceonly_proto_msgTypes[1].OneofWrappers = []any{}
+ file_meshtastic_deviceonly_proto_msgTypes[2].OneofWrappers = []any{}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
- RawDescriptor: file_meshtastic_deviceonly_proto_rawDesc,
- NumEnums: 1,
- NumMessages: 6,
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_meshtastic_deviceonly_proto_rawDesc), len(file_meshtastic_deviceonly_proto_rawDesc)),
+ NumEnums: 0,
+ NumMessages: 7,
NumExtensions: 0,
NumServices: 0,
},
GoTypes: file_meshtastic_deviceonly_proto_goTypes,
DependencyIndexes: file_meshtastic_deviceonly_proto_depIdxs,
- EnumInfos: file_meshtastic_deviceonly_proto_enumTypes,
MessageInfos: file_meshtastic_deviceonly_proto_msgTypes,
}.Build()
File_meshtastic_deviceonly_proto = out.File
- file_meshtastic_deviceonly_proto_rawDesc = nil
file_meshtastic_deviceonly_proto_goTypes = nil
file_meshtastic_deviceonly_proto_depIdxs = nil
}
diff --git a/meshtastic/deviceonly_vtproto.pb.go b/meshtastic/deviceonly_vtproto.pb.go
index 95918ce..7aac949 100644
--- a/meshtastic/deviceonly_vtproto.pb.go
+++ b/meshtastic/deviceonly_vtproto.pb.go
@@ -20,7 +20,7 @@ const (
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
-func (m *DeviceState) MarshalVT() (dAtA []byte, err error) {
+func (m *PositionLite) MarshalVT() (dAtA []byte, err error) {
if m == nil {
return nil, nil
}
@@ -33,12 +33,12 @@ func (m *DeviceState) MarshalVT() (dAtA []byte, err error) {
return dAtA[:n], nil
}
-func (m *DeviceState) MarshalToVT(dAtA []byte) (int, error) {
+func (m *PositionLite) MarshalToVT(dAtA []byte) (int, error) {
size := m.SizeVT()
return m.MarshalToSizedBufferVT(dAtA[:size])
}
-func (m *DeviceState) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+func (m *PositionLite) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
if m == nil {
return 0, nil
}
@@ -50,53 +50,70 @@ func (m *DeviceState) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
- if len(m.NodeDbLite) > 0 {
- for iNdEx := len(m.NodeDbLite) - 1; iNdEx >= 0; iNdEx-- {
- size, err := m.NodeDbLite[iNdEx].MarshalToSizedBufferVT(dAtA[:i])
- if err != nil {
- return 0, err
- }
- i -= size
- i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
- i--
- dAtA[i] = 0x72
- }
+ if m.LocationSource != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.LocationSource))
+ i--
+ dAtA[i] = 0x28
}
- if len(m.NodeRemoteHardwarePins) > 0 {
- for iNdEx := len(m.NodeRemoteHardwarePins) - 1; iNdEx >= 0; iNdEx-- {
- size, err := m.NodeRemoteHardwarePins[iNdEx].MarshalToSizedBufferVT(dAtA[:i])
- if err != nil {
- return 0, err
- }
- i -= size
- i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
- i--
- dAtA[i] = 0x6a
- }
+ if m.Time != 0 {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(m.Time))
+ i--
+ dAtA[i] = 0x25
}
- if m.RxWaypoint != nil {
- size, err := m.RxWaypoint.MarshalToSizedBufferVT(dAtA[:i])
- if err != nil {
- return 0, err
- }
- i -= size
- i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ if m.Altitude != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Altitude))
i--
- dAtA[i] = 0x62
+ dAtA[i] = 0x18
}
- if m.DidGpsReset {
+ if m.LongitudeI != 0 {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(m.LongitudeI))
i--
- if m.DidGpsReset {
- dAtA[i] = 1
- } else {
- dAtA[i] = 0
- }
+ dAtA[i] = 0x15
+ }
+ if m.LatitudeI != 0 {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(m.LatitudeI))
i--
- dAtA[i] = 0x58
+ dAtA[i] = 0xd
}
- if m.NoSave {
+ return len(dAtA) - i, nil
+}
+
+func (m *UserLite) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *UserLite) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *UserLite) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if m.IsUnmessagable != nil {
i--
- if m.NoSave {
+ if *m.IsUnmessagable {
dAtA[i] = 1
} else {
dAtA[i] = 0
@@ -104,53 +121,54 @@ func (m *DeviceState) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i--
dAtA[i] = 0x48
}
- if m.Version != 0 {
- i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Version))
+ if len(m.PublicKey) > 0 {
+ i -= len(m.PublicKey)
+ copy(dAtA[i:], m.PublicKey)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.PublicKey)))
i--
- dAtA[i] = 0x40
+ dAtA[i] = 0x3a
}
- if m.RxTextMessage != nil {
- size, err := m.RxTextMessage.MarshalToSizedBufferVT(dAtA[:i])
- if err != nil {
- return 0, err
- }
- i -= size
- i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ if m.Role != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Role))
i--
- dAtA[i] = 0x3a
+ dAtA[i] = 0x30
}
- if len(m.ReceiveQueue) > 0 {
- for iNdEx := len(m.ReceiveQueue) - 1; iNdEx >= 0; iNdEx-- {
- size, err := m.ReceiveQueue[iNdEx].MarshalToSizedBufferVT(dAtA[:i])
- if err != nil {
- return 0, err
- }
- i -= size
- i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
- i--
- dAtA[i] = 0x2a
+ if m.IsLicensed {
+ i--
+ if m.IsLicensed {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
}
+ i--
+ dAtA[i] = 0x28
}
- if m.Owner != nil {
- size, err := m.Owner.MarshalToSizedBufferVT(dAtA[:i])
- if err != nil {
- return 0, err
- }
- i -= size
- i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ if m.HwModel != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.HwModel))
+ i--
+ dAtA[i] = 0x20
+ }
+ if len(m.ShortName) > 0 {
+ i -= len(m.ShortName)
+ copy(dAtA[i:], m.ShortName)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.ShortName)))
i--
dAtA[i] = 0x1a
}
- if m.MyNode != nil {
- size, err := m.MyNode.MarshalToSizedBufferVT(dAtA[:i])
- if err != nil {
- return 0, err
- }
- i -= size
- i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ if len(m.LongName) > 0 {
+ i -= len(m.LongName)
+ copy(dAtA[i:], m.LongName)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.LongName)))
i--
dAtA[i] = 0x12
}
+ if len(m.Macaddr) > 0 {
+ i -= len(m.Macaddr)
+ copy(dAtA[i:], m.Macaddr)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.Macaddr)))
+ i--
+ dAtA[i] = 0xa
+ }
return len(dAtA) - i, nil
}
@@ -184,6 +202,51 @@ func (m *NodeInfoLite) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
+ if m.Bitfield != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Bitfield))
+ i--
+ dAtA[i] = 0x68
+ }
+ if m.NextHop != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.NextHop))
+ i--
+ dAtA[i] = 0x60
+ }
+ if m.IsIgnored {
+ i--
+ if m.IsIgnored {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x58
+ }
+ if m.IsFavorite {
+ i--
+ if m.IsFavorite {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x50
+ }
+ if m.HopsAway != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.HopsAway))
+ i--
+ dAtA[i] = 0x48
+ }
+ if m.ViaMqtt {
+ i--
+ if m.ViaMqtt {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x40
+ }
if m.Channel != 0 {
i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Channel))
i--
@@ -239,7 +302,7 @@ func (m *NodeInfoLite) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
return len(dAtA) - i, nil
}
-func (m *PositionLite) MarshalVT() (dAtA []byte, err error) {
+func (m *DeviceState) MarshalVT() (dAtA []byte, err error) {
if m == nil {
return nil, nil
}
@@ -252,12 +315,12 @@ func (m *PositionLite) MarshalVT() (dAtA []byte, err error) {
return dAtA[:n], nil
}
-func (m *PositionLite) MarshalToVT(dAtA []byte) (int, error) {
+func (m *DeviceState) MarshalToVT(dAtA []byte) (int, error) {
size := m.SizeVT()
return m.MarshalToSizedBufferVT(dAtA[:size])
}
-func (m *PositionLite) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+func (m *DeviceState) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
if m == nil {
return 0, nil
}
@@ -269,33 +332,144 @@ func (m *PositionLite) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
- if m.LocationSource != 0 {
- i = protohelpers.EncodeVarint(dAtA, i, uint64(m.LocationSource))
+ if len(m.NodeRemoteHardwarePins) > 0 {
+ for iNdEx := len(m.NodeRemoteHardwarePins) - 1; iNdEx >= 0; iNdEx-- {
+ size, err := m.NodeRemoteHardwarePins[iNdEx].MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x6a
+ }
+ }
+ if m.RxWaypoint != nil {
+ size, err := m.RxWaypoint.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
i--
- dAtA[i] = 0x28
+ dAtA[i] = 0x62
}
- if m.Time != 0 {
- i -= 4
- binary.LittleEndian.PutUint32(dAtA[i:], uint32(m.Time))
+ if m.DidGpsReset {
i--
- dAtA[i] = 0x25
+ if m.DidGpsReset {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x58
}
- if m.Altitude != 0 {
- i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Altitude))
+ if m.NoSave {
i--
- dAtA[i] = 0x18
+ if m.NoSave {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x48
}
- if m.LongitudeI != 0 {
- i -= 4
- binary.LittleEndian.PutUint32(dAtA[i:], uint32(m.LongitudeI))
+ if m.Version != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Version))
i--
- dAtA[i] = 0x15
+ dAtA[i] = 0x40
}
- if m.LatitudeI != 0 {
- i -= 4
- binary.LittleEndian.PutUint32(dAtA[i:], uint32(m.LatitudeI))
+ if m.RxTextMessage != nil {
+ size, err := m.RxTextMessage.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
i--
- dAtA[i] = 0xd
+ dAtA[i] = 0x3a
+ }
+ if len(m.ReceiveQueue) > 0 {
+ for iNdEx := len(m.ReceiveQueue) - 1; iNdEx >= 0; iNdEx-- {
+ size, err := m.ReceiveQueue[iNdEx].MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x2a
+ }
+ }
+ if m.Owner != nil {
+ size, err := m.Owner.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x1a
+ }
+ if m.MyNode != nil {
+ size, err := m.MyNode.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x12
+ }
+ return len(dAtA) - i, nil
+}
+
+func (m *NodeDatabase) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *NodeDatabase) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *NodeDatabase) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if len(m.Nodes) > 0 {
+ for iNdEx := len(m.Nodes) - 1; iNdEx >= 0; iNdEx-- {
+ size, err := m.Nodes[iNdEx].MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x12
+ }
+ }
+ if m.Version != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Version))
+ i--
+ dAtA[i] = 0x8
}
return len(dAtA) - i, nil
}
@@ -350,7 +524,7 @@ func (m *ChannelFile) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
return len(dAtA) - i, nil
}
-func (m *OEMStore) MarshalVT() (dAtA []byte, err error) {
+func (m *BackupPreferences) MarshalVT() (dAtA []byte, err error) {
if m == nil {
return nil, nil
}
@@ -363,12 +537,12 @@ func (m *OEMStore) MarshalVT() (dAtA []byte, err error) {
return dAtA[:n], nil
}
-func (m *OEMStore) MarshalToVT(dAtA []byte) (int, error) {
+func (m *BackupPreferences) MarshalToVT(dAtA []byte) (int, error) {
size := m.SizeVT()
return m.MarshalToSizedBufferVT(dAtA[:size])
}
-func (m *OEMStore) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+func (m *BackupPreferences) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
if m == nil {
return 0, nil
}
@@ -380,161 +554,118 @@ func (m *OEMStore) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
- if m.OemLocalModuleConfig != nil {
- size, err := m.OemLocalModuleConfig.MarshalToSizedBufferVT(dAtA[:i])
+ if m.Owner != nil {
+ size, err := m.Owner.MarshalToSizedBufferVT(dAtA[:i])
if err != nil {
return 0, err
}
i -= size
i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
i--
- dAtA[i] = 0x42
+ dAtA[i] = 0x32
}
- if m.OemLocalConfig != nil {
- size, err := m.OemLocalConfig.MarshalToSizedBufferVT(dAtA[:i])
+ if m.Channels != nil {
+ size, err := m.Channels.MarshalToSizedBufferVT(dAtA[:i])
if err != nil {
return 0, err
}
i -= size
i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
i--
- dAtA[i] = 0x3a
- }
- if len(m.OemAesKey) > 0 {
- i -= len(m.OemAesKey)
- copy(dAtA[i:], m.OemAesKey)
- i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.OemAesKey)))
- i--
- dAtA[i] = 0x32
- }
- if len(m.OemText) > 0 {
- i -= len(m.OemText)
- copy(dAtA[i:], m.OemText)
- i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.OemText)))
- i--
dAtA[i] = 0x2a
}
- if m.OemFont != 0 {
- i = protohelpers.EncodeVarint(dAtA, i, uint64(m.OemFont))
+ if m.ModuleConfig != nil {
+ size, err := m.ModuleConfig.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
i--
- dAtA[i] = 0x20
+ dAtA[i] = 0x22
}
- if len(m.OemIconBits) > 0 {
- i -= len(m.OemIconBits)
- copy(dAtA[i:], m.OemIconBits)
- i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.OemIconBits)))
+ if m.Config != nil {
+ size, err := m.Config.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
i--
dAtA[i] = 0x1a
}
- if m.OemIconHeight != 0 {
- i = protohelpers.EncodeVarint(dAtA, i, uint64(m.OemIconHeight))
+ if m.Timestamp != 0 {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(m.Timestamp))
i--
- dAtA[i] = 0x10
+ dAtA[i] = 0x15
}
- if m.OemIconWidth != 0 {
- i = protohelpers.EncodeVarint(dAtA, i, uint64(m.OemIconWidth))
+ if m.Version != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Version))
i--
dAtA[i] = 0x8
}
return len(dAtA) - i, nil
}
-func (m *NodeRemoteHardwarePin) MarshalVT() (dAtA []byte, err error) {
- if m == nil {
- return nil, nil
- }
- size := m.SizeVT()
- dAtA = make([]byte, size)
- n, err := m.MarshalToSizedBufferVT(dAtA[:size])
- if err != nil {
- return nil, err
- }
- return dAtA[:n], nil
-}
-
-func (m *NodeRemoteHardwarePin) MarshalToVT(dAtA []byte) (int, error) {
- size := m.SizeVT()
- return m.MarshalToSizedBufferVT(dAtA[:size])
-}
-
-func (m *NodeRemoteHardwarePin) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+func (m *PositionLite) SizeVT() (n int) {
if m == nil {
- return 0, nil
+ return 0
}
- i := len(dAtA)
- _ = i
var l int
_ = l
- if m.unknownFields != nil {
- i -= len(m.unknownFields)
- copy(dAtA[i:], m.unknownFields)
+ if m.LatitudeI != 0 {
+ n += 5
}
- if m.Pin != nil {
- size, err := m.Pin.MarshalToSizedBufferVT(dAtA[:i])
- if err != nil {
- return 0, err
- }
- i -= size
- i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
- i--
- dAtA[i] = 0x12
+ if m.LongitudeI != 0 {
+ n += 5
}
- if m.NodeNum != 0 {
- i = protohelpers.EncodeVarint(dAtA, i, uint64(m.NodeNum))
- i--
- dAtA[i] = 0x8
+ if m.Altitude != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Altitude))
}
- return len(dAtA) - i, nil
+ if m.Time != 0 {
+ n += 5
+ }
+ if m.LocationSource != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.LocationSource))
+ }
+ n += len(m.unknownFields)
+ return n
}
-func (m *DeviceState) SizeVT() (n int) {
+func (m *UserLite) SizeVT() (n int) {
if m == nil {
return 0
}
var l int
_ = l
- if m.MyNode != nil {
- l = m.MyNode.SizeVT()
+ l = len(m.Macaddr)
+ if l > 0 {
n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
}
- if m.Owner != nil {
- l = m.Owner.SizeVT()
+ l = len(m.LongName)
+ if l > 0 {
n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
}
- if len(m.ReceiveQueue) > 0 {
- for _, e := range m.ReceiveQueue {
- l = e.SizeVT()
- n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
- }
- }
- if m.RxTextMessage != nil {
- l = m.RxTextMessage.SizeVT()
+ l = len(m.ShortName)
+ if l > 0 {
n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
}
- if m.Version != 0 {
- n += 1 + protohelpers.SizeOfVarint(uint64(m.Version))
+ if m.HwModel != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.HwModel))
}
- if m.NoSave {
+ if m.IsLicensed {
n += 2
}
- if m.DidGpsReset {
- n += 2
+ if m.Role != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Role))
}
- if m.RxWaypoint != nil {
- l = m.RxWaypoint.SizeVT()
+ l = len(m.PublicKey)
+ if l > 0 {
n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
}
- if len(m.NodeRemoteHardwarePins) > 0 {
- for _, e := range m.NodeRemoteHardwarePins {
- l = e.SizeVT()
- n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
- }
- }
- if len(m.NodeDbLite) > 0 {
- for _, e := range m.NodeDbLite {
- l = e.SizeVT()
- n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
- }
+ if m.IsUnmessagable != nil {
+ n += 2
}
n += len(m.unknownFields)
return n
@@ -570,30 +701,89 @@ func (m *NodeInfoLite) SizeVT() (n int) {
if m.Channel != 0 {
n += 1 + protohelpers.SizeOfVarint(uint64(m.Channel))
}
+ if m.ViaMqtt {
+ n += 2
+ }
+ if m.HopsAway != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.HopsAway))
+ }
+ if m.IsFavorite {
+ n += 2
+ }
+ if m.IsIgnored {
+ n += 2
+ }
+ if m.NextHop != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.NextHop))
+ }
+ if m.Bitfield != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Bitfield))
+ }
n += len(m.unknownFields)
return n
}
-func (m *PositionLite) SizeVT() (n int) {
+func (m *DeviceState) SizeVT() (n int) {
if m == nil {
return 0
}
var l int
_ = l
- if m.LatitudeI != 0 {
- n += 5
+ if m.MyNode != nil {
+ l = m.MyNode.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
}
- if m.LongitudeI != 0 {
- n += 5
+ if m.Owner != nil {
+ l = m.Owner.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
}
- if m.Altitude != 0 {
- n += 1 + protohelpers.SizeOfVarint(uint64(m.Altitude))
+ if len(m.ReceiveQueue) > 0 {
+ for _, e := range m.ReceiveQueue {
+ l = e.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
}
- if m.Time != 0 {
- n += 5
+ if m.RxTextMessage != nil {
+ l = m.RxTextMessage.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
}
- if m.LocationSource != 0 {
- n += 1 + protohelpers.SizeOfVarint(uint64(m.LocationSource))
+ if m.Version != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Version))
+ }
+ if m.NoSave {
+ n += 2
+ }
+ if m.DidGpsReset {
+ n += 2
+ }
+ if m.RxWaypoint != nil {
+ l = m.RxWaypoint.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ if len(m.NodeRemoteHardwarePins) > 0 {
+ for _, e := range m.NodeRemoteHardwarePins {
+ l = e.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *NodeDatabase) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.Version != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Version))
+ }
+ if len(m.Nodes) > 0 {
+ for _, e := range m.Nodes {
+ l = e.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
}
n += len(m.unknownFields)
return n
@@ -618,63 +808,39 @@ func (m *ChannelFile) SizeVT() (n int) {
return n
}
-func (m *OEMStore) SizeVT() (n int) {
+func (m *BackupPreferences) SizeVT() (n int) {
if m == nil {
return 0
}
var l int
_ = l
- if m.OemIconWidth != 0 {
- n += 1 + protohelpers.SizeOfVarint(uint64(m.OemIconWidth))
- }
- if m.OemIconHeight != 0 {
- n += 1 + protohelpers.SizeOfVarint(uint64(m.OemIconHeight))
- }
- l = len(m.OemIconBits)
- if l > 0 {
- n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
- }
- if m.OemFont != 0 {
- n += 1 + protohelpers.SizeOfVarint(uint64(m.OemFont))
+ if m.Version != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Version))
}
- l = len(m.OemText)
- if l > 0 {
- n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ if m.Timestamp != 0 {
+ n += 5
}
- l = len(m.OemAesKey)
- if l > 0 {
+ if m.Config != nil {
+ l = m.Config.SizeVT()
n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
}
- if m.OemLocalConfig != nil {
- l = m.OemLocalConfig.SizeVT()
+ if m.ModuleConfig != nil {
+ l = m.ModuleConfig.SizeVT()
n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
}
- if m.OemLocalModuleConfig != nil {
- l = m.OemLocalModuleConfig.SizeVT()
+ if m.Channels != nil {
+ l = m.Channels.SizeVT()
n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
}
- n += len(m.unknownFields)
- return n
-}
-
-func (m *NodeRemoteHardwarePin) SizeVT() (n int) {
- if m == nil {
- return 0
- }
- var l int
- _ = l
- if m.NodeNum != 0 {
- n += 1 + protohelpers.SizeOfVarint(uint64(m.NodeNum))
- }
- if m.Pin != nil {
- l = m.Pin.SizeVT()
+ if m.Owner != nil {
+ l = m.Owner.SizeVT()
n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
}
n += len(m.unknownFields)
return n
}
-func (m *DeviceState) UnmarshalVT(dAtA []byte) error {
+func (m *PositionLite) UnmarshalVT(dAtA []byte) error {
l := len(dAtA)
iNdEx := 0
for iNdEx < l {
@@ -697,17 +863,37 @@ func (m *DeviceState) UnmarshalVT(dAtA []byte) error {
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
- return fmt.Errorf("proto: DeviceState: wiretype end group for non-group")
+ return fmt.Errorf("proto: PositionLite: wiretype end group for non-group")
}
if fieldNum <= 0 {
- return fmt.Errorf("proto: DeviceState: illegal tag %d (wire type %d)", fieldNum, wire)
+ return fmt.Errorf("proto: PositionLite: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
+ case 1:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field LatitudeI", wireType)
+ }
+ m.LatitudeI = 0
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.LatitudeI = int32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
case 2:
- if wireType != 2 {
- return fmt.Errorf("proto: wrong wireType = %d for field MyNode", wireType)
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field LongitudeI", wireType)
}
- var msglen int
+ m.LongitudeI = 0
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.LongitudeI = int32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ case 3:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Altitude", wireType)
+ }
+ m.Altitude = 0
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -717,33 +903,26 @@ func (m *DeviceState) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- msglen |= int(b&0x7F) << shift
+ m.Altitude |= int32(b&0x7F) << shift
if b < 0x80 {
break
}
}
- if msglen < 0 {
- return protohelpers.ErrInvalidLength
- }
- postIndex := iNdEx + msglen
- if postIndex < 0 {
- return protohelpers.ErrInvalidLength
+ case 4:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Time", wireType)
}
- if postIndex > l {
+ m.Time = 0
+ if (iNdEx + 4) > l {
return io.ErrUnexpectedEOF
}
- if m.MyNode == nil {
- m.MyNode = &MyNodeInfo{}
- }
- if err := m.MyNode.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
- return err
- }
- iNdEx = postIndex
- case 3:
- if wireType != 2 {
- return fmt.Errorf("proto: wrong wireType = %d for field Owner", wireType)
+ m.Time = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ case 5:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field LocationSource", wireType)
}
- var msglen int
+ m.LocationSource = 0
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -753,33 +932,67 @@ func (m *DeviceState) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- msglen |= int(b&0x7F) << shift
+ m.LocationSource |= Position_LocSource(b&0x7F) << shift
if b < 0x80 {
break
}
}
- if msglen < 0 {
- return protohelpers.ErrInvalidLength
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
}
- postIndex := iNdEx + msglen
- if postIndex < 0 {
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
return protohelpers.ErrInvalidLength
}
- if postIndex > l {
+ if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
- if m.Owner == nil {
- m.Owner = &User{}
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *UserLite) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
}
- if err := m.Owner.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
- return err
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
}
- iNdEx = postIndex
- case 5:
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: UserLite: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: UserLite: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
if wireType != 2 {
- return fmt.Errorf("proto: wrong wireType = %d for field ReceiveQueue", wireType)
+ return fmt.Errorf("proto: wrong wireType = %d for field Macaddr", wireType)
}
- var msglen int
+ var byteLen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -789,31 +1002,31 @@ func (m *DeviceState) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- msglen |= int(b&0x7F) << shift
+ byteLen |= int(b&0x7F) << shift
if b < 0x80 {
break
}
}
- if msglen < 0 {
+ if byteLen < 0 {
return protohelpers.ErrInvalidLength
}
- postIndex := iNdEx + msglen
+ postIndex := iNdEx + byteLen
if postIndex < 0 {
return protohelpers.ErrInvalidLength
}
if postIndex > l {
return io.ErrUnexpectedEOF
}
- m.ReceiveQueue = append(m.ReceiveQueue, &MeshPacket{})
- if err := m.ReceiveQueue[len(m.ReceiveQueue)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
- return err
+ m.Macaddr = append(m.Macaddr[:0], dAtA[iNdEx:postIndex]...)
+ if m.Macaddr == nil {
+ m.Macaddr = []byte{}
}
iNdEx = postIndex
- case 7:
+ case 2:
if wireType != 2 {
- return fmt.Errorf("proto: wrong wireType = %d for field RxTextMessage", wireType)
+ return fmt.Errorf("proto: wrong wireType = %d for field LongName", wireType)
}
- var msglen int
+ var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -823,33 +1036,29 @@ func (m *DeviceState) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- msglen |= int(b&0x7F) << shift
+ stringLen |= uint64(b&0x7F) << shift
if b < 0x80 {
break
}
}
- if msglen < 0 {
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
return protohelpers.ErrInvalidLength
}
- postIndex := iNdEx + msglen
+ postIndex := iNdEx + intStringLen
if postIndex < 0 {
return protohelpers.ErrInvalidLength
}
if postIndex > l {
return io.ErrUnexpectedEOF
}
- if m.RxTextMessage == nil {
- m.RxTextMessage = &MeshPacket{}
- }
- if err := m.RxTextMessage.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
- return err
- }
+ m.LongName = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
- case 8:
- if wireType != 0 {
- return fmt.Errorf("proto: wrong wireType = %d for field Version", wireType)
+ case 3:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field ShortName", wireType)
}
- m.Version = 0
+ var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -859,16 +1068,29 @@ func (m *DeviceState) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- m.Version |= uint32(b&0x7F) << shift
+ stringLen |= uint64(b&0x7F) << shift
if b < 0x80 {
break
}
}
- case 9:
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.ShortName = string(dAtA[iNdEx:postIndex])
+ iNdEx = postIndex
+ case 4:
if wireType != 0 {
- return fmt.Errorf("proto: wrong wireType = %d for field NoSave", wireType)
+ return fmt.Errorf("proto: wrong wireType = %d for field HwModel", wireType)
}
- var v int
+ m.HwModel = 0
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -878,15 +1100,14 @@ func (m *DeviceState) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- v |= int(b&0x7F) << shift
+ m.HwModel |= HardwareModel(b&0x7F) << shift
if b < 0x80 {
break
}
}
- m.NoSave = bool(v != 0)
- case 11:
+ case 5:
if wireType != 0 {
- return fmt.Errorf("proto: wrong wireType = %d for field DidGpsReset", wireType)
+ return fmt.Errorf("proto: wrong wireType = %d for field IsLicensed", wireType)
}
var v int
for shift := uint(0); ; shift += 7 {
@@ -903,12 +1124,12 @@ func (m *DeviceState) UnmarshalVT(dAtA []byte) error {
break
}
}
- m.DidGpsReset = bool(v != 0)
- case 12:
- if wireType != 2 {
- return fmt.Errorf("proto: wrong wireType = %d for field RxWaypoint", wireType)
+ m.IsLicensed = bool(v != 0)
+ case 6:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Role", wireType)
}
- var msglen int
+ m.Role = 0
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -918,33 +1139,16 @@ func (m *DeviceState) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- msglen |= int(b&0x7F) << shift
+ m.Role |= Config_DeviceConfig_Role(b&0x7F) << shift
if b < 0x80 {
break
}
}
- if msglen < 0 {
- return protohelpers.ErrInvalidLength
- }
- postIndex := iNdEx + msglen
- if postIndex < 0 {
- return protohelpers.ErrInvalidLength
- }
- if postIndex > l {
- return io.ErrUnexpectedEOF
- }
- if m.RxWaypoint == nil {
- m.RxWaypoint = &MeshPacket{}
- }
- if err := m.RxWaypoint.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
- return err
- }
- iNdEx = postIndex
- case 13:
+ case 7:
if wireType != 2 {
- return fmt.Errorf("proto: wrong wireType = %d for field NodeRemoteHardwarePins", wireType)
+ return fmt.Errorf("proto: wrong wireType = %d for field PublicKey", wireType)
}
- var msglen int
+ var byteLen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -954,31 +1158,31 @@ func (m *DeviceState) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- msglen |= int(b&0x7F) << shift
+ byteLen |= int(b&0x7F) << shift
if b < 0x80 {
break
}
}
- if msglen < 0 {
+ if byteLen < 0 {
return protohelpers.ErrInvalidLength
}
- postIndex := iNdEx + msglen
+ postIndex := iNdEx + byteLen
if postIndex < 0 {
return protohelpers.ErrInvalidLength
}
if postIndex > l {
return io.ErrUnexpectedEOF
}
- m.NodeRemoteHardwarePins = append(m.NodeRemoteHardwarePins, &NodeRemoteHardwarePin{})
- if err := m.NodeRemoteHardwarePins[len(m.NodeRemoteHardwarePins)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
- return err
+ m.PublicKey = append(m.PublicKey[:0], dAtA[iNdEx:postIndex]...)
+ if m.PublicKey == nil {
+ m.PublicKey = []byte{}
}
iNdEx = postIndex
- case 14:
- if wireType != 2 {
- return fmt.Errorf("proto: wrong wireType = %d for field NodeDbLite", wireType)
+ case 9:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field IsUnmessagable", wireType)
}
- var msglen int
+ var v int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -988,26 +1192,13 @@ func (m *DeviceState) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- msglen |= int(b&0x7F) << shift
+ v |= int(b&0x7F) << shift
if b < 0x80 {
break
}
}
- if msglen < 0 {
- return protohelpers.ErrInvalidLength
- }
- postIndex := iNdEx + msglen
- if postIndex < 0 {
- return protohelpers.ErrInvalidLength
- }
- if postIndex > l {
- return io.ErrUnexpectedEOF
- }
- m.NodeDbLite = append(m.NodeDbLite, &NodeInfoLite{})
- if err := m.NodeDbLite[len(m.NodeDbLite)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
- return err
- }
- iNdEx = postIndex
+ b := bool(v != 0)
+ m.IsUnmessagable = &b
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
@@ -1108,7 +1299,7 @@ func (m *NodeInfoLite) UnmarshalVT(dAtA []byte) error {
return io.ErrUnexpectedEOF
}
if m.User == nil {
- m.User = &User{}
+ m.User = &UserLite{}
}
if err := m.User.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
return err
@@ -1226,82 +1417,71 @@ func (m *NodeInfoLite) UnmarshalVT(dAtA []byte) error {
break
}
}
- default:
- iNdEx = preIndex
- skippy, err := protohelpers.Skip(dAtA[iNdEx:])
- if err != nil {
- return err
- }
- if (skippy < 0) || (iNdEx+skippy) < 0 {
- return protohelpers.ErrInvalidLength
- }
- if (iNdEx + skippy) > l {
- return io.ErrUnexpectedEOF
- }
- m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
- iNdEx += skippy
- }
- }
-
- if iNdEx > l {
- return io.ErrUnexpectedEOF
- }
- return nil
-}
-func (m *PositionLite) UnmarshalVT(dAtA []byte) error {
- l := len(dAtA)
- iNdEx := 0
- for iNdEx < l {
- preIndex := iNdEx
- var wire uint64
- for shift := uint(0); ; shift += 7 {
- if shift >= 64 {
- return protohelpers.ErrIntOverflow
- }
- if iNdEx >= l {
- return io.ErrUnexpectedEOF
+ case 8:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field ViaMqtt", wireType)
}
- b := dAtA[iNdEx]
- iNdEx++
- wire |= uint64(b&0x7F) << shift
- if b < 0x80 {
- break
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
}
- }
- fieldNum := int32(wire >> 3)
- wireType := int(wire & 0x7)
- if wireType == 4 {
- return fmt.Errorf("proto: PositionLite: wiretype end group for non-group")
- }
- if fieldNum <= 0 {
- return fmt.Errorf("proto: PositionLite: illegal tag %d (wire type %d)", fieldNum, wire)
- }
- switch fieldNum {
- case 1:
- if wireType != 5 {
- return fmt.Errorf("proto: wrong wireType = %d for field LatitudeI", wireType)
+ m.ViaMqtt = bool(v != 0)
+ case 9:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field HopsAway", wireType)
}
- m.LatitudeI = 0
- if (iNdEx + 4) > l {
- return io.ErrUnexpectedEOF
+ var v uint32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
}
- m.LatitudeI = int32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
- iNdEx += 4
- case 2:
- if wireType != 5 {
- return fmt.Errorf("proto: wrong wireType = %d for field LongitudeI", wireType)
+ m.HopsAway = &v
+ case 10:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field IsFavorite", wireType)
}
- m.LongitudeI = 0
- if (iNdEx + 4) > l {
- return io.ErrUnexpectedEOF
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
}
- m.LongitudeI = int32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
- iNdEx += 4
- case 3:
+ m.IsFavorite = bool(v != 0)
+ case 11:
if wireType != 0 {
- return fmt.Errorf("proto: wrong wireType = %d for field Altitude", wireType)
+ return fmt.Errorf("proto: wrong wireType = %d for field IsIgnored", wireType)
}
- m.Altitude = 0
+ var v int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -1311,26 +1491,36 @@ func (m *PositionLite) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- m.Altitude |= int32(b&0x7F) << shift
+ v |= int(b&0x7F) << shift
if b < 0x80 {
break
}
}
- case 4:
- if wireType != 5 {
- return fmt.Errorf("proto: wrong wireType = %d for field Time", wireType)
+ m.IsIgnored = bool(v != 0)
+ case 12:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field NextHop", wireType)
}
- m.Time = 0
- if (iNdEx + 4) > l {
- return io.ErrUnexpectedEOF
+ m.NextHop = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.NextHop |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
}
- m.Time = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
- iNdEx += 4
- case 5:
+ case 13:
if wireType != 0 {
- return fmt.Errorf("proto: wrong wireType = %d for field LocationSource", wireType)
+ return fmt.Errorf("proto: wrong wireType = %d for field Bitfield", wireType)
}
- m.LocationSource = 0
+ m.Bitfield = 0
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -1340,7 +1530,7 @@ func (m *PositionLite) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- m.LocationSource |= Position_LocSource(b&0x7F) << shift
+ m.Bitfield |= uint32(b&0x7F) << shift
if b < 0x80 {
break
}
@@ -1367,7 +1557,7 @@ func (m *PositionLite) UnmarshalVT(dAtA []byte) error {
}
return nil
}
-func (m *ChannelFile) UnmarshalVT(dAtA []byte) error {
+func (m *DeviceState) UnmarshalVT(dAtA []byte) error {
l := len(dAtA)
iNdEx := 0
for iNdEx < l {
@@ -1390,15 +1580,15 @@ func (m *ChannelFile) UnmarshalVT(dAtA []byte) error {
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
- return fmt.Errorf("proto: ChannelFile: wiretype end group for non-group")
+ return fmt.Errorf("proto: DeviceState: wiretype end group for non-group")
}
if fieldNum <= 0 {
- return fmt.Errorf("proto: ChannelFile: illegal tag %d (wire type %d)", fieldNum, wire)
+ return fmt.Errorf("proto: DeviceState: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
- case 1:
+ case 2:
if wireType != 2 {
- return fmt.Errorf("proto: wrong wireType = %d for field Channels", wireType)
+ return fmt.Errorf("proto: wrong wireType = %d for field MyNode", wireType)
}
var msglen int
for shift := uint(0); ; shift += 7 {
@@ -1425,16 +1615,18 @@ func (m *ChannelFile) UnmarshalVT(dAtA []byte) error {
if postIndex > l {
return io.ErrUnexpectedEOF
}
- m.Channels = append(m.Channels, &Channel{})
- if err := m.Channels[len(m.Channels)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ if m.MyNode == nil {
+ m.MyNode = &MyNodeInfo{}
+ }
+ if err := m.MyNode.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
return err
}
iNdEx = postIndex
- case 2:
- if wireType != 0 {
- return fmt.Errorf("proto: wrong wireType = %d for field Version", wireType)
+ case 3:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Owner", wireType)
}
- m.Version = 0
+ var msglen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -1444,67 +1636,67 @@ func (m *ChannelFile) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- m.Version |= uint32(b&0x7F) << shift
+ msglen |= int(b&0x7F) << shift
if b < 0x80 {
break
}
}
- default:
- iNdEx = preIndex
- skippy, err := protohelpers.Skip(dAtA[iNdEx:])
- if err != nil {
- return err
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
}
- if (skippy < 0) || (iNdEx+skippy) < 0 {
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
return protohelpers.ErrInvalidLength
}
- if (iNdEx + skippy) > l {
+ if postIndex > l {
return io.ErrUnexpectedEOF
}
- m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
- iNdEx += skippy
- }
- }
-
- if iNdEx > l {
- return io.ErrUnexpectedEOF
- }
- return nil
-}
-func (m *OEMStore) UnmarshalVT(dAtA []byte) error {
- l := len(dAtA)
- iNdEx := 0
- for iNdEx < l {
- preIndex := iNdEx
- var wire uint64
- for shift := uint(0); ; shift += 7 {
- if shift >= 64 {
- return protohelpers.ErrIntOverflow
+ if m.Owner == nil {
+ m.Owner = &User{}
}
- if iNdEx >= l {
+ if err := m.Owner.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ iNdEx = postIndex
+ case 5:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field ReceiveQueue", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
return io.ErrUnexpectedEOF
}
- b := dAtA[iNdEx]
- iNdEx++
- wire |= uint64(b&0x7F) << shift
- if b < 0x80 {
- break
+ m.ReceiveQueue = append(m.ReceiveQueue, &MeshPacket{})
+ if err := m.ReceiveQueue[len(m.ReceiveQueue)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
}
- }
- fieldNum := int32(wire >> 3)
- wireType := int(wire & 0x7)
- if wireType == 4 {
- return fmt.Errorf("proto: OEMStore: wiretype end group for non-group")
- }
- if fieldNum <= 0 {
- return fmt.Errorf("proto: OEMStore: illegal tag %d (wire type %d)", fieldNum, wire)
- }
- switch fieldNum {
- case 1:
- if wireType != 0 {
- return fmt.Errorf("proto: wrong wireType = %d for field OemIconWidth", wireType)
+ iNdEx = postIndex
+ case 7:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field RxTextMessage", wireType)
}
- m.OemIconWidth = 0
+ var msglen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -1514,16 +1706,33 @@ func (m *OEMStore) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- m.OemIconWidth |= uint32(b&0x7F) << shift
+ msglen |= int(b&0x7F) << shift
if b < 0x80 {
break
}
}
- case 2:
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if m.RxTextMessage == nil {
+ m.RxTextMessage = &MeshPacket{}
+ }
+ if err := m.RxTextMessage.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ iNdEx = postIndex
+ case 8:
if wireType != 0 {
- return fmt.Errorf("proto: wrong wireType = %d for field OemIconHeight", wireType)
+ return fmt.Errorf("proto: wrong wireType = %d for field Version", wireType)
}
- m.OemIconHeight = 0
+ m.Version = 0
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -1533,16 +1742,16 @@ func (m *OEMStore) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- m.OemIconHeight |= uint32(b&0x7F) << shift
+ m.Version |= uint32(b&0x7F) << shift
if b < 0x80 {
break
}
}
- case 3:
- if wireType != 2 {
- return fmt.Errorf("proto: wrong wireType = %d for field OemIconBits", wireType)
+ case 9:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field NoSave", wireType)
}
- var byteLen int
+ var v int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -1552,31 +1761,17 @@ func (m *OEMStore) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- byteLen |= int(b&0x7F) << shift
+ v |= int(b&0x7F) << shift
if b < 0x80 {
break
}
}
- if byteLen < 0 {
- return protohelpers.ErrInvalidLength
- }
- postIndex := iNdEx + byteLen
- if postIndex < 0 {
- return protohelpers.ErrInvalidLength
- }
- if postIndex > l {
- return io.ErrUnexpectedEOF
- }
- m.OemIconBits = append(m.OemIconBits[:0], dAtA[iNdEx:postIndex]...)
- if m.OemIconBits == nil {
- m.OemIconBits = []byte{}
- }
- iNdEx = postIndex
- case 4:
+ m.NoSave = bool(v != 0)
+ case 11:
if wireType != 0 {
- return fmt.Errorf("proto: wrong wireType = %d for field OemFont", wireType)
+ return fmt.Errorf("proto: wrong wireType = %d for field DidGpsReset", wireType)
}
- m.OemFont = 0
+ var v int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -1586,16 +1781,17 @@ func (m *OEMStore) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- m.OemFont |= ScreenFonts(b&0x7F) << shift
+ v |= int(b&0x7F) << shift
if b < 0x80 {
break
}
}
- case 5:
+ m.DidGpsReset = bool(v != 0)
+ case 12:
if wireType != 2 {
- return fmt.Errorf("proto: wrong wireType = %d for field OemText", wireType)
+ return fmt.Errorf("proto: wrong wireType = %d for field RxWaypoint", wireType)
}
- var stringLen uint64
+ var msglen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -1605,29 +1801,33 @@ func (m *OEMStore) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- stringLen |= uint64(b&0x7F) << shift
+ msglen |= int(b&0x7F) << shift
if b < 0x80 {
break
}
}
- intStringLen := int(stringLen)
- if intStringLen < 0 {
+ if msglen < 0 {
return protohelpers.ErrInvalidLength
}
- postIndex := iNdEx + intStringLen
+ postIndex := iNdEx + msglen
if postIndex < 0 {
return protohelpers.ErrInvalidLength
}
if postIndex > l {
return io.ErrUnexpectedEOF
}
- m.OemText = string(dAtA[iNdEx:postIndex])
+ if m.RxWaypoint == nil {
+ m.RxWaypoint = &MeshPacket{}
+ }
+ if err := m.RxWaypoint.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
iNdEx = postIndex
- case 6:
+ case 13:
if wireType != 2 {
- return fmt.Errorf("proto: wrong wireType = %d for field OemAesKey", wireType)
+ return fmt.Errorf("proto: wrong wireType = %d for field NodeRemoteHardwarePins", wireType)
}
- var byteLen int
+ var msglen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -1637,29 +1837,99 @@ func (m *OEMStore) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- byteLen |= int(b&0x7F) << shift
+ msglen |= int(b&0x7F) << shift
if b < 0x80 {
break
}
}
- if byteLen < 0 {
+ if msglen < 0 {
return protohelpers.ErrInvalidLength
}
- postIndex := iNdEx + byteLen
+ postIndex := iNdEx + msglen
if postIndex < 0 {
return protohelpers.ErrInvalidLength
}
if postIndex > l {
return io.ErrUnexpectedEOF
}
- m.OemAesKey = append(m.OemAesKey[:0], dAtA[iNdEx:postIndex]...)
- if m.OemAesKey == nil {
- m.OemAesKey = []byte{}
+ m.NodeRemoteHardwarePins = append(m.NodeRemoteHardwarePins, &NodeRemoteHardwarePin{})
+ if err := m.NodeRemoteHardwarePins[len(m.NodeRemoteHardwarePins)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
}
iNdEx = postIndex
- case 7:
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *NodeDatabase) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: NodeDatabase: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: NodeDatabase: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Version", wireType)
+ }
+ m.Version = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.Version |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 2:
if wireType != 2 {
- return fmt.Errorf("proto: wrong wireType = %d for field OemLocalConfig", wireType)
+ return fmt.Errorf("proto: wrong wireType = %d for field Nodes", wireType)
}
var msglen int
for shift := uint(0); ; shift += 7 {
@@ -1686,16 +1956,65 @@ func (m *OEMStore) UnmarshalVT(dAtA []byte) error {
if postIndex > l {
return io.ErrUnexpectedEOF
}
- if m.OemLocalConfig == nil {
- m.OemLocalConfig = &LocalConfig{}
- }
- if err := m.OemLocalConfig.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ m.Nodes = append(m.Nodes, &NodeInfoLite{})
+ if err := m.Nodes[len(m.Nodes)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
return err
}
iNdEx = postIndex
- case 8:
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *ChannelFile) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: ChannelFile: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: ChannelFile: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
if wireType != 2 {
- return fmt.Errorf("proto: wrong wireType = %d for field OemLocalModuleConfig", wireType)
+ return fmt.Errorf("proto: wrong wireType = %d for field Channels", wireType)
}
var msglen int
for shift := uint(0); ; shift += 7 {
@@ -1722,13 +2041,30 @@ func (m *OEMStore) UnmarshalVT(dAtA []byte) error {
if postIndex > l {
return io.ErrUnexpectedEOF
}
- if m.OemLocalModuleConfig == nil {
- m.OemLocalModuleConfig = &LocalModuleConfig{}
- }
- if err := m.OemLocalModuleConfig.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ m.Channels = append(m.Channels, &Channel{})
+ if err := m.Channels[len(m.Channels)-1].UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
return err
}
iNdEx = postIndex
+ case 2:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Version", wireType)
+ }
+ m.Version = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.Version |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
@@ -1751,7 +2087,7 @@ func (m *OEMStore) UnmarshalVT(dAtA []byte) error {
}
return nil
}
-func (m *NodeRemoteHardwarePin) UnmarshalVT(dAtA []byte) error {
+func (m *BackupPreferences) UnmarshalVT(dAtA []byte) error {
l := len(dAtA)
iNdEx := 0
for iNdEx < l {
@@ -1774,17 +2110,17 @@ func (m *NodeRemoteHardwarePin) UnmarshalVT(dAtA []byte) error {
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
- return fmt.Errorf("proto: NodeRemoteHardwarePin: wiretype end group for non-group")
+ return fmt.Errorf("proto: BackupPreferences: wiretype end group for non-group")
}
if fieldNum <= 0 {
- return fmt.Errorf("proto: NodeRemoteHardwarePin: illegal tag %d (wire type %d)", fieldNum, wire)
+ return fmt.Errorf("proto: BackupPreferences: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 0 {
- return fmt.Errorf("proto: wrong wireType = %d for field NodeNum", wireType)
+ return fmt.Errorf("proto: wrong wireType = %d for field Version", wireType)
}
- m.NodeNum = 0
+ m.Version = 0
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -1794,14 +2130,132 @@ func (m *NodeRemoteHardwarePin) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- m.NodeNum |= uint32(b&0x7F) << shift
+ m.Version |= uint32(b&0x7F) << shift
if b < 0x80 {
break
}
}
case 2:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Timestamp", wireType)
+ }
+ m.Timestamp = 0
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.Timestamp = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ case 3:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Config", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if m.Config == nil {
+ m.Config = &LocalConfig{}
+ }
+ if err := m.Config.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ iNdEx = postIndex
+ case 4:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field ModuleConfig", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if m.ModuleConfig == nil {
+ m.ModuleConfig = &LocalModuleConfig{}
+ }
+ if err := m.ModuleConfig.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ iNdEx = postIndex
+ case 5:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Channels", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if m.Channels == nil {
+ m.Channels = &ChannelFile{}
+ }
+ if err := m.Channels.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ iNdEx = postIndex
+ case 6:
if wireType != 2 {
- return fmt.Errorf("proto: wrong wireType = %d for field Pin", wireType)
+ return fmt.Errorf("proto: wrong wireType = %d for field Owner", wireType)
}
var msglen int
for shift := uint(0); ; shift += 7 {
@@ -1828,10 +2282,10 @@ func (m *NodeRemoteHardwarePin) UnmarshalVT(dAtA []byte) error {
if postIndex > l {
return io.ErrUnexpectedEOF
}
- if m.Pin == nil {
- m.Pin = &RemoteHardwarePin{}
+ if m.Owner == nil {
+ m.Owner = &User{}
}
- if err := m.Pin.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ if err := m.Owner.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
return err
}
iNdEx = postIndex
diff --git a/meshtastic/interdevice.pb.go b/meshtastic/interdevice.pb.go
new file mode 100644
index 0000000..6728730
--- /dev/null
+++ b/meshtastic/interdevice.pb.go
@@ -0,0 +1,372 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.36.6
+// protoc v3.21.12
+// source: meshtastic/interdevice.proto
+
+package generated
+
+import (
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ reflect "reflect"
+ sync "sync"
+ unsafe "unsafe"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+type MessageType int32
+
+const (
+ MessageType_ACK MessageType = 0
+ MessageType_COLLECT_INTERVAL MessageType = 160 // in ms
+ MessageType_BEEP_ON MessageType = 161 // duration ms
+ MessageType_BEEP_OFF MessageType = 162 // cancel prematurely
+ MessageType_SHUTDOWN MessageType = 163
+ MessageType_POWER_ON MessageType = 164
+ MessageType_SCD41_TEMP MessageType = 176
+ MessageType_SCD41_HUMIDITY MessageType = 177
+ MessageType_SCD41_CO2 MessageType = 178
+ MessageType_AHT20_TEMP MessageType = 179
+ MessageType_AHT20_HUMIDITY MessageType = 180
+ MessageType_TVOC_INDEX MessageType = 181
+)
+
+// Enum value maps for MessageType.
+var (
+ MessageType_name = map[int32]string{
+ 0: "ACK",
+ 160: "COLLECT_INTERVAL",
+ 161: "BEEP_ON",
+ 162: "BEEP_OFF",
+ 163: "SHUTDOWN",
+ 164: "POWER_ON",
+ 176: "SCD41_TEMP",
+ 177: "SCD41_HUMIDITY",
+ 178: "SCD41_CO2",
+ 179: "AHT20_TEMP",
+ 180: "AHT20_HUMIDITY",
+ 181: "TVOC_INDEX",
+ }
+ MessageType_value = map[string]int32{
+ "ACK": 0,
+ "COLLECT_INTERVAL": 160,
+ "BEEP_ON": 161,
+ "BEEP_OFF": 162,
+ "SHUTDOWN": 163,
+ "POWER_ON": 164,
+ "SCD41_TEMP": 176,
+ "SCD41_HUMIDITY": 177,
+ "SCD41_CO2": 178,
+ "AHT20_TEMP": 179,
+ "AHT20_HUMIDITY": 180,
+ "TVOC_INDEX": 181,
+ }
+)
+
+func (x MessageType) Enum() *MessageType {
+ p := new(MessageType)
+ *p = x
+ return p
+}
+
+func (x MessageType) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (MessageType) Descriptor() protoreflect.EnumDescriptor {
+ return file_meshtastic_interdevice_proto_enumTypes[0].Descriptor()
+}
+
+func (MessageType) Type() protoreflect.EnumType {
+ return &file_meshtastic_interdevice_proto_enumTypes[0]
+}
+
+func (x MessageType) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use MessageType.Descriptor instead.
+func (MessageType) EnumDescriptor() ([]byte, []int) {
+ return file_meshtastic_interdevice_proto_rawDescGZIP(), []int{0}
+}
+
+type SensorData struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // The message type
+ Type MessageType `protobuf:"varint,1,opt,name=type,proto3,enum=meshtastic.MessageType" json:"type,omitempty"`
+ // The sensor data, either as a float or an uint32
+ //
+ // Types that are valid to be assigned to Data:
+ //
+ // *SensorData_FloatValue
+ // *SensorData_Uint32Value
+ Data isSensorData_Data `protobuf_oneof:"data"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *SensorData) Reset() {
+ *x = SensorData{}
+ mi := &file_meshtastic_interdevice_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *SensorData) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SensorData) ProtoMessage() {}
+
+func (x *SensorData) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_interdevice_proto_msgTypes[0]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SensorData.ProtoReflect.Descriptor instead.
+func (*SensorData) Descriptor() ([]byte, []int) {
+ return file_meshtastic_interdevice_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *SensorData) GetType() MessageType {
+ if x != nil {
+ return x.Type
+ }
+ return MessageType_ACK
+}
+
+func (x *SensorData) GetData() isSensorData_Data {
+ if x != nil {
+ return x.Data
+ }
+ return nil
+}
+
+func (x *SensorData) GetFloatValue() float32 {
+ if x != nil {
+ if x, ok := x.Data.(*SensorData_FloatValue); ok {
+ return x.FloatValue
+ }
+ }
+ return 0
+}
+
+func (x *SensorData) GetUint32Value() uint32 {
+ if x != nil {
+ if x, ok := x.Data.(*SensorData_Uint32Value); ok {
+ return x.Uint32Value
+ }
+ }
+ return 0
+}
+
+type isSensorData_Data interface {
+ isSensorData_Data()
+}
+
+type SensorData_FloatValue struct {
+ FloatValue float32 `protobuf:"fixed32,2,opt,name=float_value,json=floatValue,proto3,oneof"`
+}
+
+type SensorData_Uint32Value struct {
+ Uint32Value uint32 `protobuf:"varint,3,opt,name=uint32_value,json=uint32Value,proto3,oneof"`
+}
+
+func (*SensorData_FloatValue) isSensorData_Data() {}
+
+func (*SensorData_Uint32Value) isSensorData_Data() {}
+
+type InterdeviceMessage struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // The message data
+ //
+ // Types that are valid to be assigned to Data:
+ //
+ // *InterdeviceMessage_Nmea
+ // *InterdeviceMessage_Sensor
+ Data isInterdeviceMessage_Data `protobuf_oneof:"data"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *InterdeviceMessage) Reset() {
+ *x = InterdeviceMessage{}
+ mi := &file_meshtastic_interdevice_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *InterdeviceMessage) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*InterdeviceMessage) ProtoMessage() {}
+
+func (x *InterdeviceMessage) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_interdevice_proto_msgTypes[1]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use InterdeviceMessage.ProtoReflect.Descriptor instead.
+func (*InterdeviceMessage) Descriptor() ([]byte, []int) {
+ return file_meshtastic_interdevice_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *InterdeviceMessage) GetData() isInterdeviceMessage_Data {
+ if x != nil {
+ return x.Data
+ }
+ return nil
+}
+
+func (x *InterdeviceMessage) GetNmea() string {
+ if x != nil {
+ if x, ok := x.Data.(*InterdeviceMessage_Nmea); ok {
+ return x.Nmea
+ }
+ }
+ return ""
+}
+
+func (x *InterdeviceMessage) GetSensor() *SensorData {
+ if x != nil {
+ if x, ok := x.Data.(*InterdeviceMessage_Sensor); ok {
+ return x.Sensor
+ }
+ }
+ return nil
+}
+
+type isInterdeviceMessage_Data interface {
+ isInterdeviceMessage_Data()
+}
+
+type InterdeviceMessage_Nmea struct {
+ Nmea string `protobuf:"bytes,1,opt,name=nmea,proto3,oneof"`
+}
+
+type InterdeviceMessage_Sensor struct {
+ Sensor *SensorData `protobuf:"bytes,2,opt,name=sensor,proto3,oneof"`
+}
+
+func (*InterdeviceMessage_Nmea) isInterdeviceMessage_Data() {}
+
+func (*InterdeviceMessage_Sensor) isInterdeviceMessage_Data() {}
+
+var File_meshtastic_interdevice_proto protoreflect.FileDescriptor
+
+const file_meshtastic_interdevice_proto_rawDesc = "" +
+ "\n" +
+ "\x1cmeshtastic/interdevice.proto\x12\n" +
+ "meshtastic\"\x89\x01\n" +
+ "\n" +
+ "SensorData\x12+\n" +
+ "\x04type\x18\x01 \x01(\x0e2\x17.meshtastic.MessageTypeR\x04type\x12!\n" +
+ "\vfloat_value\x18\x02 \x01(\x02H\x00R\n" +
+ "floatValue\x12#\n" +
+ "\fuint32_value\x18\x03 \x01(\rH\x00R\vuint32ValueB\x06\n" +
+ "\x04data\"d\n" +
+ "\x12InterdeviceMessage\x12\x14\n" +
+ "\x04nmea\x18\x01 \x01(\tH\x00R\x04nmea\x120\n" +
+ "\x06sensor\x18\x02 \x01(\v2\x16.meshtastic.SensorDataH\x00R\x06sensorB\x06\n" +
+ "\x04data*\xd5\x01\n" +
+ "\vMessageType\x12\a\n" +
+ "\x03ACK\x10\x00\x12\x15\n" +
+ "\x10COLLECT_INTERVAL\x10\xa0\x01\x12\f\n" +
+ "\aBEEP_ON\x10\xa1\x01\x12\r\n" +
+ "\bBEEP_OFF\x10\xa2\x01\x12\r\n" +
+ "\bSHUTDOWN\x10\xa3\x01\x12\r\n" +
+ "\bPOWER_ON\x10\xa4\x01\x12\x0f\n" +
+ "\n" +
+ "SCD41_TEMP\x10\xb0\x01\x12\x13\n" +
+ "\x0eSCD41_HUMIDITY\x10\xb1\x01\x12\x0e\n" +
+ "\tSCD41_CO2\x10\xb2\x01\x12\x0f\n" +
+ "\n" +
+ "AHT20_TEMP\x10\xb3\x01\x12\x13\n" +
+ "\x0eAHT20_HUMIDITY\x10\xb4\x01\x12\x0f\n" +
+ "\n" +
+ "TVOC_INDEX\x10\xb5\x01Bf\n" +
+ "\x13com.geeksville.meshB\x11InterdeviceProtosZ\"github.com/meshtastic/go/generated\xaa\x02\x14Meshtastic.Protobufs\xba\x02\x00b\x06proto3"
+
+var (
+ file_meshtastic_interdevice_proto_rawDescOnce sync.Once
+ file_meshtastic_interdevice_proto_rawDescData []byte
+)
+
+func file_meshtastic_interdevice_proto_rawDescGZIP() []byte {
+ file_meshtastic_interdevice_proto_rawDescOnce.Do(func() {
+ file_meshtastic_interdevice_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_meshtastic_interdevice_proto_rawDesc), len(file_meshtastic_interdevice_proto_rawDesc)))
+ })
+ return file_meshtastic_interdevice_proto_rawDescData
+}
+
+var file_meshtastic_interdevice_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
+var file_meshtastic_interdevice_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
+var file_meshtastic_interdevice_proto_goTypes = []any{
+ (MessageType)(0), // 0: meshtastic.MessageType
+ (*SensorData)(nil), // 1: meshtastic.SensorData
+ (*InterdeviceMessage)(nil), // 2: meshtastic.InterdeviceMessage
+}
+var file_meshtastic_interdevice_proto_depIdxs = []int32{
+ 0, // 0: meshtastic.SensorData.type:type_name -> meshtastic.MessageType
+ 1, // 1: meshtastic.InterdeviceMessage.sensor:type_name -> meshtastic.SensorData
+ 2, // [2:2] is the sub-list for method output_type
+ 2, // [2:2] is the sub-list for method input_type
+ 2, // [2:2] is the sub-list for extension type_name
+ 2, // [2:2] is the sub-list for extension extendee
+ 0, // [0:2] is the sub-list for field type_name
+}
+
+func init() { file_meshtastic_interdevice_proto_init() }
+func file_meshtastic_interdevice_proto_init() {
+ if File_meshtastic_interdevice_proto != nil {
+ return
+ }
+ file_meshtastic_interdevice_proto_msgTypes[0].OneofWrappers = []any{
+ (*SensorData_FloatValue)(nil),
+ (*SensorData_Uint32Value)(nil),
+ }
+ file_meshtastic_interdevice_proto_msgTypes[1].OneofWrappers = []any{
+ (*InterdeviceMessage_Nmea)(nil),
+ (*InterdeviceMessage_Sensor)(nil),
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_meshtastic_interdevice_proto_rawDesc), len(file_meshtastic_interdevice_proto_rawDesc)),
+ NumEnums: 1,
+ NumMessages: 2,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_meshtastic_interdevice_proto_goTypes,
+ DependencyIndexes: file_meshtastic_interdevice_proto_depIdxs,
+ EnumInfos: file_meshtastic_interdevice_proto_enumTypes,
+ MessageInfos: file_meshtastic_interdevice_proto_msgTypes,
+ }.Build()
+ File_meshtastic_interdevice_proto = out.File
+ file_meshtastic_interdevice_proto_goTypes = nil
+ file_meshtastic_interdevice_proto_depIdxs = nil
+}
diff --git a/meshtastic/interdevice_vtproto.pb.go b/meshtastic/interdevice_vtproto.pb.go
new file mode 100644
index 0000000..8f923c6
--- /dev/null
+++ b/meshtastic/interdevice_vtproto.pb.go
@@ -0,0 +1,463 @@
+// Code generated by protoc-gen-go-vtproto. DO NOT EDIT.
+// protoc-gen-go-vtproto version: v0.6.0
+// source: meshtastic/interdevice.proto
+
+package generated
+
+import (
+ binary "encoding/binary"
+ fmt "fmt"
+ protohelpers "github.com/planetscale/vtprotobuf/protohelpers"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ io "io"
+ math "math"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+func (m *SensorData) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *SensorData) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *SensorData) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if vtmsg, ok := m.Data.(interface {
+ MarshalToSizedBufferVT([]byte) (int, error)
+ }); ok {
+ size, err := vtmsg.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ }
+ if m.Type != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Type))
+ i--
+ dAtA[i] = 0x8
+ }
+ return len(dAtA) - i, nil
+}
+
+func (m *SensorData_FloatValue) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *SensorData_FloatValue) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.FloatValue))))
+ i--
+ dAtA[i] = 0x15
+ return len(dAtA) - i, nil
+}
+func (m *SensorData_Uint32Value) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *SensorData_Uint32Value) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Uint32Value))
+ i--
+ dAtA[i] = 0x18
+ return len(dAtA) - i, nil
+}
+func (m *InterdeviceMessage) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *InterdeviceMessage) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *InterdeviceMessage) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if vtmsg, ok := m.Data.(interface {
+ MarshalToSizedBufferVT([]byte) (int, error)
+ }); ok {
+ size, err := vtmsg.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ }
+ return len(dAtA) - i, nil
+}
+
+func (m *InterdeviceMessage_Nmea) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *InterdeviceMessage_Nmea) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ i -= len(m.Nmea)
+ copy(dAtA[i:], m.Nmea)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.Nmea)))
+ i--
+ dAtA[i] = 0xa
+ return len(dAtA) - i, nil
+}
+func (m *InterdeviceMessage_Sensor) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *InterdeviceMessage_Sensor) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ if m.Sensor != nil {
+ size, err := m.Sensor.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x12
+ }
+ return len(dAtA) - i, nil
+}
+func (m *SensorData) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.Type != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Type))
+ }
+ if vtmsg, ok := m.Data.(interface{ SizeVT() int }); ok {
+ n += vtmsg.SizeVT()
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *SensorData_FloatValue) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ n += 5
+ return n
+}
+func (m *SensorData_Uint32Value) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Uint32Value))
+ return n
+}
+func (m *InterdeviceMessage) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if vtmsg, ok := m.Data.(interface{ SizeVT() int }); ok {
+ n += vtmsg.SizeVT()
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *InterdeviceMessage_Nmea) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ l = len(m.Nmea)
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ return n
+}
+func (m *InterdeviceMessage_Sensor) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.Sensor != nil {
+ l = m.Sensor.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ return n
+}
+func (m *SensorData) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: SensorData: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: SensorData: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType)
+ }
+ m.Type = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.Type |= MessageType(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 2:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field FloatValue", wireType)
+ }
+ var v uint32
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ m.Data = &SensorData_FloatValue{FloatValue: float32(math.Float32frombits(v))}
+ case 3:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Uint32Value", wireType)
+ }
+ var v uint32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.Data = &SensorData_Uint32Value{Uint32Value: v}
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *InterdeviceMessage) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: InterdeviceMessage: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: InterdeviceMessage: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Nmea", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.Data = &InterdeviceMessage_Nmea{Nmea: string(dAtA[iNdEx:postIndex])}
+ iNdEx = postIndex
+ case 2:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Sensor", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if oneof, ok := m.Data.(*InterdeviceMessage_Sensor); ok {
+ if err := oneof.Sensor.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ } else {
+ v := &SensorData{}
+ if err := v.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ m.Data = &InterdeviceMessage_Sensor{Sensor: v}
+ }
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
diff --git a/meshtastic/localonly.pb.go b/meshtastic/localonly.pb.go
index 2918abd..1089e70 100644
--- a/meshtastic/localonly.pb.go
+++ b/meshtastic/localonly.pb.go
@@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.32.0
-// protoc v4.25.2
+// protoc-gen-go v1.36.6
+// protoc v3.21.12
// source: meshtastic/localonly.proto
package generated
@@ -11,6 +11,7 @@ import (
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
+ unsafe "unsafe"
)
const (
@@ -21,10 +22,7 @@ const (
)
type LocalConfig struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// The part of the config that is specific to the Device
Device *Config_DeviceConfig `protobuf:"bytes,1,opt,name=device,proto3" json:"device,omitempty"`
// The part of the config that is specific to the GPS Position
@@ -43,15 +41,17 @@ type LocalConfig struct {
// incompatible changes This integer is set at build time and is private to
// NodeDB.cpp in the device code.
Version uint32 `protobuf:"varint,8,opt,name=version,proto3" json:"version,omitempty"`
+ // The part of the config that is specific to Security settings
+ Security *Config_SecurityConfig `protobuf:"bytes,9,opt,name=security,proto3" json:"security,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *LocalConfig) Reset() {
*x = LocalConfig{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_localonly_proto_msgTypes[0]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_localonly_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *LocalConfig) String() string {
@@ -62,7 +62,7 @@ func (*LocalConfig) ProtoMessage() {}
func (x *LocalConfig) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_localonly_proto_msgTypes[0]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -133,11 +133,15 @@ func (x *LocalConfig) GetVersion() uint32 {
return 0
}
-type LocalModuleConfig struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
+func (x *LocalConfig) GetSecurity() *Config_SecurityConfig {
+ if x != nil {
+ return x.Security
+ }
+ return nil
+}
+type LocalModuleConfig struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
// The part of the config that is specific to the MQTT module
Mqtt *ModuleConfig_MQTTConfig `protobuf:"bytes,1,opt,name=mqtt,proto3" json:"mqtt,omitempty"`
// The part of the config that is specific to the Serial module
@@ -167,16 +171,16 @@ type LocalModuleConfig struct {
// A version integer used to invalidate old save files when we make
// incompatible changes This integer is set at build time and is private to
// NodeDB.cpp in the device code.
- Version uint32 `protobuf:"varint,8,opt,name=version,proto3" json:"version,omitempty"`
+ Version uint32 `protobuf:"varint,8,opt,name=version,proto3" json:"version,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *LocalModuleConfig) Reset() {
*x = LocalModuleConfig{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_localonly_proto_msgTypes[1]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_localonly_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *LocalModuleConfig) String() string {
@@ -187,7 +191,7 @@ func (*LocalModuleConfig) ProtoMessage() {}
func (x *LocalModuleConfig) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_localonly_proto_msgTypes[1]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -302,132 +306,55 @@ func (x *LocalModuleConfig) GetVersion() uint32 {
var File_meshtastic_localonly_proto protoreflect.FileDescriptor
-var file_meshtastic_localonly_proto_rawDesc = []byte{
- 0x0a, 0x1a, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x6c, 0x6f, 0x63,
- 0x61, 0x6c, 0x6f, 0x6e, 0x6c, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0a, 0x6d, 0x65,
- 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x1a, 0x17, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61,
- 0x73, 0x74, 0x69, 0x63, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74,
- 0x6f, 0x1a, 0x1e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x6d, 0x6f,
- 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74,
- 0x6f, 0x22, 0xc2, 0x03, 0x0a, 0x0b, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x12, 0x37, 0x0a, 0x06, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x0b, 0x32, 0x1f, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43,
- 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66,
- 0x69, 0x67, 0x52, 0x06, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x12, 0x3d, 0x0a, 0x08, 0x70, 0x6f,
- 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6d,
- 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
- 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52,
- 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x0a, 0x05, 0x70, 0x6f, 0x77,
- 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74,
- 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x50, 0x6f, 0x77,
- 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x05, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x12,
- 0x3a, 0x0a, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
- 0x32, 0x20, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x6f,
- 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x43, 0x6f, 0x6e, 0x66,
- 0x69, 0x67, 0x52, 0x07, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x3a, 0x0a, 0x07, 0x64,
- 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x6d,
- 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
- 0x2e, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x07,
- 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x12, 0x31, 0x0a, 0x04, 0x6c, 0x6f, 0x72, 0x61, 0x18,
- 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74,
- 0x69, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x4c, 0x6f, 0x52, 0x61, 0x43, 0x6f,
- 0x6e, 0x66, 0x69, 0x67, 0x52, 0x04, 0x6c, 0x6f, 0x72, 0x61, 0x12, 0x40, 0x0a, 0x09, 0x62, 0x6c,
- 0x75, 0x65, 0x74, 0x6f, 0x6f, 0x74, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e,
- 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x2e, 0x42, 0x6c, 0x75, 0x65, 0x74, 0x6f, 0x6f, 0x74, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x52, 0x09, 0x62, 0x6c, 0x75, 0x65, 0x74, 0x6f, 0x6f, 0x74, 0x68, 0x12, 0x18, 0x0a, 0x07,
- 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76,
- 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0xae, 0x08, 0x0a, 0x11, 0x4c, 0x6f, 0x63, 0x61, 0x6c,
- 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x37, 0x0a, 0x04,
- 0x6d, 0x71, 0x74, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x6d, 0x65, 0x73,
- 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f,
- 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x4d, 0x51, 0x54, 0x54, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52,
- 0x04, 0x6d, 0x71, 0x74, 0x74, 0x12, 0x3d, 0x0a, 0x06, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x18,
- 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74,
- 0x69, 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
- 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x06, 0x73, 0x65,
- 0x72, 0x69, 0x61, 0x6c, 0x12, 0x68, 0x0a, 0x15, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
- 0x5f, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20,
- 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63,
- 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x45, 0x78,
- 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x14, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e,
- 0x61, 0x6c, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x50,
- 0x0a, 0x0d, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x18,
- 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74,
- 0x69, 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
- 0x53, 0x74, 0x6f, 0x72, 0x65, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x43, 0x6f, 0x6e, 0x66,
- 0x69, 0x67, 0x52, 0x0c, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64,
- 0x12, 0x47, 0x0a, 0x0a, 0x72, 0x61, 0x6e, 0x67, 0x65, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x18, 0x05,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69,
- 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x52,
- 0x61, 0x6e, 0x67, 0x65, 0x54, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x09,
- 0x72, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x09, 0x74, 0x65, 0x6c,
- 0x65, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6d,
- 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65,
- 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x54, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x74, 0x72, 0x79,
- 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x09, 0x74, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x74, 0x72,
- 0x79, 0x12, 0x53, 0x0a, 0x0e, 0x63, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x5f, 0x6d, 0x65, 0x73, 0x73,
- 0x61, 0x67, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6d, 0x65, 0x73, 0x68,
- 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e,
- 0x66, 0x69, 0x67, 0x2e, 0x43, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
- 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0d, 0x63, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x4d,
- 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x3a, 0x0a, 0x05, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x18,
- 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74,
- 0x69, 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e,
- 0x41, 0x75, 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x05, 0x61, 0x75, 0x64,
- 0x69, 0x6f, 0x12, 0x56, 0x0a, 0x0f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x68, 0x61, 0x72,
- 0x64, 0x77, 0x61, 0x72, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x6d, 0x65,
- 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43,
- 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x48, 0x61, 0x72, 0x64,
- 0x77, 0x61, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x72, 0x65, 0x6d, 0x6f,
- 0x74, 0x65, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x12, 0x50, 0x0a, 0x0d, 0x6e, 0x65,
- 0x69, 0x67, 0x68, 0x62, 0x6f, 0x72, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x0b, 0x20, 0x01, 0x28,
- 0x0b, 0x32, 0x2b, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d,
- 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x4e, 0x65, 0x69, 0x67,
- 0x68, 0x62, 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0c,
- 0x6e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x59, 0x0a, 0x10,
- 0x61, 0x6d, 0x62, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x69, 0x67, 0x68, 0x74, 0x69, 0x6e, 0x67,
- 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73,
- 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
- 0x2e, 0x41, 0x6d, 0x62, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x69, 0x6e, 0x67,
- 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0f, 0x61, 0x6d, 0x62, 0x69, 0x65, 0x6e, 0x74, 0x4c,
- 0x69, 0x67, 0x68, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x59, 0x0a, 0x10, 0x64, 0x65, 0x74, 0x65, 0x63,
- 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x18, 0x0d, 0x20, 0x01, 0x28,
- 0x0b, 0x32, 0x2e, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d,
- 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x44, 0x65, 0x74, 0x65,
- 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x52, 0x0f, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x6e, 0x73,
- 0x6f, 0x72, 0x12, 0x49, 0x0a, 0x0a, 0x70, 0x61, 0x78, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72,
- 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73,
- 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
- 0x2e, 0x50, 0x61, 0x78, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x52, 0x0a, 0x70, 0x61, 0x78, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x12, 0x18, 0x0a,
- 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07,
- 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x64, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x2e, 0x67,
- 0x65, 0x65, 0x6b, 0x73, 0x76, 0x69, 0x6c, 0x6c, 0x65, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x42, 0x0f,
- 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x4f, 0x6e, 0x6c, 0x79, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x5a,
- 0x22, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x65, 0x73, 0x68,
- 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x67, 0x6f, 0x2f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61,
- 0x74, 0x65, 0x64, 0xaa, 0x02, 0x14, 0x4d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63,
- 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x73, 0xba, 0x02, 0x00, 0x62, 0x06, 0x70,
- 0x72, 0x6f, 0x74, 0x6f, 0x33,
-}
+const file_meshtastic_localonly_proto_rawDesc = "" +
+ "\n" +
+ "\x1ameshtastic/localonly.proto\x12\n" +
+ "meshtastic\x1a\x17meshtastic/config.proto\x1a\x1emeshtastic/module_config.proto\"\x81\x04\n" +
+ "\vLocalConfig\x127\n" +
+ "\x06device\x18\x01 \x01(\v2\x1f.meshtastic.Config.DeviceConfigR\x06device\x12=\n" +
+ "\bposition\x18\x02 \x01(\v2!.meshtastic.Config.PositionConfigR\bposition\x124\n" +
+ "\x05power\x18\x03 \x01(\v2\x1e.meshtastic.Config.PowerConfigR\x05power\x12:\n" +
+ "\anetwork\x18\x04 \x01(\v2 .meshtastic.Config.NetworkConfigR\anetwork\x12:\n" +
+ "\adisplay\x18\x05 \x01(\v2 .meshtastic.Config.DisplayConfigR\adisplay\x121\n" +
+ "\x04lora\x18\x06 \x01(\v2\x1d.meshtastic.Config.LoRaConfigR\x04lora\x12@\n" +
+ "\tbluetooth\x18\a \x01(\v2\".meshtastic.Config.BluetoothConfigR\tbluetooth\x12\x18\n" +
+ "\aversion\x18\b \x01(\rR\aversion\x12=\n" +
+ "\bsecurity\x18\t \x01(\v2!.meshtastic.Config.SecurityConfigR\bsecurity\"\xae\b\n" +
+ "\x11LocalModuleConfig\x127\n" +
+ "\x04mqtt\x18\x01 \x01(\v2#.meshtastic.ModuleConfig.MQTTConfigR\x04mqtt\x12=\n" +
+ "\x06serial\x18\x02 \x01(\v2%.meshtastic.ModuleConfig.SerialConfigR\x06serial\x12h\n" +
+ "\x15external_notification\x18\x03 \x01(\v23.meshtastic.ModuleConfig.ExternalNotificationConfigR\x14externalNotification\x12P\n" +
+ "\rstore_forward\x18\x04 \x01(\v2+.meshtastic.ModuleConfig.StoreForwardConfigR\fstoreForward\x12G\n" +
+ "\n" +
+ "range_test\x18\x05 \x01(\v2(.meshtastic.ModuleConfig.RangeTestConfigR\trangeTest\x12F\n" +
+ "\ttelemetry\x18\x06 \x01(\v2(.meshtastic.ModuleConfig.TelemetryConfigR\ttelemetry\x12S\n" +
+ "\x0ecanned_message\x18\a \x01(\v2,.meshtastic.ModuleConfig.CannedMessageConfigR\rcannedMessage\x12:\n" +
+ "\x05audio\x18\t \x01(\v2$.meshtastic.ModuleConfig.AudioConfigR\x05audio\x12V\n" +
+ "\x0fremote_hardware\x18\n" +
+ " \x01(\v2-.meshtastic.ModuleConfig.RemoteHardwareConfigR\x0eremoteHardware\x12P\n" +
+ "\rneighbor_info\x18\v \x01(\v2+.meshtastic.ModuleConfig.NeighborInfoConfigR\fneighborInfo\x12Y\n" +
+ "\x10ambient_lighting\x18\f \x01(\v2..meshtastic.ModuleConfig.AmbientLightingConfigR\x0fambientLighting\x12Y\n" +
+ "\x10detection_sensor\x18\r \x01(\v2..meshtastic.ModuleConfig.DetectionSensorConfigR\x0fdetectionSensor\x12I\n" +
+ "\n" +
+ "paxcounter\x18\x0e \x01(\v2).meshtastic.ModuleConfig.PaxcounterConfigR\n" +
+ "paxcounter\x12\x18\n" +
+ "\aversion\x18\b \x01(\rR\aversionBd\n" +
+ "\x13com.geeksville.meshB\x0fLocalOnlyProtosZ\"github.com/meshtastic/go/generated\xaa\x02\x14Meshtastic.Protobufs\xba\x02\x00b\x06proto3"
var (
file_meshtastic_localonly_proto_rawDescOnce sync.Once
- file_meshtastic_localonly_proto_rawDescData = file_meshtastic_localonly_proto_rawDesc
+ file_meshtastic_localonly_proto_rawDescData []byte
)
func file_meshtastic_localonly_proto_rawDescGZIP() []byte {
file_meshtastic_localonly_proto_rawDescOnce.Do(func() {
- file_meshtastic_localonly_proto_rawDescData = protoimpl.X.CompressGZIP(file_meshtastic_localonly_proto_rawDescData)
+ file_meshtastic_localonly_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_meshtastic_localonly_proto_rawDesc), len(file_meshtastic_localonly_proto_rawDesc)))
})
return file_meshtastic_localonly_proto_rawDescData
}
var file_meshtastic_localonly_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
-var file_meshtastic_localonly_proto_goTypes = []interface{}{
+var file_meshtastic_localonly_proto_goTypes = []any{
(*LocalConfig)(nil), // 0: meshtastic.LocalConfig
(*LocalModuleConfig)(nil), // 1: meshtastic.LocalModuleConfig
(*Config_DeviceConfig)(nil), // 2: meshtastic.Config.DeviceConfig
@@ -437,19 +364,20 @@ var file_meshtastic_localonly_proto_goTypes = []interface{}{
(*Config_DisplayConfig)(nil), // 6: meshtastic.Config.DisplayConfig
(*Config_LoRaConfig)(nil), // 7: meshtastic.Config.LoRaConfig
(*Config_BluetoothConfig)(nil), // 8: meshtastic.Config.BluetoothConfig
- (*ModuleConfig_MQTTConfig)(nil), // 9: meshtastic.ModuleConfig.MQTTConfig
- (*ModuleConfig_SerialConfig)(nil), // 10: meshtastic.ModuleConfig.SerialConfig
- (*ModuleConfig_ExternalNotificationConfig)(nil), // 11: meshtastic.ModuleConfig.ExternalNotificationConfig
- (*ModuleConfig_StoreForwardConfig)(nil), // 12: meshtastic.ModuleConfig.StoreForwardConfig
- (*ModuleConfig_RangeTestConfig)(nil), // 13: meshtastic.ModuleConfig.RangeTestConfig
- (*ModuleConfig_TelemetryConfig)(nil), // 14: meshtastic.ModuleConfig.TelemetryConfig
- (*ModuleConfig_CannedMessageConfig)(nil), // 15: meshtastic.ModuleConfig.CannedMessageConfig
- (*ModuleConfig_AudioConfig)(nil), // 16: meshtastic.ModuleConfig.AudioConfig
- (*ModuleConfig_RemoteHardwareConfig)(nil), // 17: meshtastic.ModuleConfig.RemoteHardwareConfig
- (*ModuleConfig_NeighborInfoConfig)(nil), // 18: meshtastic.ModuleConfig.NeighborInfoConfig
- (*ModuleConfig_AmbientLightingConfig)(nil), // 19: meshtastic.ModuleConfig.AmbientLightingConfig
- (*ModuleConfig_DetectionSensorConfig)(nil), // 20: meshtastic.ModuleConfig.DetectionSensorConfig
- (*ModuleConfig_PaxcounterConfig)(nil), // 21: meshtastic.ModuleConfig.PaxcounterConfig
+ (*Config_SecurityConfig)(nil), // 9: meshtastic.Config.SecurityConfig
+ (*ModuleConfig_MQTTConfig)(nil), // 10: meshtastic.ModuleConfig.MQTTConfig
+ (*ModuleConfig_SerialConfig)(nil), // 11: meshtastic.ModuleConfig.SerialConfig
+ (*ModuleConfig_ExternalNotificationConfig)(nil), // 12: meshtastic.ModuleConfig.ExternalNotificationConfig
+ (*ModuleConfig_StoreForwardConfig)(nil), // 13: meshtastic.ModuleConfig.StoreForwardConfig
+ (*ModuleConfig_RangeTestConfig)(nil), // 14: meshtastic.ModuleConfig.RangeTestConfig
+ (*ModuleConfig_TelemetryConfig)(nil), // 15: meshtastic.ModuleConfig.TelemetryConfig
+ (*ModuleConfig_CannedMessageConfig)(nil), // 16: meshtastic.ModuleConfig.CannedMessageConfig
+ (*ModuleConfig_AudioConfig)(nil), // 17: meshtastic.ModuleConfig.AudioConfig
+ (*ModuleConfig_RemoteHardwareConfig)(nil), // 18: meshtastic.ModuleConfig.RemoteHardwareConfig
+ (*ModuleConfig_NeighborInfoConfig)(nil), // 19: meshtastic.ModuleConfig.NeighborInfoConfig
+ (*ModuleConfig_AmbientLightingConfig)(nil), // 20: meshtastic.ModuleConfig.AmbientLightingConfig
+ (*ModuleConfig_DetectionSensorConfig)(nil), // 21: meshtastic.ModuleConfig.DetectionSensorConfig
+ (*ModuleConfig_PaxcounterConfig)(nil), // 22: meshtastic.ModuleConfig.PaxcounterConfig
}
var file_meshtastic_localonly_proto_depIdxs = []int32{
2, // 0: meshtastic.LocalConfig.device:type_name -> meshtastic.Config.DeviceConfig
@@ -459,24 +387,25 @@ var file_meshtastic_localonly_proto_depIdxs = []int32{
6, // 4: meshtastic.LocalConfig.display:type_name -> meshtastic.Config.DisplayConfig
7, // 5: meshtastic.LocalConfig.lora:type_name -> meshtastic.Config.LoRaConfig
8, // 6: meshtastic.LocalConfig.bluetooth:type_name -> meshtastic.Config.BluetoothConfig
- 9, // 7: meshtastic.LocalModuleConfig.mqtt:type_name -> meshtastic.ModuleConfig.MQTTConfig
- 10, // 8: meshtastic.LocalModuleConfig.serial:type_name -> meshtastic.ModuleConfig.SerialConfig
- 11, // 9: meshtastic.LocalModuleConfig.external_notification:type_name -> meshtastic.ModuleConfig.ExternalNotificationConfig
- 12, // 10: meshtastic.LocalModuleConfig.store_forward:type_name -> meshtastic.ModuleConfig.StoreForwardConfig
- 13, // 11: meshtastic.LocalModuleConfig.range_test:type_name -> meshtastic.ModuleConfig.RangeTestConfig
- 14, // 12: meshtastic.LocalModuleConfig.telemetry:type_name -> meshtastic.ModuleConfig.TelemetryConfig
- 15, // 13: meshtastic.LocalModuleConfig.canned_message:type_name -> meshtastic.ModuleConfig.CannedMessageConfig
- 16, // 14: meshtastic.LocalModuleConfig.audio:type_name -> meshtastic.ModuleConfig.AudioConfig
- 17, // 15: meshtastic.LocalModuleConfig.remote_hardware:type_name -> meshtastic.ModuleConfig.RemoteHardwareConfig
- 18, // 16: meshtastic.LocalModuleConfig.neighbor_info:type_name -> meshtastic.ModuleConfig.NeighborInfoConfig
- 19, // 17: meshtastic.LocalModuleConfig.ambient_lighting:type_name -> meshtastic.ModuleConfig.AmbientLightingConfig
- 20, // 18: meshtastic.LocalModuleConfig.detection_sensor:type_name -> meshtastic.ModuleConfig.DetectionSensorConfig
- 21, // 19: meshtastic.LocalModuleConfig.paxcounter:type_name -> meshtastic.ModuleConfig.PaxcounterConfig
- 20, // [20:20] is the sub-list for method output_type
- 20, // [20:20] is the sub-list for method input_type
- 20, // [20:20] is the sub-list for extension type_name
- 20, // [20:20] is the sub-list for extension extendee
- 0, // [0:20] is the sub-list for field type_name
+ 9, // 7: meshtastic.LocalConfig.security:type_name -> meshtastic.Config.SecurityConfig
+ 10, // 8: meshtastic.LocalModuleConfig.mqtt:type_name -> meshtastic.ModuleConfig.MQTTConfig
+ 11, // 9: meshtastic.LocalModuleConfig.serial:type_name -> meshtastic.ModuleConfig.SerialConfig
+ 12, // 10: meshtastic.LocalModuleConfig.external_notification:type_name -> meshtastic.ModuleConfig.ExternalNotificationConfig
+ 13, // 11: meshtastic.LocalModuleConfig.store_forward:type_name -> meshtastic.ModuleConfig.StoreForwardConfig
+ 14, // 12: meshtastic.LocalModuleConfig.range_test:type_name -> meshtastic.ModuleConfig.RangeTestConfig
+ 15, // 13: meshtastic.LocalModuleConfig.telemetry:type_name -> meshtastic.ModuleConfig.TelemetryConfig
+ 16, // 14: meshtastic.LocalModuleConfig.canned_message:type_name -> meshtastic.ModuleConfig.CannedMessageConfig
+ 17, // 15: meshtastic.LocalModuleConfig.audio:type_name -> meshtastic.ModuleConfig.AudioConfig
+ 18, // 16: meshtastic.LocalModuleConfig.remote_hardware:type_name -> meshtastic.ModuleConfig.RemoteHardwareConfig
+ 19, // 17: meshtastic.LocalModuleConfig.neighbor_info:type_name -> meshtastic.ModuleConfig.NeighborInfoConfig
+ 20, // 18: meshtastic.LocalModuleConfig.ambient_lighting:type_name -> meshtastic.ModuleConfig.AmbientLightingConfig
+ 21, // 19: meshtastic.LocalModuleConfig.detection_sensor:type_name -> meshtastic.ModuleConfig.DetectionSensorConfig
+ 22, // 20: meshtastic.LocalModuleConfig.paxcounter:type_name -> meshtastic.ModuleConfig.PaxcounterConfig
+ 21, // [21:21] is the sub-list for method output_type
+ 21, // [21:21] is the sub-list for method input_type
+ 21, // [21:21] is the sub-list for extension type_name
+ 21, // [21:21] is the sub-list for extension extendee
+ 0, // [0:21] is the sub-list for field type_name
}
func init() { file_meshtastic_localonly_proto_init() }
@@ -486,37 +415,11 @@ func file_meshtastic_localonly_proto_init() {
}
file_meshtastic_config_proto_init()
file_meshtastic_module_config_proto_init()
- if !protoimpl.UnsafeEnabled {
- file_meshtastic_localonly_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*LocalConfig); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_localonly_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*LocalModuleConfig); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- }
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
- RawDescriptor: file_meshtastic_localonly_proto_rawDesc,
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_meshtastic_localonly_proto_rawDesc), len(file_meshtastic_localonly_proto_rawDesc)),
NumEnums: 0,
NumMessages: 2,
NumExtensions: 0,
@@ -527,7 +430,6 @@ func file_meshtastic_localonly_proto_init() {
MessageInfos: file_meshtastic_localonly_proto_msgTypes,
}.Build()
File_meshtastic_localonly_proto = out.File
- file_meshtastic_localonly_proto_rawDesc = nil
file_meshtastic_localonly_proto_goTypes = nil
file_meshtastic_localonly_proto_depIdxs = nil
}
diff --git a/meshtastic/localonly_vtproto.pb.go b/meshtastic/localonly_vtproto.pb.go
index 1d7d8c0..93af8e5 100644
--- a/meshtastic/localonly_vtproto.pb.go
+++ b/meshtastic/localonly_vtproto.pb.go
@@ -48,6 +48,16 @@ func (m *LocalConfig) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
+ if m.Security != nil {
+ size, err := m.Security.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x4a
+ }
if m.Version != 0 {
i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Version))
i--
@@ -331,6 +341,10 @@ func (m *LocalConfig) SizeVT() (n int) {
if m.Version != 0 {
n += 1 + protohelpers.SizeOfVarint(uint64(m.Version))
}
+ if m.Security != nil {
+ l = m.Security.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
n += len(m.unknownFields)
return n
}
@@ -700,6 +714,42 @@ func (m *LocalConfig) UnmarshalVT(dAtA []byte) error {
break
}
}
+ case 9:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Security", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if m.Security == nil {
+ m.Security = &Config_SecurityConfig{}
+ }
+ if err := m.Security.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
diff --git a/meshtastic/mesh.pb.go b/meshtastic/mesh.pb.go
index b283416..afbc4b6 100644
--- a/meshtastic/mesh.pb.go
+++ b/meshtastic/mesh.pb.go
@@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.32.0
-// protoc v4.25.2
+// protoc-gen-go v1.36.6
+// protoc v3.21.12
// source: meshtastic/mesh.proto
package generated
@@ -11,6 +11,7 @@ import (
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
+ unsafe "unsafe"
)
const (
@@ -69,6 +70,16 @@ const (
HardwareModel_NANO_G2_ULTRA HardwareModel = 18
// LoRAType device: https://loratype.org/
HardwareModel_LORA_TYPE HardwareModel = 19
+ // wiphone https://www.wiphone.io/
+ HardwareModel_WIPHONE HardwareModel = 20
+ // WIO Tracker WM1110 family from Seeed Studio. Includes wio-1110-tracker and wio-1110-sdk
+ HardwareModel_WIO_WM1110 HardwareModel = 21
+ // RAK2560 Solar base station based on RAK4630
+ HardwareModel_RAK2560 HardwareModel = 22
+ // Heltec HRU-3601: https://heltec.org/project/hru-3601/
+ HardwareModel_HELTEC_HRU_3601 HardwareModel = 23
+ // Heltec Wireless Bridge
+ HardwareModel_HELTEC_WIRELESS_BRIDGE HardwareModel = 24
// B&Q Consulting Station Edition G1: https://uniteng.com/wiki/doku.php?id=meshtastic:station
HardwareModel_STATION_G1 HardwareModel = 25
// RAK11310 (RP2040 + SX1262)
@@ -105,7 +116,7 @@ const (
HardwareModel_NRF52840_PCA10059 HardwareModel = 40
// Custom Disaster Radio esp32 v3 device https://github.com/sudomesh/disaster-radio/tree/master/hardware/board_esp32_v3
HardwareModel_DR_DEV HardwareModel = 41
- // M5 esp32 based MCU modules with enclosure, TFT and LORA Shields. All Variants (Basic, Core, Fire, Core2, Paper) https://m5stack.com/
+ // M5 esp32 based MCU modules with enclosure, TFT and LORA Shields. All Variants (Basic, Core, Fire, Core2, CoreS3, Paper) https://m5stack.com/
HardwareModel_M5STACK HardwareModel = 42
// New Heltec LoRA32 with ESP32-S3 CPU
HardwareModel_HELTEC_V3 HardwareModel = 43
@@ -147,6 +158,113 @@ const (
// Heltec Wireless Tracker with ESP32-S3 CPU, built-in GPS, and TFT
// Older "V1.0" Variant
HardwareModel_HELTEC_WIRELESS_TRACKER_V1_0 HardwareModel = 58
+ // unPhone with ESP32-S3, TFT touchscreen, LSM6DS3TR-C accelerometer and gyroscope
+ HardwareModel_UNPHONE HardwareModel = 59
+ // Teledatics TD-LORAC NRF52840 based M.2 LoRA module
+ // Compatible with the TD-WRLS development board
+ HardwareModel_TD_LORAC HardwareModel = 60
+ // CDEBYTE EoRa-S3 board using their own MM modules, clone of LILYGO T3S3
+ HardwareModel_CDEBYTE_EORA_S3 HardwareModel = 61
+ // TWC_MESH_V4
+ // Adafruit NRF52840 feather express with SX1262, SSD1306 OLED and NEO6M GPS
+ HardwareModel_TWC_MESH_V4 HardwareModel = 62
+ // NRF52_PROMICRO_DIY
+ // Promicro NRF52840 with SX1262/LLCC68, SSD1306 OLED and NEO6M GPS
+ HardwareModel_NRF52_PROMICRO_DIY HardwareModel = 63
+ // RadioMaster 900 Bandit Nano, https://www.radiomasterrc.com/products/bandit-nano-expresslrs-rf-module
+ // ESP32-D0WDQ6 With SX1276/SKY66122, SSD1306 OLED and No GPS
+ HardwareModel_RADIOMASTER_900_BANDIT_NANO HardwareModel = 64
+ // Heltec Capsule Sensor V3 with ESP32-S3 CPU, Portable LoRa device that can replace GNSS modules or sensors
+ HardwareModel_HELTEC_CAPSULE_SENSOR_V3 HardwareModel = 65
+ // Heltec Vision Master T190 with ESP32-S3 CPU, and a 1.90 inch TFT display
+ HardwareModel_HELTEC_VISION_MASTER_T190 HardwareModel = 66
+ // Heltec Vision Master E213 with ESP32-S3 CPU, and a 2.13 inch E-Ink display
+ HardwareModel_HELTEC_VISION_MASTER_E213 HardwareModel = 67
+ // Heltec Vision Master E290 with ESP32-S3 CPU, and a 2.9 inch E-Ink display
+ HardwareModel_HELTEC_VISION_MASTER_E290 HardwareModel = 68
+ // Heltec Mesh Node T114 board with nRF52840 CPU, and a 1.14 inch TFT display, Ultimate low-power design,
+ // specifically adapted for the Meshtatic project
+ HardwareModel_HELTEC_MESH_NODE_T114 HardwareModel = 69
+ // Sensecap Indicator from Seeed Studio. ESP32-S3 device with TFT and RP2040 coprocessor
+ HardwareModel_SENSECAP_INDICATOR HardwareModel = 70
+ // Seeed studio T1000-E tracker card. NRF52840 w/ LR1110 radio, GPS, button, buzzer, and sensors.
+ HardwareModel_TRACKER_T1000_E HardwareModel = 71
+ // RAK3172 STM32WLE5 Module (https://store.rakwireless.com/products/wisduo-lpwan-module-rak3172)
+ HardwareModel_RAK3172 HardwareModel = 72
+ // Seeed Studio Wio-E5 (either mini or Dev kit) using STM32WL chip.
+ HardwareModel_WIO_E5 HardwareModel = 73
+ // RadioMaster 900 Bandit, https://www.radiomasterrc.com/products/bandit-expresslrs-rf-module
+ // SSD1306 OLED and No GPS
+ HardwareModel_RADIOMASTER_900_BANDIT HardwareModel = 74
+ // Minewsemi ME25LS01 (ME25LE01_V1.0). NRF52840 w/ LR1110 radio, buttons and leds and pins.
+ HardwareModel_ME25LS01_4Y10TD HardwareModel = 75
+ // RP2040_FEATHER_RFM95
+ // Adafruit Feather RP2040 with RFM95 LoRa Radio RFM95 with SX1272, SSD1306 OLED
+ // https://www.adafruit.com/product/5714
+ // https://www.adafruit.com/product/326
+ // https://www.adafruit.com/product/938
+ //
+ // ^^^ short A0 to switch to I2C address 0x3C
+ HardwareModel_RP2040_FEATHER_RFM95 HardwareModel = 76
+ // M5 esp32 based MCU modules with enclosure, TFT and LORA Shields. All Variants (Basic, Core, Fire, Core2, CoreS3, Paper) https://m5stack.com/
+ HardwareModel_M5STACK_COREBASIC HardwareModel = 77
+ HardwareModel_M5STACK_CORE2 HardwareModel = 78
+ // Pico2 with Waveshare Hat, same as Pico
+ HardwareModel_RPI_PICO2 HardwareModel = 79
+ // M5 esp32 based MCU modules with enclosure, TFT and LORA Shields. All Variants (Basic, Core, Fire, Core2, CoreS3, Paper) https://m5stack.com/
+ HardwareModel_M5STACK_CORES3 HardwareModel = 80
+ // Seeed XIAO S3 DK
+ HardwareModel_SEEED_XIAO_S3 HardwareModel = 81
+ // Nordic nRF52840+Semtech SX1262 LoRa BLE Combo Module. nRF52840+SX1262 MS24SF1
+ HardwareModel_MS24SF1 HardwareModel = 82
+ // Lilygo TLora-C6 with the new ESP32-C6 MCU
+ HardwareModel_TLORA_C6 HardwareModel = 83
+ // WisMesh Tap
+ // RAK-4631 w/ TFT in injection modled case
+ HardwareModel_WISMESH_TAP HardwareModel = 84
+ // Similar to PORTDUINO but used by Routastic devices, this is not any
+ // particular device and does not run Meshtastic's code but supports
+ // the same frame format.
+ // Runs on linux, see https://github.com/Jorropo/routastic
+ HardwareModel_ROUTASTIC HardwareModel = 85
+ // Mesh-Tab, esp32 based
+ // https://github.com/valzzu/Mesh-Tab
+ HardwareModel_MESH_TAB HardwareModel = 86
+ // MeshLink board developed by LoraItalia. NRF52840, eByte E22900M22S (Will also come with other frequencies), 25w MPPT solar charger (5v,12v,18v selectable), support for gps, buzzer, oled or e-ink display, 10 gpios, hardware watchdog
+ // https://www.loraitalia.it
+ HardwareModel_MESHLINK HardwareModel = 87
+ // Seeed XIAO nRF52840 + Wio SX1262 kit
+ HardwareModel_XIAO_NRF52_KIT HardwareModel = 88
+ // Elecrow ThinkNode M1 & M2
+ // https://www.elecrow.com/wiki/ThinkNode-M1_Transceiver_Device(Meshtastic)_Power_By_nRF52840.html
+ // https://www.elecrow.com/wiki/ThinkNode-M2_Transceiver_Device(Meshtastic)_Power_By_NRF52840.html (this actually uses ESP32-S3)
+ HardwareModel_THINKNODE_M1 HardwareModel = 89
+ HardwareModel_THINKNODE_M2 HardwareModel = 90
+ // Lilygo T-ETH-Elite
+ HardwareModel_T_ETH_ELITE HardwareModel = 91
+ // Heltec HRI-3621 industrial probe
+ HardwareModel_HELTEC_SENSOR_HUB HardwareModel = 92
+ // Reserved Fried Chicken ID for future use
+ HardwareModel_RESERVED_FRIED_CHICKEN HardwareModel = 93
+ // Heltec Magnetic Power Bank with Meshtastic compatible
+ HardwareModel_HELTEC_MESH_POCKET HardwareModel = 94
+ // Seeed Solar Node
+ HardwareModel_SEEED_SOLAR_NODE HardwareModel = 95
+ // NomadStar Meteor Pro https://nomadstar.ch/
+ HardwareModel_NOMADSTAR_METEOR_PRO HardwareModel = 96
+ // Elecrow CrowPanel Advance models, ESP32-S3 and TFT with SX1262 radio plugin
+ HardwareModel_CROWPANEL HardwareModel = 97
+ // *
+ // Lilygo LINK32 board with sensors
+ HardwareModel_LINK_32 HardwareModel = 98
+ // *
+ // Seeed Tracker L1
+ HardwareModel_SEEED_WIO_TRACKER_L1 HardwareModel = 99
+ // *
+ // Seeed Tracker L1 EINK driver
+ HardwareModel_SEEED_WIO_TRACKER_L1_EINK HardwareModel = 100
+ // Reserved ID for future and past use
+ HardwareModel_QWANTZ_TINY_ARMS HardwareModel = 101
// ------------------------------------------------------------------------------------------------------------------------------------------
// Reserved ID For developing private Ports. These will show up in live traffic sparsely, so we can use a high number. Keep it within 8 bits.
// ------------------------------------------------------------------------------------------------------------------------------------------
@@ -176,6 +294,11 @@ var (
17: "NANO_G1_EXPLORER",
18: "NANO_G2_ULTRA",
19: "LORA_TYPE",
+ 20: "WIPHONE",
+ 21: "WIO_WM1110",
+ 22: "RAK2560",
+ 23: "HELTEC_HRU_3601",
+ 24: "HELTEC_WIRELESS_BRIDGE",
25: "STATION_G1",
26: "RAK11310",
27: "SENSELORA_RP2040",
@@ -210,6 +333,49 @@ var (
56: "CHATTER_2",
57: "HELTEC_WIRELESS_PAPER_V1_0",
58: "HELTEC_WIRELESS_TRACKER_V1_0",
+ 59: "UNPHONE",
+ 60: "TD_LORAC",
+ 61: "CDEBYTE_EORA_S3",
+ 62: "TWC_MESH_V4",
+ 63: "NRF52_PROMICRO_DIY",
+ 64: "RADIOMASTER_900_BANDIT_NANO",
+ 65: "HELTEC_CAPSULE_SENSOR_V3",
+ 66: "HELTEC_VISION_MASTER_T190",
+ 67: "HELTEC_VISION_MASTER_E213",
+ 68: "HELTEC_VISION_MASTER_E290",
+ 69: "HELTEC_MESH_NODE_T114",
+ 70: "SENSECAP_INDICATOR",
+ 71: "TRACKER_T1000_E",
+ 72: "RAK3172",
+ 73: "WIO_E5",
+ 74: "RADIOMASTER_900_BANDIT",
+ 75: "ME25LS01_4Y10TD",
+ 76: "RP2040_FEATHER_RFM95",
+ 77: "M5STACK_COREBASIC",
+ 78: "M5STACK_CORE2",
+ 79: "RPI_PICO2",
+ 80: "M5STACK_CORES3",
+ 81: "SEEED_XIAO_S3",
+ 82: "MS24SF1",
+ 83: "TLORA_C6",
+ 84: "WISMESH_TAP",
+ 85: "ROUTASTIC",
+ 86: "MESH_TAB",
+ 87: "MESHLINK",
+ 88: "XIAO_NRF52_KIT",
+ 89: "THINKNODE_M1",
+ 90: "THINKNODE_M2",
+ 91: "T_ETH_ELITE",
+ 92: "HELTEC_SENSOR_HUB",
+ 93: "RESERVED_FRIED_CHICKEN",
+ 94: "HELTEC_MESH_POCKET",
+ 95: "SEEED_SOLAR_NODE",
+ 96: "NOMADSTAR_METEOR_PRO",
+ 97: "CROWPANEL",
+ 98: "LINK_32",
+ 99: "SEEED_WIO_TRACKER_L1",
+ 100: "SEEED_WIO_TRACKER_L1_EINK",
+ 101: "QWANTZ_TINY_ARMS",
255: "PRIVATE_HW",
}
HardwareModel_value = map[string]int32{
@@ -233,6 +399,11 @@ var (
"NANO_G1_EXPLORER": 17,
"NANO_G2_ULTRA": 18,
"LORA_TYPE": 19,
+ "WIPHONE": 20,
+ "WIO_WM1110": 21,
+ "RAK2560": 22,
+ "HELTEC_HRU_3601": 23,
+ "HELTEC_WIRELESS_BRIDGE": 24,
"STATION_G1": 25,
"RAK11310": 26,
"SENSELORA_RP2040": 27,
@@ -267,6 +438,49 @@ var (
"CHATTER_2": 56,
"HELTEC_WIRELESS_PAPER_V1_0": 57,
"HELTEC_WIRELESS_TRACKER_V1_0": 58,
+ "UNPHONE": 59,
+ "TD_LORAC": 60,
+ "CDEBYTE_EORA_S3": 61,
+ "TWC_MESH_V4": 62,
+ "NRF52_PROMICRO_DIY": 63,
+ "RADIOMASTER_900_BANDIT_NANO": 64,
+ "HELTEC_CAPSULE_SENSOR_V3": 65,
+ "HELTEC_VISION_MASTER_T190": 66,
+ "HELTEC_VISION_MASTER_E213": 67,
+ "HELTEC_VISION_MASTER_E290": 68,
+ "HELTEC_MESH_NODE_T114": 69,
+ "SENSECAP_INDICATOR": 70,
+ "TRACKER_T1000_E": 71,
+ "RAK3172": 72,
+ "WIO_E5": 73,
+ "RADIOMASTER_900_BANDIT": 74,
+ "ME25LS01_4Y10TD": 75,
+ "RP2040_FEATHER_RFM95": 76,
+ "M5STACK_COREBASIC": 77,
+ "M5STACK_CORE2": 78,
+ "RPI_PICO2": 79,
+ "M5STACK_CORES3": 80,
+ "SEEED_XIAO_S3": 81,
+ "MS24SF1": 82,
+ "TLORA_C6": 83,
+ "WISMESH_TAP": 84,
+ "ROUTASTIC": 85,
+ "MESH_TAB": 86,
+ "MESHLINK": 87,
+ "XIAO_NRF52_KIT": 88,
+ "THINKNODE_M1": 89,
+ "THINKNODE_M2": 90,
+ "T_ETH_ELITE": 91,
+ "HELTEC_SENSOR_HUB": 92,
+ "RESERVED_FRIED_CHICKEN": 93,
+ "HELTEC_MESH_POCKET": 94,
+ "SEEED_SOLAR_NODE": 95,
+ "NOMADSTAR_METEOR_PRO": 96,
+ "CROWPANEL": 97,
+ "LINK_32": 98,
+ "SEEED_WIO_TRACKER_L1": 99,
+ "SEEED_WIO_TRACKER_L1_EINK": 100,
+ "QWANTZ_TINY_ARMS": 101,
"PRIVATE_HW": 255,
}
)
@@ -308,18 +522,18 @@ const (
// From mesh.options
// note: this payload length is ONLY the bytes that are sent inside of the Data protobuf (excluding protobuf overhead). The 16 byte header is
// outside of this envelope
- Constants_DATA_PAYLOAD_LEN Constants = 237
+ Constants_DATA_PAYLOAD_LEN Constants = 233
)
// Enum value maps for Constants.
var (
Constants_name = map[int32]string{
0: "ZERO",
- 237: "DATA_PAYLOAD_LEN",
+ 233: "DATA_PAYLOAD_LEN",
}
Constants_value = map[string]int32{
"ZERO": 0,
- "DATA_PAYLOAD_LEN": 237,
+ "DATA_PAYLOAD_LEN": 233,
}
)
@@ -384,6 +598,13 @@ const (
// A (likely software but possibly hardware) failure was detected while trying to send packets.
// If this occurs on your board, please post in the forum so that we can ask you to collect some information to allow fixing this bug
CriticalErrorCode_RADIO_SPI_BUG CriticalErrorCode = 11
+ // Corruption was detected on the flash filesystem but we were able to repair things.
+ // If you see this failure in the field please post in the forum because we are interested in seeing if this is occurring in the field.
+ CriticalErrorCode_FLASH_CORRUPTION_RECOVERABLE CriticalErrorCode = 12
+ // Corruption was detected on the flash filesystem but we were unable to repair things.
+ // NOTE: Your node will probably need to be reconfigured the next time it reboots (it will lose the region code etc...)
+ // If you see this failure in the field please post in the forum because we are interested in seeing if this is occurring in the field.
+ CriticalErrorCode_FLASH_CORRUPTION_UNRECOVERABLE CriticalErrorCode = 13
)
// Enum value maps for CriticalErrorCode.
@@ -401,20 +622,24 @@ var (
9: "BROWNOUT",
10: "SX1262_FAILURE",
11: "RADIO_SPI_BUG",
+ 12: "FLASH_CORRUPTION_RECOVERABLE",
+ 13: "FLASH_CORRUPTION_UNRECOVERABLE",
}
CriticalErrorCode_value = map[string]int32{
- "NONE": 0,
- "TX_WATCHDOG": 1,
- "SLEEP_ENTER_WAIT": 2,
- "NO_RADIO": 3,
- "UNSPECIFIED": 4,
- "UBLOX_UNIT_FAILED": 5,
- "NO_AXP192": 6,
- "INVALID_RADIO_SETTING": 7,
- "TRANSMIT_FAILED": 8,
- "BROWNOUT": 9,
- "SX1262_FAILURE": 10,
- "RADIO_SPI_BUG": 11,
+ "NONE": 0,
+ "TX_WATCHDOG": 1,
+ "SLEEP_ENTER_WAIT": 2,
+ "NO_RADIO": 3,
+ "UNSPECIFIED": 4,
+ "UBLOX_UNIT_FAILED": 5,
+ "NO_AXP192": 6,
+ "INVALID_RADIO_SETTING": 7,
+ "TRANSMIT_FAILED": 8,
+ "BROWNOUT": 9,
+ "SX1262_FAILURE": 10,
+ "RADIO_SPI_BUG": 11,
+ "FLASH_CORRUPTION_RECOVERABLE": 12,
+ "FLASH_CORRUPTION_UNRECOVERABLE": 13,
}
)
@@ -445,6 +670,113 @@ func (CriticalErrorCode) EnumDescriptor() ([]byte, []int) {
return file_meshtastic_mesh_proto_rawDescGZIP(), []int{2}
}
+// Enum for modules excluded from a device's configuration.
+// Each value represents a ModuleConfigType that can be toggled as excluded
+// by setting its corresponding bit in the `excluded_modules` bitmask field.
+type ExcludedModules int32
+
+const (
+ // Default value of 0 indicates no modules are excluded.
+ ExcludedModules_EXCLUDED_NONE ExcludedModules = 0
+ // MQTT module
+ ExcludedModules_MQTT_CONFIG ExcludedModules = 1
+ // Serial module
+ ExcludedModules_SERIAL_CONFIG ExcludedModules = 2
+ // External Notification module
+ ExcludedModules_EXTNOTIF_CONFIG ExcludedModules = 4
+ // Store and Forward module
+ ExcludedModules_STOREFORWARD_CONFIG ExcludedModules = 8
+ // Range Test module
+ ExcludedModules_RANGETEST_CONFIG ExcludedModules = 16
+ // Telemetry module
+ ExcludedModules_TELEMETRY_CONFIG ExcludedModules = 32
+ // Canned Message module
+ ExcludedModules_CANNEDMSG_CONFIG ExcludedModules = 64
+ // Audio module
+ ExcludedModules_AUDIO_CONFIG ExcludedModules = 128
+ // Remote Hardware module
+ ExcludedModules_REMOTEHARDWARE_CONFIG ExcludedModules = 256
+ // Neighbor Info module
+ ExcludedModules_NEIGHBORINFO_CONFIG ExcludedModules = 512
+ // Ambient Lighting module
+ ExcludedModules_AMBIENTLIGHTING_CONFIG ExcludedModules = 1024
+ // Detection Sensor module
+ ExcludedModules_DETECTIONSENSOR_CONFIG ExcludedModules = 2048
+ // Paxcounter module
+ ExcludedModules_PAXCOUNTER_CONFIG ExcludedModules = 4096
+ // Bluetooth config (not technically a module, but used to indicate bluetooth capabilities)
+ ExcludedModules_BLUETOOTH_CONFIG ExcludedModules = 8192
+ // Network config (not technically a module, but used to indicate network capabilities)
+ ExcludedModules_NETWORK_CONFIG ExcludedModules = 16384
+)
+
+// Enum value maps for ExcludedModules.
+var (
+ ExcludedModules_name = map[int32]string{
+ 0: "EXCLUDED_NONE",
+ 1: "MQTT_CONFIG",
+ 2: "SERIAL_CONFIG",
+ 4: "EXTNOTIF_CONFIG",
+ 8: "STOREFORWARD_CONFIG",
+ 16: "RANGETEST_CONFIG",
+ 32: "TELEMETRY_CONFIG",
+ 64: "CANNEDMSG_CONFIG",
+ 128: "AUDIO_CONFIG",
+ 256: "REMOTEHARDWARE_CONFIG",
+ 512: "NEIGHBORINFO_CONFIG",
+ 1024: "AMBIENTLIGHTING_CONFIG",
+ 2048: "DETECTIONSENSOR_CONFIG",
+ 4096: "PAXCOUNTER_CONFIG",
+ 8192: "BLUETOOTH_CONFIG",
+ 16384: "NETWORK_CONFIG",
+ }
+ ExcludedModules_value = map[string]int32{
+ "EXCLUDED_NONE": 0,
+ "MQTT_CONFIG": 1,
+ "SERIAL_CONFIG": 2,
+ "EXTNOTIF_CONFIG": 4,
+ "STOREFORWARD_CONFIG": 8,
+ "RANGETEST_CONFIG": 16,
+ "TELEMETRY_CONFIG": 32,
+ "CANNEDMSG_CONFIG": 64,
+ "AUDIO_CONFIG": 128,
+ "REMOTEHARDWARE_CONFIG": 256,
+ "NEIGHBORINFO_CONFIG": 512,
+ "AMBIENTLIGHTING_CONFIG": 1024,
+ "DETECTIONSENSOR_CONFIG": 2048,
+ "PAXCOUNTER_CONFIG": 4096,
+ "BLUETOOTH_CONFIG": 8192,
+ "NETWORK_CONFIG": 16384,
+ }
+)
+
+func (x ExcludedModules) Enum() *ExcludedModules {
+ p := new(ExcludedModules)
+ *p = x
+ return p
+}
+
+func (x ExcludedModules) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (ExcludedModules) Descriptor() protoreflect.EnumDescriptor {
+ return file_meshtastic_mesh_proto_enumTypes[3].Descriptor()
+}
+
+func (ExcludedModules) Type() protoreflect.EnumType {
+ return &file_meshtastic_mesh_proto_enumTypes[3]
+}
+
+func (x ExcludedModules) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use ExcludedModules.Descriptor instead.
+func (ExcludedModules) EnumDescriptor() ([]byte, []int) {
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{3}
+}
+
// How the location was acquired: manual, onboard GPS, external (EUD) GPS
type Position_LocSource int32
@@ -486,11 +818,11 @@ func (x Position_LocSource) String() string {
}
func (Position_LocSource) Descriptor() protoreflect.EnumDescriptor {
- return file_meshtastic_mesh_proto_enumTypes[3].Descriptor()
+ return file_meshtastic_mesh_proto_enumTypes[4].Descriptor()
}
func (Position_LocSource) Type() protoreflect.EnumType {
- return &file_meshtastic_mesh_proto_enumTypes[3]
+ return &file_meshtastic_mesh_proto_enumTypes[4]
}
func (x Position_LocSource) Number() protoreflect.EnumNumber {
@@ -548,11 +880,11 @@ func (x Position_AltSource) String() string {
}
func (Position_AltSource) Descriptor() protoreflect.EnumDescriptor {
- return file_meshtastic_mesh_proto_enumTypes[4].Descriptor()
+ return file_meshtastic_mesh_proto_enumTypes[5].Descriptor()
}
func (Position_AltSource) Type() protoreflect.EnumType {
- return &file_meshtastic_mesh_proto_enumTypes[4]
+ return &file_meshtastic_mesh_proto_enumTypes[5]
}
func (x Position_AltSource) Number() protoreflect.EnumNumber {
@@ -595,6 +927,14 @@ const (
// The application layer service on the remote node received your request, but considered your request not authorized
// (i.e you did not send the request on the required bound channel)
Routing_NOT_AUTHORIZED Routing_Error = 33
+ // The client specified a PKI transport, but the node was unable to send the packet using PKI (and did not send the message at all)
+ Routing_PKI_FAILED Routing_Error = 34
+ // The receiving node does not have a Public Key to decode with
+ Routing_PKI_UNKNOWN_PUBKEY Routing_Error = 35
+ // Admin packet otherwise checks out, but uses a bogus or expired session key
+ Routing_ADMIN_BAD_SESSION_KEY Routing_Error = 36
+ // Admin packet sent using PKC, but not from a public key on the admin key list
+ Routing_ADMIN_PUBLIC_KEY_UNAUTHORIZED Routing_Error = 37
)
// Enum value maps for Routing_Error.
@@ -612,20 +952,28 @@ var (
9: "DUTY_CYCLE_LIMIT",
32: "BAD_REQUEST",
33: "NOT_AUTHORIZED",
+ 34: "PKI_FAILED",
+ 35: "PKI_UNKNOWN_PUBKEY",
+ 36: "ADMIN_BAD_SESSION_KEY",
+ 37: "ADMIN_PUBLIC_KEY_UNAUTHORIZED",
}
Routing_Error_value = map[string]int32{
- "NONE": 0,
- "NO_ROUTE": 1,
- "GOT_NAK": 2,
- "TIMEOUT": 3,
- "NO_INTERFACE": 4,
- "MAX_RETRANSMIT": 5,
- "NO_CHANNEL": 6,
- "TOO_LARGE": 7,
- "NO_RESPONSE": 8,
- "DUTY_CYCLE_LIMIT": 9,
- "BAD_REQUEST": 32,
- "NOT_AUTHORIZED": 33,
+ "NONE": 0,
+ "NO_ROUTE": 1,
+ "GOT_NAK": 2,
+ "TIMEOUT": 3,
+ "NO_INTERFACE": 4,
+ "MAX_RETRANSMIT": 5,
+ "NO_CHANNEL": 6,
+ "TOO_LARGE": 7,
+ "NO_RESPONSE": 8,
+ "DUTY_CYCLE_LIMIT": 9,
+ "BAD_REQUEST": 32,
+ "NOT_AUTHORIZED": 33,
+ "PKI_FAILED": 34,
+ "PKI_UNKNOWN_PUBKEY": 35,
+ "ADMIN_BAD_SESSION_KEY": 36,
+ "ADMIN_PUBLIC_KEY_UNAUTHORIZED": 37,
}
)
@@ -640,11 +988,11 @@ func (x Routing_Error) String() string {
}
func (Routing_Error) Descriptor() protoreflect.EnumDescriptor {
- return file_meshtastic_mesh_proto_enumTypes[5].Descriptor()
+ return file_meshtastic_mesh_proto_enumTypes[6].Descriptor()
}
func (Routing_Error) Type() protoreflect.EnumType {
- return &file_meshtastic_mesh_proto_enumTypes[5]
+ return &file_meshtastic_mesh_proto_enumTypes[6]
}
func (x Routing_Error) Number() protoreflect.EnumNumber {
@@ -689,6 +1037,13 @@ const (
// If priority is unset but the message is marked as want_ack,
// assume it is important and use a slightly higher priority
MeshPacket_RELIABLE MeshPacket_Priority = 70
+ // If priority is unset but the packet is a response to a request, we want it to get there relatively quickly.
+ // Furthermore, responses stop relaying packets directed to a node early.
+ MeshPacket_RESPONSE MeshPacket_Priority = 80
+ // Higher priority for specific message types (portnums) to distinguish between other reliable packets.
+ MeshPacket_HIGH MeshPacket_Priority = 100
+ // Higher priority alert message used for critical alerts which take priority over other reliable packets.
+ MeshPacket_ALERT MeshPacket_Priority = 110
// Ack/naks are sent with very high priority to ensure that retransmission
// stops as soon as possible
MeshPacket_ACK MeshPacket_Priority = 120
@@ -704,6 +1059,9 @@ var (
10: "BACKGROUND",
64: "DEFAULT",
70: "RELIABLE",
+ 80: "RESPONSE",
+ 100: "HIGH",
+ 110: "ALERT",
120: "ACK",
127: "MAX",
}
@@ -713,6 +1071,9 @@ var (
"BACKGROUND": 10,
"DEFAULT": 64,
"RELIABLE": 70,
+ "RESPONSE": 80,
+ "HIGH": 100,
+ "ALERT": 110,
"ACK": 120,
"MAX": 127,
}
@@ -729,11 +1090,11 @@ func (x MeshPacket_Priority) String() string {
}
func (MeshPacket_Priority) Descriptor() protoreflect.EnumDescriptor {
- return file_meshtastic_mesh_proto_enumTypes[6].Descriptor()
+ return file_meshtastic_mesh_proto_enumTypes[7].Descriptor()
}
func (MeshPacket_Priority) Type() protoreflect.EnumType {
- return &file_meshtastic_mesh_proto_enumTypes[6]
+ return &file_meshtastic_mesh_proto_enumTypes[7]
}
func (x MeshPacket_Priority) Number() protoreflect.EnumNumber {
@@ -742,7 +1103,7 @@ func (x MeshPacket_Priority) Number() protoreflect.EnumNumber {
// Deprecated: Use MeshPacket_Priority.Descriptor instead.
func (MeshPacket_Priority) EnumDescriptor() ([]byte, []int) {
- return file_meshtastic_mesh_proto_rawDescGZIP(), []int{7, 0}
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{8, 0}
}
// Identify if this is a delayed packet
@@ -782,11 +1143,11 @@ func (x MeshPacket_Delayed) String() string {
}
func (MeshPacket_Delayed) Descriptor() protoreflect.EnumDescriptor {
- return file_meshtastic_mesh_proto_enumTypes[7].Descriptor()
+ return file_meshtastic_mesh_proto_enumTypes[8].Descriptor()
}
func (MeshPacket_Delayed) Type() protoreflect.EnumType {
- return &file_meshtastic_mesh_proto_enumTypes[7]
+ return &file_meshtastic_mesh_proto_enumTypes[8]
}
func (x MeshPacket_Delayed) Number() protoreflect.EnumNumber {
@@ -795,7 +1156,7 @@ func (x MeshPacket_Delayed) Number() protoreflect.EnumNumber {
// Deprecated: Use MeshPacket_Delayed.Descriptor instead.
func (MeshPacket_Delayed) EnumDescriptor() ([]byte, []int) {
- return file_meshtastic_mesh_proto_rawDescGZIP(), []int{7, 1}
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{8, 1}
}
// Log levels, chosen to match python logging conventions.
@@ -851,11 +1212,11 @@ func (x LogRecord_Level) String() string {
}
func (LogRecord_Level) Descriptor() protoreflect.EnumDescriptor {
- return file_meshtastic_mesh_proto_enumTypes[8].Descriptor()
+ return file_meshtastic_mesh_proto_enumTypes[9].Descriptor()
}
func (LogRecord_Level) Type() protoreflect.EnumType {
- return &file_meshtastic_mesh_proto_enumTypes[8]
+ return &file_meshtastic_mesh_proto_enumTypes[9]
}
func (x LogRecord_Level) Number() protoreflect.EnumNumber {
@@ -864,22 +1225,19 @@ func (x LogRecord_Level) Number() protoreflect.EnumNumber {
// Deprecated: Use LogRecord_Level.Descriptor instead.
func (LogRecord_Level) EnumDescriptor() ([]byte, []int) {
- return file_meshtastic_mesh_proto_rawDescGZIP(), []int{10, 0}
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{11, 0}
}
-// a gps position
+// A GPS Position
type Position struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// The new preferred location encoding, multiply by 1e-7 to get degrees
// in floating point
- LatitudeI int32 `protobuf:"fixed32,1,opt,name=latitude_i,json=latitudeI,proto3" json:"latitude_i,omitempty"`
+ LatitudeI *int32 `protobuf:"fixed32,1,opt,name=latitude_i,json=latitudeI,proto3,oneof" json:"latitude_i,omitempty"`
// TODO: REPLACE
- LongitudeI int32 `protobuf:"fixed32,2,opt,name=longitude_i,json=longitudeI,proto3" json:"longitude_i,omitempty"`
+ LongitudeI *int32 `protobuf:"fixed32,2,opt,name=longitude_i,json=longitudeI,proto3,oneof" json:"longitude_i,omitempty"`
// In meters above MSL (but see issue #359)
- Altitude int32 `protobuf:"varint,3,opt,name=altitude,proto3" json:"altitude,omitempty"`
+ Altitude *int32 `protobuf:"varint,3,opt,name=altitude,proto3,oneof" json:"altitude,omitempty"`
// This is usually not sent over the mesh (to save space), but it is sent
// from the phone so that the local device can set its time if it is sent over
// the mesh (because there are devices on the mesh without GPS or RTC).
@@ -894,9 +1252,9 @@ type Position struct {
// Pos. timestamp milliseconds adjustment (rarely available or required)
TimestampMillisAdjust int32 `protobuf:"varint,8,opt,name=timestamp_millis_adjust,json=timestampMillisAdjust,proto3" json:"timestamp_millis_adjust,omitempty"`
// HAE altitude in meters - can be used instead of MSL altitude
- AltitudeHae int32 `protobuf:"zigzag32,9,opt,name=altitude_hae,json=altitudeHae,proto3" json:"altitude_hae,omitempty"`
+ AltitudeHae *int32 `protobuf:"zigzag32,9,opt,name=altitude_hae,json=altitudeHae,proto3,oneof" json:"altitude_hae,omitempty"`
// Geoidal separation in meters
- AltitudeGeoidalSeparation int32 `protobuf:"zigzag32,10,opt,name=altitude_geoidal_separation,json=altitudeGeoidalSeparation,proto3" json:"altitude_geoidal_separation,omitempty"`
+ AltitudeGeoidalSeparation *int32 `protobuf:"zigzag32,10,opt,name=altitude_geoidal_separation,json=altitudeGeoidalSeparation,proto3,oneof" json:"altitude_geoidal_separation,omitempty"`
// Horizontal, Vertical and Position Dilution of Precision, in 1/100 units
// - PDOP is sufficient for most cases
// - for higher precision scenarios, HDOP and VDOP can be used instead,
@@ -920,9 +1278,9 @@ type Position struct {
// - "heading" is where the fuselage points (measured in horizontal plane)
// - "yaw" indicates a relative rotation about the vertical axis
// TODO: REMOVE/INTEGRATE
- GroundSpeed uint32 `protobuf:"varint,15,opt,name=ground_speed,json=groundSpeed,proto3" json:"ground_speed,omitempty"`
+ GroundSpeed *uint32 `protobuf:"varint,15,opt,name=ground_speed,json=groundSpeed,proto3,oneof" json:"ground_speed,omitempty"`
// TODO: REPLACE
- GroundTrack uint32 `protobuf:"varint,16,opt,name=ground_track,json=groundTrack,proto3" json:"ground_track,omitempty"`
+ GroundTrack *uint32 `protobuf:"varint,16,opt,name=ground_track,json=groundTrack,proto3,oneof" json:"ground_track,omitempty"`
// GPS fix quality (from NMEA GxGGA statement or similar)
FixQuality uint32 `protobuf:"varint,17,opt,name=fix_quality,json=fixQuality,proto3" json:"fix_quality,omitempty"`
// GPS fix type 2D/3D (from NMEA GxGSA statement)
@@ -942,15 +1300,15 @@ type Position struct {
SeqNumber uint32 `protobuf:"varint,22,opt,name=seq_number,json=seqNumber,proto3" json:"seq_number,omitempty"`
// Indicates the bits of precision set by the sending node
PrecisionBits uint32 `protobuf:"varint,23,opt,name=precision_bits,json=precisionBits,proto3" json:"precision_bits,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *Position) Reset() {
*x = Position{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_mesh_proto_msgTypes[0]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_mesh_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *Position) String() string {
@@ -961,7 +1319,7 @@ func (*Position) ProtoMessage() {}
func (x *Position) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_mesh_proto_msgTypes[0]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -977,22 +1335,22 @@ func (*Position) Descriptor() ([]byte, []int) {
}
func (x *Position) GetLatitudeI() int32 {
- if x != nil {
- return x.LatitudeI
+ if x != nil && x.LatitudeI != nil {
+ return *x.LatitudeI
}
return 0
}
func (x *Position) GetLongitudeI() int32 {
- if x != nil {
- return x.LongitudeI
+ if x != nil && x.LongitudeI != nil {
+ return *x.LongitudeI
}
return 0
}
func (x *Position) GetAltitude() int32 {
- if x != nil {
- return x.Altitude
+ if x != nil && x.Altitude != nil {
+ return *x.Altitude
}
return 0
}
@@ -1033,15 +1391,15 @@ func (x *Position) GetTimestampMillisAdjust() int32 {
}
func (x *Position) GetAltitudeHae() int32 {
- if x != nil {
- return x.AltitudeHae
+ if x != nil && x.AltitudeHae != nil {
+ return *x.AltitudeHae
}
return 0
}
func (x *Position) GetAltitudeGeoidalSeparation() int32 {
- if x != nil {
- return x.AltitudeGeoidalSeparation
+ if x != nil && x.AltitudeGeoidalSeparation != nil {
+ return *x.AltitudeGeoidalSeparation
}
return 0
}
@@ -1075,15 +1433,15 @@ func (x *Position) GetGpsAccuracy() uint32 {
}
func (x *Position) GetGroundSpeed() uint32 {
- if x != nil {
- return x.GroundSpeed
+ if x != nil && x.GroundSpeed != nil {
+ return *x.GroundSpeed
}
return 0
}
func (x *Position) GetGroundTrack() uint32 {
- if x != nil {
- return x.GroundTrack
+ if x != nil && x.GroundTrack != nil {
+ return *x.GroundTrack
}
return 0
}
@@ -1158,10 +1516,7 @@ func (x *Position) GetPrecisionBits() uint32 {
// 0xff - broadcast
// 0 through 3 - for future use
type User struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// A globally unique ID string for this user.
// In the case of Signal that would mean +16504442323, for the default macaddr derived id it would be !<8 hexidecimal bytes>.
// Note: app developers are encouraged to also use the following standard
@@ -1189,15 +1544,20 @@ type User struct {
IsLicensed bool `protobuf:"varint,6,opt,name=is_licensed,json=isLicensed,proto3" json:"is_licensed,omitempty"`
// Indicates that the user's role in the mesh
Role Config_DeviceConfig_Role `protobuf:"varint,7,opt,name=role,proto3,enum=meshtastic.Config_DeviceConfig_Role" json:"role,omitempty"`
+ // The public key of the user's device.
+ // This is sent out to other nodes on the mesh to allow them to compute a shared secret key.
+ PublicKey []byte `protobuf:"bytes,8,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"`
+ // Whether or not the node can be messaged
+ IsUnmessagable *bool `protobuf:"varint,9,opt,name=is_unmessagable,json=isUnmessagable,proto3,oneof" json:"is_unmessagable,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *User) Reset() {
*x = User{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_mesh_proto_msgTypes[1]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_mesh_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *User) String() string {
@@ -1208,7 +1568,7 @@ func (*User) ProtoMessage() {}
func (x *User) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_mesh_proto_msgTypes[1]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -1273,23 +1633,40 @@ func (x *User) GetRole() Config_DeviceConfig_Role {
return Config_DeviceConfig_CLIENT
}
-// A message used in our Dynamic Source Routing protocol (RFC 4728 based)
-type RouteDiscovery struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
+func (x *User) GetPublicKey() []byte {
+ if x != nil {
+ return x.PublicKey
+ }
+ return nil
+}
- // The list of nodenums this packet has visited so far
+func (x *User) GetIsUnmessagable() bool {
+ if x != nil && x.IsUnmessagable != nil {
+ return *x.IsUnmessagable
+ }
+ return false
+}
+
+// A message used in a traceroute
+type RouteDiscovery struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // The list of nodenums this packet has visited so far to the destination.
Route []uint32 `protobuf:"fixed32,1,rep,packed,name=route,proto3" json:"route,omitempty"`
+ // The list of SNRs (in dB, scaled by 4) in the route towards the destination.
+ SnrTowards []int32 `protobuf:"varint,2,rep,packed,name=snr_towards,json=snrTowards,proto3" json:"snr_towards,omitempty"`
+ // The list of nodenums the packet has visited on the way back from the destination.
+ RouteBack []uint32 `protobuf:"fixed32,3,rep,packed,name=route_back,json=routeBack,proto3" json:"route_back,omitempty"`
+ // The list of SNRs (in dB, scaled by 4) in the route back from the destination.
+ SnrBack []int32 `protobuf:"varint,4,rep,packed,name=snr_back,json=snrBack,proto3" json:"snr_back,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *RouteDiscovery) Reset() {
*x = RouteDiscovery{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_mesh_proto_msgTypes[2]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_mesh_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *RouteDiscovery) String() string {
@@ -1300,7 +1677,7 @@ func (*RouteDiscovery) ProtoMessage() {}
func (x *RouteDiscovery) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_mesh_proto_msgTypes[2]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -1322,27 +1699,45 @@ func (x *RouteDiscovery) GetRoute() []uint32 {
return nil
}
+func (x *RouteDiscovery) GetSnrTowards() []int32 {
+ if x != nil {
+ return x.SnrTowards
+ }
+ return nil
+}
+
+func (x *RouteDiscovery) GetRouteBack() []uint32 {
+ if x != nil {
+ return x.RouteBack
+ }
+ return nil
+}
+
+func (x *RouteDiscovery) GetSnrBack() []int32 {
+ if x != nil {
+ return x.SnrBack
+ }
+ return nil
+}
+
// A Routing control Data packet handled by the routing module
type Routing struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- // Types that are assignable to Variant:
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // Types that are valid to be assigned to Variant:
//
// *Routing_RouteRequest
// *Routing_RouteReply
// *Routing_ErrorReason
- Variant isRouting_Variant `protobuf_oneof:"variant"`
+ Variant isRouting_Variant `protobuf_oneof:"variant"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *Routing) Reset() {
*x = Routing{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_mesh_proto_msgTypes[3]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_mesh_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *Routing) String() string {
@@ -1353,7 +1748,7 @@ func (*Routing) ProtoMessage() {}
func (x *Routing) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_mesh_proto_msgTypes[3]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -1368,30 +1763,36 @@ func (*Routing) Descriptor() ([]byte, []int) {
return file_meshtastic_mesh_proto_rawDescGZIP(), []int{3}
}
-func (m *Routing) GetVariant() isRouting_Variant {
- if m != nil {
- return m.Variant
+func (x *Routing) GetVariant() isRouting_Variant {
+ if x != nil {
+ return x.Variant
}
return nil
}
func (x *Routing) GetRouteRequest() *RouteDiscovery {
- if x, ok := x.GetVariant().(*Routing_RouteRequest); ok {
- return x.RouteRequest
+ if x != nil {
+ if x, ok := x.Variant.(*Routing_RouteRequest); ok {
+ return x.RouteRequest
+ }
}
return nil
}
func (x *Routing) GetRouteReply() *RouteDiscovery {
- if x, ok := x.GetVariant().(*Routing_RouteReply); ok {
- return x.RouteReply
+ if x != nil {
+ if x, ok := x.Variant.(*Routing_RouteReply); ok {
+ return x.RouteReply
+ }
}
return nil
}
func (x *Routing) GetErrorReason() Routing_Error {
- if x, ok := x.GetVariant().(*Routing_ErrorReason); ok {
- return x.ErrorReason
+ if x != nil {
+ if x, ok := x.Variant.(*Routing_ErrorReason); ok {
+ return x.ErrorReason
+ }
}
return Routing_NONE
}
@@ -1426,10 +1827,7 @@ func (*Routing_ErrorReason) isRouting_Variant() {}
// The payload portion fo a packet, this is the actual bytes that are sent
// inside a radio packet (because from/to are broken out by the comms library)
type Data struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Formerly named typ and of type Type
Portnum PortNum `protobuf:"varint,1,opt,name=portnum,proto3,enum=meshtastic.PortNum" json:"portnum,omitempty"`
// TODO: REPLACE
@@ -1456,15 +1854,17 @@ type Data struct {
// Defaults to false. If true, then what is in the payload should be treated as an emoji like giving
// a message a heart or poop emoji.
Emoji uint32 `protobuf:"fixed32,8,opt,name=emoji,proto3" json:"emoji,omitempty"`
+ // Bitfield for extra flags. First use is to indicate that user approves the packet being uploaded to MQTT.
+ Bitfield *uint32 `protobuf:"varint,9,opt,name=bitfield,proto3,oneof" json:"bitfield,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *Data) Reset() {
*x = Data{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_mesh_proto_msgTypes[4]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_mesh_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *Data) String() string {
@@ -1475,7 +1875,7 @@ func (*Data) ProtoMessage() {}
func (x *Data) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_mesh_proto_msgTypes[4]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -1546,18 +1946,87 @@ func (x *Data) GetEmoji() uint32 {
return 0
}
-// Waypoint message, used to share arbitrary locations across the mesh
-type Waypoint struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
+func (x *Data) GetBitfield() uint32 {
+ if x != nil && x.Bitfield != nil {
+ return *x.Bitfield
+ }
+ return 0
+}
+
+// The actual over-the-mesh message doing KeyVerification
+type KeyVerification struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // random value Selected by the requesting node
+ Nonce uint64 `protobuf:"varint,1,opt,name=nonce,proto3" json:"nonce,omitempty"`
+ // The final authoritative hash, only to be sent by NodeA at the end of the handshake
+ Hash1 []byte `protobuf:"bytes,2,opt,name=hash1,proto3" json:"hash1,omitempty"`
+ // The intermediary hash (actually derived from hash1),
+ // sent from NodeB to NodeA in response to the initial message.
+ Hash2 []byte `protobuf:"bytes,3,opt,name=hash2,proto3" json:"hash2,omitempty"`
unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *KeyVerification) Reset() {
+ *x = KeyVerification{}
+ mi := &file_meshtastic_mesh_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *KeyVerification) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*KeyVerification) ProtoMessage() {}
+
+func (x *KeyVerification) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_mesh_proto_msgTypes[5]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use KeyVerification.ProtoReflect.Descriptor instead.
+func (*KeyVerification) Descriptor() ([]byte, []int) {
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *KeyVerification) GetNonce() uint64 {
+ if x != nil {
+ return x.Nonce
+ }
+ return 0
+}
+
+func (x *KeyVerification) GetHash1() []byte {
+ if x != nil {
+ return x.Hash1
+ }
+ return nil
+}
+
+func (x *KeyVerification) GetHash2() []byte {
+ if x != nil {
+ return x.Hash2
+ }
+ return nil
+}
+// Waypoint message, used to share arbitrary locations across the mesh
+type Waypoint struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
// Id of the waypoint
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
// latitude_i
- LatitudeI int32 `protobuf:"fixed32,2,opt,name=latitude_i,json=latitudeI,proto3" json:"latitude_i,omitempty"`
+ LatitudeI *int32 `protobuf:"fixed32,2,opt,name=latitude_i,json=latitudeI,proto3,oneof" json:"latitude_i,omitempty"`
// longitude_i
- LongitudeI int32 `protobuf:"fixed32,3,opt,name=longitude_i,json=longitudeI,proto3" json:"longitude_i,omitempty"`
+ LongitudeI *int32 `protobuf:"fixed32,3,opt,name=longitude_i,json=longitudeI,proto3,oneof" json:"longitude_i,omitempty"`
// Time the waypoint is to expire (epoch)
Expire uint32 `protobuf:"varint,4,opt,name=expire,proto3" json:"expire,omitempty"`
// If greater than zero, treat the value as a nodenum only allowing them to update the waypoint.
@@ -1568,16 +2037,16 @@ type Waypoint struct {
// Description of the waypoint - max 100 chars
Description string `protobuf:"bytes,7,opt,name=description,proto3" json:"description,omitempty"`
// Designator icon for the waypoint in the form of a unicode emoji
- Icon uint32 `protobuf:"fixed32,8,opt,name=icon,proto3" json:"icon,omitempty"`
+ Icon uint32 `protobuf:"fixed32,8,opt,name=icon,proto3" json:"icon,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *Waypoint) Reset() {
*x = Waypoint{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_mesh_proto_msgTypes[5]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_mesh_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *Waypoint) String() string {
@@ -1587,8 +2056,8 @@ func (x *Waypoint) String() string {
func (*Waypoint) ProtoMessage() {}
func (x *Waypoint) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_mesh_proto_msgTypes[5]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_mesh_proto_msgTypes[6]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -1600,7 +2069,7 @@ func (x *Waypoint) ProtoReflect() protoreflect.Message {
// Deprecated: Use Waypoint.ProtoReflect.Descriptor instead.
func (*Waypoint) Descriptor() ([]byte, []int) {
- return file_meshtastic_mesh_proto_rawDescGZIP(), []int{5}
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{6}
}
func (x *Waypoint) GetId() uint32 {
@@ -1611,15 +2080,15 @@ func (x *Waypoint) GetId() uint32 {
}
func (x *Waypoint) GetLatitudeI() int32 {
- if x != nil {
- return x.LatitudeI
+ if x != nil && x.LatitudeI != nil {
+ return *x.LatitudeI
}
return 0
}
func (x *Waypoint) GetLongitudeI() int32 {
- if x != nil {
- return x.LongitudeI
+ if x != nil && x.LongitudeI != nil {
+ return *x.LongitudeI
}
return 0
}
@@ -1661,30 +2130,27 @@ func (x *Waypoint) GetIcon() uint32 {
// This message will be proxied over the PhoneAPI for the client to deliver to the MQTT server
type MqttClientProxyMessage struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// The MQTT topic this message will be sent /received on
Topic string `protobuf:"bytes,1,opt,name=topic,proto3" json:"topic,omitempty"`
// The actual service envelope payload or text for mqtt pub / sub
//
- // Types that are assignable to PayloadVariant:
+ // Types that are valid to be assigned to PayloadVariant:
//
// *MqttClientProxyMessage_Data
// *MqttClientProxyMessage_Text
PayloadVariant isMqttClientProxyMessage_PayloadVariant `protobuf_oneof:"payload_variant"`
// Whether the message should be retained (or not)
- Retained bool `protobuf:"varint,4,opt,name=retained,proto3" json:"retained,omitempty"`
+ Retained bool `protobuf:"varint,4,opt,name=retained,proto3" json:"retained,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *MqttClientProxyMessage) Reset() {
*x = MqttClientProxyMessage{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_mesh_proto_msgTypes[6]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_mesh_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *MqttClientProxyMessage) String() string {
@@ -1694,8 +2160,8 @@ func (x *MqttClientProxyMessage) String() string {
func (*MqttClientProxyMessage) ProtoMessage() {}
func (x *MqttClientProxyMessage) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_mesh_proto_msgTypes[6]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_mesh_proto_msgTypes[7]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -1707,7 +2173,7 @@ func (x *MqttClientProxyMessage) ProtoReflect() protoreflect.Message {
// Deprecated: Use MqttClientProxyMessage.ProtoReflect.Descriptor instead.
func (*MqttClientProxyMessage) Descriptor() ([]byte, []int) {
- return file_meshtastic_mesh_proto_rawDescGZIP(), []int{6}
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{7}
}
func (x *MqttClientProxyMessage) GetTopic() string {
@@ -1717,23 +2183,27 @@ func (x *MqttClientProxyMessage) GetTopic() string {
return ""
}
-func (m *MqttClientProxyMessage) GetPayloadVariant() isMqttClientProxyMessage_PayloadVariant {
- if m != nil {
- return m.PayloadVariant
+func (x *MqttClientProxyMessage) GetPayloadVariant() isMqttClientProxyMessage_PayloadVariant {
+ if x != nil {
+ return x.PayloadVariant
}
return nil
}
func (x *MqttClientProxyMessage) GetData() []byte {
- if x, ok := x.GetPayloadVariant().(*MqttClientProxyMessage_Data); ok {
- return x.Data
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*MqttClientProxyMessage_Data); ok {
+ return x.Data
+ }
}
return nil
}
func (x *MqttClientProxyMessage) GetText() string {
- if x, ok := x.GetPayloadVariant().(*MqttClientProxyMessage_Text); ok {
- return x.Text
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*MqttClientProxyMessage_Text); ok {
+ return x.Text
+ }
}
return ""
}
@@ -1767,10 +2237,7 @@ func (*MqttClientProxyMessage_Text) isMqttClientProxyMessage_PayloadVariant() {}
// only payload_variant is sent in the payload portion of the LORA packet.
// The other fields are either not sent at all, or sent in the special 16 byte LORA header.
type MeshPacket struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// The sending node number.
// Note: Our crypto implementation uses this field as well.
// See [crypto](/docs/overview/encryption) for details.
@@ -1785,7 +2252,7 @@ type MeshPacket struct {
// contains the 'channel hash' instead of the index.
// This 'trick' is only used while the payload_variant is an 'encrypted'.
Channel uint32 `protobuf:"varint,3,opt,name=channel,proto3" json:"channel,omitempty"`
- // Types that are assignable to PayloadVariant:
+ // Types that are valid to be assigned to PayloadVariant:
//
// *MeshPacket_Decoded
// *MeshPacket_Encrypted
@@ -1808,7 +2275,7 @@ type MeshPacket struct {
// Set during reception to indicate the SNR of this packet.
// Used to collect statistics on current link quality.
RxSnr float32 `protobuf:"fixed32,8,opt,name=rx_snr,json=rxSnr,proto3" json:"rx_snr,omitempty"`
- // If unset treated as zero (no forwarding, send to adjacent nodes only)
+ // If unset treated as zero (no forwarding, send to direct neighbor nodes only)
// if 1, allow hopping through one node, etc...
// For our usecase real world topologies probably have a max of about 3.
// This field is normally placed into a few of bits in the header.
@@ -1834,15 +2301,32 @@ type MeshPacket struct {
Delayed MeshPacket_Delayed `protobuf:"varint,13,opt,name=delayed,proto3,enum=meshtastic.MeshPacket_Delayed" json:"delayed,omitempty"`
// Describes whether this packet passed via MQTT somewhere along the path it currently took.
ViaMqtt bool `protobuf:"varint,14,opt,name=via_mqtt,json=viaMqtt,proto3" json:"via_mqtt,omitempty"`
+ // Hop limit with which the original packet started. Sent via LoRa using three bits in the unencrypted header.
+ // When receiving a packet, the difference between hop_start and hop_limit gives how many hops it traveled.
+ HopStart uint32 `protobuf:"varint,15,opt,name=hop_start,json=hopStart,proto3" json:"hop_start,omitempty"`
+ // Records the public key the packet was encrypted with, if applicable.
+ PublicKey []byte `protobuf:"bytes,16,opt,name=public_key,json=publicKey,proto3" json:"public_key,omitempty"`
+ // Indicates whether the packet was en/decrypted using PKI
+ PkiEncrypted bool `protobuf:"varint,17,opt,name=pki_encrypted,json=pkiEncrypted,proto3" json:"pki_encrypted,omitempty"`
+ // Last byte of the node number of the node that should be used as the next hop in routing.
+ // Set by the firmware internally, clients are not supposed to set this.
+ NextHop uint32 `protobuf:"varint,18,opt,name=next_hop,json=nextHop,proto3" json:"next_hop,omitempty"`
+ // Last byte of the node number of the node that will relay/relayed this packet.
+ // Set by the firmware internally, clients are not supposed to set this.
+ RelayNode uint32 `protobuf:"varint,19,opt,name=relay_node,json=relayNode,proto3" json:"relay_node,omitempty"`
+ // *Never* sent over the radio links.
+ // Timestamp after which this packet may be sent.
+ // Set by the firmware internally, clients are not supposed to set this.
+ TxAfter uint32 `protobuf:"varint,20,opt,name=tx_after,json=txAfter,proto3" json:"tx_after,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *MeshPacket) Reset() {
*x = MeshPacket{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_mesh_proto_msgTypes[7]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_mesh_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *MeshPacket) String() string {
@@ -1852,8 +2336,8 @@ func (x *MeshPacket) String() string {
func (*MeshPacket) ProtoMessage() {}
func (x *MeshPacket) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_mesh_proto_msgTypes[7]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_mesh_proto_msgTypes[8]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -1865,7 +2349,7 @@ func (x *MeshPacket) ProtoReflect() protoreflect.Message {
// Deprecated: Use MeshPacket.ProtoReflect.Descriptor instead.
func (*MeshPacket) Descriptor() ([]byte, []int) {
- return file_meshtastic_mesh_proto_rawDescGZIP(), []int{7}
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{8}
}
func (x *MeshPacket) GetFrom() uint32 {
@@ -1889,23 +2373,27 @@ func (x *MeshPacket) GetChannel() uint32 {
return 0
}
-func (m *MeshPacket) GetPayloadVariant() isMeshPacket_PayloadVariant {
- if m != nil {
- return m.PayloadVariant
+func (x *MeshPacket) GetPayloadVariant() isMeshPacket_PayloadVariant {
+ if x != nil {
+ return x.PayloadVariant
}
return nil
}
func (x *MeshPacket) GetDecoded() *Data {
- if x, ok := x.GetPayloadVariant().(*MeshPacket_Decoded); ok {
- return x.Decoded
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*MeshPacket_Decoded); ok {
+ return x.Decoded
+ }
}
return nil
}
func (x *MeshPacket) GetEncrypted() []byte {
- if x, ok := x.GetPayloadVariant().(*MeshPacket_Encrypted); ok {
- return x.Encrypted
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*MeshPacket_Encrypted); ok {
+ return x.Encrypted
+ }
}
return nil
}
@@ -1974,6 +2462,48 @@ func (x *MeshPacket) GetViaMqtt() bool {
return false
}
+func (x *MeshPacket) GetHopStart() uint32 {
+ if x != nil {
+ return x.HopStart
+ }
+ return 0
+}
+
+func (x *MeshPacket) GetPublicKey() []byte {
+ if x != nil {
+ return x.PublicKey
+ }
+ return nil
+}
+
+func (x *MeshPacket) GetPkiEncrypted() bool {
+ if x != nil {
+ return x.PkiEncrypted
+ }
+ return false
+}
+
+func (x *MeshPacket) GetNextHop() uint32 {
+ if x != nil {
+ return x.NextHop
+ }
+ return 0
+}
+
+func (x *MeshPacket) GetRelayNode() uint32 {
+ if x != nil {
+ return x.RelayNode
+ }
+ return 0
+}
+
+func (x *MeshPacket) GetTxAfter() uint32 {
+ if x != nil {
+ return x.TxAfter
+ }
+ return 0
+}
+
type isMeshPacket_PayloadVariant interface {
isMeshPacket_PayloadVariant()
}
@@ -2009,10 +2539,7 @@ func (*MeshPacket_Encrypted) isMeshPacket_PayloadVariant() {}
// preshared key, drops all existing nodes, force our node to rejoin this new group)
// Full information about a node on the mesh
type NodeInfo struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// The node number
Num uint32 `protobuf:"varint,1,opt,name=num,proto3" json:"num,omitempty"`
// The user info for this node
@@ -2029,15 +2556,29 @@ type NodeInfo struct {
DeviceMetrics *DeviceMetrics `protobuf:"bytes,6,opt,name=device_metrics,json=deviceMetrics,proto3" json:"device_metrics,omitempty"`
// local channel index we heard that node on. Only populated if its not the default channel.
Channel uint32 `protobuf:"varint,7,opt,name=channel,proto3" json:"channel,omitempty"`
+ // True if we witnessed the node over MQTT instead of LoRA transport
+ ViaMqtt bool `protobuf:"varint,8,opt,name=via_mqtt,json=viaMqtt,proto3" json:"via_mqtt,omitempty"`
+ // Number of hops away from us this node is (0 if direct neighbor)
+ HopsAway *uint32 `protobuf:"varint,9,opt,name=hops_away,json=hopsAway,proto3,oneof" json:"hops_away,omitempty"`
+ // True if node is in our favorites list
+ // Persists between NodeDB internal clean ups
+ IsFavorite bool `protobuf:"varint,10,opt,name=is_favorite,json=isFavorite,proto3" json:"is_favorite,omitempty"`
+ // True if node is in our ignored list
+ // Persists between NodeDB internal clean ups
+ IsIgnored bool `protobuf:"varint,11,opt,name=is_ignored,json=isIgnored,proto3" json:"is_ignored,omitempty"`
+ // True if node public key has been verified.
+ // Persists between NodeDB internal clean ups
+ // LSB 0 of the bitfield
+ IsKeyManuallyVerified bool `protobuf:"varint,12,opt,name=is_key_manually_verified,json=isKeyManuallyVerified,proto3" json:"is_key_manually_verified,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *NodeInfo) Reset() {
*x = NodeInfo{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_mesh_proto_msgTypes[8]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_mesh_proto_msgTypes[9]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *NodeInfo) String() string {
@@ -2047,8 +2588,8 @@ func (x *NodeInfo) String() string {
func (*NodeInfo) ProtoMessage() {}
func (x *NodeInfo) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_mesh_proto_msgTypes[8]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_mesh_proto_msgTypes[9]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -2060,7 +2601,7 @@ func (x *NodeInfo) ProtoReflect() protoreflect.Message {
// Deprecated: Use NodeInfo.ProtoReflect.Descriptor instead.
func (*NodeInfo) Descriptor() ([]byte, []int) {
- return file_meshtastic_mesh_proto_rawDescGZIP(), []int{8}
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{9}
}
func (x *NodeInfo) GetNum() uint32 {
@@ -2112,14 +2653,46 @@ func (x *NodeInfo) GetChannel() uint32 {
return 0
}
+func (x *NodeInfo) GetViaMqtt() bool {
+ if x != nil {
+ return x.ViaMqtt
+ }
+ return false
+}
+
+func (x *NodeInfo) GetHopsAway() uint32 {
+ if x != nil && x.HopsAway != nil {
+ return *x.HopsAway
+ }
+ return 0
+}
+
+func (x *NodeInfo) GetIsFavorite() bool {
+ if x != nil {
+ return x.IsFavorite
+ }
+ return false
+}
+
+func (x *NodeInfo) GetIsIgnored() bool {
+ if x != nil {
+ return x.IsIgnored
+ }
+ return false
+}
+
+func (x *NodeInfo) GetIsKeyManuallyVerified() bool {
+ if x != nil {
+ return x.IsKeyManuallyVerified
+ }
+ return false
+}
+
// Unique local debugging info for this node
// Note: we don't include position or the user info, because that will come in the
// Sent to the phone in response to WantNodes.
type MyNodeInfo struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Tells the phone what our node number is, default starting value is
// lowbyte of macaddr, but it will be fixed if that is already in use
MyNodeNum uint32 `protobuf:"varint,1,opt,name=my_node_num,json=myNodeNum,proto3" json:"my_node_num,omitempty"`
@@ -2129,15 +2702,19 @@ type MyNodeInfo struct {
// The minimum app version that can talk to this device.
// Phone/PC apps should compare this to their build number and if too low tell the user they must update their app
MinAppVersion uint32 `protobuf:"varint,11,opt,name=min_app_version,json=minAppVersion,proto3" json:"min_app_version,omitempty"`
+ // Unique hardware identifier for this device
+ DeviceId []byte `protobuf:"bytes,12,opt,name=device_id,json=deviceId,proto3" json:"device_id,omitempty"`
+ // The PlatformIO environment used to build this firmware
+ PioEnv string `protobuf:"bytes,13,opt,name=pio_env,json=pioEnv,proto3" json:"pio_env,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *MyNodeInfo) Reset() {
*x = MyNodeInfo{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_mesh_proto_msgTypes[9]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_mesh_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *MyNodeInfo) String() string {
@@ -2147,8 +2724,8 @@ func (x *MyNodeInfo) String() string {
func (*MyNodeInfo) ProtoMessage() {}
func (x *MyNodeInfo) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_mesh_proto_msgTypes[9]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_mesh_proto_msgTypes[10]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -2160,7 +2737,7 @@ func (x *MyNodeInfo) ProtoReflect() protoreflect.Message {
// Deprecated: Use MyNodeInfo.ProtoReflect.Descriptor instead.
func (*MyNodeInfo) Descriptor() ([]byte, []int) {
- return file_meshtastic_mesh_proto_rawDescGZIP(), []int{9}
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{10}
}
func (x *MyNodeInfo) GetMyNodeNum() uint32 {
@@ -2184,16 +2761,27 @@ func (x *MyNodeInfo) GetMinAppVersion() uint32 {
return 0
}
+func (x *MyNodeInfo) GetDeviceId() []byte {
+ if x != nil {
+ return x.DeviceId
+ }
+ return nil
+}
+
+func (x *MyNodeInfo) GetPioEnv() string {
+ if x != nil {
+ return x.PioEnv
+ }
+ return ""
+}
+
// Debug output from the device.
// To minimize the size of records inside the device code, if a time/source/level is not set
// on the message it is assumed to be a continuation of the previously sent message.
// This allows the device code to use fixed maxlen 64 byte strings for messages,
// and then extend as needed by emitting multiple records.
type LogRecord struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Log levels, chosen to match python logging conventions.
Message string `protobuf:"bytes,1,opt,name=message,proto3" json:"message,omitempty"`
// Seconds since 1970 - or 0 for unknown/unset
@@ -2201,16 +2789,16 @@ type LogRecord struct {
// Usually based on thread name - if known
Source string `protobuf:"bytes,3,opt,name=source,proto3" json:"source,omitempty"`
// Not yet set
- Level LogRecord_Level `protobuf:"varint,4,opt,name=level,proto3,enum=meshtastic.LogRecord_Level" json:"level,omitempty"`
+ Level LogRecord_Level `protobuf:"varint,4,opt,name=level,proto3,enum=meshtastic.LogRecord_Level" json:"level,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *LogRecord) Reset() {
*x = LogRecord{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_mesh_proto_msgTypes[10]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_mesh_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *LogRecord) String() string {
@@ -2220,8 +2808,8 @@ func (x *LogRecord) String() string {
func (*LogRecord) ProtoMessage() {}
func (x *LogRecord) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_mesh_proto_msgTypes[10]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_mesh_proto_msgTypes[11]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -2233,7 +2821,7 @@ func (x *LogRecord) ProtoReflect() protoreflect.Message {
// Deprecated: Use LogRecord.ProtoReflect.Descriptor instead.
func (*LogRecord) Descriptor() ([]byte, []int) {
- return file_meshtastic_mesh_proto_rawDescGZIP(), []int{10}
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{11}
}
func (x *LogRecord) GetMessage() string {
@@ -2265,10 +2853,7 @@ func (x *LogRecord) GetLevel() LogRecord_Level {
}
type QueueStatus struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Last attempt to queue status, ErrorCode
Res int32 `protobuf:"varint,1,opt,name=res,proto3" json:"res,omitempty"`
// Free entries in the outgoing queue
@@ -2276,16 +2861,16 @@ type QueueStatus struct {
// Maximum entries in the outgoing queue
Maxlen uint32 `protobuf:"varint,3,opt,name=maxlen,proto3" json:"maxlen,omitempty"`
// What was mesh packet id that generated this response?
- MeshPacketId uint32 `protobuf:"varint,4,opt,name=mesh_packet_id,json=meshPacketId,proto3" json:"mesh_packet_id,omitempty"`
+ MeshPacketId uint32 `protobuf:"varint,4,opt,name=mesh_packet_id,json=meshPacketId,proto3" json:"mesh_packet_id,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *QueueStatus) Reset() {
*x = QueueStatus{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_mesh_proto_msgTypes[11]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_mesh_proto_msgTypes[12]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *QueueStatus) String() string {
@@ -2295,8 +2880,8 @@ func (x *QueueStatus) String() string {
func (*QueueStatus) ProtoMessage() {}
func (x *QueueStatus) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_mesh_proto_msgTypes[11]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_mesh_proto_msgTypes[12]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -2308,7 +2893,7 @@ func (x *QueueStatus) ProtoReflect() protoreflect.Message {
// Deprecated: Use QueueStatus.ProtoReflect.Descriptor instead.
func (*QueueStatus) Descriptor() ([]byte, []int) {
- return file_meshtastic_mesh_proto_rawDescGZIP(), []int{11}
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{12}
}
func (x *QueueStatus) GetRes() int32 {
@@ -2344,16 +2929,13 @@ func (x *QueueStatus) GetMeshPacketId() uint32 {
// It will sit in that descriptor until consumed by the phone,
// at which point the next item in the FIFO will be populated.
type FromRadio struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// The packet id, used to allow the phone to request missing read packets from the FIFO,
// see our bluetooth docs
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
// Log levels, chosen to match python logging conventions.
//
- // Types that are assignable to PayloadVariant:
+ // Types that are valid to be assigned to PayloadVariant:
//
// *FromRadio_Packet
// *FromRadio_MyInfo
@@ -2368,16 +2950,19 @@ type FromRadio struct {
// *FromRadio_XmodemPacket
// *FromRadio_Metadata
// *FromRadio_MqttClientProxyMessage
+ // *FromRadio_FileInfo
+ // *FromRadio_ClientNotification
+ // *FromRadio_DeviceuiConfig
PayloadVariant isFromRadio_PayloadVariant `protobuf_oneof:"payload_variant"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *FromRadio) Reset() {
*x = FromRadio{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_mesh_proto_msgTypes[12]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_mesh_proto_msgTypes[13]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *FromRadio) String() string {
@@ -2387,8 +2972,8 @@ func (x *FromRadio) String() string {
func (*FromRadio) ProtoMessage() {}
func (x *FromRadio) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_mesh_proto_msgTypes[12]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_mesh_proto_msgTypes[13]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -2400,7 +2985,7 @@ func (x *FromRadio) ProtoReflect() protoreflect.Message {
// Deprecated: Use FromRadio.ProtoReflect.Descriptor instead.
func (*FromRadio) Descriptor() ([]byte, []int) {
- return file_meshtastic_mesh_proto_rawDescGZIP(), []int{12}
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{13}
}
func (x *FromRadio) GetId() uint32 {
@@ -2410,100 +2995,153 @@ func (x *FromRadio) GetId() uint32 {
return 0
}
-func (m *FromRadio) GetPayloadVariant() isFromRadio_PayloadVariant {
- if m != nil {
- return m.PayloadVariant
+func (x *FromRadio) GetPayloadVariant() isFromRadio_PayloadVariant {
+ if x != nil {
+ return x.PayloadVariant
}
return nil
}
func (x *FromRadio) GetPacket() *MeshPacket {
- if x, ok := x.GetPayloadVariant().(*FromRadio_Packet); ok {
- return x.Packet
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*FromRadio_Packet); ok {
+ return x.Packet
+ }
}
return nil
}
func (x *FromRadio) GetMyInfo() *MyNodeInfo {
- if x, ok := x.GetPayloadVariant().(*FromRadio_MyInfo); ok {
- return x.MyInfo
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*FromRadio_MyInfo); ok {
+ return x.MyInfo
+ }
}
return nil
}
func (x *FromRadio) GetNodeInfo() *NodeInfo {
- if x, ok := x.GetPayloadVariant().(*FromRadio_NodeInfo); ok {
- return x.NodeInfo
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*FromRadio_NodeInfo); ok {
+ return x.NodeInfo
+ }
}
return nil
}
func (x *FromRadio) GetConfig() *Config {
- if x, ok := x.GetPayloadVariant().(*FromRadio_Config); ok {
- return x.Config
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*FromRadio_Config); ok {
+ return x.Config
+ }
}
return nil
}
func (x *FromRadio) GetLogRecord() *LogRecord {
- if x, ok := x.GetPayloadVariant().(*FromRadio_LogRecord); ok {
- return x.LogRecord
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*FromRadio_LogRecord); ok {
+ return x.LogRecord
+ }
}
return nil
}
func (x *FromRadio) GetConfigCompleteId() uint32 {
- if x, ok := x.GetPayloadVariant().(*FromRadio_ConfigCompleteId); ok {
- return x.ConfigCompleteId
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*FromRadio_ConfigCompleteId); ok {
+ return x.ConfigCompleteId
+ }
}
return 0
}
func (x *FromRadio) GetRebooted() bool {
- if x, ok := x.GetPayloadVariant().(*FromRadio_Rebooted); ok {
- return x.Rebooted
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*FromRadio_Rebooted); ok {
+ return x.Rebooted
+ }
}
return false
}
func (x *FromRadio) GetModuleConfig() *ModuleConfig {
- if x, ok := x.GetPayloadVariant().(*FromRadio_ModuleConfig); ok {
- return x.ModuleConfig
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*FromRadio_ModuleConfig); ok {
+ return x.ModuleConfig
+ }
}
return nil
}
func (x *FromRadio) GetChannel() *Channel {
- if x, ok := x.GetPayloadVariant().(*FromRadio_Channel); ok {
- return x.Channel
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*FromRadio_Channel); ok {
+ return x.Channel
+ }
}
return nil
}
func (x *FromRadio) GetQueueStatus() *QueueStatus {
- if x, ok := x.GetPayloadVariant().(*FromRadio_QueueStatus); ok {
- return x.QueueStatus
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*FromRadio_QueueStatus); ok {
+ return x.QueueStatus
+ }
}
return nil
}
func (x *FromRadio) GetXmodemPacket() *XModem {
- if x, ok := x.GetPayloadVariant().(*FromRadio_XmodemPacket); ok {
- return x.XmodemPacket
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*FromRadio_XmodemPacket); ok {
+ return x.XmodemPacket
+ }
}
return nil
}
func (x *FromRadio) GetMetadata() *DeviceMetadata {
- if x, ok := x.GetPayloadVariant().(*FromRadio_Metadata); ok {
- return x.Metadata
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*FromRadio_Metadata); ok {
+ return x.Metadata
+ }
}
return nil
}
func (x *FromRadio) GetMqttClientProxyMessage() *MqttClientProxyMessage {
- if x, ok := x.GetPayloadVariant().(*FromRadio_MqttClientProxyMessage); ok {
- return x.MqttClientProxyMessage
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*FromRadio_MqttClientProxyMessage); ok {
+ return x.MqttClientProxyMessage
+ }
+ }
+ return nil
+}
+
+func (x *FromRadio) GetFileInfo() *FileInfo {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*FromRadio_FileInfo); ok {
+ return x.FileInfo
+ }
+ }
+ return nil
+}
+
+func (x *FromRadio) GetClientNotification() *ClientNotification {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*FromRadio_ClientNotification); ok {
+ return x.ClientNotification
+ }
+ }
+ return nil
+}
+
+func (x *FromRadio) GetDeviceuiConfig() *DeviceUIConfig {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*FromRadio_DeviceuiConfig); ok {
+ return x.DeviceuiConfig
+ }
}
return nil
}
@@ -2585,6 +3223,21 @@ type FromRadio_MqttClientProxyMessage struct {
MqttClientProxyMessage *MqttClientProxyMessage `protobuf:"bytes,14,opt,name=mqttClientProxyMessage,proto3,oneof"`
}
+type FromRadio_FileInfo struct {
+ // File system manifest messages
+ FileInfo *FileInfo `protobuf:"bytes,15,opt,name=fileInfo,proto3,oneof"`
+}
+
+type FromRadio_ClientNotification struct {
+ // Notification message to the client
+ ClientNotification *ClientNotification `protobuf:"bytes,16,opt,name=clientNotification,proto3,oneof"`
+}
+
+type FromRadio_DeviceuiConfig struct {
+ // Persistent data for device-ui
+ DeviceuiConfig *DeviceUIConfig `protobuf:"bytes,17,opt,name=deviceuiConfig,proto3,oneof"`
+}
+
func (*FromRadio_Packet) isFromRadio_PayloadVariant() {}
func (*FromRadio_MyInfo) isFromRadio_PayloadVariant() {}
@@ -2611,32 +3264,409 @@ func (*FromRadio_Metadata) isFromRadio_PayloadVariant() {}
func (*FromRadio_MqttClientProxyMessage) isFromRadio_PayloadVariant() {}
+func (*FromRadio_FileInfo) isFromRadio_PayloadVariant() {}
+
+func (*FromRadio_ClientNotification) isFromRadio_PayloadVariant() {}
+
+func (*FromRadio_DeviceuiConfig) isFromRadio_PayloadVariant() {}
+
+// A notification message from the device to the client
+// To be used for important messages that should to be displayed to the user
+// in the form of push notifications or validation messages when saving
+// invalid configuration.
+type ClientNotification struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // The id of the packet we're notifying in response to
+ ReplyId *uint32 `protobuf:"varint,1,opt,name=reply_id,json=replyId,proto3,oneof" json:"reply_id,omitempty"`
+ // Seconds since 1970 - or 0 for unknown/unset
+ Time uint32 `protobuf:"fixed32,2,opt,name=time,proto3" json:"time,omitempty"`
+ // The level type of notification
+ Level LogRecord_Level `protobuf:"varint,3,opt,name=level,proto3,enum=meshtastic.LogRecord_Level" json:"level,omitempty"`
+ // The message body of the notification
+ Message string `protobuf:"bytes,4,opt,name=message,proto3" json:"message,omitempty"`
+ // Types that are valid to be assigned to PayloadVariant:
+ //
+ // *ClientNotification_KeyVerificationNumberInform
+ // *ClientNotification_KeyVerificationNumberRequest
+ // *ClientNotification_KeyVerificationFinal
+ PayloadVariant isClientNotification_PayloadVariant `protobuf_oneof:"payload_variant"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *ClientNotification) Reset() {
+ *x = ClientNotification{}
+ mi := &file_meshtastic_mesh_proto_msgTypes[14]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *ClientNotification) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ClientNotification) ProtoMessage() {}
+
+func (x *ClientNotification) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_mesh_proto_msgTypes[14]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ClientNotification.ProtoReflect.Descriptor instead.
+func (*ClientNotification) Descriptor() ([]byte, []int) {
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{14}
+}
+
+func (x *ClientNotification) GetReplyId() uint32 {
+ if x != nil && x.ReplyId != nil {
+ return *x.ReplyId
+ }
+ return 0
+}
+
+func (x *ClientNotification) GetTime() uint32 {
+ if x != nil {
+ return x.Time
+ }
+ return 0
+}
+
+func (x *ClientNotification) GetLevel() LogRecord_Level {
+ if x != nil {
+ return x.Level
+ }
+ return LogRecord_UNSET
+}
+
+func (x *ClientNotification) GetMessage() string {
+ if x != nil {
+ return x.Message
+ }
+ return ""
+}
+
+func (x *ClientNotification) GetPayloadVariant() isClientNotification_PayloadVariant {
+ if x != nil {
+ return x.PayloadVariant
+ }
+ return nil
+}
+
+func (x *ClientNotification) GetKeyVerificationNumberInform() *KeyVerificationNumberInform {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*ClientNotification_KeyVerificationNumberInform); ok {
+ return x.KeyVerificationNumberInform
+ }
+ }
+ return nil
+}
+
+func (x *ClientNotification) GetKeyVerificationNumberRequest() *KeyVerificationNumberRequest {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*ClientNotification_KeyVerificationNumberRequest); ok {
+ return x.KeyVerificationNumberRequest
+ }
+ }
+ return nil
+}
+
+func (x *ClientNotification) GetKeyVerificationFinal() *KeyVerificationFinal {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*ClientNotification_KeyVerificationFinal); ok {
+ return x.KeyVerificationFinal
+ }
+ }
+ return nil
+}
+
+type isClientNotification_PayloadVariant interface {
+ isClientNotification_PayloadVariant()
+}
+
+type ClientNotification_KeyVerificationNumberInform struct {
+ KeyVerificationNumberInform *KeyVerificationNumberInform `protobuf:"bytes,11,opt,name=key_verification_number_inform,json=keyVerificationNumberInform,proto3,oneof"`
+}
+
+type ClientNotification_KeyVerificationNumberRequest struct {
+ KeyVerificationNumberRequest *KeyVerificationNumberRequest `protobuf:"bytes,12,opt,name=key_verification_number_request,json=keyVerificationNumberRequest,proto3,oneof"`
+}
+
+type ClientNotification_KeyVerificationFinal struct {
+ KeyVerificationFinal *KeyVerificationFinal `protobuf:"bytes,13,opt,name=key_verification_final,json=keyVerificationFinal,proto3,oneof"`
+}
+
+func (*ClientNotification_KeyVerificationNumberInform) isClientNotification_PayloadVariant() {}
+
+func (*ClientNotification_KeyVerificationNumberRequest) isClientNotification_PayloadVariant() {}
+
+func (*ClientNotification_KeyVerificationFinal) isClientNotification_PayloadVariant() {}
+
+type KeyVerificationNumberInform struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Nonce uint64 `protobuf:"varint,1,opt,name=nonce,proto3" json:"nonce,omitempty"`
+ RemoteLongname string `protobuf:"bytes,2,opt,name=remote_longname,json=remoteLongname,proto3" json:"remote_longname,omitempty"`
+ SecurityNumber uint32 `protobuf:"varint,3,opt,name=security_number,json=securityNumber,proto3" json:"security_number,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *KeyVerificationNumberInform) Reset() {
+ *x = KeyVerificationNumberInform{}
+ mi := &file_meshtastic_mesh_proto_msgTypes[15]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *KeyVerificationNumberInform) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*KeyVerificationNumberInform) ProtoMessage() {}
+
+func (x *KeyVerificationNumberInform) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_mesh_proto_msgTypes[15]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use KeyVerificationNumberInform.ProtoReflect.Descriptor instead.
+func (*KeyVerificationNumberInform) Descriptor() ([]byte, []int) {
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{15}
+}
+
+func (x *KeyVerificationNumberInform) GetNonce() uint64 {
+ if x != nil {
+ return x.Nonce
+ }
+ return 0
+}
+
+func (x *KeyVerificationNumberInform) GetRemoteLongname() string {
+ if x != nil {
+ return x.RemoteLongname
+ }
+ return ""
+}
+
+func (x *KeyVerificationNumberInform) GetSecurityNumber() uint32 {
+ if x != nil {
+ return x.SecurityNumber
+ }
+ return 0
+}
+
+type KeyVerificationNumberRequest struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Nonce uint64 `protobuf:"varint,1,opt,name=nonce,proto3" json:"nonce,omitempty"`
+ RemoteLongname string `protobuf:"bytes,2,opt,name=remote_longname,json=remoteLongname,proto3" json:"remote_longname,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *KeyVerificationNumberRequest) Reset() {
+ *x = KeyVerificationNumberRequest{}
+ mi := &file_meshtastic_mesh_proto_msgTypes[16]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *KeyVerificationNumberRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*KeyVerificationNumberRequest) ProtoMessage() {}
+
+func (x *KeyVerificationNumberRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_mesh_proto_msgTypes[16]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use KeyVerificationNumberRequest.ProtoReflect.Descriptor instead.
+func (*KeyVerificationNumberRequest) Descriptor() ([]byte, []int) {
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{16}
+}
+
+func (x *KeyVerificationNumberRequest) GetNonce() uint64 {
+ if x != nil {
+ return x.Nonce
+ }
+ return 0
+}
+
+func (x *KeyVerificationNumberRequest) GetRemoteLongname() string {
+ if x != nil {
+ return x.RemoteLongname
+ }
+ return ""
+}
+
+type KeyVerificationFinal struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Nonce uint64 `protobuf:"varint,1,opt,name=nonce,proto3" json:"nonce,omitempty"`
+ RemoteLongname string `protobuf:"bytes,2,opt,name=remote_longname,json=remoteLongname,proto3" json:"remote_longname,omitempty"`
+ IsSender bool `protobuf:"varint,3,opt,name=isSender,proto3" json:"isSender,omitempty"`
+ VerificationCharacters string `protobuf:"bytes,4,opt,name=verification_characters,json=verificationCharacters,proto3" json:"verification_characters,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *KeyVerificationFinal) Reset() {
+ *x = KeyVerificationFinal{}
+ mi := &file_meshtastic_mesh_proto_msgTypes[17]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *KeyVerificationFinal) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*KeyVerificationFinal) ProtoMessage() {}
+
+func (x *KeyVerificationFinal) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_mesh_proto_msgTypes[17]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use KeyVerificationFinal.ProtoReflect.Descriptor instead.
+func (*KeyVerificationFinal) Descriptor() ([]byte, []int) {
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{17}
+}
+
+func (x *KeyVerificationFinal) GetNonce() uint64 {
+ if x != nil {
+ return x.Nonce
+ }
+ return 0
+}
+
+func (x *KeyVerificationFinal) GetRemoteLongname() string {
+ if x != nil {
+ return x.RemoteLongname
+ }
+ return ""
+}
+
+func (x *KeyVerificationFinal) GetIsSender() bool {
+ if x != nil {
+ return x.IsSender
+ }
+ return false
+}
+
+func (x *KeyVerificationFinal) GetVerificationCharacters() string {
+ if x != nil {
+ return x.VerificationCharacters
+ }
+ return ""
+}
+
+// Individual File info for the device
+type FileInfo struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // The fully qualified path of the file
+ FileName string `protobuf:"bytes,1,opt,name=file_name,json=fileName,proto3" json:"file_name,omitempty"`
+ // The size of the file in bytes
+ SizeBytes uint32 `protobuf:"varint,2,opt,name=size_bytes,json=sizeBytes,proto3" json:"size_bytes,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *FileInfo) Reset() {
+ *x = FileInfo{}
+ mi := &file_meshtastic_mesh_proto_msgTypes[18]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *FileInfo) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*FileInfo) ProtoMessage() {}
+
+func (x *FileInfo) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_mesh_proto_msgTypes[18]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use FileInfo.ProtoReflect.Descriptor instead.
+func (*FileInfo) Descriptor() ([]byte, []int) {
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{18}
+}
+
+func (x *FileInfo) GetFileName() string {
+ if x != nil {
+ return x.FileName
+ }
+ return ""
+}
+
+func (x *FileInfo) GetSizeBytes() uint32 {
+ if x != nil {
+ return x.SizeBytes
+ }
+ return 0
+}
+
// Packets/commands to the radio will be written (reliably) to the toRadio characteristic.
// Once the write completes the phone can assume it is handled.
type ToRadio struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Log levels, chosen to match python logging conventions.
//
- // Types that are assignable to PayloadVariant:
+ // Types that are valid to be assigned to PayloadVariant:
//
// *ToRadio_Packet
// *ToRadio_WantConfigId
// *ToRadio_Disconnect
// *ToRadio_XmodemPacket
// *ToRadio_MqttClientProxyMessage
+ // *ToRadio_Heartbeat
PayloadVariant isToRadio_PayloadVariant `protobuf_oneof:"payload_variant"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *ToRadio) Reset() {
*x = ToRadio{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_mesh_proto_msgTypes[13]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_mesh_proto_msgTypes[19]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *ToRadio) String() string {
@@ -2646,8 +3676,8 @@ func (x *ToRadio) String() string {
func (*ToRadio) ProtoMessage() {}
func (x *ToRadio) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_mesh_proto_msgTypes[13]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_mesh_proto_msgTypes[19]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -2659,47 +3689,66 @@ func (x *ToRadio) ProtoReflect() protoreflect.Message {
// Deprecated: Use ToRadio.ProtoReflect.Descriptor instead.
func (*ToRadio) Descriptor() ([]byte, []int) {
- return file_meshtastic_mesh_proto_rawDescGZIP(), []int{13}
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{19}
}
-func (m *ToRadio) GetPayloadVariant() isToRadio_PayloadVariant {
- if m != nil {
- return m.PayloadVariant
+func (x *ToRadio) GetPayloadVariant() isToRadio_PayloadVariant {
+ if x != nil {
+ return x.PayloadVariant
}
return nil
}
func (x *ToRadio) GetPacket() *MeshPacket {
- if x, ok := x.GetPayloadVariant().(*ToRadio_Packet); ok {
- return x.Packet
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*ToRadio_Packet); ok {
+ return x.Packet
+ }
}
return nil
}
func (x *ToRadio) GetWantConfigId() uint32 {
- if x, ok := x.GetPayloadVariant().(*ToRadio_WantConfigId); ok {
- return x.WantConfigId
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*ToRadio_WantConfigId); ok {
+ return x.WantConfigId
+ }
}
return 0
}
func (x *ToRadio) GetDisconnect() bool {
- if x, ok := x.GetPayloadVariant().(*ToRadio_Disconnect); ok {
- return x.Disconnect
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*ToRadio_Disconnect); ok {
+ return x.Disconnect
+ }
}
return false
}
func (x *ToRadio) GetXmodemPacket() *XModem {
- if x, ok := x.GetPayloadVariant().(*ToRadio_XmodemPacket); ok {
- return x.XmodemPacket
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*ToRadio_XmodemPacket); ok {
+ return x.XmodemPacket
+ }
}
return nil
}
func (x *ToRadio) GetMqttClientProxyMessage() *MqttClientProxyMessage {
- if x, ok := x.GetPayloadVariant().(*ToRadio_MqttClientProxyMessage); ok {
- return x.MqttClientProxyMessage
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*ToRadio_MqttClientProxyMessage); ok {
+ return x.MqttClientProxyMessage
+ }
+ }
+ return nil
+}
+
+func (x *ToRadio) GetHeartbeat() *Heartbeat {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*ToRadio_Heartbeat); ok {
+ return x.Heartbeat
+ }
}
return nil
}
@@ -2741,6 +3790,11 @@ type ToRadio_MqttClientProxyMessage struct {
MqttClientProxyMessage *MqttClientProxyMessage `protobuf:"bytes,6,opt,name=mqttClientProxyMessage,proto3,oneof"`
}
+type ToRadio_Heartbeat struct {
+ // Heartbeat message (used to keep the device connection awake on serial)
+ Heartbeat *Heartbeat `protobuf:"bytes,7,opt,name=heartbeat,proto3,oneof"`
+}
+
func (*ToRadio_Packet) isToRadio_PayloadVariant() {}
func (*ToRadio_WantConfigId) isToRadio_PayloadVariant() {}
@@ -2751,25 +3805,24 @@ func (*ToRadio_XmodemPacket) isToRadio_PayloadVariant() {}
func (*ToRadio_MqttClientProxyMessage) isToRadio_PayloadVariant() {}
+func (*ToRadio_Heartbeat) isToRadio_PayloadVariant() {}
+
// Compressed message payload
type Compressed struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// PortNum to determine the how to handle the compressed payload.
Portnum PortNum `protobuf:"varint,1,opt,name=portnum,proto3,enum=meshtastic.PortNum" json:"portnum,omitempty"`
// Compressed data.
- Data []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
+ Data []byte `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *Compressed) Reset() {
*x = Compressed{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_mesh_proto_msgTypes[14]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_mesh_proto_msgTypes[20]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *Compressed) String() string {
@@ -2779,8 +3832,8 @@ func (x *Compressed) String() string {
func (*Compressed) ProtoMessage() {}
func (x *Compressed) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_mesh_proto_msgTypes[14]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_mesh_proto_msgTypes[20]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -2792,7 +3845,7 @@ func (x *Compressed) ProtoReflect() protoreflect.Message {
// Deprecated: Use Compressed.ProtoReflect.Descriptor instead.
func (*Compressed) Descriptor() ([]byte, []int) {
- return file_meshtastic_mesh_proto_rawDescGZIP(), []int{14}
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{20}
}
func (x *Compressed) GetPortnum() PortNum {
@@ -2811,10 +3864,7 @@ func (x *Compressed) GetData() []byte {
// Full info on edges for a single node
type NeighborInfo struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// The node ID of the node sending info on its neighbors
NodeId uint32 `protobuf:"varint,1,opt,name=node_id,json=nodeId,proto3" json:"node_id,omitempty"`
// Field to pass neighbor info for the next sending cycle
@@ -2822,16 +3872,16 @@ type NeighborInfo struct {
// Broadcast interval of the represented node (in seconds)
NodeBroadcastIntervalSecs uint32 `protobuf:"varint,3,opt,name=node_broadcast_interval_secs,json=nodeBroadcastIntervalSecs,proto3" json:"node_broadcast_interval_secs,omitempty"`
// The list of out edges from this node
- Neighbors []*Neighbor `protobuf:"bytes,4,rep,name=neighbors,proto3" json:"neighbors,omitempty"`
+ Neighbors []*Neighbor `protobuf:"bytes,4,rep,name=neighbors,proto3" json:"neighbors,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *NeighborInfo) Reset() {
*x = NeighborInfo{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_mesh_proto_msgTypes[15]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_mesh_proto_msgTypes[21]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *NeighborInfo) String() string {
@@ -2841,8 +3891,8 @@ func (x *NeighborInfo) String() string {
func (*NeighborInfo) ProtoMessage() {}
func (x *NeighborInfo) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_mesh_proto_msgTypes[15]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_mesh_proto_msgTypes[21]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -2854,7 +3904,7 @@ func (x *NeighborInfo) ProtoReflect() protoreflect.Message {
// Deprecated: Use NeighborInfo.ProtoReflect.Descriptor instead.
func (*NeighborInfo) Descriptor() ([]byte, []int) {
- return file_meshtastic_mesh_proto_rawDescGZIP(), []int{15}
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{21}
}
func (x *NeighborInfo) GetNodeId() uint32 {
@@ -2887,10 +3937,7 @@ func (x *NeighborInfo) GetNeighbors() []*Neighbor {
// A single edge in the mesh
type Neighbor struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Node ID of neighbor
NodeId uint32 `protobuf:"varint,1,opt,name=node_id,json=nodeId,proto3" json:"node_id,omitempty"`
// SNR of last heard message
@@ -2901,15 +3948,15 @@ type Neighbor struct {
// Broadcast interval of this neighbor (in seconds).
// Note: this is for local storage only and will not be sent out over the mesh.
NodeBroadcastIntervalSecs uint32 `protobuf:"varint,4,opt,name=node_broadcast_interval_secs,json=nodeBroadcastIntervalSecs,proto3" json:"node_broadcast_interval_secs,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *Neighbor) Reset() {
*x = Neighbor{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_mesh_proto_msgTypes[16]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_mesh_proto_msgTypes[22]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *Neighbor) String() string {
@@ -2919,8 +3966,8 @@ func (x *Neighbor) String() string {
func (*Neighbor) ProtoMessage() {}
func (x *Neighbor) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_mesh_proto_msgTypes[16]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_mesh_proto_msgTypes[22]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -2932,7 +3979,7 @@ func (x *Neighbor) ProtoReflect() protoreflect.Message {
// Deprecated: Use Neighbor.ProtoReflect.Descriptor instead.
func (*Neighbor) Descriptor() ([]byte, []int) {
- return file_meshtastic_mesh_proto_rawDescGZIP(), []int{16}
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{22}
}
func (x *Neighbor) GetNodeId() uint32 {
@@ -2965,10 +4012,7 @@ func (x *Neighbor) GetNodeBroadcastIntervalSecs() uint32 {
// Device metadata response
type DeviceMetadata struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Device firmware version string
FirmwareVersion string `protobuf:"bytes,1,opt,name=firmware_version,json=firmwareVersion,proto3" json:"firmware_version,omitempty"`
// Device state version
@@ -2989,15 +4033,20 @@ type DeviceMetadata struct {
HwModel HardwareModel `protobuf:"varint,9,opt,name=hw_model,json=hwModel,proto3,enum=meshtastic.HardwareModel" json:"hw_model,omitempty"`
// Has Remote Hardware enabled
HasRemoteHardware bool `protobuf:"varint,10,opt,name=hasRemoteHardware,proto3" json:"hasRemoteHardware,omitempty"`
+ // Has PKC capabilities
+ HasPKC bool `protobuf:"varint,11,opt,name=hasPKC,proto3" json:"hasPKC,omitempty"`
+ // Bit field of boolean for excluded modules
+ // (bitwise OR of ExcludedModules)
+ ExcludedModules uint32 `protobuf:"varint,12,opt,name=excluded_modules,json=excludedModules,proto3" json:"excluded_modules,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *DeviceMetadata) Reset() {
*x = DeviceMetadata{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_mesh_proto_msgTypes[17]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_mesh_proto_msgTypes[23]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *DeviceMetadata) String() string {
@@ -3007,8 +4056,8 @@ func (x *DeviceMetadata) String() string {
func (*DeviceMetadata) ProtoMessage() {}
func (x *DeviceMetadata) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_mesh_proto_msgTypes[17]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_mesh_proto_msgTypes[23]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -3020,7 +4069,7 @@ func (x *DeviceMetadata) ProtoReflect() protoreflect.Message {
// Deprecated: Use DeviceMetadata.ProtoReflect.Descriptor instead.
func (*DeviceMetadata) Descriptor() ([]byte, []int) {
- return file_meshtastic_mesh_proto_rawDescGZIP(), []int{17}
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{23}
}
func (x *DeviceMetadata) GetFirmwareVersion() string {
@@ -3093,552 +4142,943 @@ func (x *DeviceMetadata) GetHasRemoteHardware() bool {
return false
}
-var File_meshtastic_mesh_proto protoreflect.FileDescriptor
+func (x *DeviceMetadata) GetHasPKC() bool {
+ if x != nil {
+ return x.HasPKC
+ }
+ return false
+}
+
+func (x *DeviceMetadata) GetExcludedModules() uint32 {
+ if x != nil {
+ return x.ExcludedModules
+ }
+ return 0
+}
+
+// A heartbeat message is sent to the node from the client to keep the connection alive.
+// This is currently only needed to keep serial connections alive, but can be used by any PhoneAPI.
+type Heartbeat struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *Heartbeat) Reset() {
+ *x = Heartbeat{}
+ mi := &file_meshtastic_mesh_proto_msgTypes[24]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *Heartbeat) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Heartbeat) ProtoMessage() {}
+
+func (x *Heartbeat) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_mesh_proto_msgTypes[24]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Heartbeat.ProtoReflect.Descriptor instead.
+func (*Heartbeat) Descriptor() ([]byte, []int) {
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{24}
+}
+
+// RemoteHardwarePins associated with a node
+type NodeRemoteHardwarePin struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // The node_num exposing the available gpio pin
+ NodeNum uint32 `protobuf:"varint,1,opt,name=node_num,json=nodeNum,proto3" json:"node_num,omitempty"`
+ // The the available gpio pin for usage with RemoteHardware module
+ Pin *RemoteHardwarePin `protobuf:"bytes,2,opt,name=pin,proto3" json:"pin,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *NodeRemoteHardwarePin) Reset() {
+ *x = NodeRemoteHardwarePin{}
+ mi := &file_meshtastic_mesh_proto_msgTypes[25]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *NodeRemoteHardwarePin) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*NodeRemoteHardwarePin) ProtoMessage() {}
+
+func (x *NodeRemoteHardwarePin) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_mesh_proto_msgTypes[25]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use NodeRemoteHardwarePin.ProtoReflect.Descriptor instead.
+func (*NodeRemoteHardwarePin) Descriptor() ([]byte, []int) {
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{25}
+}
+
+func (x *NodeRemoteHardwarePin) GetNodeNum() uint32 {
+ if x != nil {
+ return x.NodeNum
+ }
+ return 0
+}
+
+func (x *NodeRemoteHardwarePin) GetPin() *RemoteHardwarePin {
+ if x != nil {
+ return x.Pin
+ }
+ return nil
+}
+
+type ChunkedPayload struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // The ID of the entire payload
+ PayloadId uint32 `protobuf:"varint,1,opt,name=payload_id,json=payloadId,proto3" json:"payload_id,omitempty"`
+ // The total number of chunks in the payload
+ ChunkCount uint32 `protobuf:"varint,2,opt,name=chunk_count,json=chunkCount,proto3" json:"chunk_count,omitempty"`
+ // The current chunk index in the total
+ ChunkIndex uint32 `protobuf:"varint,3,opt,name=chunk_index,json=chunkIndex,proto3" json:"chunk_index,omitempty"`
+ // The binary data of the current chunk
+ PayloadChunk []byte `protobuf:"bytes,4,opt,name=payload_chunk,json=payloadChunk,proto3" json:"payload_chunk,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *ChunkedPayload) Reset() {
+ *x = ChunkedPayload{}
+ mi := &file_meshtastic_mesh_proto_msgTypes[26]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *ChunkedPayload) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ChunkedPayload) ProtoMessage() {}
+
+func (x *ChunkedPayload) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_mesh_proto_msgTypes[26]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
-var file_meshtastic_mesh_proto_rawDesc = []byte{
- 0x0a, 0x15, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x6d, 0x65, 0x73,
- 0x68, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0a, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73,
- 0x74, 0x69, 0x63, 0x1a, 0x18, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f,
- 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x6d,
- 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
- 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74,
- 0x69, 0x63, 0x2f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67,
- 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74,
- 0x69, 0x63, 0x2f, 0x70, 0x6f, 0x72, 0x74, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74,
- 0x6f, 0x1a, 0x1a, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x74, 0x65,
- 0x6c, 0x65, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x6d,
- 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x78, 0x6d, 0x6f, 0x64, 0x65, 0x6d,
- 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x80, 0x08, 0x0a, 0x08, 0x50, 0x6f, 0x73, 0x69, 0x74,
- 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x61, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x5f,
- 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0f, 0x52, 0x09, 0x6c, 0x61, 0x74, 0x69, 0x74, 0x75, 0x64,
- 0x65, 0x49, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x6f, 0x6e, 0x67, 0x69, 0x74, 0x75, 0x64, 0x65, 0x5f,
- 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0f, 0x52, 0x0a, 0x6c, 0x6f, 0x6e, 0x67, 0x69, 0x74, 0x75,
- 0x64, 0x65, 0x49, 0x12, 0x1a, 0x0a, 0x08, 0x61, 0x6c, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x18,
- 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x61, 0x6c, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x12,
- 0x12, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x07, 0x52, 0x04, 0x74,
- 0x69, 0x6d, 0x65, 0x12, 0x47, 0x0a, 0x0f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
- 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e, 0x6d,
- 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69,
- 0x6f, 0x6e, 0x2e, 0x4c, 0x6f, 0x63, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x0e, 0x6c, 0x6f,
- 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x47, 0x0a, 0x0f,
- 0x61, 0x6c, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18,
- 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74,
- 0x69, 0x63, 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x41, 0x6c, 0x74, 0x53,
- 0x6f, 0x75, 0x72, 0x63, 0x65, 0x52, 0x0e, 0x61, 0x6c, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x53,
- 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
- 0x6d, 0x70, 0x18, 0x07, 0x20, 0x01, 0x28, 0x07, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74,
- 0x61, 0x6d, 0x70, 0x12, 0x36, 0x0a, 0x17, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
- 0x5f, 0x6d, 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x5f, 0x61, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x18, 0x08,
- 0x20, 0x01, 0x28, 0x05, 0x52, 0x15, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x4d,
- 0x69, 0x6c, 0x6c, 0x69, 0x73, 0x41, 0x64, 0x6a, 0x75, 0x73, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x61,
- 0x6c, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x5f, 0x68, 0x61, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28,
- 0x11, 0x52, 0x0b, 0x61, 0x6c, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x48, 0x61, 0x65, 0x12, 0x3e,
- 0x0a, 0x1b, 0x61, 0x6c, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x5f, 0x67, 0x65, 0x6f, 0x69, 0x64,
- 0x61, 0x6c, 0x5f, 0x73, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20,
- 0x01, 0x28, 0x11, 0x52, 0x19, 0x61, 0x6c, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x47, 0x65, 0x6f,
- 0x69, 0x64, 0x61, 0x6c, 0x53, 0x65, 0x70, 0x61, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12,
- 0x0a, 0x04, 0x50, 0x44, 0x4f, 0x50, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x50, 0x44,
- 0x4f, 0x50, 0x12, 0x12, 0x0a, 0x04, 0x48, 0x44, 0x4f, 0x50, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d,
- 0x52, 0x04, 0x48, 0x44, 0x4f, 0x50, 0x12, 0x12, 0x0a, 0x04, 0x56, 0x44, 0x4f, 0x50, 0x18, 0x0d,
- 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x56, 0x44, 0x4f, 0x50, 0x12, 0x21, 0x0a, 0x0c, 0x67, 0x70,
- 0x73, 0x5f, 0x61, 0x63, 0x63, 0x75, 0x72, 0x61, 0x63, 0x79, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d,
- 0x52, 0x0b, 0x67, 0x70, 0x73, 0x41, 0x63, 0x63, 0x75, 0x72, 0x61, 0x63, 0x79, 0x12, 0x21, 0x0a,
- 0x0c, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x73, 0x70, 0x65, 0x65, 0x64, 0x18, 0x0f, 0x20,
- 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x53, 0x70, 0x65, 0x65, 0x64,
- 0x12, 0x21, 0x0a, 0x0c, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x74, 0x72, 0x61, 0x63, 0x6b,
- 0x18, 0x10, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x67, 0x72, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72,
- 0x61, 0x63, 0x6b, 0x12, 0x1f, 0x0a, 0x0b, 0x66, 0x69, 0x78, 0x5f, 0x71, 0x75, 0x61, 0x6c, 0x69,
- 0x74, 0x79, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x66, 0x69, 0x78, 0x51, 0x75, 0x61,
- 0x6c, 0x69, 0x74, 0x79, 0x12, 0x19, 0x0a, 0x08, 0x66, 0x69, 0x78, 0x5f, 0x74, 0x79, 0x70, 0x65,
- 0x18, 0x12, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x66, 0x69, 0x78, 0x54, 0x79, 0x70, 0x65, 0x12,
- 0x20, 0x0a, 0x0c, 0x73, 0x61, 0x74, 0x73, 0x5f, 0x69, 0x6e, 0x5f, 0x76, 0x69, 0x65, 0x77, 0x18,
- 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x73, 0x61, 0x74, 0x73, 0x49, 0x6e, 0x56, 0x69, 0x65,
- 0x77, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x14,
- 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x49, 0x64, 0x12, 0x1f,
- 0x0a, 0x0b, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x18, 0x15, 0x20,
- 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x12,
- 0x1d, 0x0a, 0x0a, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x16, 0x20,
- 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x71, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x25,
- 0x0a, 0x0e, 0x70, 0x72, 0x65, 0x63, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x62, 0x69, 0x74, 0x73,
- 0x18, 0x17, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x72, 0x65, 0x63, 0x69, 0x73, 0x69, 0x6f,
- 0x6e, 0x42, 0x69, 0x74, 0x73, 0x22, 0x4e, 0x0a, 0x09, 0x4c, 0x6f, 0x63, 0x53, 0x6f, 0x75, 0x72,
- 0x63, 0x65, 0x12, 0x0d, 0x0a, 0x09, 0x4c, 0x4f, 0x43, 0x5f, 0x55, 0x4e, 0x53, 0x45, 0x54, 0x10,
- 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x4c, 0x4f, 0x43, 0x5f, 0x4d, 0x41, 0x4e, 0x55, 0x41, 0x4c, 0x10,
- 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x4c, 0x4f, 0x43, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41,
- 0x4c, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x4c, 0x4f, 0x43, 0x5f, 0x45, 0x58, 0x54, 0x45, 0x52,
- 0x4e, 0x41, 0x4c, 0x10, 0x03, 0x22, 0x62, 0x0a, 0x09, 0x41, 0x6c, 0x74, 0x53, 0x6f, 0x75, 0x72,
- 0x63, 0x65, 0x12, 0x0d, 0x0a, 0x09, 0x41, 0x4c, 0x54, 0x5f, 0x55, 0x4e, 0x53, 0x45, 0x54, 0x10,
- 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x41, 0x4c, 0x54, 0x5f, 0x4d, 0x41, 0x4e, 0x55, 0x41, 0x4c, 0x10,
- 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x41, 0x4c, 0x54, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41,
- 0x4c, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x41, 0x4c, 0x54, 0x5f, 0x45, 0x58, 0x54, 0x45, 0x52,
- 0x4e, 0x41, 0x4c, 0x10, 0x03, 0x12, 0x12, 0x0a, 0x0e, 0x41, 0x4c, 0x54, 0x5f, 0x42, 0x41, 0x52,
- 0x4f, 0x4d, 0x45, 0x54, 0x52, 0x49, 0x43, 0x10, 0x04, 0x22, 0x81, 0x02, 0x0a, 0x04, 0x55, 0x73,
- 0x65, 0x72, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02,
- 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x6f, 0x6e, 0x67, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
- 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6c, 0x6f, 0x6e, 0x67, 0x4e, 0x61, 0x6d, 0x65, 0x12,
- 0x1d, 0x0a, 0x0a, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20,
- 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x68, 0x6f, 0x72, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1c,
- 0x0a, 0x07, 0x6d, 0x61, 0x63, 0x61, 0x64, 0x64, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x42,
- 0x02, 0x18, 0x01, 0x52, 0x07, 0x6d, 0x61, 0x63, 0x61, 0x64, 0x64, 0x72, 0x12, 0x34, 0x0a, 0x08,
- 0x68, 0x77, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19,
- 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x48, 0x61, 0x72, 0x64,
- 0x77, 0x61, 0x72, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x07, 0x68, 0x77, 0x4d, 0x6f, 0x64,
- 0x65, 0x6c, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x73, 0x5f, 0x6c, 0x69, 0x63, 0x65, 0x6e, 0x73, 0x65,
- 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x4c, 0x69, 0x63, 0x65, 0x6e,
- 0x73, 0x65, 0x64, 0x12, 0x38, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28,
- 0x0e, 0x32, 0x24, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43,
- 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66,
- 0x69, 0x67, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x22, 0x26, 0x0a,
- 0x0e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x79, 0x12,
- 0x14, 0x0a, 0x05, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x18, 0x01, 0x20, 0x03, 0x28, 0x07, 0x52, 0x05,
- 0x72, 0x6f, 0x75, 0x74, 0x65, 0x22, 0xa3, 0x03, 0x0a, 0x07, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e,
- 0x67, 0x12, 0x41, 0x0a, 0x0d, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74,
- 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x44, 0x69, 0x73, 0x63, 0x6f,
- 0x76, 0x65, 0x72, 0x79, 0x48, 0x00, 0x52, 0x0c, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x65, 0x71,
- 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x0b, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x5f, 0x72, 0x65,
- 0x70, 0x6c, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6d, 0x65, 0x73, 0x68,
- 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x65, 0x44, 0x69, 0x73, 0x63,
- 0x6f, 0x76, 0x65, 0x72, 0x79, 0x48, 0x00, 0x52, 0x0a, 0x72, 0x6f, 0x75, 0x74, 0x65, 0x52, 0x65,
- 0x70, 0x6c, 0x79, 0x12, 0x3e, 0x0a, 0x0c, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x72, 0x65, 0x61,
- 0x73, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x6d, 0x65, 0x73, 0x68,
- 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x52, 0x6f, 0x75, 0x74, 0x69, 0x6e, 0x67, 0x2e, 0x45,
- 0x72, 0x72, 0x6f, 0x72, 0x48, 0x00, 0x52, 0x0b, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x65, 0x61,
- 0x73, 0x6f, 0x6e, 0x22, 0xca, 0x01, 0x0a, 0x05, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x08, 0x0a,
- 0x04, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x4e, 0x4f, 0x5f, 0x52, 0x4f,
- 0x55, 0x54, 0x45, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x47, 0x4f, 0x54, 0x5f, 0x4e, 0x41, 0x4b,
- 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x54, 0x49, 0x4d, 0x45, 0x4f, 0x55, 0x54, 0x10, 0x03, 0x12,
- 0x10, 0x0a, 0x0c, 0x4e, 0x4f, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x46, 0x41, 0x43, 0x45, 0x10,
- 0x04, 0x12, 0x12, 0x0a, 0x0e, 0x4d, 0x41, 0x58, 0x5f, 0x52, 0x45, 0x54, 0x52, 0x41, 0x4e, 0x53,
- 0x4d, 0x49, 0x54, 0x10, 0x05, 0x12, 0x0e, 0x0a, 0x0a, 0x4e, 0x4f, 0x5f, 0x43, 0x48, 0x41, 0x4e,
- 0x4e, 0x45, 0x4c, 0x10, 0x06, 0x12, 0x0d, 0x0a, 0x09, 0x54, 0x4f, 0x4f, 0x5f, 0x4c, 0x41, 0x52,
- 0x47, 0x45, 0x10, 0x07, 0x12, 0x0f, 0x0a, 0x0b, 0x4e, 0x4f, 0x5f, 0x52, 0x45, 0x53, 0x50, 0x4f,
- 0x4e, 0x53, 0x45, 0x10, 0x08, 0x12, 0x14, 0x0a, 0x10, 0x44, 0x55, 0x54, 0x59, 0x5f, 0x43, 0x59,
- 0x43, 0x4c, 0x45, 0x5f, 0x4c, 0x49, 0x4d, 0x49, 0x54, 0x10, 0x09, 0x12, 0x0f, 0x0a, 0x0b, 0x42,
- 0x41, 0x44, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x10, 0x20, 0x12, 0x12, 0x0a, 0x0e,
- 0x4e, 0x4f, 0x54, 0x5f, 0x41, 0x55, 0x54, 0x48, 0x4f, 0x52, 0x49, 0x5a, 0x45, 0x44, 0x10, 0x21,
- 0x42, 0x09, 0x0a, 0x07, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x22, 0xf0, 0x01, 0x0a, 0x04,
- 0x44, 0x61, 0x74, 0x61, 0x12, 0x2d, 0x0a, 0x07, 0x70, 0x6f, 0x72, 0x74, 0x6e, 0x75, 0x6d, 0x18,
- 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74,
- 0x69, 0x63, 0x2e, 0x50, 0x6f, 0x72, 0x74, 0x4e, 0x75, 0x6d, 0x52, 0x07, 0x70, 0x6f, 0x72, 0x74,
- 0x6e, 0x75, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x02,
- 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x23, 0x0a,
- 0x0d, 0x77, 0x61, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x03,
- 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x77, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
- 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x65, 0x73, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x07,
- 0x52, 0x04, 0x64, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
- 0x18, 0x05, 0x20, 0x01, 0x28, 0x07, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x1d,
- 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01,
- 0x28, 0x07, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a,
- 0x08, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x07, 0x52,
- 0x07, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x6d, 0x6f, 0x6a,
- 0x69, 0x18, 0x08, 0x20, 0x01, 0x28, 0x07, 0x52, 0x05, 0x65, 0x6d, 0x6f, 0x6a, 0x69, 0x22, 0xd9,
- 0x01, 0x0a, 0x08, 0x57, 0x61, 0x79, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69,
- 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6c,
- 0x61, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x5f, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0f, 0x52,
- 0x09, 0x6c, 0x61, 0x74, 0x69, 0x74, 0x75, 0x64, 0x65, 0x49, 0x12, 0x1f, 0x0a, 0x0b, 0x6c, 0x6f,
- 0x6e, 0x67, 0x69, 0x74, 0x75, 0x64, 0x65, 0x5f, 0x69, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0f, 0x52,
- 0x0a, 0x6c, 0x6f, 0x6e, 0x67, 0x69, 0x74, 0x75, 0x64, 0x65, 0x49, 0x12, 0x16, 0x0a, 0x06, 0x65,
- 0x78, 0x70, 0x69, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x65, 0x78, 0x70,
- 0x69, 0x72, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x5f, 0x74, 0x6f,
- 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x54, 0x6f,
- 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
- 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74,
- 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72,
- 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x69, 0x63, 0x6f, 0x6e, 0x18, 0x08,
- 0x20, 0x01, 0x28, 0x07, 0x52, 0x04, 0x69, 0x63, 0x6f, 0x6e, 0x22, 0x89, 0x01, 0x0a, 0x16, 0x4d,
- 0x71, 0x74, 0x74, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x4d, 0x65,
- 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x12, 0x14, 0x0a, 0x04, 0x64,
- 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x04, 0x64, 0x61, 0x74,
- 0x61, 0x12, 0x14, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x48,
- 0x00, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x74, 0x61, 0x69,
- 0x6e, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x72, 0x65, 0x74, 0x61, 0x69,
- 0x6e, 0x65, 0x64, 0x42, 0x11, 0x0a, 0x0f, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x76,
- 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x22, 0xf3, 0x04, 0x0a, 0x0a, 0x4d, 0x65, 0x73, 0x68, 0x50,
- 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x18, 0x01, 0x20,
- 0x01, 0x28, 0x07, 0x52, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x74, 0x6f, 0x18,
- 0x02, 0x20, 0x01, 0x28, 0x07, 0x52, 0x02, 0x74, 0x6f, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, 0x61,
- 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e,
- 0x6e, 0x65, 0x6c, 0x12, 0x2c, 0x0a, 0x07, 0x64, 0x65, 0x63, 0x6f, 0x64, 0x65, 0x64, 0x18, 0x04,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69,
- 0x63, 0x2e, 0x44, 0x61, 0x74, 0x61, 0x48, 0x00, 0x52, 0x07, 0x64, 0x65, 0x63, 0x6f, 0x64, 0x65,
- 0x64, 0x12, 0x1e, 0x0a, 0x09, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x18, 0x05,
- 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x09, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65,
- 0x64, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x07, 0x52, 0x02, 0x69,
- 0x64, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x78, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01,
- 0x28, 0x07, 0x52, 0x06, 0x72, 0x78, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x72, 0x78,
- 0x5f, 0x73, 0x6e, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x72, 0x78, 0x53, 0x6e,
- 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x68, 0x6f, 0x70, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x09,
- 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x68, 0x6f, 0x70, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x19,
- 0x0a, 0x08, 0x77, 0x61, 0x6e, 0x74, 0x5f, 0x61, 0x63, 0x6b, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08,
- 0x52, 0x07, 0x77, 0x61, 0x6e, 0x74, 0x41, 0x63, 0x6b, 0x12, 0x3b, 0x0a, 0x08, 0x70, 0x72, 0x69,
- 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x6d, 0x65,
- 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x65, 0x73, 0x68, 0x50, 0x61, 0x63,
- 0x6b, 0x65, 0x74, 0x2e, 0x50, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x52, 0x08, 0x70, 0x72,
- 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x78, 0x5f, 0x72, 0x73, 0x73,
- 0x69, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x72, 0x78, 0x52, 0x73, 0x73, 0x69, 0x12,
- 0x3c, 0x0a, 0x07, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0e,
- 0x32, 0x1e, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x65,
- 0x73, 0x68, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x64,
- 0x42, 0x02, 0x18, 0x01, 0x52, 0x07, 0x64, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x12, 0x19, 0x0a,
- 0x08, 0x76, 0x69, 0x61, 0x5f, 0x6d, 0x71, 0x74, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52,
- 0x07, 0x76, 0x69, 0x61, 0x4d, 0x71, 0x74, 0x74, 0x22, 0x5b, 0x0a, 0x08, 0x50, 0x72, 0x69, 0x6f,
- 0x72, 0x69, 0x74, 0x79, 0x12, 0x09, 0x0a, 0x05, 0x55, 0x4e, 0x53, 0x45, 0x54, 0x10, 0x00, 0x12,
- 0x07, 0x0a, 0x03, 0x4d, 0x49, 0x4e, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x42, 0x41, 0x43, 0x4b,
- 0x47, 0x52, 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x0a, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x45, 0x46, 0x41,
- 0x55, 0x4c, 0x54, 0x10, 0x40, 0x12, 0x0c, 0x0a, 0x08, 0x52, 0x45, 0x4c, 0x49, 0x41, 0x42, 0x4c,
- 0x45, 0x10, 0x46, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x43, 0x4b, 0x10, 0x78, 0x12, 0x07, 0x0a, 0x03,
- 0x4d, 0x41, 0x58, 0x10, 0x7f, 0x22, 0x42, 0x0a, 0x07, 0x44, 0x65, 0x6c, 0x61, 0x79, 0x65, 0x64,
- 0x12, 0x0c, 0x0a, 0x08, 0x4e, 0x4f, 0x5f, 0x44, 0x45, 0x4c, 0x41, 0x59, 0x10, 0x00, 0x12, 0x15,
- 0x0a, 0x11, 0x44, 0x45, 0x4c, 0x41, 0x59, 0x45, 0x44, 0x5f, 0x42, 0x52, 0x4f, 0x41, 0x44, 0x43,
- 0x41, 0x53, 0x54, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x44, 0x45, 0x4c, 0x41, 0x59, 0x45, 0x44,
- 0x5f, 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x10, 0x02, 0x42, 0x11, 0x0a, 0x0f, 0x70, 0x61, 0x79,
- 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x22, 0x81, 0x02, 0x0a,
- 0x08, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x10, 0x0a, 0x03, 0x6e, 0x75, 0x6d,
- 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x6e, 0x75, 0x6d, 0x12, 0x24, 0x0a, 0x04, 0x75,
- 0x73, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x6d, 0x65, 0x73, 0x68,
- 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x52, 0x04, 0x75, 0x73, 0x65,
- 0x72, 0x12, 0x30, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20,
- 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63,
- 0x2e, 0x50, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x69, 0x74,
- 0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x6e, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02,
- 0x52, 0x03, 0x73, 0x6e, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x68, 0x65,
- 0x61, 0x72, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x07, 0x52, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x48,
- 0x65, 0x61, 0x72, 0x64, 0x12, 0x40, 0x0a, 0x0e, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x6d,
- 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6d,
- 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65,
- 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x52, 0x0d, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d,
- 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65,
- 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c,
- 0x22, 0x77, 0x0a, 0x0a, 0x4d, 0x79, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1e,
- 0x0a, 0x0b, 0x6d, 0x79, 0x5f, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x18, 0x01, 0x20,
- 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6d, 0x79, 0x4e, 0x6f, 0x64, 0x65, 0x4e, 0x75, 0x6d, 0x12, 0x21,
- 0x0a, 0x0c, 0x72, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x08,
- 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x72, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x43, 0x6f, 0x75, 0x6e,
- 0x74, 0x12, 0x26, 0x0a, 0x0f, 0x6d, 0x69, 0x6e, 0x5f, 0x61, 0x70, 0x70, 0x5f, 0x76, 0x65, 0x72,
- 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6d, 0x69, 0x6e, 0x41,
- 0x70, 0x70, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0xde, 0x01, 0x0a, 0x09, 0x4c, 0x6f,
- 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61,
- 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
- 0x65, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x07, 0x52,
- 0x04, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18,
- 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x31, 0x0a,
- 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x6d,
- 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x63,
- 0x6f, 0x72, 0x64, 0x2e, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c,
- 0x22, 0x58, 0x0a, 0x05, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x09, 0x0a, 0x05, 0x55, 0x4e, 0x53,
- 0x45, 0x54, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x52, 0x49, 0x54, 0x49, 0x43, 0x41, 0x4c,
- 0x10, 0x32, 0x12, 0x09, 0x0a, 0x05, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x28, 0x12, 0x0b, 0x0a,
- 0x07, 0x57, 0x41, 0x52, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x1e, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x4e,
- 0x46, 0x4f, 0x10, 0x14, 0x12, 0x09, 0x0a, 0x05, 0x44, 0x45, 0x42, 0x55, 0x47, 0x10, 0x0a, 0x12,
- 0x09, 0x0a, 0x05, 0x54, 0x52, 0x41, 0x43, 0x45, 0x10, 0x05, 0x22, 0x71, 0x0a, 0x0b, 0x51, 0x75,
- 0x65, 0x75, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x65, 0x73,
- 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x72, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x66,
- 0x72, 0x65, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x66, 0x72, 0x65, 0x65, 0x12,
- 0x16, 0x0a, 0x06, 0x6d, 0x61, 0x78, 0x6c, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52,
- 0x06, 0x6d, 0x61, 0x78, 0x6c, 0x65, 0x6e, 0x12, 0x24, 0x0a, 0x0e, 0x6d, 0x65, 0x73, 0x68, 0x5f,
- 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52,
- 0x0c, 0x6d, 0x65, 0x73, 0x68, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x49, 0x64, 0x22, 0xfc, 0x05,
- 0x0a, 0x09, 0x46, 0x72, 0x6f, 0x6d, 0x52, 0x61, 0x64, 0x69, 0x6f, 0x12, 0x0e, 0x0a, 0x02, 0x69,
- 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x02, 0x69, 0x64, 0x12, 0x30, 0x0a, 0x06, 0x70,
- 0x61, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6d, 0x65,
- 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x65, 0x73, 0x68, 0x50, 0x61, 0x63,
- 0x6b, 0x65, 0x74, 0x48, 0x00, 0x52, 0x06, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x31, 0x0a,
- 0x07, 0x6d, 0x79, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16,
- 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x79, 0x4e, 0x6f,
- 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x48, 0x00, 0x52, 0x06, 0x6d, 0x79, 0x49, 0x6e, 0x66, 0x6f,
- 0x12, 0x33, 0x0a, 0x09, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x04, 0x20,
- 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63,
- 0x2e, 0x4e, 0x6f, 0x64, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x48, 0x00, 0x52, 0x08, 0x6e, 0x6f, 0x64,
- 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2c, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18,
- 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74,
- 0x69, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x06, 0x63, 0x6f, 0x6e,
- 0x66, 0x69, 0x67, 0x12, 0x36, 0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72,
- 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61,
- 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4c, 0x6f, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x48, 0x00,
- 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x2e, 0x0a, 0x12, 0x63,
- 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x69,
- 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x00, 0x52, 0x10, 0x63, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x08, 0x72,
- 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52,
- 0x08, 0x72, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x65, 0x64, 0x12, 0x3e, 0x0a, 0x0c, 0x6d, 0x6f, 0x64,
- 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32,
- 0x18, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x6f, 0x64,
- 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x0c, 0x6d, 0x6f, 0x64,
- 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x2f, 0x0a, 0x07, 0x63, 0x68, 0x61,
- 0x6e, 0x6e, 0x65, 0x6c, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6d, 0x65, 0x73,
- 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x48,
- 0x00, 0x52, 0x07, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x12, 0x3b, 0x0a, 0x0b, 0x71, 0x75,
- 0x65, 0x75, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32,
- 0x17, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x51, 0x75, 0x65,
- 0x75, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x48, 0x00, 0x52, 0x0b, 0x71, 0x75, 0x65, 0x75,
- 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x38, 0x0a, 0x0c, 0x78, 0x6d, 0x6f, 0x64, 0x65,
- 0x6d, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e,
- 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x58, 0x4d, 0x6f, 0x64, 0x65,
- 0x6d, 0x48, 0x00, 0x52, 0x0c, 0x78, 0x6d, 0x6f, 0x64, 0x65, 0x6d, 0x50, 0x61, 0x63, 0x6b, 0x65,
- 0x74, 0x12, 0x38, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0d, 0x20,
- 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63,
- 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x48,
- 0x00, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x5c, 0x0a, 0x16, 0x6d,
- 0x71, 0x74, 0x74, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x4d, 0x65,
- 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6d, 0x65,
- 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x71, 0x74, 0x74, 0x43, 0x6c, 0x69,
- 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48,
- 0x00, 0x52, 0x16, 0x6d, 0x71, 0x74, 0x74, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f,
- 0x78, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x11, 0x0a, 0x0f, 0x70, 0x61, 0x79,
- 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x22, 0xb0, 0x02, 0x0a,
- 0x07, 0x54, 0x6f, 0x52, 0x61, 0x64, 0x69, 0x6f, 0x12, 0x30, 0x0a, 0x06, 0x70, 0x61, 0x63, 0x6b,
- 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74,
- 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x65, 0x73, 0x68, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74,
- 0x48, 0x00, 0x52, 0x06, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x77, 0x61,
- 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01,
- 0x28, 0x0d, 0x48, 0x00, 0x52, 0x0c, 0x77, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
- 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0a, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74,
- 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x0a, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x6e,
- 0x6e, 0x65, 0x63, 0x74, 0x12, 0x38, 0x0a, 0x0c, 0x78, 0x6d, 0x6f, 0x64, 0x65, 0x6d, 0x50, 0x61,
- 0x63, 0x6b, 0x65, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6d, 0x65, 0x73,
- 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x58, 0x4d, 0x6f, 0x64, 0x65, 0x6d, 0x48, 0x00,
- 0x52, 0x0c, 0x78, 0x6d, 0x6f, 0x64, 0x65, 0x6d, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x5c,
- 0x0a, 0x16, 0x6d, 0x71, 0x74, 0x74, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x78,
- 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22,
- 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x71, 0x74, 0x74,
- 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61,
- 0x67, 0x65, 0x48, 0x00, 0x52, 0x16, 0x6d, 0x71, 0x74, 0x74, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74,
- 0x50, 0x72, 0x6f, 0x78, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x11, 0x0a, 0x0f,
- 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x22,
- 0x4f, 0x0a, 0x0a, 0x43, 0x6f, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x65, 0x64, 0x12, 0x2d, 0x0a,
- 0x07, 0x70, 0x6f, 0x72, 0x74, 0x6e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13,
- 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x50, 0x6f, 0x72, 0x74,
- 0x4e, 0x75, 0x6d, 0x52, 0x07, 0x70, 0x6f, 0x72, 0x74, 0x6e, 0x75, 0x6d, 0x12, 0x12, 0x0a, 0x04,
- 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61,
- 0x22, 0xc3, 0x01, 0x0a, 0x0c, 0x4e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x72, 0x49, 0x6e, 0x66,
- 0x6f, 0x12, 0x17, 0x0a, 0x07, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
- 0x28, 0x0d, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0f, 0x6c, 0x61,
- 0x73, 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x5f, 0x62, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20,
- 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6c, 0x61, 0x73, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x42, 0x79, 0x49,
- 0x64, 0x12, 0x3f, 0x0a, 0x1c, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63,
- 0x61, 0x73, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x5f, 0x73, 0x65, 0x63,
- 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x19, 0x6e, 0x6f, 0x64, 0x65, 0x42, 0x72, 0x6f,
- 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x53, 0x65,
- 0x63, 0x73, 0x12, 0x32, 0x0a, 0x09, 0x6e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x72, 0x73, 0x18,
- 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74,
- 0x69, 0x63, 0x2e, 0x4e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x72, 0x52, 0x09, 0x6e, 0x65, 0x69,
- 0x67, 0x68, 0x62, 0x6f, 0x72, 0x73, 0x22, 0x98, 0x01, 0x0a, 0x08, 0x4e, 0x65, 0x69, 0x67, 0x68,
- 0x62, 0x6f, 0x72, 0x12, 0x17, 0x0a, 0x07, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01,
- 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03,
- 0x73, 0x6e, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x03, 0x73, 0x6e, 0x72, 0x12, 0x20,
- 0x0a, 0x0c, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x72, 0x78, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03,
- 0x20, 0x01, 0x28, 0x07, 0x52, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x52, 0x78, 0x54, 0x69, 0x6d, 0x65,
- 0x12, 0x3f, 0x0a, 0x1c, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61,
- 0x73, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x5f, 0x73, 0x65, 0x63, 0x73,
- 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x19, 0x6e, 0x6f, 0x64, 0x65, 0x42, 0x72, 0x6f, 0x61,
- 0x64, 0x63, 0x61, 0x73, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x53, 0x65, 0x63,
- 0x73, 0x22, 0xb4, 0x03, 0x0a, 0x0e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x61,
- 0x64, 0x61, 0x74, 0x61, 0x12, 0x29, 0x0a, 0x10, 0x66, 0x69, 0x72, 0x6d, 0x77, 0x61, 0x72, 0x65,
- 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f,
- 0x66, 0x69, 0x72, 0x6d, 0x77, 0x61, 0x72, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12,
- 0x30, 0x0a, 0x14, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f,
- 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x64,
- 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f,
- 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x63, 0x61, 0x6e, 0x53, 0x68, 0x75, 0x74, 0x64, 0x6f, 0x77, 0x6e,
- 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x63, 0x61, 0x6e, 0x53, 0x68, 0x75, 0x74, 0x64,
- 0x6f, 0x77, 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x68, 0x61, 0x73, 0x57, 0x69, 0x66, 0x69, 0x18, 0x04,
- 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x68, 0x61, 0x73, 0x57, 0x69, 0x66, 0x69, 0x12, 0x22, 0x0a,
- 0x0c, 0x68, 0x61, 0x73, 0x42, 0x6c, 0x75, 0x65, 0x74, 0x6f, 0x6f, 0x74, 0x68, 0x18, 0x05, 0x20,
- 0x01, 0x28, 0x08, 0x52, 0x0c, 0x68, 0x61, 0x73, 0x42, 0x6c, 0x75, 0x65, 0x74, 0x6f, 0x6f, 0x74,
- 0x68, 0x12, 0x20, 0x0a, 0x0b, 0x68, 0x61, 0x73, 0x45, 0x74, 0x68, 0x65, 0x72, 0x6e, 0x65, 0x74,
- 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x68, 0x61, 0x73, 0x45, 0x74, 0x68, 0x65, 0x72,
- 0x6e, 0x65, 0x74, 0x12, 0x38, 0x0a, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28,
- 0x0e, 0x32, 0x24, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x43,
- 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6f, 0x6e, 0x66,
- 0x69, 0x67, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x25, 0x0a,
- 0x0e, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18,
- 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x46,
- 0x6c, 0x61, 0x67, 0x73, 0x12, 0x34, 0x0a, 0x08, 0x68, 0x77, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c,
- 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73,
- 0x74, 0x69, 0x63, 0x2e, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x4d, 0x6f, 0x64, 0x65,
- 0x6c, 0x52, 0x07, 0x68, 0x77, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x2c, 0x0a, 0x11, 0x68, 0x61,
- 0x73, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x18,
- 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x68, 0x61, 0x73, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65,
- 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x2a, 0xd4, 0x07, 0x0a, 0x0d, 0x48, 0x61, 0x72,
- 0x64, 0x77, 0x61, 0x72, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x09, 0x0a, 0x05, 0x55, 0x4e,
- 0x53, 0x45, 0x54, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x54, 0x4c, 0x4f, 0x52, 0x41, 0x5f, 0x56,
- 0x32, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x54, 0x4c, 0x4f, 0x52, 0x41, 0x5f, 0x56, 0x31, 0x10,
- 0x02, 0x12, 0x12, 0x0a, 0x0e, 0x54, 0x4c, 0x4f, 0x52, 0x41, 0x5f, 0x56, 0x32, 0x5f, 0x31, 0x5f,
- 0x31, 0x50, 0x36, 0x10, 0x03, 0x12, 0x09, 0x0a, 0x05, 0x54, 0x42, 0x45, 0x41, 0x4d, 0x10, 0x04,
- 0x12, 0x0f, 0x0a, 0x0b, 0x48, 0x45, 0x4c, 0x54, 0x45, 0x43, 0x5f, 0x56, 0x32, 0x5f, 0x30, 0x10,
- 0x05, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x42, 0x45, 0x41, 0x4d, 0x5f, 0x56, 0x30, 0x50, 0x37, 0x10,
- 0x06, 0x12, 0x0a, 0x0a, 0x06, 0x54, 0x5f, 0x45, 0x43, 0x48, 0x4f, 0x10, 0x07, 0x12, 0x10, 0x0a,
- 0x0c, 0x54, 0x4c, 0x4f, 0x52, 0x41, 0x5f, 0x56, 0x31, 0x5f, 0x31, 0x50, 0x33, 0x10, 0x08, 0x12,
- 0x0b, 0x0a, 0x07, 0x52, 0x41, 0x4b, 0x34, 0x36, 0x33, 0x31, 0x10, 0x09, 0x12, 0x0f, 0x0a, 0x0b,
- 0x48, 0x45, 0x4c, 0x54, 0x45, 0x43, 0x5f, 0x56, 0x32, 0x5f, 0x31, 0x10, 0x0a, 0x12, 0x0d, 0x0a,
- 0x09, 0x48, 0x45, 0x4c, 0x54, 0x45, 0x43, 0x5f, 0x56, 0x31, 0x10, 0x0b, 0x12, 0x18, 0x0a, 0x14,
- 0x4c, 0x49, 0x4c, 0x59, 0x47, 0x4f, 0x5f, 0x54, 0x42, 0x45, 0x41, 0x4d, 0x5f, 0x53, 0x33, 0x5f,
- 0x43, 0x4f, 0x52, 0x45, 0x10, 0x0c, 0x12, 0x0c, 0x0a, 0x08, 0x52, 0x41, 0x4b, 0x31, 0x31, 0x32,
- 0x30, 0x30, 0x10, 0x0d, 0x12, 0x0b, 0x0a, 0x07, 0x4e, 0x41, 0x4e, 0x4f, 0x5f, 0x47, 0x31, 0x10,
- 0x0e, 0x12, 0x12, 0x0a, 0x0e, 0x54, 0x4c, 0x4f, 0x52, 0x41, 0x5f, 0x56, 0x32, 0x5f, 0x31, 0x5f,
- 0x31, 0x50, 0x38, 0x10, 0x0f, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x4c, 0x4f, 0x52, 0x41, 0x5f, 0x54,
- 0x33, 0x5f, 0x53, 0x33, 0x10, 0x10, 0x12, 0x14, 0x0a, 0x10, 0x4e, 0x41, 0x4e, 0x4f, 0x5f, 0x47,
- 0x31, 0x5f, 0x45, 0x58, 0x50, 0x4c, 0x4f, 0x52, 0x45, 0x52, 0x10, 0x11, 0x12, 0x11, 0x0a, 0x0d,
- 0x4e, 0x41, 0x4e, 0x4f, 0x5f, 0x47, 0x32, 0x5f, 0x55, 0x4c, 0x54, 0x52, 0x41, 0x10, 0x12, 0x12,
- 0x0d, 0x0a, 0x09, 0x4c, 0x4f, 0x52, 0x41, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x10, 0x13, 0x12, 0x0e,
- 0x0a, 0x0a, 0x53, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x47, 0x31, 0x10, 0x19, 0x12, 0x0c,
- 0x0a, 0x08, 0x52, 0x41, 0x4b, 0x31, 0x31, 0x33, 0x31, 0x30, 0x10, 0x1a, 0x12, 0x14, 0x0a, 0x10,
- 0x53, 0x45, 0x4e, 0x53, 0x45, 0x4c, 0x4f, 0x52, 0x41, 0x5f, 0x52, 0x50, 0x32, 0x30, 0x34, 0x30,
- 0x10, 0x1b, 0x12, 0x10, 0x0a, 0x0c, 0x53, 0x45, 0x4e, 0x53, 0x45, 0x4c, 0x4f, 0x52, 0x41, 0x5f,
- 0x53, 0x33, 0x10, 0x1c, 0x12, 0x0d, 0x0a, 0x09, 0x43, 0x41, 0x4e, 0x41, 0x52, 0x59, 0x4f, 0x4e,
- 0x45, 0x10, 0x1d, 0x12, 0x0f, 0x0a, 0x0b, 0x52, 0x50, 0x32, 0x30, 0x34, 0x30, 0x5f, 0x4c, 0x4f,
- 0x52, 0x41, 0x10, 0x1e, 0x12, 0x0e, 0x0a, 0x0a, 0x53, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f,
- 0x47, 0x32, 0x10, 0x1f, 0x12, 0x11, 0x0a, 0x0d, 0x4c, 0x4f, 0x52, 0x41, 0x5f, 0x52, 0x45, 0x4c,
- 0x41, 0x59, 0x5f, 0x56, 0x31, 0x10, 0x20, 0x12, 0x0e, 0x0a, 0x0a, 0x4e, 0x52, 0x46, 0x35, 0x32,
- 0x38, 0x34, 0x30, 0x44, 0x4b, 0x10, 0x21, 0x12, 0x07, 0x0a, 0x03, 0x50, 0x50, 0x52, 0x10, 0x22,
- 0x12, 0x0f, 0x0a, 0x0b, 0x47, 0x45, 0x4e, 0x49, 0x45, 0x42, 0x4c, 0x4f, 0x43, 0x4b, 0x53, 0x10,
- 0x23, 0x12, 0x11, 0x0a, 0x0d, 0x4e, 0x52, 0x46, 0x35, 0x32, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f,
- 0x57, 0x4e, 0x10, 0x24, 0x12, 0x0d, 0x0a, 0x09, 0x50, 0x4f, 0x52, 0x54, 0x44, 0x55, 0x49, 0x4e,
- 0x4f, 0x10, 0x25, 0x12, 0x0f, 0x0a, 0x0b, 0x41, 0x4e, 0x44, 0x52, 0x4f, 0x49, 0x44, 0x5f, 0x53,
- 0x49, 0x4d, 0x10, 0x26, 0x12, 0x0a, 0x0a, 0x06, 0x44, 0x49, 0x59, 0x5f, 0x56, 0x31, 0x10, 0x27,
- 0x12, 0x15, 0x0a, 0x11, 0x4e, 0x52, 0x46, 0x35, 0x32, 0x38, 0x34, 0x30, 0x5f, 0x50, 0x43, 0x41,
- 0x31, 0x30, 0x30, 0x35, 0x39, 0x10, 0x28, 0x12, 0x0a, 0x0a, 0x06, 0x44, 0x52, 0x5f, 0x44, 0x45,
- 0x56, 0x10, 0x29, 0x12, 0x0b, 0x0a, 0x07, 0x4d, 0x35, 0x53, 0x54, 0x41, 0x43, 0x4b, 0x10, 0x2a,
- 0x12, 0x0d, 0x0a, 0x09, 0x48, 0x45, 0x4c, 0x54, 0x45, 0x43, 0x5f, 0x56, 0x33, 0x10, 0x2b, 0x12,
- 0x11, 0x0a, 0x0d, 0x48, 0x45, 0x4c, 0x54, 0x45, 0x43, 0x5f, 0x57, 0x53, 0x4c, 0x5f, 0x56, 0x33,
- 0x10, 0x2c, 0x12, 0x13, 0x0a, 0x0f, 0x42, 0x45, 0x54, 0x41, 0x46, 0x50, 0x56, 0x5f, 0x32, 0x34,
- 0x30, 0x30, 0x5f, 0x54, 0x58, 0x10, 0x2d, 0x12, 0x17, 0x0a, 0x13, 0x42, 0x45, 0x54, 0x41, 0x46,
- 0x50, 0x56, 0x5f, 0x39, 0x30, 0x30, 0x5f, 0x4e, 0x41, 0x4e, 0x4f, 0x5f, 0x54, 0x58, 0x10, 0x2e,
- 0x12, 0x0c, 0x0a, 0x08, 0x52, 0x50, 0x49, 0x5f, 0x50, 0x49, 0x43, 0x4f, 0x10, 0x2f, 0x12, 0x1b,
- 0x0a, 0x17, 0x48, 0x45, 0x4c, 0x54, 0x45, 0x43, 0x5f, 0x57, 0x49, 0x52, 0x45, 0x4c, 0x45, 0x53,
- 0x53, 0x5f, 0x54, 0x52, 0x41, 0x43, 0x4b, 0x45, 0x52, 0x10, 0x30, 0x12, 0x19, 0x0a, 0x15, 0x48,
- 0x45, 0x4c, 0x54, 0x45, 0x43, 0x5f, 0x57, 0x49, 0x52, 0x45, 0x4c, 0x45, 0x53, 0x53, 0x5f, 0x50,
- 0x41, 0x50, 0x45, 0x52, 0x10, 0x31, 0x12, 0x0a, 0x0a, 0x06, 0x54, 0x5f, 0x44, 0x45, 0x43, 0x4b,
- 0x10, 0x32, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x5f, 0x57, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x53, 0x33,
- 0x10, 0x33, 0x12, 0x11, 0x0a, 0x0d, 0x50, 0x49, 0x43, 0x4f, 0x4d, 0x50, 0x55, 0x54, 0x45, 0x52,
- 0x5f, 0x53, 0x33, 0x10, 0x34, 0x12, 0x0f, 0x0a, 0x0b, 0x48, 0x45, 0x4c, 0x54, 0x45, 0x43, 0x5f,
- 0x48, 0x54, 0x36, 0x32, 0x10, 0x35, 0x12, 0x12, 0x0a, 0x0e, 0x45, 0x42, 0x59, 0x54, 0x45, 0x5f,
- 0x45, 0x53, 0x50, 0x33, 0x32, 0x5f, 0x53, 0x33, 0x10, 0x36, 0x12, 0x11, 0x0a, 0x0d, 0x45, 0x53,
- 0x50, 0x33, 0x32, 0x5f, 0x53, 0x33, 0x5f, 0x50, 0x49, 0x43, 0x4f, 0x10, 0x37, 0x12, 0x0d, 0x0a,
- 0x09, 0x43, 0x48, 0x41, 0x54, 0x54, 0x45, 0x52, 0x5f, 0x32, 0x10, 0x38, 0x12, 0x1e, 0x0a, 0x1a,
- 0x48, 0x45, 0x4c, 0x54, 0x45, 0x43, 0x5f, 0x57, 0x49, 0x52, 0x45, 0x4c, 0x45, 0x53, 0x53, 0x5f,
- 0x50, 0x41, 0x50, 0x45, 0x52, 0x5f, 0x56, 0x31, 0x5f, 0x30, 0x10, 0x39, 0x12, 0x20, 0x0a, 0x1c,
- 0x48, 0x45, 0x4c, 0x54, 0x45, 0x43, 0x5f, 0x57, 0x49, 0x52, 0x45, 0x4c, 0x45, 0x53, 0x53, 0x5f,
- 0x54, 0x52, 0x41, 0x43, 0x4b, 0x45, 0x52, 0x5f, 0x56, 0x31, 0x5f, 0x30, 0x10, 0x3a, 0x12, 0x0f,
- 0x0a, 0x0a, 0x50, 0x52, 0x49, 0x56, 0x41, 0x54, 0x45, 0x5f, 0x48, 0x57, 0x10, 0xff, 0x01, 0x2a,
- 0x2c, 0x0a, 0x09, 0x43, 0x6f, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x73, 0x12, 0x08, 0x0a, 0x04,
- 0x5a, 0x45, 0x52, 0x4f, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x10, 0x44, 0x41, 0x54, 0x41, 0x5f, 0x50,
- 0x41, 0x59, 0x4c, 0x4f, 0x41, 0x44, 0x5f, 0x4c, 0x45, 0x4e, 0x10, 0xed, 0x01, 0x2a, 0xee, 0x01,
- 0x0a, 0x11, 0x43, 0x72, 0x69, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43,
- 0x6f, 0x64, 0x65, 0x12, 0x08, 0x0a, 0x04, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x0f, 0x0a,
- 0x0b, 0x54, 0x58, 0x5f, 0x57, 0x41, 0x54, 0x43, 0x48, 0x44, 0x4f, 0x47, 0x10, 0x01, 0x12, 0x14,
- 0x0a, 0x10, 0x53, 0x4c, 0x45, 0x45, 0x50, 0x5f, 0x45, 0x4e, 0x54, 0x45, 0x52, 0x5f, 0x57, 0x41,
- 0x49, 0x54, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x4e, 0x4f, 0x5f, 0x52, 0x41, 0x44, 0x49, 0x4f,
- 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45,
- 0x44, 0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, 0x55, 0x42, 0x4c, 0x4f, 0x58, 0x5f, 0x55, 0x4e, 0x49,
- 0x54, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x05, 0x12, 0x0d, 0x0a, 0x09, 0x4e, 0x4f,
- 0x5f, 0x41, 0x58, 0x50, 0x31, 0x39, 0x32, 0x10, 0x06, 0x12, 0x19, 0x0a, 0x15, 0x49, 0x4e, 0x56,
- 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x52, 0x41, 0x44, 0x49, 0x4f, 0x5f, 0x53, 0x45, 0x54, 0x54, 0x49,
- 0x4e, 0x47, 0x10, 0x07, 0x12, 0x13, 0x0a, 0x0f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x4d, 0x49, 0x54,
- 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x08, 0x12, 0x0c, 0x0a, 0x08, 0x42, 0x52, 0x4f,
- 0x57, 0x4e, 0x4f, 0x55, 0x54, 0x10, 0x09, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x58, 0x31, 0x32, 0x36,
- 0x32, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x55, 0x52, 0x45, 0x10, 0x0a, 0x12, 0x11, 0x0a, 0x0d, 0x52,
- 0x41, 0x44, 0x49, 0x4f, 0x5f, 0x53, 0x50, 0x49, 0x5f, 0x42, 0x55, 0x47, 0x10, 0x0b, 0x42, 0x5f,
- 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x65, 0x65, 0x6b, 0x73, 0x76, 0x69, 0x6c, 0x6c, 0x65,
- 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x42, 0x0a, 0x4d, 0x65, 0x73, 0x68, 0x50, 0x72, 0x6f, 0x74, 0x6f,
- 0x73, 0x5a, 0x22, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x65,
- 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x67, 0x6f, 0x2f, 0x67, 0x65, 0x6e, 0x65,
- 0x72, 0x61, 0x74, 0x65, 0x64, 0xaa, 0x02, 0x14, 0x4d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74,
- 0x69, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x73, 0xba, 0x02, 0x00, 0x62,
- 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+// Deprecated: Use ChunkedPayload.ProtoReflect.Descriptor instead.
+func (*ChunkedPayload) Descriptor() ([]byte, []int) {
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{26}
}
+func (x *ChunkedPayload) GetPayloadId() uint32 {
+ if x != nil {
+ return x.PayloadId
+ }
+ return 0
+}
+
+func (x *ChunkedPayload) GetChunkCount() uint32 {
+ if x != nil {
+ return x.ChunkCount
+ }
+ return 0
+}
+
+func (x *ChunkedPayload) GetChunkIndex() uint32 {
+ if x != nil {
+ return x.ChunkIndex
+ }
+ return 0
+}
+
+func (x *ChunkedPayload) GetPayloadChunk() []byte {
+ if x != nil {
+ return x.PayloadChunk
+ }
+ return nil
+}
+
+// Wrapper message for broken repeated oneof support
+type ResendChunks struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Chunks []uint32 `protobuf:"varint,1,rep,packed,name=chunks,proto3" json:"chunks,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *ResendChunks) Reset() {
+ *x = ResendChunks{}
+ mi := &file_meshtastic_mesh_proto_msgTypes[27]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *ResendChunks) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ResendChunks) ProtoMessage() {}
+
+func (x *ResendChunks) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_mesh_proto_msgTypes[27]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ResendChunks.ProtoReflect.Descriptor instead.
+func (*ResendChunks) Descriptor() ([]byte, []int) {
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{27}
+}
+
+func (x *ResendChunks) GetChunks() []uint32 {
+ if x != nil {
+ return x.Chunks
+ }
+ return nil
+}
+
+// Responses to a ChunkedPayload request
+type ChunkedPayloadResponse struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // The ID of the entire payload
+ PayloadId uint32 `protobuf:"varint,1,opt,name=payload_id,json=payloadId,proto3" json:"payload_id,omitempty"`
+ // Types that are valid to be assigned to PayloadVariant:
+ //
+ // *ChunkedPayloadResponse_RequestTransfer
+ // *ChunkedPayloadResponse_AcceptTransfer
+ // *ChunkedPayloadResponse_ResendChunks
+ PayloadVariant isChunkedPayloadResponse_PayloadVariant `protobuf_oneof:"payload_variant"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *ChunkedPayloadResponse) Reset() {
+ *x = ChunkedPayloadResponse{}
+ mi := &file_meshtastic_mesh_proto_msgTypes[28]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *ChunkedPayloadResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ChunkedPayloadResponse) ProtoMessage() {}
+
+func (x *ChunkedPayloadResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_mesh_proto_msgTypes[28]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ChunkedPayloadResponse.ProtoReflect.Descriptor instead.
+func (*ChunkedPayloadResponse) Descriptor() ([]byte, []int) {
+ return file_meshtastic_mesh_proto_rawDescGZIP(), []int{28}
+}
+
+func (x *ChunkedPayloadResponse) GetPayloadId() uint32 {
+ if x != nil {
+ return x.PayloadId
+ }
+ return 0
+}
+
+func (x *ChunkedPayloadResponse) GetPayloadVariant() isChunkedPayloadResponse_PayloadVariant {
+ if x != nil {
+ return x.PayloadVariant
+ }
+ return nil
+}
+
+func (x *ChunkedPayloadResponse) GetRequestTransfer() bool {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*ChunkedPayloadResponse_RequestTransfer); ok {
+ return x.RequestTransfer
+ }
+ }
+ return false
+}
+
+func (x *ChunkedPayloadResponse) GetAcceptTransfer() bool {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*ChunkedPayloadResponse_AcceptTransfer); ok {
+ return x.AcceptTransfer
+ }
+ }
+ return false
+}
+
+func (x *ChunkedPayloadResponse) GetResendChunks() *ResendChunks {
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*ChunkedPayloadResponse_ResendChunks); ok {
+ return x.ResendChunks
+ }
+ }
+ return nil
+}
+
+type isChunkedPayloadResponse_PayloadVariant interface {
+ isChunkedPayloadResponse_PayloadVariant()
+}
+
+type ChunkedPayloadResponse_RequestTransfer struct {
+ // Request to transfer chunked payload
+ RequestTransfer bool `protobuf:"varint,2,opt,name=request_transfer,json=requestTransfer,proto3,oneof"`
+}
+
+type ChunkedPayloadResponse_AcceptTransfer struct {
+ // Accept the transfer chunked payload
+ AcceptTransfer bool `protobuf:"varint,3,opt,name=accept_transfer,json=acceptTransfer,proto3,oneof"`
+}
+
+type ChunkedPayloadResponse_ResendChunks struct {
+ // Request missing indexes in the chunked payload
+ ResendChunks *ResendChunks `protobuf:"bytes,4,opt,name=resend_chunks,json=resendChunks,proto3,oneof"`
+}
+
+func (*ChunkedPayloadResponse_RequestTransfer) isChunkedPayloadResponse_PayloadVariant() {}
+
+func (*ChunkedPayloadResponse_AcceptTransfer) isChunkedPayloadResponse_PayloadVariant() {}
+
+func (*ChunkedPayloadResponse_ResendChunks) isChunkedPayloadResponse_PayloadVariant() {}
+
+var File_meshtastic_mesh_proto protoreflect.FileDescriptor
+
+const file_meshtastic_mesh_proto_rawDesc = "" +
+ "\n" +
+ "\x15meshtastic/mesh.proto\x12\n" +
+ "meshtastic\x1a\x18meshtastic/channel.proto\x1a\x17meshtastic/config.proto\x1a\x1emeshtastic/module_config.proto\x1a\x19meshtastic/portnums.proto\x1a\x1ameshtastic/telemetry.proto\x1a\x17meshtastic/xmodem.proto\x1a\x1ameshtastic/device_ui.proto\"\xa2\t\n" +
+ "\bPosition\x12\"\n" +
+ "\n" +
+ "latitude_i\x18\x01 \x01(\x0fH\x00R\tlatitudeI\x88\x01\x01\x12$\n" +
+ "\vlongitude_i\x18\x02 \x01(\x0fH\x01R\n" +
+ "longitudeI\x88\x01\x01\x12\x1f\n" +
+ "\baltitude\x18\x03 \x01(\x05H\x02R\baltitude\x88\x01\x01\x12\x12\n" +
+ "\x04time\x18\x04 \x01(\aR\x04time\x12G\n" +
+ "\x0flocation_source\x18\x05 \x01(\x0e2\x1e.meshtastic.Position.LocSourceR\x0elocationSource\x12G\n" +
+ "\x0faltitude_source\x18\x06 \x01(\x0e2\x1e.meshtastic.Position.AltSourceR\x0ealtitudeSource\x12\x1c\n" +
+ "\ttimestamp\x18\a \x01(\aR\ttimestamp\x126\n" +
+ "\x17timestamp_millis_adjust\x18\b \x01(\x05R\x15timestampMillisAdjust\x12&\n" +
+ "\faltitude_hae\x18\t \x01(\x11H\x03R\valtitudeHae\x88\x01\x01\x12C\n" +
+ "\x1baltitude_geoidal_separation\x18\n" +
+ " \x01(\x11H\x04R\x19altitudeGeoidalSeparation\x88\x01\x01\x12\x12\n" +
+ "\x04PDOP\x18\v \x01(\rR\x04PDOP\x12\x12\n" +
+ "\x04HDOP\x18\f \x01(\rR\x04HDOP\x12\x12\n" +
+ "\x04VDOP\x18\r \x01(\rR\x04VDOP\x12!\n" +
+ "\fgps_accuracy\x18\x0e \x01(\rR\vgpsAccuracy\x12&\n" +
+ "\fground_speed\x18\x0f \x01(\rH\x05R\vgroundSpeed\x88\x01\x01\x12&\n" +
+ "\fground_track\x18\x10 \x01(\rH\x06R\vgroundTrack\x88\x01\x01\x12\x1f\n" +
+ "\vfix_quality\x18\x11 \x01(\rR\n" +
+ "fixQuality\x12\x19\n" +
+ "\bfix_type\x18\x12 \x01(\rR\afixType\x12 \n" +
+ "\fsats_in_view\x18\x13 \x01(\rR\n" +
+ "satsInView\x12\x1b\n" +
+ "\tsensor_id\x18\x14 \x01(\rR\bsensorId\x12\x1f\n" +
+ "\vnext_update\x18\x15 \x01(\rR\n" +
+ "nextUpdate\x12\x1d\n" +
+ "\n" +
+ "seq_number\x18\x16 \x01(\rR\tseqNumber\x12%\n" +
+ "\x0eprecision_bits\x18\x17 \x01(\rR\rprecisionBits\"N\n" +
+ "\tLocSource\x12\r\n" +
+ "\tLOC_UNSET\x10\x00\x12\x0e\n" +
+ "\n" +
+ "LOC_MANUAL\x10\x01\x12\x10\n" +
+ "\fLOC_INTERNAL\x10\x02\x12\x10\n" +
+ "\fLOC_EXTERNAL\x10\x03\"b\n" +
+ "\tAltSource\x12\r\n" +
+ "\tALT_UNSET\x10\x00\x12\x0e\n" +
+ "\n" +
+ "ALT_MANUAL\x10\x01\x12\x10\n" +
+ "\fALT_INTERNAL\x10\x02\x12\x10\n" +
+ "\fALT_EXTERNAL\x10\x03\x12\x12\n" +
+ "\x0eALT_BAROMETRIC\x10\x04B\r\n" +
+ "\v_latitude_iB\x0e\n" +
+ "\f_longitude_iB\v\n" +
+ "\t_altitudeB\x0f\n" +
+ "\r_altitude_haeB\x1e\n" +
+ "\x1c_altitude_geoidal_separationB\x0f\n" +
+ "\r_ground_speedB\x0f\n" +
+ "\r_ground_track\"\xe2\x02\n" +
+ "\x04User\x12\x0e\n" +
+ "\x02id\x18\x01 \x01(\tR\x02id\x12\x1b\n" +
+ "\tlong_name\x18\x02 \x01(\tR\blongName\x12\x1d\n" +
+ "\n" +
+ "short_name\x18\x03 \x01(\tR\tshortName\x12\x1c\n" +
+ "\amacaddr\x18\x04 \x01(\fB\x02\x18\x01R\amacaddr\x124\n" +
+ "\bhw_model\x18\x05 \x01(\x0e2\x19.meshtastic.HardwareModelR\ahwModel\x12\x1f\n" +
+ "\vis_licensed\x18\x06 \x01(\bR\n" +
+ "isLicensed\x128\n" +
+ "\x04role\x18\a \x01(\x0e2$.meshtastic.Config.DeviceConfig.RoleR\x04role\x12\x1d\n" +
+ "\n" +
+ "public_key\x18\b \x01(\fR\tpublicKey\x12,\n" +
+ "\x0fis_unmessagable\x18\t \x01(\bH\x00R\x0eisUnmessagable\x88\x01\x01B\x12\n" +
+ "\x10_is_unmessagable\"\x81\x01\n" +
+ "\x0eRouteDiscovery\x12\x14\n" +
+ "\x05route\x18\x01 \x03(\aR\x05route\x12\x1f\n" +
+ "\vsnr_towards\x18\x02 \x03(\x05R\n" +
+ "snrTowards\x12\x1d\n" +
+ "\n" +
+ "route_back\x18\x03 \x03(\aR\trouteBack\x12\x19\n" +
+ "\bsnr_back\x18\x04 \x03(\x05R\asnrBack\"\x89\x04\n" +
+ "\aRouting\x12A\n" +
+ "\rroute_request\x18\x01 \x01(\v2\x1a.meshtastic.RouteDiscoveryH\x00R\frouteRequest\x12=\n" +
+ "\vroute_reply\x18\x02 \x01(\v2\x1a.meshtastic.RouteDiscoveryH\x00R\n" +
+ "routeReply\x12>\n" +
+ "\ferror_reason\x18\x03 \x01(\x0e2\x19.meshtastic.Routing.ErrorH\x00R\verrorReason\"\xb0\x02\n" +
+ "\x05Error\x12\b\n" +
+ "\x04NONE\x10\x00\x12\f\n" +
+ "\bNO_ROUTE\x10\x01\x12\v\n" +
+ "\aGOT_NAK\x10\x02\x12\v\n" +
+ "\aTIMEOUT\x10\x03\x12\x10\n" +
+ "\fNO_INTERFACE\x10\x04\x12\x12\n" +
+ "\x0eMAX_RETRANSMIT\x10\x05\x12\x0e\n" +
+ "\n" +
+ "NO_CHANNEL\x10\x06\x12\r\n" +
+ "\tTOO_LARGE\x10\a\x12\x0f\n" +
+ "\vNO_RESPONSE\x10\b\x12\x14\n" +
+ "\x10DUTY_CYCLE_LIMIT\x10\t\x12\x0f\n" +
+ "\vBAD_REQUEST\x10 \x12\x12\n" +
+ "\x0eNOT_AUTHORIZED\x10!\x12\x0e\n" +
+ "\n" +
+ "PKI_FAILED\x10\"\x12\x16\n" +
+ "\x12PKI_UNKNOWN_PUBKEY\x10#\x12\x19\n" +
+ "\x15ADMIN_BAD_SESSION_KEY\x10$\x12!\n" +
+ "\x1dADMIN_PUBLIC_KEY_UNAUTHORIZED\x10%B\t\n" +
+ "\avariant\"\x9e\x02\n" +
+ "\x04Data\x12-\n" +
+ "\aportnum\x18\x01 \x01(\x0e2\x13.meshtastic.PortNumR\aportnum\x12\x18\n" +
+ "\apayload\x18\x02 \x01(\fR\apayload\x12#\n" +
+ "\rwant_response\x18\x03 \x01(\bR\fwantResponse\x12\x12\n" +
+ "\x04dest\x18\x04 \x01(\aR\x04dest\x12\x16\n" +
+ "\x06source\x18\x05 \x01(\aR\x06source\x12\x1d\n" +
+ "\n" +
+ "request_id\x18\x06 \x01(\aR\trequestId\x12\x19\n" +
+ "\breply_id\x18\a \x01(\aR\areplyId\x12\x14\n" +
+ "\x05emoji\x18\b \x01(\aR\x05emoji\x12\x1f\n" +
+ "\bbitfield\x18\t \x01(\rH\x00R\bbitfield\x88\x01\x01B\v\n" +
+ "\t_bitfield\"S\n" +
+ "\x0fKeyVerification\x12\x14\n" +
+ "\x05nonce\x18\x01 \x01(\x04R\x05nonce\x12\x14\n" +
+ "\x05hash1\x18\x02 \x01(\fR\x05hash1\x12\x14\n" +
+ "\x05hash2\x18\x03 \x01(\fR\x05hash2\"\x82\x02\n" +
+ "\bWaypoint\x12\x0e\n" +
+ "\x02id\x18\x01 \x01(\rR\x02id\x12\"\n" +
+ "\n" +
+ "latitude_i\x18\x02 \x01(\x0fH\x00R\tlatitudeI\x88\x01\x01\x12$\n" +
+ "\vlongitude_i\x18\x03 \x01(\x0fH\x01R\n" +
+ "longitudeI\x88\x01\x01\x12\x16\n" +
+ "\x06expire\x18\x04 \x01(\rR\x06expire\x12\x1b\n" +
+ "\tlocked_to\x18\x05 \x01(\rR\blockedTo\x12\x12\n" +
+ "\x04name\x18\x06 \x01(\tR\x04name\x12 \n" +
+ "\vdescription\x18\a \x01(\tR\vdescription\x12\x12\n" +
+ "\x04icon\x18\b \x01(\aR\x04iconB\r\n" +
+ "\v_latitude_iB\x0e\n" +
+ "\f_longitude_i\"\x89\x01\n" +
+ "\x16MqttClientProxyMessage\x12\x14\n" +
+ "\x05topic\x18\x01 \x01(\tR\x05topic\x12\x14\n" +
+ "\x04data\x18\x02 \x01(\fH\x00R\x04data\x12\x14\n" +
+ "\x04text\x18\x03 \x01(\tH\x00R\x04text\x12\x1a\n" +
+ "\bretained\x18\x04 \x01(\bR\bretainedB\x11\n" +
+ "\x0fpayload_variant\"\xcc\x06\n" +
+ "\n" +
+ "MeshPacket\x12\x12\n" +
+ "\x04from\x18\x01 \x01(\aR\x04from\x12\x0e\n" +
+ "\x02to\x18\x02 \x01(\aR\x02to\x12\x18\n" +
+ "\achannel\x18\x03 \x01(\rR\achannel\x12,\n" +
+ "\adecoded\x18\x04 \x01(\v2\x10.meshtastic.DataH\x00R\adecoded\x12\x1e\n" +
+ "\tencrypted\x18\x05 \x01(\fH\x00R\tencrypted\x12\x0e\n" +
+ "\x02id\x18\x06 \x01(\aR\x02id\x12\x17\n" +
+ "\arx_time\x18\a \x01(\aR\x06rxTime\x12\x15\n" +
+ "\x06rx_snr\x18\b \x01(\x02R\x05rxSnr\x12\x1b\n" +
+ "\thop_limit\x18\t \x01(\rR\bhopLimit\x12\x19\n" +
+ "\bwant_ack\x18\n" +
+ " \x01(\bR\awantAck\x12;\n" +
+ "\bpriority\x18\v \x01(\x0e2\x1f.meshtastic.MeshPacket.PriorityR\bpriority\x12\x17\n" +
+ "\arx_rssi\x18\f \x01(\x05R\x06rxRssi\x12<\n" +
+ "\adelayed\x18\r \x01(\x0e2\x1e.meshtastic.MeshPacket.DelayedB\x02\x18\x01R\adelayed\x12\x19\n" +
+ "\bvia_mqtt\x18\x0e \x01(\bR\aviaMqtt\x12\x1b\n" +
+ "\thop_start\x18\x0f \x01(\rR\bhopStart\x12\x1d\n" +
+ "\n" +
+ "public_key\x18\x10 \x01(\fR\tpublicKey\x12#\n" +
+ "\rpki_encrypted\x18\x11 \x01(\bR\fpkiEncrypted\x12\x19\n" +
+ "\bnext_hop\x18\x12 \x01(\rR\anextHop\x12\x1d\n" +
+ "\n" +
+ "relay_node\x18\x13 \x01(\rR\trelayNode\x12\x19\n" +
+ "\btx_after\x18\x14 \x01(\rR\atxAfter\"~\n" +
+ "\bPriority\x12\t\n" +
+ "\x05UNSET\x10\x00\x12\a\n" +
+ "\x03MIN\x10\x01\x12\x0e\n" +
+ "\n" +
+ "BACKGROUND\x10\n" +
+ "\x12\v\n" +
+ "\aDEFAULT\x10@\x12\f\n" +
+ "\bRELIABLE\x10F\x12\f\n" +
+ "\bRESPONSE\x10P\x12\b\n" +
+ "\x04HIGH\x10d\x12\t\n" +
+ "\x05ALERT\x10n\x12\a\n" +
+ "\x03ACK\x10x\x12\a\n" +
+ "\x03MAX\x10\x7f\"B\n" +
+ "\aDelayed\x12\f\n" +
+ "\bNO_DELAY\x10\x00\x12\x15\n" +
+ "\x11DELAYED_BROADCAST\x10\x01\x12\x12\n" +
+ "\x0eDELAYED_DIRECT\x10\x02B\x11\n" +
+ "\x0fpayload_variant\"\xc5\x03\n" +
+ "\bNodeInfo\x12\x10\n" +
+ "\x03num\x18\x01 \x01(\rR\x03num\x12$\n" +
+ "\x04user\x18\x02 \x01(\v2\x10.meshtastic.UserR\x04user\x120\n" +
+ "\bposition\x18\x03 \x01(\v2\x14.meshtastic.PositionR\bposition\x12\x10\n" +
+ "\x03snr\x18\x04 \x01(\x02R\x03snr\x12\x1d\n" +
+ "\n" +
+ "last_heard\x18\x05 \x01(\aR\tlastHeard\x12@\n" +
+ "\x0edevice_metrics\x18\x06 \x01(\v2\x19.meshtastic.DeviceMetricsR\rdeviceMetrics\x12\x18\n" +
+ "\achannel\x18\a \x01(\rR\achannel\x12\x19\n" +
+ "\bvia_mqtt\x18\b \x01(\bR\aviaMqtt\x12 \n" +
+ "\thops_away\x18\t \x01(\rH\x00R\bhopsAway\x88\x01\x01\x12\x1f\n" +
+ "\vis_favorite\x18\n" +
+ " \x01(\bR\n" +
+ "isFavorite\x12\x1d\n" +
+ "\n" +
+ "is_ignored\x18\v \x01(\bR\tisIgnored\x127\n" +
+ "\x18is_key_manually_verified\x18\f \x01(\bR\x15isKeyManuallyVerifiedB\f\n" +
+ "\n" +
+ "_hops_away\"\xad\x01\n" +
+ "\n" +
+ "MyNodeInfo\x12\x1e\n" +
+ "\vmy_node_num\x18\x01 \x01(\rR\tmyNodeNum\x12!\n" +
+ "\freboot_count\x18\b \x01(\rR\vrebootCount\x12&\n" +
+ "\x0fmin_app_version\x18\v \x01(\rR\rminAppVersion\x12\x1b\n" +
+ "\tdevice_id\x18\f \x01(\fR\bdeviceId\x12\x17\n" +
+ "\apio_env\x18\r \x01(\tR\x06pioEnv\"\xde\x01\n" +
+ "\tLogRecord\x12\x18\n" +
+ "\amessage\x18\x01 \x01(\tR\amessage\x12\x12\n" +
+ "\x04time\x18\x02 \x01(\aR\x04time\x12\x16\n" +
+ "\x06source\x18\x03 \x01(\tR\x06source\x121\n" +
+ "\x05level\x18\x04 \x01(\x0e2\x1b.meshtastic.LogRecord.LevelR\x05level\"X\n" +
+ "\x05Level\x12\t\n" +
+ "\x05UNSET\x10\x00\x12\f\n" +
+ "\bCRITICAL\x102\x12\t\n" +
+ "\x05ERROR\x10(\x12\v\n" +
+ "\aWARNING\x10\x1e\x12\b\n" +
+ "\x04INFO\x10\x14\x12\t\n" +
+ "\x05DEBUG\x10\n" +
+ "\x12\t\n" +
+ "\x05TRACE\x10\x05\"q\n" +
+ "\vQueueStatus\x12\x10\n" +
+ "\x03res\x18\x01 \x01(\x05R\x03res\x12\x12\n" +
+ "\x04free\x18\x02 \x01(\rR\x04free\x12\x16\n" +
+ "\x06maxlen\x18\x03 \x01(\rR\x06maxlen\x12$\n" +
+ "\x0emesh_packet_id\x18\x04 \x01(\rR\fmeshPacketId\"\xc8\a\n" +
+ "\tFromRadio\x12\x0e\n" +
+ "\x02id\x18\x01 \x01(\rR\x02id\x120\n" +
+ "\x06packet\x18\x02 \x01(\v2\x16.meshtastic.MeshPacketH\x00R\x06packet\x121\n" +
+ "\amy_info\x18\x03 \x01(\v2\x16.meshtastic.MyNodeInfoH\x00R\x06myInfo\x123\n" +
+ "\tnode_info\x18\x04 \x01(\v2\x14.meshtastic.NodeInfoH\x00R\bnodeInfo\x12,\n" +
+ "\x06config\x18\x05 \x01(\v2\x12.meshtastic.ConfigH\x00R\x06config\x126\n" +
+ "\n" +
+ "log_record\x18\x06 \x01(\v2\x15.meshtastic.LogRecordH\x00R\tlogRecord\x12.\n" +
+ "\x12config_complete_id\x18\a \x01(\rH\x00R\x10configCompleteId\x12\x1c\n" +
+ "\brebooted\x18\b \x01(\bH\x00R\brebooted\x12>\n" +
+ "\fmoduleConfig\x18\t \x01(\v2\x18.meshtastic.ModuleConfigH\x00R\fmoduleConfig\x12/\n" +
+ "\achannel\x18\n" +
+ " \x01(\v2\x13.meshtastic.ChannelH\x00R\achannel\x12;\n" +
+ "\vqueueStatus\x18\v \x01(\v2\x17.meshtastic.QueueStatusH\x00R\vqueueStatus\x128\n" +
+ "\fxmodemPacket\x18\f \x01(\v2\x12.meshtastic.XModemH\x00R\fxmodemPacket\x128\n" +
+ "\bmetadata\x18\r \x01(\v2\x1a.meshtastic.DeviceMetadataH\x00R\bmetadata\x12\\\n" +
+ "\x16mqttClientProxyMessage\x18\x0e \x01(\v2\".meshtastic.MqttClientProxyMessageH\x00R\x16mqttClientProxyMessage\x122\n" +
+ "\bfileInfo\x18\x0f \x01(\v2\x14.meshtastic.FileInfoH\x00R\bfileInfo\x12P\n" +
+ "\x12clientNotification\x18\x10 \x01(\v2\x1e.meshtastic.ClientNotificationH\x00R\x12clientNotification\x12D\n" +
+ "\x0edeviceuiConfig\x18\x11 \x01(\v2\x1a.meshtastic.DeviceUIConfigH\x00R\x0edeviceuiConfigB\x11\n" +
+ "\x0fpayload_variant\"\xf2\x03\n" +
+ "\x12ClientNotification\x12\x1e\n" +
+ "\breply_id\x18\x01 \x01(\rH\x01R\areplyId\x88\x01\x01\x12\x12\n" +
+ "\x04time\x18\x02 \x01(\aR\x04time\x121\n" +
+ "\x05level\x18\x03 \x01(\x0e2\x1b.meshtastic.LogRecord.LevelR\x05level\x12\x18\n" +
+ "\amessage\x18\x04 \x01(\tR\amessage\x12n\n" +
+ "\x1ekey_verification_number_inform\x18\v \x01(\v2'.meshtastic.KeyVerificationNumberInformH\x00R\x1bkeyVerificationNumberInform\x12q\n" +
+ "\x1fkey_verification_number_request\x18\f \x01(\v2(.meshtastic.KeyVerificationNumberRequestH\x00R\x1ckeyVerificationNumberRequest\x12X\n" +
+ "\x16key_verification_final\x18\r \x01(\v2 .meshtastic.KeyVerificationFinalH\x00R\x14keyVerificationFinalB\x11\n" +
+ "\x0fpayload_variantB\v\n" +
+ "\t_reply_id\"\x85\x01\n" +
+ "\x1bKeyVerificationNumberInform\x12\x14\n" +
+ "\x05nonce\x18\x01 \x01(\x04R\x05nonce\x12'\n" +
+ "\x0fremote_longname\x18\x02 \x01(\tR\x0eremoteLongname\x12'\n" +
+ "\x0fsecurity_number\x18\x03 \x01(\rR\x0esecurityNumber\"]\n" +
+ "\x1cKeyVerificationNumberRequest\x12\x14\n" +
+ "\x05nonce\x18\x01 \x01(\x04R\x05nonce\x12'\n" +
+ "\x0fremote_longname\x18\x02 \x01(\tR\x0eremoteLongname\"\xaa\x01\n" +
+ "\x14KeyVerificationFinal\x12\x14\n" +
+ "\x05nonce\x18\x01 \x01(\x04R\x05nonce\x12'\n" +
+ "\x0fremote_longname\x18\x02 \x01(\tR\x0eremoteLongname\x12\x1a\n" +
+ "\bisSender\x18\x03 \x01(\bR\bisSender\x127\n" +
+ "\x17verification_characters\x18\x04 \x01(\tR\x16verificationCharacters\"F\n" +
+ "\bFileInfo\x12\x1b\n" +
+ "\tfile_name\x18\x01 \x01(\tR\bfileName\x12\x1d\n" +
+ "\n" +
+ "size_bytes\x18\x02 \x01(\rR\tsizeBytes\"\xe7\x02\n" +
+ "\aToRadio\x120\n" +
+ "\x06packet\x18\x01 \x01(\v2\x16.meshtastic.MeshPacketH\x00R\x06packet\x12&\n" +
+ "\x0ewant_config_id\x18\x03 \x01(\rH\x00R\fwantConfigId\x12 \n" +
+ "\n" +
+ "disconnect\x18\x04 \x01(\bH\x00R\n" +
+ "disconnect\x128\n" +
+ "\fxmodemPacket\x18\x05 \x01(\v2\x12.meshtastic.XModemH\x00R\fxmodemPacket\x12\\\n" +
+ "\x16mqttClientProxyMessage\x18\x06 \x01(\v2\".meshtastic.MqttClientProxyMessageH\x00R\x16mqttClientProxyMessage\x125\n" +
+ "\theartbeat\x18\a \x01(\v2\x15.meshtastic.HeartbeatH\x00R\theartbeatB\x11\n" +
+ "\x0fpayload_variant\"O\n" +
+ "\n" +
+ "Compressed\x12-\n" +
+ "\aportnum\x18\x01 \x01(\x0e2\x13.meshtastic.PortNumR\aportnum\x12\x12\n" +
+ "\x04data\x18\x02 \x01(\fR\x04data\"\xc3\x01\n" +
+ "\fNeighborInfo\x12\x17\n" +
+ "\anode_id\x18\x01 \x01(\rR\x06nodeId\x12%\n" +
+ "\x0flast_sent_by_id\x18\x02 \x01(\rR\flastSentById\x12?\n" +
+ "\x1cnode_broadcast_interval_secs\x18\x03 \x01(\rR\x19nodeBroadcastIntervalSecs\x122\n" +
+ "\tneighbors\x18\x04 \x03(\v2\x14.meshtastic.NeighborR\tneighbors\"\x98\x01\n" +
+ "\bNeighbor\x12\x17\n" +
+ "\anode_id\x18\x01 \x01(\rR\x06nodeId\x12\x10\n" +
+ "\x03snr\x18\x02 \x01(\x02R\x03snr\x12 \n" +
+ "\flast_rx_time\x18\x03 \x01(\aR\n" +
+ "lastRxTime\x12?\n" +
+ "\x1cnode_broadcast_interval_secs\x18\x04 \x01(\rR\x19nodeBroadcastIntervalSecs\"\xf7\x03\n" +
+ "\x0eDeviceMetadata\x12)\n" +
+ "\x10firmware_version\x18\x01 \x01(\tR\x0ffirmwareVersion\x120\n" +
+ "\x14device_state_version\x18\x02 \x01(\rR\x12deviceStateVersion\x12 \n" +
+ "\vcanShutdown\x18\x03 \x01(\bR\vcanShutdown\x12\x18\n" +
+ "\ahasWifi\x18\x04 \x01(\bR\ahasWifi\x12\"\n" +
+ "\fhasBluetooth\x18\x05 \x01(\bR\fhasBluetooth\x12 \n" +
+ "\vhasEthernet\x18\x06 \x01(\bR\vhasEthernet\x128\n" +
+ "\x04role\x18\a \x01(\x0e2$.meshtastic.Config.DeviceConfig.RoleR\x04role\x12%\n" +
+ "\x0eposition_flags\x18\b \x01(\rR\rpositionFlags\x124\n" +
+ "\bhw_model\x18\t \x01(\x0e2\x19.meshtastic.HardwareModelR\ahwModel\x12,\n" +
+ "\x11hasRemoteHardware\x18\n" +
+ " \x01(\bR\x11hasRemoteHardware\x12\x16\n" +
+ "\x06hasPKC\x18\v \x01(\bR\x06hasPKC\x12)\n" +
+ "\x10excluded_modules\x18\f \x01(\rR\x0fexcludedModules\"\v\n" +
+ "\tHeartbeat\"c\n" +
+ "\x15NodeRemoteHardwarePin\x12\x19\n" +
+ "\bnode_num\x18\x01 \x01(\rR\anodeNum\x12/\n" +
+ "\x03pin\x18\x02 \x01(\v2\x1d.meshtastic.RemoteHardwarePinR\x03pin\"\x96\x01\n" +
+ "\x0eChunkedPayload\x12\x1d\n" +
+ "\n" +
+ "payload_id\x18\x01 \x01(\rR\tpayloadId\x12\x1f\n" +
+ "\vchunk_count\x18\x02 \x01(\rR\n" +
+ "chunkCount\x12\x1f\n" +
+ "\vchunk_index\x18\x03 \x01(\rR\n" +
+ "chunkIndex\x12#\n" +
+ "\rpayload_chunk\x18\x04 \x01(\fR\fpayloadChunk\"'\n" +
+ "\rresend_chunks\x12\x16\n" +
+ "\x06chunks\x18\x01 \x03(\rR\x06chunks\"\xe4\x01\n" +
+ "\x16ChunkedPayloadResponse\x12\x1d\n" +
+ "\n" +
+ "payload_id\x18\x01 \x01(\rR\tpayloadId\x12+\n" +
+ "\x10request_transfer\x18\x02 \x01(\bH\x00R\x0frequestTransfer\x12)\n" +
+ "\x0faccept_transfer\x18\x03 \x01(\bH\x00R\x0eacceptTransfer\x12@\n" +
+ "\rresend_chunks\x18\x04 \x01(\v2\x19.meshtastic.resend_chunksH\x00R\fresendChunksB\x11\n" +
+ "\x0fpayload_variant*\xb6\x0f\n" +
+ "\rHardwareModel\x12\t\n" +
+ "\x05UNSET\x10\x00\x12\f\n" +
+ "\bTLORA_V2\x10\x01\x12\f\n" +
+ "\bTLORA_V1\x10\x02\x12\x12\n" +
+ "\x0eTLORA_V2_1_1P6\x10\x03\x12\t\n" +
+ "\x05TBEAM\x10\x04\x12\x0f\n" +
+ "\vHELTEC_V2_0\x10\x05\x12\x0e\n" +
+ "\n" +
+ "TBEAM_V0P7\x10\x06\x12\n" +
+ "\n" +
+ "\x06T_ECHO\x10\a\x12\x10\n" +
+ "\fTLORA_V1_1P3\x10\b\x12\v\n" +
+ "\aRAK4631\x10\t\x12\x0f\n" +
+ "\vHELTEC_V2_1\x10\n" +
+ "\x12\r\n" +
+ "\tHELTEC_V1\x10\v\x12\x18\n" +
+ "\x14LILYGO_TBEAM_S3_CORE\x10\f\x12\f\n" +
+ "\bRAK11200\x10\r\x12\v\n" +
+ "\aNANO_G1\x10\x0e\x12\x12\n" +
+ "\x0eTLORA_V2_1_1P8\x10\x0f\x12\x0f\n" +
+ "\vTLORA_T3_S3\x10\x10\x12\x14\n" +
+ "\x10NANO_G1_EXPLORER\x10\x11\x12\x11\n" +
+ "\rNANO_G2_ULTRA\x10\x12\x12\r\n" +
+ "\tLORA_TYPE\x10\x13\x12\v\n" +
+ "\aWIPHONE\x10\x14\x12\x0e\n" +
+ "\n" +
+ "WIO_WM1110\x10\x15\x12\v\n" +
+ "\aRAK2560\x10\x16\x12\x13\n" +
+ "\x0fHELTEC_HRU_3601\x10\x17\x12\x1a\n" +
+ "\x16HELTEC_WIRELESS_BRIDGE\x10\x18\x12\x0e\n" +
+ "\n" +
+ "STATION_G1\x10\x19\x12\f\n" +
+ "\bRAK11310\x10\x1a\x12\x14\n" +
+ "\x10SENSELORA_RP2040\x10\x1b\x12\x10\n" +
+ "\fSENSELORA_S3\x10\x1c\x12\r\n" +
+ "\tCANARYONE\x10\x1d\x12\x0f\n" +
+ "\vRP2040_LORA\x10\x1e\x12\x0e\n" +
+ "\n" +
+ "STATION_G2\x10\x1f\x12\x11\n" +
+ "\rLORA_RELAY_V1\x10 \x12\x0e\n" +
+ "\n" +
+ "NRF52840DK\x10!\x12\a\n" +
+ "\x03PPR\x10\"\x12\x0f\n" +
+ "\vGENIEBLOCKS\x10#\x12\x11\n" +
+ "\rNRF52_UNKNOWN\x10$\x12\r\n" +
+ "\tPORTDUINO\x10%\x12\x0f\n" +
+ "\vANDROID_SIM\x10&\x12\n" +
+ "\n" +
+ "\x06DIY_V1\x10'\x12\x15\n" +
+ "\x11NRF52840_PCA10059\x10(\x12\n" +
+ "\n" +
+ "\x06DR_DEV\x10)\x12\v\n" +
+ "\aM5STACK\x10*\x12\r\n" +
+ "\tHELTEC_V3\x10+\x12\x11\n" +
+ "\rHELTEC_WSL_V3\x10,\x12\x13\n" +
+ "\x0fBETAFPV_2400_TX\x10-\x12\x17\n" +
+ "\x13BETAFPV_900_NANO_TX\x10.\x12\f\n" +
+ "\bRPI_PICO\x10/\x12\x1b\n" +
+ "\x17HELTEC_WIRELESS_TRACKER\x100\x12\x19\n" +
+ "\x15HELTEC_WIRELESS_PAPER\x101\x12\n" +
+ "\n" +
+ "\x06T_DECK\x102\x12\x0e\n" +
+ "\n" +
+ "T_WATCH_S3\x103\x12\x11\n" +
+ "\rPICOMPUTER_S3\x104\x12\x0f\n" +
+ "\vHELTEC_HT62\x105\x12\x12\n" +
+ "\x0eEBYTE_ESP32_S3\x106\x12\x11\n" +
+ "\rESP32_S3_PICO\x107\x12\r\n" +
+ "\tCHATTER_2\x108\x12\x1e\n" +
+ "\x1aHELTEC_WIRELESS_PAPER_V1_0\x109\x12 \n" +
+ "\x1cHELTEC_WIRELESS_TRACKER_V1_0\x10:\x12\v\n" +
+ "\aUNPHONE\x10;\x12\f\n" +
+ "\bTD_LORAC\x10<\x12\x13\n" +
+ "\x0fCDEBYTE_EORA_S3\x10=\x12\x0f\n" +
+ "\vTWC_MESH_V4\x10>\x12\x16\n" +
+ "\x12NRF52_PROMICRO_DIY\x10?\x12\x1f\n" +
+ "\x1bRADIOMASTER_900_BANDIT_NANO\x10@\x12\x1c\n" +
+ "\x18HELTEC_CAPSULE_SENSOR_V3\x10A\x12\x1d\n" +
+ "\x19HELTEC_VISION_MASTER_T190\x10B\x12\x1d\n" +
+ "\x19HELTEC_VISION_MASTER_E213\x10C\x12\x1d\n" +
+ "\x19HELTEC_VISION_MASTER_E290\x10D\x12\x19\n" +
+ "\x15HELTEC_MESH_NODE_T114\x10E\x12\x16\n" +
+ "\x12SENSECAP_INDICATOR\x10F\x12\x13\n" +
+ "\x0fTRACKER_T1000_E\x10G\x12\v\n" +
+ "\aRAK3172\x10H\x12\n" +
+ "\n" +
+ "\x06WIO_E5\x10I\x12\x1a\n" +
+ "\x16RADIOMASTER_900_BANDIT\x10J\x12\x13\n" +
+ "\x0fME25LS01_4Y10TD\x10K\x12\x18\n" +
+ "\x14RP2040_FEATHER_RFM95\x10L\x12\x15\n" +
+ "\x11M5STACK_COREBASIC\x10M\x12\x11\n" +
+ "\rM5STACK_CORE2\x10N\x12\r\n" +
+ "\tRPI_PICO2\x10O\x12\x12\n" +
+ "\x0eM5STACK_CORES3\x10P\x12\x11\n" +
+ "\rSEEED_XIAO_S3\x10Q\x12\v\n" +
+ "\aMS24SF1\x10R\x12\f\n" +
+ "\bTLORA_C6\x10S\x12\x0f\n" +
+ "\vWISMESH_TAP\x10T\x12\r\n" +
+ "\tROUTASTIC\x10U\x12\f\n" +
+ "\bMESH_TAB\x10V\x12\f\n" +
+ "\bMESHLINK\x10W\x12\x12\n" +
+ "\x0eXIAO_NRF52_KIT\x10X\x12\x10\n" +
+ "\fTHINKNODE_M1\x10Y\x12\x10\n" +
+ "\fTHINKNODE_M2\x10Z\x12\x0f\n" +
+ "\vT_ETH_ELITE\x10[\x12\x15\n" +
+ "\x11HELTEC_SENSOR_HUB\x10\\\x12\x1a\n" +
+ "\x16RESERVED_FRIED_CHICKEN\x10]\x12\x16\n" +
+ "\x12HELTEC_MESH_POCKET\x10^\x12\x14\n" +
+ "\x10SEEED_SOLAR_NODE\x10_\x12\x18\n" +
+ "\x14NOMADSTAR_METEOR_PRO\x10`\x12\r\n" +
+ "\tCROWPANEL\x10a\x12\v\n" +
+ "\aLINK_32\x10b\x12\x18\n" +
+ "\x14SEEED_WIO_TRACKER_L1\x10c\x12\x1d\n" +
+ "\x19SEEED_WIO_TRACKER_L1_EINK\x10d\x12\x14\n" +
+ "\x10QWANTZ_TINY_ARMS\x10e\x12\x0f\n" +
+ "\n" +
+ "PRIVATE_HW\x10\xff\x01*,\n" +
+ "\tConstants\x12\b\n" +
+ "\x04ZERO\x10\x00\x12\x15\n" +
+ "\x10DATA_PAYLOAD_LEN\x10\xe9\x01*\xb4\x02\n" +
+ "\x11CriticalErrorCode\x12\b\n" +
+ "\x04NONE\x10\x00\x12\x0f\n" +
+ "\vTX_WATCHDOG\x10\x01\x12\x14\n" +
+ "\x10SLEEP_ENTER_WAIT\x10\x02\x12\f\n" +
+ "\bNO_RADIO\x10\x03\x12\x0f\n" +
+ "\vUNSPECIFIED\x10\x04\x12\x15\n" +
+ "\x11UBLOX_UNIT_FAILED\x10\x05\x12\r\n" +
+ "\tNO_AXP192\x10\x06\x12\x19\n" +
+ "\x15INVALID_RADIO_SETTING\x10\a\x12\x13\n" +
+ "\x0fTRANSMIT_FAILED\x10\b\x12\f\n" +
+ "\bBROWNOUT\x10\t\x12\x12\n" +
+ "\x0eSX1262_FAILURE\x10\n" +
+ "\x12\x11\n" +
+ "\rRADIO_SPI_BUG\x10\v\x12 \n" +
+ "\x1cFLASH_CORRUPTION_RECOVERABLE\x10\f\x12\"\n" +
+ "\x1eFLASH_CORRUPTION_UNRECOVERABLE\x10\r*\x80\x03\n" +
+ "\x0fExcludedModules\x12\x11\n" +
+ "\rEXCLUDED_NONE\x10\x00\x12\x0f\n" +
+ "\vMQTT_CONFIG\x10\x01\x12\x11\n" +
+ "\rSERIAL_CONFIG\x10\x02\x12\x13\n" +
+ "\x0fEXTNOTIF_CONFIG\x10\x04\x12\x17\n" +
+ "\x13STOREFORWARD_CONFIG\x10\b\x12\x14\n" +
+ "\x10RANGETEST_CONFIG\x10\x10\x12\x14\n" +
+ "\x10TELEMETRY_CONFIG\x10 \x12\x14\n" +
+ "\x10CANNEDMSG_CONFIG\x10@\x12\x11\n" +
+ "\fAUDIO_CONFIG\x10\x80\x01\x12\x1a\n" +
+ "\x15REMOTEHARDWARE_CONFIG\x10\x80\x02\x12\x18\n" +
+ "\x13NEIGHBORINFO_CONFIG\x10\x80\x04\x12\x1b\n" +
+ "\x16AMBIENTLIGHTING_CONFIG\x10\x80\b\x12\x1b\n" +
+ "\x16DETECTIONSENSOR_CONFIG\x10\x80\x10\x12\x16\n" +
+ "\x11PAXCOUNTER_CONFIG\x10\x80 \x12\x15\n" +
+ "\x10BLUETOOTH_CONFIG\x10\x80@\x12\x14\n" +
+ "\x0eNETWORK_CONFIG\x10\x80\x80\x01B_\n" +
+ "\x13com.geeksville.meshB\n" +
+ "MeshProtosZ\"github.com/meshtastic/go/generated\xaa\x02\x14Meshtastic.Protobufs\xba\x02\x00b\x06proto3"
+
var (
file_meshtastic_mesh_proto_rawDescOnce sync.Once
- file_meshtastic_mesh_proto_rawDescData = file_meshtastic_mesh_proto_rawDesc
+ file_meshtastic_mesh_proto_rawDescData []byte
)
func file_meshtastic_mesh_proto_rawDescGZIP() []byte {
file_meshtastic_mesh_proto_rawDescOnce.Do(func() {
- file_meshtastic_mesh_proto_rawDescData = protoimpl.X.CompressGZIP(file_meshtastic_mesh_proto_rawDescData)
+ file_meshtastic_mesh_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_meshtastic_mesh_proto_rawDesc), len(file_meshtastic_mesh_proto_rawDesc)))
})
return file_meshtastic_mesh_proto_rawDescData
}
-var file_meshtastic_mesh_proto_enumTypes = make([]protoimpl.EnumInfo, 9)
-var file_meshtastic_mesh_proto_msgTypes = make([]protoimpl.MessageInfo, 18)
-var file_meshtastic_mesh_proto_goTypes = []interface{}{
- (HardwareModel)(0), // 0: meshtastic.HardwareModel
- (Constants)(0), // 1: meshtastic.Constants
- (CriticalErrorCode)(0), // 2: meshtastic.CriticalErrorCode
- (Position_LocSource)(0), // 3: meshtastic.Position.LocSource
- (Position_AltSource)(0), // 4: meshtastic.Position.AltSource
- (Routing_Error)(0), // 5: meshtastic.Routing.Error
- (MeshPacket_Priority)(0), // 6: meshtastic.MeshPacket.Priority
- (MeshPacket_Delayed)(0), // 7: meshtastic.MeshPacket.Delayed
- (LogRecord_Level)(0), // 8: meshtastic.LogRecord.Level
- (*Position)(nil), // 9: meshtastic.Position
- (*User)(nil), // 10: meshtastic.User
- (*RouteDiscovery)(nil), // 11: meshtastic.RouteDiscovery
- (*Routing)(nil), // 12: meshtastic.Routing
- (*Data)(nil), // 13: meshtastic.Data
- (*Waypoint)(nil), // 14: meshtastic.Waypoint
- (*MqttClientProxyMessage)(nil), // 15: meshtastic.MqttClientProxyMessage
- (*MeshPacket)(nil), // 16: meshtastic.MeshPacket
- (*NodeInfo)(nil), // 17: meshtastic.NodeInfo
- (*MyNodeInfo)(nil), // 18: meshtastic.MyNodeInfo
- (*LogRecord)(nil), // 19: meshtastic.LogRecord
- (*QueueStatus)(nil), // 20: meshtastic.QueueStatus
- (*FromRadio)(nil), // 21: meshtastic.FromRadio
- (*ToRadio)(nil), // 22: meshtastic.ToRadio
- (*Compressed)(nil), // 23: meshtastic.Compressed
- (*NeighborInfo)(nil), // 24: meshtastic.NeighborInfo
- (*Neighbor)(nil), // 25: meshtastic.Neighbor
- (*DeviceMetadata)(nil), // 26: meshtastic.DeviceMetadata
- (Config_DeviceConfig_Role)(0), // 27: meshtastic.Config.DeviceConfig.Role
- (PortNum)(0), // 28: meshtastic.PortNum
- (*DeviceMetrics)(nil), // 29: meshtastic.DeviceMetrics
- (*Config)(nil), // 30: meshtastic.Config
- (*ModuleConfig)(nil), // 31: meshtastic.ModuleConfig
- (*Channel)(nil), // 32: meshtastic.Channel
- (*XModem)(nil), // 33: meshtastic.XModem
+var file_meshtastic_mesh_proto_enumTypes = make([]protoimpl.EnumInfo, 10)
+var file_meshtastic_mesh_proto_msgTypes = make([]protoimpl.MessageInfo, 29)
+var file_meshtastic_mesh_proto_goTypes = []any{
+ (HardwareModel)(0), // 0: meshtastic.HardwareModel
+ (Constants)(0), // 1: meshtastic.Constants
+ (CriticalErrorCode)(0), // 2: meshtastic.CriticalErrorCode
+ (ExcludedModules)(0), // 3: meshtastic.ExcludedModules
+ (Position_LocSource)(0), // 4: meshtastic.Position.LocSource
+ (Position_AltSource)(0), // 5: meshtastic.Position.AltSource
+ (Routing_Error)(0), // 6: meshtastic.Routing.Error
+ (MeshPacket_Priority)(0), // 7: meshtastic.MeshPacket.Priority
+ (MeshPacket_Delayed)(0), // 8: meshtastic.MeshPacket.Delayed
+ (LogRecord_Level)(0), // 9: meshtastic.LogRecord.Level
+ (*Position)(nil), // 10: meshtastic.Position
+ (*User)(nil), // 11: meshtastic.User
+ (*RouteDiscovery)(nil), // 12: meshtastic.RouteDiscovery
+ (*Routing)(nil), // 13: meshtastic.Routing
+ (*Data)(nil), // 14: meshtastic.Data
+ (*KeyVerification)(nil), // 15: meshtastic.KeyVerification
+ (*Waypoint)(nil), // 16: meshtastic.Waypoint
+ (*MqttClientProxyMessage)(nil), // 17: meshtastic.MqttClientProxyMessage
+ (*MeshPacket)(nil), // 18: meshtastic.MeshPacket
+ (*NodeInfo)(nil), // 19: meshtastic.NodeInfo
+ (*MyNodeInfo)(nil), // 20: meshtastic.MyNodeInfo
+ (*LogRecord)(nil), // 21: meshtastic.LogRecord
+ (*QueueStatus)(nil), // 22: meshtastic.QueueStatus
+ (*FromRadio)(nil), // 23: meshtastic.FromRadio
+ (*ClientNotification)(nil), // 24: meshtastic.ClientNotification
+ (*KeyVerificationNumberInform)(nil), // 25: meshtastic.KeyVerificationNumberInform
+ (*KeyVerificationNumberRequest)(nil), // 26: meshtastic.KeyVerificationNumberRequest
+ (*KeyVerificationFinal)(nil), // 27: meshtastic.KeyVerificationFinal
+ (*FileInfo)(nil), // 28: meshtastic.FileInfo
+ (*ToRadio)(nil), // 29: meshtastic.ToRadio
+ (*Compressed)(nil), // 30: meshtastic.Compressed
+ (*NeighborInfo)(nil), // 31: meshtastic.NeighborInfo
+ (*Neighbor)(nil), // 32: meshtastic.Neighbor
+ (*DeviceMetadata)(nil), // 33: meshtastic.DeviceMetadata
+ (*Heartbeat)(nil), // 34: meshtastic.Heartbeat
+ (*NodeRemoteHardwarePin)(nil), // 35: meshtastic.NodeRemoteHardwarePin
+ (*ChunkedPayload)(nil), // 36: meshtastic.ChunkedPayload
+ (*ResendChunks)(nil), // 37: meshtastic.resend_chunks
+ (*ChunkedPayloadResponse)(nil), // 38: meshtastic.ChunkedPayloadResponse
+ (Config_DeviceConfig_Role)(0), // 39: meshtastic.Config.DeviceConfig.Role
+ (PortNum)(0), // 40: meshtastic.PortNum
+ (*DeviceMetrics)(nil), // 41: meshtastic.DeviceMetrics
+ (*Config)(nil), // 42: meshtastic.Config
+ (*ModuleConfig)(nil), // 43: meshtastic.ModuleConfig
+ (*Channel)(nil), // 44: meshtastic.Channel
+ (*XModem)(nil), // 45: meshtastic.XModem
+ (*DeviceUIConfig)(nil), // 46: meshtastic.DeviceUIConfig
+ (*RemoteHardwarePin)(nil), // 47: meshtastic.RemoteHardwarePin
}
var file_meshtastic_mesh_proto_depIdxs = []int32{
- 3, // 0: meshtastic.Position.location_source:type_name -> meshtastic.Position.LocSource
- 4, // 1: meshtastic.Position.altitude_source:type_name -> meshtastic.Position.AltSource
+ 4, // 0: meshtastic.Position.location_source:type_name -> meshtastic.Position.LocSource
+ 5, // 1: meshtastic.Position.altitude_source:type_name -> meshtastic.Position.AltSource
0, // 2: meshtastic.User.hw_model:type_name -> meshtastic.HardwareModel
- 27, // 3: meshtastic.User.role:type_name -> meshtastic.Config.DeviceConfig.Role
- 11, // 4: meshtastic.Routing.route_request:type_name -> meshtastic.RouteDiscovery
- 11, // 5: meshtastic.Routing.route_reply:type_name -> meshtastic.RouteDiscovery
- 5, // 6: meshtastic.Routing.error_reason:type_name -> meshtastic.Routing.Error
- 28, // 7: meshtastic.Data.portnum:type_name -> meshtastic.PortNum
- 13, // 8: meshtastic.MeshPacket.decoded:type_name -> meshtastic.Data
- 6, // 9: meshtastic.MeshPacket.priority:type_name -> meshtastic.MeshPacket.Priority
- 7, // 10: meshtastic.MeshPacket.delayed:type_name -> meshtastic.MeshPacket.Delayed
- 10, // 11: meshtastic.NodeInfo.user:type_name -> meshtastic.User
- 9, // 12: meshtastic.NodeInfo.position:type_name -> meshtastic.Position
- 29, // 13: meshtastic.NodeInfo.device_metrics:type_name -> meshtastic.DeviceMetrics
- 8, // 14: meshtastic.LogRecord.level:type_name -> meshtastic.LogRecord.Level
- 16, // 15: meshtastic.FromRadio.packet:type_name -> meshtastic.MeshPacket
- 18, // 16: meshtastic.FromRadio.my_info:type_name -> meshtastic.MyNodeInfo
- 17, // 17: meshtastic.FromRadio.node_info:type_name -> meshtastic.NodeInfo
- 30, // 18: meshtastic.FromRadio.config:type_name -> meshtastic.Config
- 19, // 19: meshtastic.FromRadio.log_record:type_name -> meshtastic.LogRecord
- 31, // 20: meshtastic.FromRadio.moduleConfig:type_name -> meshtastic.ModuleConfig
- 32, // 21: meshtastic.FromRadio.channel:type_name -> meshtastic.Channel
- 20, // 22: meshtastic.FromRadio.queueStatus:type_name -> meshtastic.QueueStatus
- 33, // 23: meshtastic.FromRadio.xmodemPacket:type_name -> meshtastic.XModem
- 26, // 24: meshtastic.FromRadio.metadata:type_name -> meshtastic.DeviceMetadata
- 15, // 25: meshtastic.FromRadio.mqttClientProxyMessage:type_name -> meshtastic.MqttClientProxyMessage
- 16, // 26: meshtastic.ToRadio.packet:type_name -> meshtastic.MeshPacket
- 33, // 27: meshtastic.ToRadio.xmodemPacket:type_name -> meshtastic.XModem
- 15, // 28: meshtastic.ToRadio.mqttClientProxyMessage:type_name -> meshtastic.MqttClientProxyMessage
- 28, // 29: meshtastic.Compressed.portnum:type_name -> meshtastic.PortNum
- 25, // 30: meshtastic.NeighborInfo.neighbors:type_name -> meshtastic.Neighbor
- 27, // 31: meshtastic.DeviceMetadata.role:type_name -> meshtastic.Config.DeviceConfig.Role
- 0, // 32: meshtastic.DeviceMetadata.hw_model:type_name -> meshtastic.HardwareModel
- 33, // [33:33] is the sub-list for method output_type
- 33, // [33:33] is the sub-list for method input_type
- 33, // [33:33] is the sub-list for extension type_name
- 33, // [33:33] is the sub-list for extension extendee
- 0, // [0:33] is the sub-list for field type_name
+ 39, // 3: meshtastic.User.role:type_name -> meshtastic.Config.DeviceConfig.Role
+ 12, // 4: meshtastic.Routing.route_request:type_name -> meshtastic.RouteDiscovery
+ 12, // 5: meshtastic.Routing.route_reply:type_name -> meshtastic.RouteDiscovery
+ 6, // 6: meshtastic.Routing.error_reason:type_name -> meshtastic.Routing.Error
+ 40, // 7: meshtastic.Data.portnum:type_name -> meshtastic.PortNum
+ 14, // 8: meshtastic.MeshPacket.decoded:type_name -> meshtastic.Data
+ 7, // 9: meshtastic.MeshPacket.priority:type_name -> meshtastic.MeshPacket.Priority
+ 8, // 10: meshtastic.MeshPacket.delayed:type_name -> meshtastic.MeshPacket.Delayed
+ 11, // 11: meshtastic.NodeInfo.user:type_name -> meshtastic.User
+ 10, // 12: meshtastic.NodeInfo.position:type_name -> meshtastic.Position
+ 41, // 13: meshtastic.NodeInfo.device_metrics:type_name -> meshtastic.DeviceMetrics
+ 9, // 14: meshtastic.LogRecord.level:type_name -> meshtastic.LogRecord.Level
+ 18, // 15: meshtastic.FromRadio.packet:type_name -> meshtastic.MeshPacket
+ 20, // 16: meshtastic.FromRadio.my_info:type_name -> meshtastic.MyNodeInfo
+ 19, // 17: meshtastic.FromRadio.node_info:type_name -> meshtastic.NodeInfo
+ 42, // 18: meshtastic.FromRadio.config:type_name -> meshtastic.Config
+ 21, // 19: meshtastic.FromRadio.log_record:type_name -> meshtastic.LogRecord
+ 43, // 20: meshtastic.FromRadio.moduleConfig:type_name -> meshtastic.ModuleConfig
+ 44, // 21: meshtastic.FromRadio.channel:type_name -> meshtastic.Channel
+ 22, // 22: meshtastic.FromRadio.queueStatus:type_name -> meshtastic.QueueStatus
+ 45, // 23: meshtastic.FromRadio.xmodemPacket:type_name -> meshtastic.XModem
+ 33, // 24: meshtastic.FromRadio.metadata:type_name -> meshtastic.DeviceMetadata
+ 17, // 25: meshtastic.FromRadio.mqttClientProxyMessage:type_name -> meshtastic.MqttClientProxyMessage
+ 28, // 26: meshtastic.FromRadio.fileInfo:type_name -> meshtastic.FileInfo
+ 24, // 27: meshtastic.FromRadio.clientNotification:type_name -> meshtastic.ClientNotification
+ 46, // 28: meshtastic.FromRadio.deviceuiConfig:type_name -> meshtastic.DeviceUIConfig
+ 9, // 29: meshtastic.ClientNotification.level:type_name -> meshtastic.LogRecord.Level
+ 25, // 30: meshtastic.ClientNotification.key_verification_number_inform:type_name -> meshtastic.KeyVerificationNumberInform
+ 26, // 31: meshtastic.ClientNotification.key_verification_number_request:type_name -> meshtastic.KeyVerificationNumberRequest
+ 27, // 32: meshtastic.ClientNotification.key_verification_final:type_name -> meshtastic.KeyVerificationFinal
+ 18, // 33: meshtastic.ToRadio.packet:type_name -> meshtastic.MeshPacket
+ 45, // 34: meshtastic.ToRadio.xmodemPacket:type_name -> meshtastic.XModem
+ 17, // 35: meshtastic.ToRadio.mqttClientProxyMessage:type_name -> meshtastic.MqttClientProxyMessage
+ 34, // 36: meshtastic.ToRadio.heartbeat:type_name -> meshtastic.Heartbeat
+ 40, // 37: meshtastic.Compressed.portnum:type_name -> meshtastic.PortNum
+ 32, // 38: meshtastic.NeighborInfo.neighbors:type_name -> meshtastic.Neighbor
+ 39, // 39: meshtastic.DeviceMetadata.role:type_name -> meshtastic.Config.DeviceConfig.Role
+ 0, // 40: meshtastic.DeviceMetadata.hw_model:type_name -> meshtastic.HardwareModel
+ 47, // 41: meshtastic.NodeRemoteHardwarePin.pin:type_name -> meshtastic.RemoteHardwarePin
+ 37, // 42: meshtastic.ChunkedPayloadResponse.resend_chunks:type_name -> meshtastic.resend_chunks
+ 43, // [43:43] is the sub-list for method output_type
+ 43, // [43:43] is the sub-list for method input_type
+ 43, // [43:43] is the sub-list for extension type_name
+ 43, // [43:43] is the sub-list for extension extendee
+ 0, // [0:43] is the sub-list for field type_name
}
func init() { file_meshtastic_mesh_proto_init() }
@@ -3652,238 +5092,26 @@ func file_meshtastic_mesh_proto_init() {
file_meshtastic_portnums_proto_init()
file_meshtastic_telemetry_proto_init()
file_meshtastic_xmodem_proto_init()
- if !protoimpl.UnsafeEnabled {
- file_meshtastic_mesh_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*Position); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_mesh_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*User); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_mesh_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*RouteDiscovery); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_mesh_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*Routing); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_mesh_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*Data); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_mesh_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*Waypoint); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_mesh_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*MqttClientProxyMessage); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_mesh_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*MeshPacket); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_mesh_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*NodeInfo); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_mesh_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*MyNodeInfo); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_mesh_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*LogRecord); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_mesh_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*QueueStatus); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_mesh_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*FromRadio); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_mesh_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ToRadio); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_mesh_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*Compressed); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_mesh_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*NeighborInfo); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_mesh_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*Neighbor); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_mesh_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DeviceMetadata); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- }
- file_meshtastic_mesh_proto_msgTypes[3].OneofWrappers = []interface{}{
+ file_meshtastic_device_ui_proto_init()
+ file_meshtastic_mesh_proto_msgTypes[0].OneofWrappers = []any{}
+ file_meshtastic_mesh_proto_msgTypes[1].OneofWrappers = []any{}
+ file_meshtastic_mesh_proto_msgTypes[3].OneofWrappers = []any{
(*Routing_RouteRequest)(nil),
(*Routing_RouteReply)(nil),
(*Routing_ErrorReason)(nil),
}
- file_meshtastic_mesh_proto_msgTypes[6].OneofWrappers = []interface{}{
+ file_meshtastic_mesh_proto_msgTypes[4].OneofWrappers = []any{}
+ file_meshtastic_mesh_proto_msgTypes[6].OneofWrappers = []any{}
+ file_meshtastic_mesh_proto_msgTypes[7].OneofWrappers = []any{
(*MqttClientProxyMessage_Data)(nil),
(*MqttClientProxyMessage_Text)(nil),
}
- file_meshtastic_mesh_proto_msgTypes[7].OneofWrappers = []interface{}{
+ file_meshtastic_mesh_proto_msgTypes[8].OneofWrappers = []any{
(*MeshPacket_Decoded)(nil),
(*MeshPacket_Encrypted)(nil),
}
- file_meshtastic_mesh_proto_msgTypes[12].OneofWrappers = []interface{}{
+ file_meshtastic_mesh_proto_msgTypes[9].OneofWrappers = []any{}
+ file_meshtastic_mesh_proto_msgTypes[13].OneofWrappers = []any{
(*FromRadio_Packet)(nil),
(*FromRadio_MyInfo)(nil),
(*FromRadio_NodeInfo)(nil),
@@ -3897,21 +5125,35 @@ func file_meshtastic_mesh_proto_init() {
(*FromRadio_XmodemPacket)(nil),
(*FromRadio_Metadata)(nil),
(*FromRadio_MqttClientProxyMessage)(nil),
+ (*FromRadio_FileInfo)(nil),
+ (*FromRadio_ClientNotification)(nil),
+ (*FromRadio_DeviceuiConfig)(nil),
+ }
+ file_meshtastic_mesh_proto_msgTypes[14].OneofWrappers = []any{
+ (*ClientNotification_KeyVerificationNumberInform)(nil),
+ (*ClientNotification_KeyVerificationNumberRequest)(nil),
+ (*ClientNotification_KeyVerificationFinal)(nil),
}
- file_meshtastic_mesh_proto_msgTypes[13].OneofWrappers = []interface{}{
+ file_meshtastic_mesh_proto_msgTypes[19].OneofWrappers = []any{
(*ToRadio_Packet)(nil),
(*ToRadio_WantConfigId)(nil),
(*ToRadio_Disconnect)(nil),
(*ToRadio_XmodemPacket)(nil),
(*ToRadio_MqttClientProxyMessage)(nil),
+ (*ToRadio_Heartbeat)(nil),
+ }
+ file_meshtastic_mesh_proto_msgTypes[28].OneofWrappers = []any{
+ (*ChunkedPayloadResponse_RequestTransfer)(nil),
+ (*ChunkedPayloadResponse_AcceptTransfer)(nil),
+ (*ChunkedPayloadResponse_ResendChunks)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
- RawDescriptor: file_meshtastic_mesh_proto_rawDesc,
- NumEnums: 9,
- NumMessages: 18,
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_meshtastic_mesh_proto_rawDesc), len(file_meshtastic_mesh_proto_rawDesc)),
+ NumEnums: 10,
+ NumMessages: 29,
NumExtensions: 0,
NumServices: 0,
},
@@ -3921,7 +5163,6 @@ func file_meshtastic_mesh_proto_init() {
MessageInfos: file_meshtastic_mesh_proto_msgTypes,
}.Build()
File_meshtastic_mesh_proto = out.File
- file_meshtastic_mesh_proto_rawDesc = nil
file_meshtastic_mesh_proto_goTypes = nil
file_meshtastic_mesh_proto_depIdxs = nil
}
diff --git a/meshtastic/mesh_vtproto.pb.go b/meshtastic/mesh_vtproto.pb.go
index 50c1e43..0cf2e72 100644
--- a/meshtastic/mesh_vtproto.pb.go
+++ b/meshtastic/mesh_vtproto.pb.go
@@ -99,15 +99,15 @@ func (m *Position) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i--
dAtA[i] = 0x88
}
- if m.GroundTrack != 0 {
- i = protohelpers.EncodeVarint(dAtA, i, uint64(m.GroundTrack))
+ if m.GroundTrack != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.GroundTrack))
i--
dAtA[i] = 0x1
i--
dAtA[i] = 0x80
}
- if m.GroundSpeed != 0 {
- i = protohelpers.EncodeVarint(dAtA, i, uint64(m.GroundSpeed))
+ if m.GroundSpeed != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.GroundSpeed))
i--
dAtA[i] = 0x78
}
@@ -131,13 +131,13 @@ func (m *Position) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i--
dAtA[i] = 0x58
}
- if m.AltitudeGeoidalSeparation != 0 {
- i = protohelpers.EncodeVarint(dAtA, i, uint64((uint32(m.AltitudeGeoidalSeparation)<<1)^uint32((m.AltitudeGeoidalSeparation>>31))))
+ if m.AltitudeGeoidalSeparation != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64((uint32(*m.AltitudeGeoidalSeparation)<<1)^uint32((*m.AltitudeGeoidalSeparation>>31))))
i--
dAtA[i] = 0x50
}
- if m.AltitudeHae != 0 {
- i = protohelpers.EncodeVarint(dAtA, i, uint64((uint32(m.AltitudeHae)<<1)^uint32((m.AltitudeHae>>31))))
+ if m.AltitudeHae != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64((uint32(*m.AltitudeHae)<<1)^uint32((*m.AltitudeHae>>31))))
i--
dAtA[i] = 0x48
}
@@ -168,20 +168,20 @@ func (m *Position) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i--
dAtA[i] = 0x25
}
- if m.Altitude != 0 {
- i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Altitude))
+ if m.Altitude != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.Altitude))
i--
dAtA[i] = 0x18
}
- if m.LongitudeI != 0 {
+ if m.LongitudeI != nil {
i -= 4
- binary.LittleEndian.PutUint32(dAtA[i:], uint32(m.LongitudeI))
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(*m.LongitudeI))
i--
dAtA[i] = 0x15
}
- if m.LatitudeI != 0 {
+ if m.LatitudeI != nil {
i -= 4
- binary.LittleEndian.PutUint32(dAtA[i:], uint32(m.LatitudeI))
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(*m.LatitudeI))
i--
dAtA[i] = 0xd
}
@@ -218,6 +218,23 @@ func (m *User) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
+ if m.IsUnmessagable != nil {
+ i--
+ if *m.IsUnmessagable {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x48
+ }
+ if len(m.PublicKey) > 0 {
+ i -= len(m.PublicKey)
+ copy(dAtA[i:], m.PublicKey)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.PublicKey)))
+ i--
+ dAtA[i] = 0x42
+ }
if m.Role != 0 {
i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Role))
i--
@@ -299,6 +316,57 @@ func (m *RouteDiscovery) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
+ if len(m.SnrBack) > 0 {
+ var pksize2 int
+ for _, num := range m.SnrBack {
+ pksize2 += protohelpers.SizeOfVarint(uint64(num))
+ }
+ i -= pksize2
+ j1 := i
+ for _, num1 := range m.SnrBack {
+ num := uint64(num1)
+ for num >= 1<<7 {
+ dAtA[j1] = uint8(uint64(num)&0x7f | 0x80)
+ num >>= 7
+ j1++
+ }
+ dAtA[j1] = uint8(num)
+ j1++
+ }
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(pksize2))
+ i--
+ dAtA[i] = 0x22
+ }
+ if len(m.RouteBack) > 0 {
+ for iNdEx := len(m.RouteBack) - 1; iNdEx >= 0; iNdEx-- {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(m.RouteBack[iNdEx]))
+ }
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.RouteBack)*4))
+ i--
+ dAtA[i] = 0x1a
+ }
+ if len(m.SnrTowards) > 0 {
+ var pksize4 int
+ for _, num := range m.SnrTowards {
+ pksize4 += protohelpers.SizeOfVarint(uint64(num))
+ }
+ i -= pksize4
+ j3 := i
+ for _, num1 := range m.SnrTowards {
+ num := uint64(num1)
+ for num >= 1<<7 {
+ dAtA[j3] = uint8(uint64(num)&0x7f | 0x80)
+ num >>= 7
+ j3++
+ }
+ dAtA[j3] = uint8(num)
+ j3++
+ }
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(pksize4))
+ i--
+ dAtA[i] = 0x12
+ }
if len(m.Route) > 0 {
for iNdEx := len(m.Route) - 1; iNdEx >= 0; iNdEx-- {
i -= 4
@@ -433,6 +501,11 @@ func (m *Data) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
+ if m.Bitfield != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.Bitfield))
+ i--
+ dAtA[i] = 0x48
+ }
if m.Emoji != 0 {
i -= 4
binary.LittleEndian.PutUint32(dAtA[i:], uint32(m.Emoji))
@@ -488,6 +561,58 @@ func (m *Data) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
return len(dAtA) - i, nil
}
+func (m *KeyVerification) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *KeyVerification) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *KeyVerification) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if len(m.Hash2) > 0 {
+ i -= len(m.Hash2)
+ copy(dAtA[i:], m.Hash2)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.Hash2)))
+ i--
+ dAtA[i] = 0x1a
+ }
+ if len(m.Hash1) > 0 {
+ i -= len(m.Hash1)
+ copy(dAtA[i:], m.Hash1)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.Hash1)))
+ i--
+ dAtA[i] = 0x12
+ }
+ if m.Nonce != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Nonce))
+ i--
+ dAtA[i] = 0x8
+ }
+ return len(dAtA) - i, nil
+}
+
func (m *Waypoint) MarshalVT() (dAtA []byte, err error) {
if m == nil {
return nil, nil
@@ -548,15 +673,15 @@ func (m *Waypoint) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i--
dAtA[i] = 0x20
}
- if m.LongitudeI != 0 {
+ if m.LongitudeI != nil {
i -= 4
- binary.LittleEndian.PutUint32(dAtA[i:], uint32(m.LongitudeI))
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(*m.LongitudeI))
i--
dAtA[i] = 0x1d
}
- if m.LatitudeI != 0 {
+ if m.LatitudeI != nil {
i -= 4
- binary.LittleEndian.PutUint32(dAtA[i:], uint32(m.LatitudeI))
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(*m.LatitudeI))
i--
dAtA[i] = 0x15
}
@@ -694,6 +819,53 @@ func (m *MeshPacket) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
}
i -= size
}
+ if m.TxAfter != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.TxAfter))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0xa0
+ }
+ if m.RelayNode != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.RelayNode))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0x98
+ }
+ if m.NextHop != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.NextHop))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0x90
+ }
+ if m.PkiEncrypted {
+ i--
+ if m.PkiEncrypted {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0x88
+ }
+ if len(m.PublicKey) > 0 {
+ i -= len(m.PublicKey)
+ copy(dAtA[i:], m.PublicKey)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.PublicKey)))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0x82
+ }
+ if m.HopStart != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.HopStart))
+ i--
+ dAtA[i] = 0x78
+ }
if m.ViaMqtt {
i--
if m.ViaMqtt {
@@ -835,6 +1007,51 @@ func (m *NodeInfo) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
+ if m.IsKeyManuallyVerified {
+ i--
+ if m.IsKeyManuallyVerified {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x60
+ }
+ if m.IsIgnored {
+ i--
+ if m.IsIgnored {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x58
+ }
+ if m.IsFavorite {
+ i--
+ if m.IsFavorite {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x50
+ }
+ if m.HopsAway != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.HopsAway))
+ i--
+ dAtA[i] = 0x48
+ }
+ if m.ViaMqtt {
+ i--
+ if m.ViaMqtt {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x40
+ }
if m.Channel != 0 {
i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Channel))
i--
@@ -920,6 +1137,20 @@ func (m *MyNodeInfo) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
+ if len(m.PioEnv) > 0 {
+ i -= len(m.PioEnv)
+ copy(dAtA[i:], m.PioEnv)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.PioEnv)))
+ i--
+ dAtA[i] = 0x6a
+ }
+ if len(m.DeviceId) > 0 {
+ i -= len(m.DeviceId)
+ copy(dAtA[i:], m.DeviceId)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.DeviceId)))
+ i--
+ dAtA[i] = 0x62
+ }
if m.MinAppVersion != 0 {
i = protohelpers.EncodeVarint(dAtA, i, uint64(m.MinAppVersion))
i--
@@ -1334,6 +1565,391 @@ func (m *FromRadio_MqttClientProxyMessage) MarshalToSizedBufferVT(dAtA []byte) (
}
return len(dAtA) - i, nil
}
+func (m *FromRadio_FileInfo) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *FromRadio_FileInfo) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ if m.FileInfo != nil {
+ size, err := m.FileInfo.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x7a
+ }
+ return len(dAtA) - i, nil
+}
+func (m *FromRadio_ClientNotification) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *FromRadio_ClientNotification) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ if m.ClientNotification != nil {
+ size, err := m.ClientNotification.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0x82
+ }
+ return len(dAtA) - i, nil
+}
+func (m *FromRadio_DeviceuiConfig) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *FromRadio_DeviceuiConfig) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ if m.DeviceuiConfig != nil {
+ size, err := m.DeviceuiConfig.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0x8a
+ }
+ return len(dAtA) - i, nil
+}
+func (m *ClientNotification) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *ClientNotification) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *ClientNotification) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if vtmsg, ok := m.PayloadVariant.(interface {
+ MarshalToSizedBufferVT([]byte) (int, error)
+ }); ok {
+ size, err := vtmsg.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ }
+ if len(m.Message) > 0 {
+ i -= len(m.Message)
+ copy(dAtA[i:], m.Message)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.Message)))
+ i--
+ dAtA[i] = 0x22
+ }
+ if m.Level != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Level))
+ i--
+ dAtA[i] = 0x18
+ }
+ if m.Time != 0 {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(m.Time))
+ i--
+ dAtA[i] = 0x15
+ }
+ if m.ReplyId != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.ReplyId))
+ i--
+ dAtA[i] = 0x8
+ }
+ return len(dAtA) - i, nil
+}
+
+func (m *ClientNotification_KeyVerificationNumberInform) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *ClientNotification_KeyVerificationNumberInform) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ if m.KeyVerificationNumberInform != nil {
+ size, err := m.KeyVerificationNumberInform.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x5a
+ }
+ return len(dAtA) - i, nil
+}
+func (m *ClientNotification_KeyVerificationNumberRequest) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *ClientNotification_KeyVerificationNumberRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ if m.KeyVerificationNumberRequest != nil {
+ size, err := m.KeyVerificationNumberRequest.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x62
+ }
+ return len(dAtA) - i, nil
+}
+func (m *ClientNotification_KeyVerificationFinal) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *ClientNotification_KeyVerificationFinal) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ if m.KeyVerificationFinal != nil {
+ size, err := m.KeyVerificationFinal.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x6a
+ }
+ return len(dAtA) - i, nil
+}
+func (m *KeyVerificationNumberInform) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *KeyVerificationNumberInform) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *KeyVerificationNumberInform) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if m.SecurityNumber != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.SecurityNumber))
+ i--
+ dAtA[i] = 0x18
+ }
+ if len(m.RemoteLongname) > 0 {
+ i -= len(m.RemoteLongname)
+ copy(dAtA[i:], m.RemoteLongname)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.RemoteLongname)))
+ i--
+ dAtA[i] = 0x12
+ }
+ if m.Nonce != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Nonce))
+ i--
+ dAtA[i] = 0x8
+ }
+ return len(dAtA) - i, nil
+}
+
+func (m *KeyVerificationNumberRequest) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *KeyVerificationNumberRequest) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *KeyVerificationNumberRequest) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if len(m.RemoteLongname) > 0 {
+ i -= len(m.RemoteLongname)
+ copy(dAtA[i:], m.RemoteLongname)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.RemoteLongname)))
+ i--
+ dAtA[i] = 0x12
+ }
+ if m.Nonce != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Nonce))
+ i--
+ dAtA[i] = 0x8
+ }
+ return len(dAtA) - i, nil
+}
+
+func (m *KeyVerificationFinal) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *KeyVerificationFinal) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *KeyVerificationFinal) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if len(m.VerificationCharacters) > 0 {
+ i -= len(m.VerificationCharacters)
+ copy(dAtA[i:], m.VerificationCharacters)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.VerificationCharacters)))
+ i--
+ dAtA[i] = 0x22
+ }
+ if m.IsSender {
+ i--
+ if m.IsSender {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x18
+ }
+ if len(m.RemoteLongname) > 0 {
+ i -= len(m.RemoteLongname)
+ copy(dAtA[i:], m.RemoteLongname)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.RemoteLongname)))
+ i--
+ dAtA[i] = 0x12
+ }
+ if m.Nonce != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Nonce))
+ i--
+ dAtA[i] = 0x8
+ }
+ return len(dAtA) - i, nil
+}
+
+func (m *FileInfo) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *FileInfo) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *FileInfo) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if m.SizeBytes != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.SizeBytes))
+ i--
+ dAtA[i] = 0x10
+ }
+ if len(m.FileName) > 0 {
+ i -= len(m.FileName)
+ copy(dAtA[i:], m.FileName)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.FileName)))
+ i--
+ dAtA[i] = 0xa
+ }
+ return len(dAtA) - i, nil
+}
+
func (m *ToRadio) MarshalVT() (dAtA []byte, err error) {
if m == nil {
return nil, nil
@@ -1462,6 +2078,25 @@ func (m *ToRadio_MqttClientProxyMessage) MarshalToSizedBufferVT(dAtA []byte) (in
}
return len(dAtA) - i, nil
}
+func (m *ToRadio_Heartbeat) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *ToRadio_Heartbeat) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ if m.Heartbeat != nil {
+ size, err := m.Heartbeat.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x3a
+ }
+ return len(dAtA) - i, nil
+}
func (m *Compressed) MarshalVT() (dAtA []byte, err error) {
if m == nil {
return nil, nil
@@ -1652,6 +2287,21 @@ func (m *DeviceMetadata) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
+ if m.ExcludedModules != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.ExcludedModules))
+ i--
+ dAtA[i] = 0x60
+ }
+ if m.HasPKC {
+ i--
+ if m.HasPKC {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x58
+ }
if m.HasRemoteHardware {
i--
if m.HasRemoteHardware {
@@ -1732,20 +2382,309 @@ func (m *DeviceMetadata) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
return len(dAtA) - i, nil
}
+func (m *Heartbeat) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *Heartbeat) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *Heartbeat) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ return len(dAtA) - i, nil
+}
+
+func (m *NodeRemoteHardwarePin) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *NodeRemoteHardwarePin) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *NodeRemoteHardwarePin) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if m.Pin != nil {
+ size, err := m.Pin.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x12
+ }
+ if m.NodeNum != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.NodeNum))
+ i--
+ dAtA[i] = 0x8
+ }
+ return len(dAtA) - i, nil
+}
+
+func (m *ChunkedPayload) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *ChunkedPayload) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *ChunkedPayload) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if len(m.PayloadChunk) > 0 {
+ i -= len(m.PayloadChunk)
+ copy(dAtA[i:], m.PayloadChunk)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.PayloadChunk)))
+ i--
+ dAtA[i] = 0x22
+ }
+ if m.ChunkIndex != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.ChunkIndex))
+ i--
+ dAtA[i] = 0x18
+ }
+ if m.ChunkCount != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.ChunkCount))
+ i--
+ dAtA[i] = 0x10
+ }
+ if m.PayloadId != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.PayloadId))
+ i--
+ dAtA[i] = 0x8
+ }
+ return len(dAtA) - i, nil
+}
+
+func (m *ResendChunks) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *ResendChunks) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *ResendChunks) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if len(m.Chunks) > 0 {
+ var pksize2 int
+ for _, num := range m.Chunks {
+ pksize2 += protohelpers.SizeOfVarint(uint64(num))
+ }
+ i -= pksize2
+ j1 := i
+ for _, num := range m.Chunks {
+ for num >= 1<<7 {
+ dAtA[j1] = uint8(uint64(num)&0x7f | 0x80)
+ num >>= 7
+ j1++
+ }
+ dAtA[j1] = uint8(num)
+ j1++
+ }
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(pksize2))
+ i--
+ dAtA[i] = 0xa
+ }
+ return len(dAtA) - i, nil
+}
+
+func (m *ChunkedPayloadResponse) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *ChunkedPayloadResponse) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *ChunkedPayloadResponse) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if vtmsg, ok := m.PayloadVariant.(interface {
+ MarshalToSizedBufferVT([]byte) (int, error)
+ }); ok {
+ size, err := vtmsg.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ }
+ if m.PayloadId != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.PayloadId))
+ i--
+ dAtA[i] = 0x8
+ }
+ return len(dAtA) - i, nil
+}
+
+func (m *ChunkedPayloadResponse_RequestTransfer) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *ChunkedPayloadResponse_RequestTransfer) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ i--
+ if m.RequestTransfer {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x10
+ return len(dAtA) - i, nil
+}
+func (m *ChunkedPayloadResponse_AcceptTransfer) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *ChunkedPayloadResponse_AcceptTransfer) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ i--
+ if m.AcceptTransfer {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x18
+ return len(dAtA) - i, nil
+}
+func (m *ChunkedPayloadResponse_ResendChunks) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *ChunkedPayloadResponse_ResendChunks) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ if m.ResendChunks != nil {
+ size, err := m.ResendChunks.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x22
+ }
+ return len(dAtA) - i, nil
+}
func (m *Position) SizeVT() (n int) {
if m == nil {
return 0
}
var l int
_ = l
- if m.LatitudeI != 0 {
+ if m.LatitudeI != nil {
n += 5
}
- if m.LongitudeI != 0 {
+ if m.LongitudeI != nil {
n += 5
}
- if m.Altitude != 0 {
- n += 1 + protohelpers.SizeOfVarint(uint64(m.Altitude))
+ if m.Altitude != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.Altitude))
}
if m.Time != 0 {
n += 5
@@ -1762,11 +2701,11 @@ func (m *Position) SizeVT() (n int) {
if m.TimestampMillisAdjust != 0 {
n += 1 + protohelpers.SizeOfVarint(uint64(m.TimestampMillisAdjust))
}
- if m.AltitudeHae != 0 {
- n += 1 + protohelpers.SizeOfZigzag(uint64(m.AltitudeHae))
+ if m.AltitudeHae != nil {
+ n += 1 + protohelpers.SizeOfZigzag(uint64(*m.AltitudeHae))
}
- if m.AltitudeGeoidalSeparation != 0 {
- n += 1 + protohelpers.SizeOfZigzag(uint64(m.AltitudeGeoidalSeparation))
+ if m.AltitudeGeoidalSeparation != nil {
+ n += 1 + protohelpers.SizeOfZigzag(uint64(*m.AltitudeGeoidalSeparation))
}
if m.PDOP != 0 {
n += 1 + protohelpers.SizeOfVarint(uint64(m.PDOP))
@@ -1780,11 +2719,11 @@ func (m *Position) SizeVT() (n int) {
if m.GpsAccuracy != 0 {
n += 1 + protohelpers.SizeOfVarint(uint64(m.GpsAccuracy))
}
- if m.GroundSpeed != 0 {
- n += 1 + protohelpers.SizeOfVarint(uint64(m.GroundSpeed))
+ if m.GroundSpeed != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.GroundSpeed))
}
- if m.GroundTrack != 0 {
- n += 2 + protohelpers.SizeOfVarint(uint64(m.GroundTrack))
+ if m.GroundTrack != nil {
+ n += 2 + protohelpers.SizeOfVarint(uint64(*m.GroundTrack))
}
if m.FixQuality != 0 {
n += 2 + protohelpers.SizeOfVarint(uint64(m.FixQuality))
@@ -1842,6 +2781,13 @@ func (m *User) SizeVT() (n int) {
if m.Role != 0 {
n += 1 + protohelpers.SizeOfVarint(uint64(m.Role))
}
+ l = len(m.PublicKey)
+ if l > 0 {
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ if m.IsUnmessagable != nil {
+ n += 2
+ }
n += len(m.unknownFields)
return n
}
@@ -1855,6 +2801,23 @@ func (m *RouteDiscovery) SizeVT() (n int) {
if len(m.Route) > 0 {
n += 1 + protohelpers.SizeOfVarint(uint64(len(m.Route)*4)) + len(m.Route)*4
}
+ if len(m.SnrTowards) > 0 {
+ l = 0
+ for _, e := range m.SnrTowards {
+ l += protohelpers.SizeOfVarint(uint64(e))
+ }
+ n += 1 + protohelpers.SizeOfVarint(uint64(l)) + l
+ }
+ if len(m.RouteBack) > 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(len(m.RouteBack)*4)) + len(m.RouteBack)*4
+ }
+ if len(m.SnrBack) > 0 {
+ l = 0
+ for _, e := range m.SnrBack {
+ l += protohelpers.SizeOfVarint(uint64(e))
+ }
+ n += 1 + protohelpers.SizeOfVarint(uint64(l)) + l
+ }
n += len(m.unknownFields)
return n
}
@@ -1936,6 +2899,30 @@ func (m *Data) SizeVT() (n int) {
if m.Emoji != 0 {
n += 5
}
+ if m.Bitfield != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.Bitfield))
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *KeyVerification) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.Nonce != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Nonce))
+ }
+ l = len(m.Hash1)
+ if l > 0 {
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ l = len(m.Hash2)
+ if l > 0 {
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
n += len(m.unknownFields)
return n
}
@@ -1949,10 +2936,10 @@ func (m *Waypoint) SizeVT() (n int) {
if m.Id != 0 {
n += 1 + protohelpers.SizeOfVarint(uint64(m.Id))
}
- if m.LatitudeI != 0 {
+ if m.LatitudeI != nil {
n += 5
}
- if m.LongitudeI != 0 {
+ if m.LongitudeI != nil {
n += 5
}
if m.Expire != 0 {
@@ -2061,6 +3048,25 @@ func (m *MeshPacket) SizeVT() (n int) {
if m.ViaMqtt {
n += 2
}
+ if m.HopStart != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.HopStart))
+ }
+ l = len(m.PublicKey)
+ if l > 0 {
+ n += 2 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ if m.PkiEncrypted {
+ n += 3
+ }
+ if m.NextHop != 0 {
+ n += 2 + protohelpers.SizeOfVarint(uint64(m.NextHop))
+ }
+ if m.RelayNode != 0 {
+ n += 2 + protohelpers.SizeOfVarint(uint64(m.RelayNode))
+ }
+ if m.TxAfter != 0 {
+ n += 2 + protohelpers.SizeOfVarint(uint64(m.TxAfter))
+ }
n += len(m.unknownFields)
return n
}
@@ -2117,6 +3123,21 @@ func (m *NodeInfo) SizeVT() (n int) {
if m.Channel != 0 {
n += 1 + protohelpers.SizeOfVarint(uint64(m.Channel))
}
+ if m.ViaMqtt {
+ n += 2
+ }
+ if m.HopsAway != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.HopsAway))
+ }
+ if m.IsFavorite {
+ n += 2
+ }
+ if m.IsIgnored {
+ n += 2
+ }
+ if m.IsKeyManuallyVerified {
+ n += 2
+ }
n += len(m.unknownFields)
return n
}
@@ -2136,6 +3157,14 @@ func (m *MyNodeInfo) SizeVT() (n int) {
if m.MinAppVersion != 0 {
n += 1 + protohelpers.SizeOfVarint(uint64(m.MinAppVersion))
}
+ l = len(m.DeviceId)
+ if l > 0 {
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ l = len(m.PioEnv)
+ if l > 0 {
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
n += len(m.unknownFields)
return n
}
@@ -2352,6 +3381,182 @@ func (m *FromRadio_MqttClientProxyMessage) SizeVT() (n int) {
}
return n
}
+func (m *FromRadio_FileInfo) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.FileInfo != nil {
+ l = m.FileInfo.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ return n
+}
+func (m *FromRadio_ClientNotification) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.ClientNotification != nil {
+ l = m.ClientNotification.SizeVT()
+ n += 2 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ return n
+}
+func (m *FromRadio_DeviceuiConfig) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.DeviceuiConfig != nil {
+ l = m.DeviceuiConfig.SizeVT()
+ n += 2 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ return n
+}
+func (m *ClientNotification) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.ReplyId != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.ReplyId))
+ }
+ if m.Time != 0 {
+ n += 5
+ }
+ if m.Level != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Level))
+ }
+ l = len(m.Message)
+ if l > 0 {
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ if vtmsg, ok := m.PayloadVariant.(interface{ SizeVT() int }); ok {
+ n += vtmsg.SizeVT()
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *ClientNotification_KeyVerificationNumberInform) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.KeyVerificationNumberInform != nil {
+ l = m.KeyVerificationNumberInform.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ return n
+}
+func (m *ClientNotification_KeyVerificationNumberRequest) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.KeyVerificationNumberRequest != nil {
+ l = m.KeyVerificationNumberRequest.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ return n
+}
+func (m *ClientNotification_KeyVerificationFinal) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.KeyVerificationFinal != nil {
+ l = m.KeyVerificationFinal.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ return n
+}
+func (m *KeyVerificationNumberInform) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.Nonce != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Nonce))
+ }
+ l = len(m.RemoteLongname)
+ if l > 0 {
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ if m.SecurityNumber != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.SecurityNumber))
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *KeyVerificationNumberRequest) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.Nonce != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Nonce))
+ }
+ l = len(m.RemoteLongname)
+ if l > 0 {
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *KeyVerificationFinal) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.Nonce != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Nonce))
+ }
+ l = len(m.RemoteLongname)
+ if l > 0 {
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ if m.IsSender {
+ n += 2
+ }
+ l = len(m.VerificationCharacters)
+ if l > 0 {
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *FileInfo) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ l = len(m.FileName)
+ if l > 0 {
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ if m.SizeBytes != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.SizeBytes))
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
func (m *ToRadio) SizeVT() (n int) {
if m == nil {
return 0
@@ -2419,6 +3624,18 @@ func (m *ToRadio_MqttClientProxyMessage) SizeVT() (n int) {
}
return n
}
+func (m *ToRadio_Heartbeat) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.Heartbeat != nil {
+ l = m.Heartbeat.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ return n
+}
func (m *Compressed) SizeVT() (n int) {
if m == nil {
return 0
@@ -2520,10 +3737,129 @@ func (m *DeviceMetadata) SizeVT() (n int) {
if m.HasRemoteHardware {
n += 2
}
+ if m.HasPKC {
+ n += 2
+ }
+ if m.ExcludedModules != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.ExcludedModules))
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *Heartbeat) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *NodeRemoteHardwarePin) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.NodeNum != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.NodeNum))
+ }
+ if m.Pin != nil {
+ l = m.Pin.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
n += len(m.unknownFields)
return n
}
+func (m *ChunkedPayload) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.PayloadId != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.PayloadId))
+ }
+ if m.ChunkCount != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.ChunkCount))
+ }
+ if m.ChunkIndex != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.ChunkIndex))
+ }
+ l = len(m.PayloadChunk)
+ if l > 0 {
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *ResendChunks) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if len(m.Chunks) > 0 {
+ l = 0
+ for _, e := range m.Chunks {
+ l += protohelpers.SizeOfVarint(uint64(e))
+ }
+ n += 1 + protohelpers.SizeOfVarint(uint64(l)) + l
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *ChunkedPayloadResponse) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.PayloadId != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.PayloadId))
+ }
+ if vtmsg, ok := m.PayloadVariant.(interface{ SizeVT() int }); ok {
+ n += vtmsg.SizeVT()
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *ChunkedPayloadResponse_RequestTransfer) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ n += 2
+ return n
+}
+func (m *ChunkedPayloadResponse_AcceptTransfer) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ n += 2
+ return n
+}
+func (m *ChunkedPayloadResponse_ResendChunks) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.ResendChunks != nil {
+ l = m.ResendChunks.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ return n
+}
func (m *Position) UnmarshalVT(dAtA []byte) error {
l := len(dAtA)
iNdEx := 0
@@ -2557,27 +3893,29 @@ func (m *Position) UnmarshalVT(dAtA []byte) error {
if wireType != 5 {
return fmt.Errorf("proto: wrong wireType = %d for field LatitudeI", wireType)
}
- m.LatitudeI = 0
+ var v int32
if (iNdEx + 4) > l {
return io.ErrUnexpectedEOF
}
- m.LatitudeI = int32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ v = int32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
iNdEx += 4
+ m.LatitudeI = &v
case 2:
if wireType != 5 {
return fmt.Errorf("proto: wrong wireType = %d for field LongitudeI", wireType)
}
- m.LongitudeI = 0
+ var v int32
if (iNdEx + 4) > l {
return io.ErrUnexpectedEOF
}
- m.LongitudeI = int32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ v = int32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
iNdEx += 4
+ m.LongitudeI = &v
case 3:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field Altitude", wireType)
}
- m.Altitude = 0
+ var v int32
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -2587,11 +3925,12 @@ func (m *Position) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- m.Altitude |= int32(b&0x7F) << shift
+ v |= int32(b&0x7F) << shift
if b < 0x80 {
break
}
}
+ m.Altitude = &v
case 4:
if wireType != 5 {
return fmt.Errorf("proto: wrong wireType = %d for field Time", wireType)
@@ -2689,7 +4028,7 @@ func (m *Position) UnmarshalVT(dAtA []byte) error {
}
}
v = int32((uint32(v) >> 1) ^ uint32(((v&1)<<31)>>31))
- m.AltitudeHae = v
+ m.AltitudeHae = &v
case 10:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field AltitudeGeoidalSeparation", wireType)
@@ -2710,7 +4049,7 @@ func (m *Position) UnmarshalVT(dAtA []byte) error {
}
}
v = int32((uint32(v) >> 1) ^ uint32(((v&1)<<31)>>31))
- m.AltitudeGeoidalSeparation = v
+ m.AltitudeGeoidalSeparation = &v
case 11:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field PDOP", wireType)
@@ -2791,7 +4130,7 @@ func (m *Position) UnmarshalVT(dAtA []byte) error {
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field GroundSpeed", wireType)
}
- m.GroundSpeed = 0
+ var v uint32
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -2801,16 +4140,17 @@ func (m *Position) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- m.GroundSpeed |= uint32(b&0x7F) << shift
+ v |= uint32(b&0x7F) << shift
if b < 0x80 {
break
}
}
+ m.GroundSpeed = &v
case 16:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field GroundTrack", wireType)
}
- m.GroundTrack = 0
+ var v uint32
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -2820,11 +4160,12 @@ func (m *Position) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- m.GroundTrack |= uint32(b&0x7F) << shift
+ v |= uint32(b&0x7F) << shift
if b < 0x80 {
break
}
}
+ m.GroundTrack = &v
case 17:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field FixQuality", wireType)
@@ -3197,6 +4538,61 @@ func (m *User) UnmarshalVT(dAtA []byte) error {
break
}
}
+ case 8:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field PublicKey", wireType)
+ }
+ var byteLen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ byteLen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if byteLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + byteLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.PublicKey = append(m.PublicKey[:0], dAtA[iNdEx:postIndex]...)
+ if m.PublicKey == nil {
+ m.PublicKey = []byte{}
+ }
+ iNdEx = postIndex
+ case 9:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field IsUnmessagable", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ b := bool(v != 0)
+ m.IsUnmessagable = &b
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
@@ -3300,6 +4696,210 @@ func (m *RouteDiscovery) UnmarshalVT(dAtA []byte) error {
} else {
return fmt.Errorf("proto: wrong wireType = %d for field Route", wireType)
}
+ case 2:
+ if wireType == 0 {
+ var v int32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.SnrTowards = append(m.SnrTowards, v)
+ } else if wireType == 2 {
+ var packedLen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ packedLen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if packedLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + packedLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ var elementCount int
+ var count int
+ for _, integer := range dAtA[iNdEx:postIndex] {
+ if integer < 128 {
+ count++
+ }
+ }
+ elementCount = count
+ if elementCount != 0 && len(m.SnrTowards) == 0 {
+ m.SnrTowards = make([]int32, 0, elementCount)
+ }
+ for iNdEx < postIndex {
+ var v int32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.SnrTowards = append(m.SnrTowards, v)
+ }
+ } else {
+ return fmt.Errorf("proto: wrong wireType = %d for field SnrTowards", wireType)
+ }
+ case 3:
+ if wireType == 5 {
+ var v uint32
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ m.RouteBack = append(m.RouteBack, v)
+ } else if wireType == 2 {
+ var packedLen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ packedLen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if packedLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + packedLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ var elementCount int
+ elementCount = packedLen / 4
+ if elementCount != 0 && len(m.RouteBack) == 0 {
+ m.RouteBack = make([]uint32, 0, elementCount)
+ }
+ for iNdEx < postIndex {
+ var v uint32
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ m.RouteBack = append(m.RouteBack, v)
+ }
+ } else {
+ return fmt.Errorf("proto: wrong wireType = %d for field RouteBack", wireType)
+ }
+ case 4:
+ if wireType == 0 {
+ var v int32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.SnrBack = append(m.SnrBack, v)
+ } else if wireType == 2 {
+ var packedLen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ packedLen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if packedLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + packedLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ var elementCount int
+ var count int
+ for _, integer := range dAtA[iNdEx:postIndex] {
+ if integer < 128 {
+ count++
+ }
+ }
+ elementCount = count
+ if elementCount != 0 && len(m.SnrBack) == 0 {
+ m.SnrBack = make([]int32, 0, elementCount)
+ }
+ for iNdEx < postIndex {
+ var v int32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.SnrBack = append(m.SnrBack, v)
+ }
+ } else {
+ return fmt.Errorf("proto: wrong wireType = %d for field SnrBack", wireType)
+ }
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
@@ -3627,6 +5227,164 @@ func (m *Data) UnmarshalVT(dAtA []byte) error {
}
m.Emoji = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
iNdEx += 4
+ case 9:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Bitfield", wireType)
+ }
+ var v uint32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.Bitfield = &v
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *KeyVerification) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: KeyVerification: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: KeyVerification: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Nonce", wireType)
+ }
+ m.Nonce = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.Nonce |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 2:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Hash1", wireType)
+ }
+ var byteLen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ byteLen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if byteLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + byteLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.Hash1 = append(m.Hash1[:0], dAtA[iNdEx:postIndex]...)
+ if m.Hash1 == nil {
+ m.Hash1 = []byte{}
+ }
+ iNdEx = postIndex
+ case 3:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Hash2", wireType)
+ }
+ var byteLen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ byteLen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if byteLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + byteLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.Hash2 = append(m.Hash2[:0], dAtA[iNdEx:postIndex]...)
+ if m.Hash2 == nil {
+ m.Hash2 = []byte{}
+ }
+ iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
@@ -3701,22 +5459,24 @@ func (m *Waypoint) UnmarshalVT(dAtA []byte) error {
if wireType != 5 {
return fmt.Errorf("proto: wrong wireType = %d for field LatitudeI", wireType)
}
- m.LatitudeI = 0
+ var v int32
if (iNdEx + 4) > l {
return io.ErrUnexpectedEOF
}
- m.LatitudeI = int32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ v = int32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
iNdEx += 4
+ m.LatitudeI = &v
case 3:
if wireType != 5 {
return fmt.Errorf("proto: wrong wireType = %d for field LongitudeI", wireType)
}
- m.LongitudeI = 0
+ var v int32
if (iNdEx + 4) > l {
return io.ErrUnexpectedEOF
}
- m.LongitudeI = int32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ v = int32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
iNdEx += 4
+ m.LongitudeI = &v
case 4:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field Expire", wireType)
@@ -4308,6 +6068,136 @@ func (m *MeshPacket) UnmarshalVT(dAtA []byte) error {
}
}
m.ViaMqtt = bool(v != 0)
+ case 15:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field HopStart", wireType)
+ }
+ m.HopStart = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.HopStart |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 16:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field PublicKey", wireType)
+ }
+ var byteLen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ byteLen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if byteLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + byteLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.PublicKey = append(m.PublicKey[:0], dAtA[iNdEx:postIndex]...)
+ if m.PublicKey == nil {
+ m.PublicKey = []byte{}
+ }
+ iNdEx = postIndex
+ case 17:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field PkiEncrypted", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.PkiEncrypted = bool(v != 0)
+ case 18:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field NextHop", wireType)
+ }
+ m.NextHop = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.NextHop |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 19:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field RelayNode", wireType)
+ }
+ m.RelayNode = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.RelayNode |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 20:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field TxAfter", wireType)
+ }
+ m.TxAfter = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.TxAfter |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
@@ -4526,6 +6416,106 @@ func (m *NodeInfo) UnmarshalVT(dAtA []byte) error {
break
}
}
+ case 8:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field ViaMqtt", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.ViaMqtt = bool(v != 0)
+ case 9:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field HopsAway", wireType)
+ }
+ var v uint32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.HopsAway = &v
+ case 10:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field IsFavorite", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.IsFavorite = bool(v != 0)
+ case 11:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field IsIgnored", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.IsIgnored = bool(v != 0)
+ case 12:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field IsKeyManuallyVerified", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.IsKeyManuallyVerified = bool(v != 0)
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
@@ -4634,6 +6624,72 @@ func (m *MyNodeInfo) UnmarshalVT(dAtA []byte) error {
break
}
}
+ case 12:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field DeviceId", wireType)
+ }
+ var byteLen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ byteLen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if byteLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + byteLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.DeviceId = append(m.DeviceId[:0], dAtA[iNdEx:postIndex]...)
+ if m.DeviceId == nil {
+ m.DeviceId = []byte{}
+ }
+ iNdEx = postIndex
+ case 13:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field PioEnv", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.PioEnv = string(dAtA[iNdEx:postIndex])
+ iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
@@ -5467,6 +7523,863 @@ func (m *FromRadio) UnmarshalVT(dAtA []byte) error {
m.PayloadVariant = &FromRadio_MqttClientProxyMessage{MqttClientProxyMessage: v}
}
iNdEx = postIndex
+ case 15:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field FileInfo", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if oneof, ok := m.PayloadVariant.(*FromRadio_FileInfo); ok {
+ if err := oneof.FileInfo.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ } else {
+ v := &FileInfo{}
+ if err := v.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ m.PayloadVariant = &FromRadio_FileInfo{FileInfo: v}
+ }
+ iNdEx = postIndex
+ case 16:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field ClientNotification", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if oneof, ok := m.PayloadVariant.(*FromRadio_ClientNotification); ok {
+ if err := oneof.ClientNotification.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ } else {
+ v := &ClientNotification{}
+ if err := v.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ m.PayloadVariant = &FromRadio_ClientNotification{ClientNotification: v}
+ }
+ iNdEx = postIndex
+ case 17:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field DeviceuiConfig", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if oneof, ok := m.PayloadVariant.(*FromRadio_DeviceuiConfig); ok {
+ if err := oneof.DeviceuiConfig.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ } else {
+ v := &DeviceUIConfig{}
+ if err := v.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ m.PayloadVariant = &FromRadio_DeviceuiConfig{DeviceuiConfig: v}
+ }
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *ClientNotification) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: ClientNotification: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: ClientNotification: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field ReplyId", wireType)
+ }
+ var v uint32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.ReplyId = &v
+ case 2:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Time", wireType)
+ }
+ m.Time = 0
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.Time = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ case 3:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Level", wireType)
+ }
+ m.Level = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.Level |= LogRecord_Level(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 4:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Message", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.Message = string(dAtA[iNdEx:postIndex])
+ iNdEx = postIndex
+ case 11:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field KeyVerificationNumberInform", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if oneof, ok := m.PayloadVariant.(*ClientNotification_KeyVerificationNumberInform); ok {
+ if err := oneof.KeyVerificationNumberInform.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ } else {
+ v := &KeyVerificationNumberInform{}
+ if err := v.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ m.PayloadVariant = &ClientNotification_KeyVerificationNumberInform{KeyVerificationNumberInform: v}
+ }
+ iNdEx = postIndex
+ case 12:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field KeyVerificationNumberRequest", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if oneof, ok := m.PayloadVariant.(*ClientNotification_KeyVerificationNumberRequest); ok {
+ if err := oneof.KeyVerificationNumberRequest.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ } else {
+ v := &KeyVerificationNumberRequest{}
+ if err := v.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ m.PayloadVariant = &ClientNotification_KeyVerificationNumberRequest{KeyVerificationNumberRequest: v}
+ }
+ iNdEx = postIndex
+ case 13:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field KeyVerificationFinal", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if oneof, ok := m.PayloadVariant.(*ClientNotification_KeyVerificationFinal); ok {
+ if err := oneof.KeyVerificationFinal.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ } else {
+ v := &KeyVerificationFinal{}
+ if err := v.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ m.PayloadVariant = &ClientNotification_KeyVerificationFinal{KeyVerificationFinal: v}
+ }
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *KeyVerificationNumberInform) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: KeyVerificationNumberInform: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: KeyVerificationNumberInform: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Nonce", wireType)
+ }
+ m.Nonce = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.Nonce |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 2:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field RemoteLongname", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.RemoteLongname = string(dAtA[iNdEx:postIndex])
+ iNdEx = postIndex
+ case 3:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field SecurityNumber", wireType)
+ }
+ m.SecurityNumber = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.SecurityNumber |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *KeyVerificationNumberRequest) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: KeyVerificationNumberRequest: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: KeyVerificationNumberRequest: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Nonce", wireType)
+ }
+ m.Nonce = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.Nonce |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 2:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field RemoteLongname", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.RemoteLongname = string(dAtA[iNdEx:postIndex])
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *KeyVerificationFinal) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: KeyVerificationFinal: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: KeyVerificationFinal: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Nonce", wireType)
+ }
+ m.Nonce = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.Nonce |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 2:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field RemoteLongname", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.RemoteLongname = string(dAtA[iNdEx:postIndex])
+ iNdEx = postIndex
+ case 3:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field IsSender", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.IsSender = bool(v != 0)
+ case 4:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field VerificationCharacters", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.VerificationCharacters = string(dAtA[iNdEx:postIndex])
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *FileInfo) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: FileInfo: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: FileInfo: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field FileName", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.FileName = string(dAtA[iNdEx:postIndex])
+ iNdEx = postIndex
+ case 2:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field SizeBytes", wireType)
+ }
+ m.SizeBytes = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.SizeBytes |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
@@ -5682,6 +8595,47 @@ func (m *ToRadio) UnmarshalVT(dAtA []byte) error {
m.PayloadVariant = &ToRadio_MqttClientProxyMessage{MqttClientProxyMessage: v}
}
iNdEx = postIndex
+ case 7:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Heartbeat", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if oneof, ok := m.PayloadVariant.(*ToRadio_Heartbeat); ok {
+ if err := oneof.Heartbeat.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ } else {
+ v := &Heartbeat{}
+ if err := v.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ m.PayloadVariant = &ToRadio_Heartbeat{Heartbeat: v}
+ }
+ iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
@@ -6297,6 +9251,624 @@ func (m *DeviceMetadata) UnmarshalVT(dAtA []byte) error {
}
}
m.HasRemoteHardware = bool(v != 0)
+ case 11:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field HasPKC", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.HasPKC = bool(v != 0)
+ case 12:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field ExcludedModules", wireType)
+ }
+ m.ExcludedModules = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.ExcludedModules |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *Heartbeat) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: Heartbeat: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: Heartbeat: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *NodeRemoteHardwarePin) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: NodeRemoteHardwarePin: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: NodeRemoteHardwarePin: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field NodeNum", wireType)
+ }
+ m.NodeNum = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.NodeNum |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 2:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Pin", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if m.Pin == nil {
+ m.Pin = &RemoteHardwarePin{}
+ }
+ if err := m.Pin.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *ChunkedPayload) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: ChunkedPayload: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: ChunkedPayload: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field PayloadId", wireType)
+ }
+ m.PayloadId = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.PayloadId |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 2:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field ChunkCount", wireType)
+ }
+ m.ChunkCount = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.ChunkCount |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 3:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field ChunkIndex", wireType)
+ }
+ m.ChunkIndex = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.ChunkIndex |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 4:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field PayloadChunk", wireType)
+ }
+ var byteLen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ byteLen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if byteLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + byteLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.PayloadChunk = append(m.PayloadChunk[:0], dAtA[iNdEx:postIndex]...)
+ if m.PayloadChunk == nil {
+ m.PayloadChunk = []byte{}
+ }
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *ResendChunks) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: ResendChunks: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: ResendChunks: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType == 0 {
+ var v uint32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.Chunks = append(m.Chunks, v)
+ } else if wireType == 2 {
+ var packedLen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ packedLen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if packedLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + packedLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ var elementCount int
+ var count int
+ for _, integer := range dAtA[iNdEx:postIndex] {
+ if integer < 128 {
+ count++
+ }
+ }
+ elementCount = count
+ if elementCount != 0 && len(m.Chunks) == 0 {
+ m.Chunks = make([]uint32, 0, elementCount)
+ }
+ for iNdEx < postIndex {
+ var v uint32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.Chunks = append(m.Chunks, v)
+ }
+ } else {
+ return fmt.Errorf("proto: wrong wireType = %d for field Chunks", wireType)
+ }
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *ChunkedPayloadResponse) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: ChunkedPayloadResponse: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: ChunkedPayloadResponse: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field PayloadId", wireType)
+ }
+ m.PayloadId = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.PayloadId |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 2:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field RequestTransfer", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ b := bool(v != 0)
+ m.PayloadVariant = &ChunkedPayloadResponse_RequestTransfer{RequestTransfer: b}
+ case 3:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field AcceptTransfer", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ b := bool(v != 0)
+ m.PayloadVariant = &ChunkedPayloadResponse_AcceptTransfer{AcceptTransfer: b}
+ case 4:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field ResendChunks", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if oneof, ok := m.PayloadVariant.(*ChunkedPayloadResponse_ResendChunks); ok {
+ if err := oneof.ResendChunks.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ } else {
+ v := &ResendChunks{}
+ if err := v.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ m.PayloadVariant = &ChunkedPayloadResponse_ResendChunks{ResendChunks: v}
+ }
+ iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
diff --git a/meshtastic/module_config.pb.go b/meshtastic/module_config.pb.go
index f080b5f..942a054 100644
--- a/meshtastic/module_config.pb.go
+++ b/meshtastic/module_config.pb.go
@@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.32.0
-// protoc v4.25.2
+// protoc-gen-go v1.36.6
+// protoc v3.21.12
// source: meshtastic/module_config.proto
package generated
@@ -11,6 +11,7 @@ import (
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
+ unsafe "unsafe"
)
const (
@@ -72,6 +73,72 @@ func (RemoteHardwarePinType) EnumDescriptor() ([]byte, []int) {
return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0}
}
+type ModuleConfig_DetectionSensorConfig_TriggerType int32
+
+const (
+ // Event is triggered if pin is low
+ ModuleConfig_DetectionSensorConfig_LOGIC_LOW ModuleConfig_DetectionSensorConfig_TriggerType = 0
+ // Event is triggered if pin is high
+ ModuleConfig_DetectionSensorConfig_LOGIC_HIGH ModuleConfig_DetectionSensorConfig_TriggerType = 1
+ // Event is triggered when pin goes high to low
+ ModuleConfig_DetectionSensorConfig_FALLING_EDGE ModuleConfig_DetectionSensorConfig_TriggerType = 2
+ // Event is triggered when pin goes low to high
+ ModuleConfig_DetectionSensorConfig_RISING_EDGE ModuleConfig_DetectionSensorConfig_TriggerType = 3
+ // Event is triggered on every pin state change, low is considered to be
+ // "active"
+ ModuleConfig_DetectionSensorConfig_EITHER_EDGE_ACTIVE_LOW ModuleConfig_DetectionSensorConfig_TriggerType = 4
+ // Event is triggered on every pin state change, high is considered to be
+ // "active"
+ ModuleConfig_DetectionSensorConfig_EITHER_EDGE_ACTIVE_HIGH ModuleConfig_DetectionSensorConfig_TriggerType = 5
+)
+
+// Enum value maps for ModuleConfig_DetectionSensorConfig_TriggerType.
+var (
+ ModuleConfig_DetectionSensorConfig_TriggerType_name = map[int32]string{
+ 0: "LOGIC_LOW",
+ 1: "LOGIC_HIGH",
+ 2: "FALLING_EDGE",
+ 3: "RISING_EDGE",
+ 4: "EITHER_EDGE_ACTIVE_LOW",
+ 5: "EITHER_EDGE_ACTIVE_HIGH",
+ }
+ ModuleConfig_DetectionSensorConfig_TriggerType_value = map[string]int32{
+ "LOGIC_LOW": 0,
+ "LOGIC_HIGH": 1,
+ "FALLING_EDGE": 2,
+ "RISING_EDGE": 3,
+ "EITHER_EDGE_ACTIVE_LOW": 4,
+ "EITHER_EDGE_ACTIVE_HIGH": 5,
+ }
+)
+
+func (x ModuleConfig_DetectionSensorConfig_TriggerType) Enum() *ModuleConfig_DetectionSensorConfig_TriggerType {
+ p := new(ModuleConfig_DetectionSensorConfig_TriggerType)
+ *p = x
+ return p
+}
+
+func (x ModuleConfig_DetectionSensorConfig_TriggerType) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (ModuleConfig_DetectionSensorConfig_TriggerType) Descriptor() protoreflect.EnumDescriptor {
+ return file_meshtastic_module_config_proto_enumTypes[1].Descriptor()
+}
+
+func (ModuleConfig_DetectionSensorConfig_TriggerType) Type() protoreflect.EnumType {
+ return &file_meshtastic_module_config_proto_enumTypes[1]
+}
+
+func (x ModuleConfig_DetectionSensorConfig_TriggerType) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use ModuleConfig_DetectionSensorConfig_TriggerType.Descriptor instead.
+func (ModuleConfig_DetectionSensorConfig_TriggerType) EnumDescriptor() ([]byte, []int) {
+ return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 4, 0}
+}
+
// Baudrate for codec2 voice
type ModuleConfig_AudioConfig_Audio_Baud int32
@@ -124,11 +191,11 @@ func (x ModuleConfig_AudioConfig_Audio_Baud) String() string {
}
func (ModuleConfig_AudioConfig_Audio_Baud) Descriptor() protoreflect.EnumDescriptor {
- return file_meshtastic_module_config_proto_enumTypes[1].Descriptor()
+ return file_meshtastic_module_config_proto_enumTypes[2].Descriptor()
}
func (ModuleConfig_AudioConfig_Audio_Baud) Type() protoreflect.EnumType {
- return &file_meshtastic_module_config_proto_enumTypes[1]
+ return &file_meshtastic_module_config_proto_enumTypes[2]
}
func (x ModuleConfig_AudioConfig_Audio_Baud) Number() protoreflect.EnumNumber {
@@ -137,7 +204,7 @@ func (x ModuleConfig_AudioConfig_Audio_Baud) Number() protoreflect.EnumNumber {
// Deprecated: Use ModuleConfig_AudioConfig_Audio_Baud.Descriptor instead.
func (ModuleConfig_AudioConfig_Audio_Baud) EnumDescriptor() ([]byte, []int) {
- return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 4, 0}
+ return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 5, 0}
}
// TODO: REPLACE
@@ -213,11 +280,11 @@ func (x ModuleConfig_SerialConfig_Serial_Baud) String() string {
}
func (ModuleConfig_SerialConfig_Serial_Baud) Descriptor() protoreflect.EnumDescriptor {
- return file_meshtastic_module_config_proto_enumTypes[2].Descriptor()
+ return file_meshtastic_module_config_proto_enumTypes[3].Descriptor()
}
func (ModuleConfig_SerialConfig_Serial_Baud) Type() protoreflect.EnumType {
- return &file_meshtastic_module_config_proto_enumTypes[2]
+ return &file_meshtastic_module_config_proto_enumTypes[3]
}
func (x ModuleConfig_SerialConfig_Serial_Baud) Number() protoreflect.EnumNumber {
@@ -226,7 +293,7 @@ func (x ModuleConfig_SerialConfig_Serial_Baud) Number() protoreflect.EnumNumber
// Deprecated: Use ModuleConfig_SerialConfig_Serial_Baud.Descriptor instead.
func (ModuleConfig_SerialConfig_Serial_Baud) EnumDescriptor() ([]byte, []int) {
- return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 6, 0}
+ return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 7, 0}
}
// TODO: REPLACE
@@ -240,6 +307,11 @@ const (
ModuleConfig_SerialConfig_NMEA ModuleConfig_SerialConfig_Serial_Mode = 4
// NMEA messages specifically tailored for CalTopo
ModuleConfig_SerialConfig_CALTOPO ModuleConfig_SerialConfig_Serial_Mode = 5
+ // Ecowitt WS85 weather station
+ ModuleConfig_SerialConfig_WS85 ModuleConfig_SerialConfig_Serial_Mode = 6
+ // VE.Direct is a serial protocol used by Victron Energy products
+ // https://beta.ivc.no/wiki/index.php/Victron_VE_Direct_DIY_Cable
+ ModuleConfig_SerialConfig_VE_DIRECT ModuleConfig_SerialConfig_Serial_Mode = 7
)
// Enum value maps for ModuleConfig_SerialConfig_Serial_Mode.
@@ -251,14 +323,18 @@ var (
3: "TEXTMSG",
4: "NMEA",
5: "CALTOPO",
+ 6: "WS85",
+ 7: "VE_DIRECT",
}
ModuleConfig_SerialConfig_Serial_Mode_value = map[string]int32{
- "DEFAULT": 0,
- "SIMPLE": 1,
- "PROTO": 2,
- "TEXTMSG": 3,
- "NMEA": 4,
- "CALTOPO": 5,
+ "DEFAULT": 0,
+ "SIMPLE": 1,
+ "PROTO": 2,
+ "TEXTMSG": 3,
+ "NMEA": 4,
+ "CALTOPO": 5,
+ "WS85": 6,
+ "VE_DIRECT": 7,
}
)
@@ -273,11 +349,11 @@ func (x ModuleConfig_SerialConfig_Serial_Mode) String() string {
}
func (ModuleConfig_SerialConfig_Serial_Mode) Descriptor() protoreflect.EnumDescriptor {
- return file_meshtastic_module_config_proto_enumTypes[3].Descriptor()
+ return file_meshtastic_module_config_proto_enumTypes[4].Descriptor()
}
func (ModuleConfig_SerialConfig_Serial_Mode) Type() protoreflect.EnumType {
- return &file_meshtastic_module_config_proto_enumTypes[3]
+ return &file_meshtastic_module_config_proto_enumTypes[4]
}
func (x ModuleConfig_SerialConfig_Serial_Mode) Number() protoreflect.EnumNumber {
@@ -286,7 +362,7 @@ func (x ModuleConfig_SerialConfig_Serial_Mode) Number() protoreflect.EnumNumber
// Deprecated: Use ModuleConfig_SerialConfig_Serial_Mode.Descriptor instead.
func (ModuleConfig_SerialConfig_Serial_Mode) EnumDescriptor() ([]byte, []int) {
- return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 6, 1}
+ return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 7, 1}
}
// TODO: REPLACE
@@ -346,11 +422,11 @@ func (x ModuleConfig_CannedMessageConfig_InputEventChar) String() string {
}
func (ModuleConfig_CannedMessageConfig_InputEventChar) Descriptor() protoreflect.EnumDescriptor {
- return file_meshtastic_module_config_proto_enumTypes[4].Descriptor()
+ return file_meshtastic_module_config_proto_enumTypes[5].Descriptor()
}
func (ModuleConfig_CannedMessageConfig_InputEventChar) Type() protoreflect.EnumType {
- return &file_meshtastic_module_config_proto_enumTypes[4]
+ return &file_meshtastic_module_config_proto_enumTypes[5]
}
func (x ModuleConfig_CannedMessageConfig_InputEventChar) Number() protoreflect.EnumNumber {
@@ -359,18 +435,15 @@ func (x ModuleConfig_CannedMessageConfig_InputEventChar) Number() protoreflect.E
// Deprecated: Use ModuleConfig_CannedMessageConfig_InputEventChar.Descriptor instead.
func (ModuleConfig_CannedMessageConfig_InputEventChar) EnumDescriptor() ([]byte, []int) {
- return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 11, 0}
+ return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 12, 0}
}
// Module Config
type ModuleConfig struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// TODO: REPLACE
//
- // Types that are assignable to PayloadVariant:
+ // Types that are valid to be assigned to PayloadVariant:
//
// *ModuleConfig_Mqtt
// *ModuleConfig_Serial
@@ -386,15 +459,15 @@ type ModuleConfig struct {
// *ModuleConfig_DetectionSensor
// *ModuleConfig_Paxcounter
PayloadVariant isModuleConfig_PayloadVariant `protobuf_oneof:"payload_variant"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *ModuleConfig) Reset() {
*x = ModuleConfig{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_module_config_proto_msgTypes[0]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_module_config_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *ModuleConfig) String() string {
@@ -405,7 +478,7 @@ func (*ModuleConfig) ProtoMessage() {}
func (x *ModuleConfig) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_module_config_proto_msgTypes[0]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -420,100 +493,126 @@ func (*ModuleConfig) Descriptor() ([]byte, []int) {
return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0}
}
-func (m *ModuleConfig) GetPayloadVariant() isModuleConfig_PayloadVariant {
- if m != nil {
- return m.PayloadVariant
+func (x *ModuleConfig) GetPayloadVariant() isModuleConfig_PayloadVariant {
+ if x != nil {
+ return x.PayloadVariant
}
return nil
}
func (x *ModuleConfig) GetMqtt() *ModuleConfig_MQTTConfig {
- if x, ok := x.GetPayloadVariant().(*ModuleConfig_Mqtt); ok {
- return x.Mqtt
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*ModuleConfig_Mqtt); ok {
+ return x.Mqtt
+ }
}
return nil
}
func (x *ModuleConfig) GetSerial() *ModuleConfig_SerialConfig {
- if x, ok := x.GetPayloadVariant().(*ModuleConfig_Serial); ok {
- return x.Serial
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*ModuleConfig_Serial); ok {
+ return x.Serial
+ }
}
return nil
}
func (x *ModuleConfig) GetExternalNotification() *ModuleConfig_ExternalNotificationConfig {
- if x, ok := x.GetPayloadVariant().(*ModuleConfig_ExternalNotification); ok {
- return x.ExternalNotification
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*ModuleConfig_ExternalNotification); ok {
+ return x.ExternalNotification
+ }
}
return nil
}
func (x *ModuleConfig) GetStoreForward() *ModuleConfig_StoreForwardConfig {
- if x, ok := x.GetPayloadVariant().(*ModuleConfig_StoreForward); ok {
- return x.StoreForward
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*ModuleConfig_StoreForward); ok {
+ return x.StoreForward
+ }
}
return nil
}
func (x *ModuleConfig) GetRangeTest() *ModuleConfig_RangeTestConfig {
- if x, ok := x.GetPayloadVariant().(*ModuleConfig_RangeTest); ok {
- return x.RangeTest
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*ModuleConfig_RangeTest); ok {
+ return x.RangeTest
+ }
}
return nil
}
func (x *ModuleConfig) GetTelemetry() *ModuleConfig_TelemetryConfig {
- if x, ok := x.GetPayloadVariant().(*ModuleConfig_Telemetry); ok {
- return x.Telemetry
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*ModuleConfig_Telemetry); ok {
+ return x.Telemetry
+ }
}
return nil
}
func (x *ModuleConfig) GetCannedMessage() *ModuleConfig_CannedMessageConfig {
- if x, ok := x.GetPayloadVariant().(*ModuleConfig_CannedMessage); ok {
- return x.CannedMessage
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*ModuleConfig_CannedMessage); ok {
+ return x.CannedMessage
+ }
}
return nil
}
func (x *ModuleConfig) GetAudio() *ModuleConfig_AudioConfig {
- if x, ok := x.GetPayloadVariant().(*ModuleConfig_Audio); ok {
- return x.Audio
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*ModuleConfig_Audio); ok {
+ return x.Audio
+ }
}
return nil
}
func (x *ModuleConfig) GetRemoteHardware() *ModuleConfig_RemoteHardwareConfig {
- if x, ok := x.GetPayloadVariant().(*ModuleConfig_RemoteHardware); ok {
- return x.RemoteHardware
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*ModuleConfig_RemoteHardware); ok {
+ return x.RemoteHardware
+ }
}
return nil
}
func (x *ModuleConfig) GetNeighborInfo() *ModuleConfig_NeighborInfoConfig {
- if x, ok := x.GetPayloadVariant().(*ModuleConfig_NeighborInfo); ok {
- return x.NeighborInfo
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*ModuleConfig_NeighborInfo); ok {
+ return x.NeighborInfo
+ }
}
return nil
}
func (x *ModuleConfig) GetAmbientLighting() *ModuleConfig_AmbientLightingConfig {
- if x, ok := x.GetPayloadVariant().(*ModuleConfig_AmbientLighting); ok {
- return x.AmbientLighting
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*ModuleConfig_AmbientLighting); ok {
+ return x.AmbientLighting
+ }
}
return nil
}
func (x *ModuleConfig) GetDetectionSensor() *ModuleConfig_DetectionSensorConfig {
- if x, ok := x.GetPayloadVariant().(*ModuleConfig_DetectionSensor); ok {
- return x.DetectionSensor
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*ModuleConfig_DetectionSensor); ok {
+ return x.DetectionSensor
+ }
}
return nil
}
func (x *ModuleConfig) GetPaxcounter() *ModuleConfig_PaxcounterConfig {
- if x, ok := x.GetPayloadVariant().(*ModuleConfig_Paxcounter); ok {
- return x.Paxcounter
+ if x != nil {
+ if x, ok := x.PayloadVariant.(*ModuleConfig_Paxcounter); ok {
+ return x.Paxcounter
+ }
}
return nil
}
@@ -615,25 +714,22 @@ func (*ModuleConfig_Paxcounter) isModuleConfig_PayloadVariant() {}
// A GPIO pin definition for remote hardware module
type RemoteHardwarePin struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// GPIO Pin number (must match Arduino)
GpioPin uint32 `protobuf:"varint,1,opt,name=gpio_pin,json=gpioPin,proto3" json:"gpio_pin,omitempty"`
// Name for the GPIO pin (i.e. Front gate, mailbox, etc)
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
// Type of GPIO access available to consumers on the mesh
- Type RemoteHardwarePinType `protobuf:"varint,3,opt,name=type,proto3,enum=meshtastic.RemoteHardwarePinType" json:"type,omitempty"`
+ Type RemoteHardwarePinType `protobuf:"varint,3,opt,name=type,proto3,enum=meshtastic.RemoteHardwarePinType" json:"type,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *RemoteHardwarePin) Reset() {
*x = RemoteHardwarePin{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_module_config_proto_msgTypes[1]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_module_config_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *RemoteHardwarePin) String() string {
@@ -644,7 +740,7 @@ func (*RemoteHardwarePin) ProtoMessage() {}
func (x *RemoteHardwarePin) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_module_config_proto_msgTypes[1]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -682,10 +778,7 @@ func (x *RemoteHardwarePin) GetType() RemoteHardwarePinType {
// MQTT Client Config
type ModuleConfig_MQTTConfig struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// If a meshtastic node is able to reach the internet it will normally attempt to gateway any channels that are marked as
// is_uplink_enabled or is_downlink_enabled.
Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
@@ -714,15 +807,19 @@ type ModuleConfig_MQTTConfig struct {
Root string `protobuf:"bytes,8,opt,name=root,proto3" json:"root,omitempty"`
// If true, we can use the connected phone / client to proxy messages to MQTT instead of a direct connection
ProxyToClientEnabled bool `protobuf:"varint,9,opt,name=proxy_to_client_enabled,json=proxyToClientEnabled,proto3" json:"proxy_to_client_enabled,omitempty"`
+ // If true, we will periodically report unencrypted information about our node to a map via MQTT
+ MapReportingEnabled bool `protobuf:"varint,10,opt,name=map_reporting_enabled,json=mapReportingEnabled,proto3" json:"map_reporting_enabled,omitempty"`
+ // Settings for reporting information about our node to a map via MQTT
+ MapReportSettings *ModuleConfig_MapReportSettings `protobuf:"bytes,11,opt,name=map_report_settings,json=mapReportSettings,proto3" json:"map_report_settings,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *ModuleConfig_MQTTConfig) Reset() {
*x = ModuleConfig_MQTTConfig{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_module_config_proto_msgTypes[2]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_module_config_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *ModuleConfig_MQTTConfig) String() string {
@@ -733,7 +830,7 @@ func (*ModuleConfig_MQTTConfig) ProtoMessage() {}
func (x *ModuleConfig_MQTTConfig) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_module_config_proto_msgTypes[2]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -811,27 +908,102 @@ func (x *ModuleConfig_MQTTConfig) GetProxyToClientEnabled() bool {
return false
}
+func (x *ModuleConfig_MQTTConfig) GetMapReportingEnabled() bool {
+ if x != nil {
+ return x.MapReportingEnabled
+ }
+ return false
+}
+
+func (x *ModuleConfig_MQTTConfig) GetMapReportSettings() *ModuleConfig_MapReportSettings {
+ if x != nil {
+ return x.MapReportSettings
+ }
+ return nil
+}
+
+// Settings for reporting unencrypted information about our node to a map via MQTT
+type ModuleConfig_MapReportSettings struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // How often we should report our info to the map (in seconds)
+ PublishIntervalSecs uint32 `protobuf:"varint,1,opt,name=publish_interval_secs,json=publishIntervalSecs,proto3" json:"publish_interval_secs,omitempty"`
+ // Bits of precision for the location sent (default of 32 is full precision).
+ PositionPrecision uint32 `protobuf:"varint,2,opt,name=position_precision,json=positionPrecision,proto3" json:"position_precision,omitempty"`
+ // Whether we have opted-in to report our location to the map
+ ShouldReportLocation bool `protobuf:"varint,3,opt,name=should_report_location,json=shouldReportLocation,proto3" json:"should_report_location,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *ModuleConfig_MapReportSettings) Reset() {
+ *x = ModuleConfig_MapReportSettings{}
+ mi := &file_meshtastic_module_config_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *ModuleConfig_MapReportSettings) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ModuleConfig_MapReportSettings) ProtoMessage() {}
+
+func (x *ModuleConfig_MapReportSettings) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_module_config_proto_msgTypes[3]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ModuleConfig_MapReportSettings.ProtoReflect.Descriptor instead.
+func (*ModuleConfig_MapReportSettings) Descriptor() ([]byte, []int) {
+ return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 1}
+}
+
+func (x *ModuleConfig_MapReportSettings) GetPublishIntervalSecs() uint32 {
+ if x != nil {
+ return x.PublishIntervalSecs
+ }
+ return 0
+}
+
+func (x *ModuleConfig_MapReportSettings) GetPositionPrecision() uint32 {
+ if x != nil {
+ return x.PositionPrecision
+ }
+ return 0
+}
+
+func (x *ModuleConfig_MapReportSettings) GetShouldReportLocation() bool {
+ if x != nil {
+ return x.ShouldReportLocation
+ }
+ return false
+}
+
// RemoteHardwareModule Config
type ModuleConfig_RemoteHardwareConfig struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Whether the Module is enabled
Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
// Whether the Module allows consumers to read / write to pins not defined in available_pins
AllowUndefinedPinAccess bool `protobuf:"varint,2,opt,name=allow_undefined_pin_access,json=allowUndefinedPinAccess,proto3" json:"allow_undefined_pin_access,omitempty"`
// Exposes the available pins to the mesh for reading and writing
AvailablePins []*RemoteHardwarePin `protobuf:"bytes,3,rep,name=available_pins,json=availablePins,proto3" json:"available_pins,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *ModuleConfig_RemoteHardwareConfig) Reset() {
*x = ModuleConfig_RemoteHardwareConfig{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_module_config_proto_msgTypes[3]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_module_config_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *ModuleConfig_RemoteHardwareConfig) String() string {
@@ -841,8 +1013,8 @@ func (x *ModuleConfig_RemoteHardwareConfig) String() string {
func (*ModuleConfig_RemoteHardwareConfig) ProtoMessage() {}
func (x *ModuleConfig_RemoteHardwareConfig) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_module_config_proto_msgTypes[3]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_module_config_proto_msgTypes[4]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -854,7 +1026,7 @@ func (x *ModuleConfig_RemoteHardwareConfig) ProtoReflect() protoreflect.Message
// Deprecated: Use ModuleConfig_RemoteHardwareConfig.ProtoReflect.Descriptor instead.
func (*ModuleConfig_RemoteHardwareConfig) Descriptor() ([]byte, []int) {
- return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 1}
+ return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 2}
}
func (x *ModuleConfig_RemoteHardwareConfig) GetEnabled() bool {
@@ -880,24 +1052,24 @@ func (x *ModuleConfig_RemoteHardwareConfig) GetAvailablePins() []*RemoteHardware
// NeighborInfoModule Config
type ModuleConfig_NeighborInfoConfig struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Whether the Module is enabled
Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
// Interval in seconds of how often we should try to send our
- // Neighbor Info to the mesh
+ // Neighbor Info (minimum is 14400, i.e., 4 hours)
UpdateInterval uint32 `protobuf:"varint,2,opt,name=update_interval,json=updateInterval,proto3" json:"update_interval,omitempty"`
+ // Whether in addition to sending it to MQTT and the PhoneAPI, our NeighborInfo should be transmitted over LoRa.
+ // Note that this is not available on a channel with default key and name.
+ TransmitOverLora bool `protobuf:"varint,3,opt,name=transmit_over_lora,json=transmitOverLora,proto3" json:"transmit_over_lora,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *ModuleConfig_NeighborInfoConfig) Reset() {
*x = ModuleConfig_NeighborInfoConfig{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_module_config_proto_msgTypes[4]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_module_config_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *ModuleConfig_NeighborInfoConfig) String() string {
@@ -907,8 +1079,8 @@ func (x *ModuleConfig_NeighborInfoConfig) String() string {
func (*ModuleConfig_NeighborInfoConfig) ProtoMessage() {}
func (x *ModuleConfig_NeighborInfoConfig) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_module_config_proto_msgTypes[4]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_module_config_proto_msgTypes[5]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -920,7 +1092,7 @@ func (x *ModuleConfig_NeighborInfoConfig) ProtoReflect() protoreflect.Message {
// Deprecated: Use ModuleConfig_NeighborInfoConfig.ProtoReflect.Descriptor instead.
func (*ModuleConfig_NeighborInfoConfig) Descriptor() ([]byte, []int) {
- return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 2}
+ return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 3}
}
func (x *ModuleConfig_NeighborInfoConfig) GetEnabled() bool {
@@ -937,19 +1109,25 @@ func (x *ModuleConfig_NeighborInfoConfig) GetUpdateInterval() uint32 {
return 0
}
+func (x *ModuleConfig_NeighborInfoConfig) GetTransmitOverLora() bool {
+ if x != nil {
+ return x.TransmitOverLora
+ }
+ return false
+}
+
// Detection Sensor Module Config
type ModuleConfig_DetectionSensorConfig struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Whether the Module is enabled
Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
- // Interval in seconds of how often we can send a message to the mesh when a state change is detected
+ // Interval in seconds of how often we can send a message to the mesh when a
+ // trigger event is detected
MinimumBroadcastSecs uint32 `protobuf:"varint,2,opt,name=minimum_broadcast_secs,json=minimumBroadcastSecs,proto3" json:"minimum_broadcast_secs,omitempty"`
- // Interval in seconds of how often we should send a message to the mesh with the current state regardless of changes
- // When set to 0, only state changes will be broadcasted
- // Works as a sort of status heartbeat for peace of mind
+ // Interval in seconds of how often we should send a message to the mesh
+ // with the current state regardless of trigger events When set to 0, only
+ // trigger events will be broadcasted Works as a sort of status heartbeat
+ // for peace of mind
StateBroadcastSecs uint32 `protobuf:"varint,3,opt,name=state_broadcast_secs,json=stateBroadcastSecs,proto3" json:"state_broadcast_secs,omitempty"`
// Send ASCII bell with alert message
// Useful for triggering ext. notification on bell
@@ -960,21 +1138,20 @@ type ModuleConfig_DetectionSensorConfig struct {
Name string `protobuf:"bytes,5,opt,name=name,proto3" json:"name,omitempty"`
// GPIO pin to monitor for state changes
MonitorPin uint32 `protobuf:"varint,6,opt,name=monitor_pin,json=monitorPin,proto3" json:"monitor_pin,omitempty"`
- // Whether or not the GPIO pin state detection is triggered on HIGH (1)
- // Otherwise LOW (0)
- DetectionTriggeredHigh bool `protobuf:"varint,7,opt,name=detection_triggered_high,json=detectionTriggeredHigh,proto3" json:"detection_triggered_high,omitempty"`
+ // The type of trigger event to be used
+ DetectionTriggerType ModuleConfig_DetectionSensorConfig_TriggerType `protobuf:"varint,7,opt,name=detection_trigger_type,json=detectionTriggerType,proto3,enum=meshtastic.ModuleConfig_DetectionSensorConfig_TriggerType" json:"detection_trigger_type,omitempty"`
// Whether or not use INPUT_PULLUP mode for GPIO pin
// Only applicable if the board uses pull-up resistors on the pin
- UsePullup bool `protobuf:"varint,8,opt,name=use_pullup,json=usePullup,proto3" json:"use_pullup,omitempty"`
+ UsePullup bool `protobuf:"varint,8,opt,name=use_pullup,json=usePullup,proto3" json:"use_pullup,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *ModuleConfig_DetectionSensorConfig) Reset() {
*x = ModuleConfig_DetectionSensorConfig{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_module_config_proto_msgTypes[5]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_module_config_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *ModuleConfig_DetectionSensorConfig) String() string {
@@ -984,8 +1161,8 @@ func (x *ModuleConfig_DetectionSensorConfig) String() string {
func (*ModuleConfig_DetectionSensorConfig) ProtoMessage() {}
func (x *ModuleConfig_DetectionSensorConfig) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_module_config_proto_msgTypes[5]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_module_config_proto_msgTypes[6]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -997,7 +1174,7 @@ func (x *ModuleConfig_DetectionSensorConfig) ProtoReflect() protoreflect.Message
// Deprecated: Use ModuleConfig_DetectionSensorConfig.ProtoReflect.Descriptor instead.
func (*ModuleConfig_DetectionSensorConfig) Descriptor() ([]byte, []int) {
- return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 3}
+ return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 4}
}
func (x *ModuleConfig_DetectionSensorConfig) GetEnabled() bool {
@@ -1042,11 +1219,11 @@ func (x *ModuleConfig_DetectionSensorConfig) GetMonitorPin() uint32 {
return 0
}
-func (x *ModuleConfig_DetectionSensorConfig) GetDetectionTriggeredHigh() bool {
+func (x *ModuleConfig_DetectionSensorConfig) GetDetectionTriggerType() ModuleConfig_DetectionSensorConfig_TriggerType {
if x != nil {
- return x.DetectionTriggeredHigh
+ return x.DetectionTriggerType
}
- return false
+ return ModuleConfig_DetectionSensorConfig_LOGIC_LOW
}
func (x *ModuleConfig_DetectionSensorConfig) GetUsePullup() bool {
@@ -1058,10 +1235,7 @@ func (x *ModuleConfig_DetectionSensorConfig) GetUsePullup() bool {
// Audio Config for codec2 voice
type ModuleConfig_AudioConfig struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Whether Audio is enabled
Codec2Enabled bool `protobuf:"varint,1,opt,name=codec2_enabled,json=codec2Enabled,proto3" json:"codec2_enabled,omitempty"`
// PTT Pin
@@ -1075,16 +1249,16 @@ type ModuleConfig_AudioConfig struct {
// I2S Data OUT
I2SDin uint32 `protobuf:"varint,6,opt,name=i2s_din,json=i2sDin,proto3" json:"i2s_din,omitempty"`
// I2S Clock
- I2SSck uint32 `protobuf:"varint,7,opt,name=i2s_sck,json=i2sSck,proto3" json:"i2s_sck,omitempty"`
+ I2SSck uint32 `protobuf:"varint,7,opt,name=i2s_sck,json=i2sSck,proto3" json:"i2s_sck,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *ModuleConfig_AudioConfig) Reset() {
*x = ModuleConfig_AudioConfig{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_module_config_proto_msgTypes[6]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_module_config_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *ModuleConfig_AudioConfig) String() string {
@@ -1094,8 +1268,8 @@ func (x *ModuleConfig_AudioConfig) String() string {
func (*ModuleConfig_AudioConfig) ProtoMessage() {}
func (x *ModuleConfig_AudioConfig) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_module_config_proto_msgTypes[6]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_module_config_proto_msgTypes[7]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -1107,7 +1281,7 @@ func (x *ModuleConfig_AudioConfig) ProtoReflect() protoreflect.Message {
// Deprecated: Use ModuleConfig_AudioConfig.ProtoReflect.Descriptor instead.
func (*ModuleConfig_AudioConfig) Descriptor() ([]byte, []int) {
- return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 4}
+ return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 5}
}
func (x *ModuleConfig_AudioConfig) GetCodec2Enabled() bool {
@@ -1161,22 +1335,23 @@ func (x *ModuleConfig_AudioConfig) GetI2SSck() uint32 {
// Config for the Paxcounter Module
type ModuleConfig_PaxcounterConfig struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Enable the Paxcounter Module
Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
PaxcounterUpdateInterval uint32 `protobuf:"varint,2,opt,name=paxcounter_update_interval,json=paxcounterUpdateInterval,proto3" json:"paxcounter_update_interval,omitempty"`
+ // WiFi RSSI threshold. Defaults to -80
+ WifiThreshold int32 `protobuf:"varint,3,opt,name=wifi_threshold,json=wifiThreshold,proto3" json:"wifi_threshold,omitempty"`
+ // BLE RSSI threshold. Defaults to -80
+ BleThreshold int32 `protobuf:"varint,4,opt,name=ble_threshold,json=bleThreshold,proto3" json:"ble_threshold,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *ModuleConfig_PaxcounterConfig) Reset() {
*x = ModuleConfig_PaxcounterConfig{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_module_config_proto_msgTypes[7]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_module_config_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *ModuleConfig_PaxcounterConfig) String() string {
@@ -1186,8 +1361,8 @@ func (x *ModuleConfig_PaxcounterConfig) String() string {
func (*ModuleConfig_PaxcounterConfig) ProtoMessage() {}
func (x *ModuleConfig_PaxcounterConfig) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_module_config_proto_msgTypes[7]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_module_config_proto_msgTypes[8]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -1199,7 +1374,7 @@ func (x *ModuleConfig_PaxcounterConfig) ProtoReflect() protoreflect.Message {
// Deprecated: Use ModuleConfig_PaxcounterConfig.ProtoReflect.Descriptor instead.
func (*ModuleConfig_PaxcounterConfig) Descriptor() ([]byte, []int) {
- return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 5}
+ return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 6}
}
func (x *ModuleConfig_PaxcounterConfig) GetEnabled() bool {
@@ -1216,12 +1391,23 @@ func (x *ModuleConfig_PaxcounterConfig) GetPaxcounterUpdateInterval() uint32 {
return 0
}
+func (x *ModuleConfig_PaxcounterConfig) GetWifiThreshold() int32 {
+ if x != nil {
+ return x.WifiThreshold
+ }
+ return 0
+}
+
+func (x *ModuleConfig_PaxcounterConfig) GetBleThreshold() int32 {
+ if x != nil {
+ return x.BleThreshold
+ }
+ return 0
+}
+
// Serial Config
type ModuleConfig_SerialConfig struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Preferences for the SerialModule
Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
// TODO: REPLACE
@@ -1240,15 +1426,15 @@ type ModuleConfig_SerialConfig struct {
// This is currently only usable in output modes like NMEA / CalTopo and may behave strangely or not work at all in other modes
// Existing logging over the Serial Console will still be present
OverrideConsoleSerialPort bool `protobuf:"varint,8,opt,name=override_console_serial_port,json=overrideConsoleSerialPort,proto3" json:"override_console_serial_port,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *ModuleConfig_SerialConfig) Reset() {
*x = ModuleConfig_SerialConfig{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_module_config_proto_msgTypes[8]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_module_config_proto_msgTypes[9]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *ModuleConfig_SerialConfig) String() string {
@@ -1258,8 +1444,8 @@ func (x *ModuleConfig_SerialConfig) String() string {
func (*ModuleConfig_SerialConfig) ProtoMessage() {}
func (x *ModuleConfig_SerialConfig) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_module_config_proto_msgTypes[8]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_module_config_proto_msgTypes[9]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -1271,7 +1457,7 @@ func (x *ModuleConfig_SerialConfig) ProtoReflect() protoreflect.Message {
// Deprecated: Use ModuleConfig_SerialConfig.ProtoReflect.Descriptor instead.
func (*ModuleConfig_SerialConfig) Descriptor() ([]byte, []int) {
- return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 6}
+ return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 7}
}
func (x *ModuleConfig_SerialConfig) GetEnabled() bool {
@@ -1332,10 +1518,7 @@ func (x *ModuleConfig_SerialConfig) GetOverrideConsoleSerialPort() bool {
// External Notifications Config
type ModuleConfig_ExternalNotificationConfig struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Enable the ExternalNotificationModule
Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
// When using in On/Off mode, keep the output on for this many
@@ -1377,15 +1560,15 @@ type ModuleConfig_ExternalNotificationConfig struct {
// When true, enables devices with native I2S audio output to use the RTTTL over speaker like a buzzer
// T-Watch S3 and T-Deck for example have this capability
UseI2SAsBuzzer bool `protobuf:"varint,15,opt,name=use_i2s_as_buzzer,json=useI2sAsBuzzer,proto3" json:"use_i2s_as_buzzer,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *ModuleConfig_ExternalNotificationConfig) Reset() {
*x = ModuleConfig_ExternalNotificationConfig{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_module_config_proto_msgTypes[9]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_module_config_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *ModuleConfig_ExternalNotificationConfig) String() string {
@@ -1395,8 +1578,8 @@ func (x *ModuleConfig_ExternalNotificationConfig) String() string {
func (*ModuleConfig_ExternalNotificationConfig) ProtoMessage() {}
func (x *ModuleConfig_ExternalNotificationConfig) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_module_config_proto_msgTypes[9]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_module_config_proto_msgTypes[10]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -1408,7 +1591,7 @@ func (x *ModuleConfig_ExternalNotificationConfig) ProtoReflect() protoreflect.Me
// Deprecated: Use ModuleConfig_ExternalNotificationConfig.ProtoReflect.Descriptor instead.
func (*ModuleConfig_ExternalNotificationConfig) Descriptor() ([]byte, []int) {
- return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 7}
+ return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 8}
}
func (x *ModuleConfig_ExternalNotificationConfig) GetEnabled() bool {
@@ -1518,10 +1701,7 @@ func (x *ModuleConfig_ExternalNotificationConfig) GetUseI2SAsBuzzer() bool {
// Store and Forward Module Config
type ModuleConfig_StoreForwardConfig struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Enable the Store and Forward Module
Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
// TODO: REPLACE
@@ -1532,15 +1712,17 @@ type ModuleConfig_StoreForwardConfig struct {
HistoryReturnMax uint32 `protobuf:"varint,4,opt,name=history_return_max,json=historyReturnMax,proto3" json:"history_return_max,omitempty"`
// TODO: REPLACE
HistoryReturnWindow uint32 `protobuf:"varint,5,opt,name=history_return_window,json=historyReturnWindow,proto3" json:"history_return_window,omitempty"`
+ // Set to true to let this node act as a server that stores received messages and resends them upon request.
+ IsServer bool `protobuf:"varint,6,opt,name=is_server,json=isServer,proto3" json:"is_server,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *ModuleConfig_StoreForwardConfig) Reset() {
*x = ModuleConfig_StoreForwardConfig{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_module_config_proto_msgTypes[10]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_module_config_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *ModuleConfig_StoreForwardConfig) String() string {
@@ -1550,8 +1732,8 @@ func (x *ModuleConfig_StoreForwardConfig) String() string {
func (*ModuleConfig_StoreForwardConfig) ProtoMessage() {}
func (x *ModuleConfig_StoreForwardConfig) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_module_config_proto_msgTypes[10]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_module_config_proto_msgTypes[11]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -1563,7 +1745,7 @@ func (x *ModuleConfig_StoreForwardConfig) ProtoReflect() protoreflect.Message {
// Deprecated: Use ModuleConfig_StoreForwardConfig.ProtoReflect.Descriptor instead.
func (*ModuleConfig_StoreForwardConfig) Descriptor() ([]byte, []int) {
- return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 8}
+ return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 9}
}
func (x *ModuleConfig_StoreForwardConfig) GetEnabled() bool {
@@ -1601,28 +1783,32 @@ func (x *ModuleConfig_StoreForwardConfig) GetHistoryReturnWindow() uint32 {
return 0
}
+func (x *ModuleConfig_StoreForwardConfig) GetIsServer() bool {
+ if x != nil {
+ return x.IsServer
+ }
+ return false
+}
+
// Preferences for the RangeTestModule
type ModuleConfig_RangeTestConfig struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Enable the Range Test Module
Enabled bool `protobuf:"varint,1,opt,name=enabled,proto3" json:"enabled,omitempty"`
// Send out range test messages from this node
Sender uint32 `protobuf:"varint,2,opt,name=sender,proto3" json:"sender,omitempty"`
// Bool value indicating that this node should save a RangeTest.csv file.
// ESP32 Only
- Save bool `protobuf:"varint,3,opt,name=save,proto3" json:"save,omitempty"`
+ Save bool `protobuf:"varint,3,opt,name=save,proto3" json:"save,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *ModuleConfig_RangeTestConfig) Reset() {
*x = ModuleConfig_RangeTestConfig{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_module_config_proto_msgTypes[11]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_module_config_proto_msgTypes[12]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *ModuleConfig_RangeTestConfig) String() string {
@@ -1632,8 +1818,8 @@ func (x *ModuleConfig_RangeTestConfig) String() string {
func (*ModuleConfig_RangeTestConfig) ProtoMessage() {}
func (x *ModuleConfig_RangeTestConfig) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_module_config_proto_msgTypes[11]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_module_config_proto_msgTypes[12]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -1645,7 +1831,7 @@ func (x *ModuleConfig_RangeTestConfig) ProtoReflect() protoreflect.Message {
// Deprecated: Use ModuleConfig_RangeTestConfig.ProtoReflect.Descriptor instead.
func (*ModuleConfig_RangeTestConfig) Descriptor() ([]byte, []int) {
- return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 9}
+ return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 10}
}
func (x *ModuleConfig_RangeTestConfig) GetEnabled() bool {
@@ -1671,10 +1857,7 @@ func (x *ModuleConfig_RangeTestConfig) GetSave() bool {
// Configuration for both device and environment metrics
type ModuleConfig_TelemetryConfig struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Interval in seconds of how often we should try to send our
// device metrics to the mesh
DeviceUpdateInterval uint32 `protobuf:"varint,1,opt,name=device_update_interval,json=deviceUpdateInterval,proto3" json:"device_update_interval,omitempty"`
@@ -1692,24 +1875,30 @@ type ModuleConfig_TelemetryConfig struct {
// Interval in seconds of how often we should try to send our
// air quality metrics to the mesh
AirQualityInterval uint32 `protobuf:"varint,7,opt,name=air_quality_interval,json=airQualityInterval,proto3" json:"air_quality_interval,omitempty"`
- // Interval in seconds of how often we should try to send our
- // air quality metrics to the mesh
+ // Enable/disable Power metrics
PowerMeasurementEnabled bool `protobuf:"varint,8,opt,name=power_measurement_enabled,json=powerMeasurementEnabled,proto3" json:"power_measurement_enabled,omitempty"`
// Interval in seconds of how often we should try to send our
- // air quality metrics to the mesh
+ // power metrics to the mesh
PowerUpdateInterval uint32 `protobuf:"varint,9,opt,name=power_update_interval,json=powerUpdateInterval,proto3" json:"power_update_interval,omitempty"`
- // Interval in seconds of how often we should try to send our
- // air quality metrics to the mesh
+ // Enable/Disable the power measurement module on-device display
PowerScreenEnabled bool `protobuf:"varint,10,opt,name=power_screen_enabled,json=powerScreenEnabled,proto3" json:"power_screen_enabled,omitempty"`
+ // Preferences for the (Health) Telemetry Module
+ // Enable/Disable the telemetry measurement module measurement collection
+ HealthMeasurementEnabled bool `protobuf:"varint,11,opt,name=health_measurement_enabled,json=healthMeasurementEnabled,proto3" json:"health_measurement_enabled,omitempty"`
+ // Interval in seconds of how often we should try to send our
+ // health metrics to the mesh
+ HealthUpdateInterval uint32 `protobuf:"varint,12,opt,name=health_update_interval,json=healthUpdateInterval,proto3" json:"health_update_interval,omitempty"`
+ // Enable/Disable the health telemetry module on-device display
+ HealthScreenEnabled bool `protobuf:"varint,13,opt,name=health_screen_enabled,json=healthScreenEnabled,proto3" json:"health_screen_enabled,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *ModuleConfig_TelemetryConfig) Reset() {
*x = ModuleConfig_TelemetryConfig{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_module_config_proto_msgTypes[12]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_module_config_proto_msgTypes[13]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *ModuleConfig_TelemetryConfig) String() string {
@@ -1719,8 +1908,8 @@ func (x *ModuleConfig_TelemetryConfig) String() string {
func (*ModuleConfig_TelemetryConfig) ProtoMessage() {}
func (x *ModuleConfig_TelemetryConfig) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_module_config_proto_msgTypes[12]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_module_config_proto_msgTypes[13]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -1732,7 +1921,7 @@ func (x *ModuleConfig_TelemetryConfig) ProtoReflect() protoreflect.Message {
// Deprecated: Use ModuleConfig_TelemetryConfig.ProtoReflect.Descriptor instead.
func (*ModuleConfig_TelemetryConfig) Descriptor() ([]byte, []int) {
- return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 10}
+ return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 11}
}
func (x *ModuleConfig_TelemetryConfig) GetDeviceUpdateInterval() uint32 {
@@ -1805,12 +1994,30 @@ func (x *ModuleConfig_TelemetryConfig) GetPowerScreenEnabled() bool {
return false
}
-// TODO: REPLACE
-type ModuleConfig_CannedMessageConfig struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
+func (x *ModuleConfig_TelemetryConfig) GetHealthMeasurementEnabled() bool {
+ if x != nil {
+ return x.HealthMeasurementEnabled
+ }
+ return false
+}
+
+func (x *ModuleConfig_TelemetryConfig) GetHealthUpdateInterval() uint32 {
+ if x != nil {
+ return x.HealthUpdateInterval
+ }
+ return 0
+}
+func (x *ModuleConfig_TelemetryConfig) GetHealthScreenEnabled() bool {
+ if x != nil {
+ return x.HealthScreenEnabled
+ }
+ return false
+}
+
+// Canned Messages Module Config
+type ModuleConfig_CannedMessageConfig struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
// Enable the rotary encoder #1. This is a 'dumb' encoder sending pulses on both A and B pins while rotating.
Rotary1Enabled bool `protobuf:"varint,1,opt,name=rotary1_enabled,json=rotary1Enabled,proto3" json:"rotary1_enabled,omitempty"`
// GPIO pin for rotary encoder A port.
@@ -1830,20 +2037,20 @@ type ModuleConfig_CannedMessageConfig struct {
// Enable/disable CannedMessageModule.
Enabled bool `protobuf:"varint,9,opt,name=enabled,proto3" json:"enabled,omitempty"`
// Input event origin accepted by the canned message module.
- // Can be e.g. "rotEnc1", "upDownEnc1" or keyword "_any"
+ // Can be e.g. "rotEnc1", "upDownEnc1", "scanAndSelect", "cardkb", "serialkb", or keyword "_any"
AllowInputSource string `protobuf:"bytes,10,opt,name=allow_input_source,json=allowInputSource,proto3" json:"allow_input_source,omitempty"`
// CannedMessageModule also sends a bell character with the messages.
// ExternalNotificationModule can benefit from this feature.
- SendBell bool `protobuf:"varint,11,opt,name=send_bell,json=sendBell,proto3" json:"send_bell,omitempty"`
+ SendBell bool `protobuf:"varint,11,opt,name=send_bell,json=sendBell,proto3" json:"send_bell,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *ModuleConfig_CannedMessageConfig) Reset() {
*x = ModuleConfig_CannedMessageConfig{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_module_config_proto_msgTypes[13]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_module_config_proto_msgTypes[14]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *ModuleConfig_CannedMessageConfig) String() string {
@@ -1853,8 +2060,8 @@ func (x *ModuleConfig_CannedMessageConfig) String() string {
func (*ModuleConfig_CannedMessageConfig) ProtoMessage() {}
func (x *ModuleConfig_CannedMessageConfig) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_module_config_proto_msgTypes[13]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_module_config_proto_msgTypes[14]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -1866,7 +2073,7 @@ func (x *ModuleConfig_CannedMessageConfig) ProtoReflect() protoreflect.Message {
// Deprecated: Use ModuleConfig_CannedMessageConfig.ProtoReflect.Descriptor instead.
func (*ModuleConfig_CannedMessageConfig) Descriptor() ([]byte, []int) {
- return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 11}
+ return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 12}
}
func (x *ModuleConfig_CannedMessageConfig) GetRotary1Enabled() bool {
@@ -1949,10 +2156,7 @@ func (x *ModuleConfig_CannedMessageConfig) GetSendBell() bool {
// Ambient Lighting Module - Settings for control of onboard LEDs to allow users to adjust the brightness levels and respective color levels.
// Initially created for the RAK14001 RGB LED module.
type ModuleConfig_AmbientLightingConfig struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Sets LED to on or off.
LedState bool `protobuf:"varint,1,opt,name=led_state,json=ledState,proto3" json:"led_state,omitempty"`
// Sets the current for the LED output. Default is 10.
@@ -1962,16 +2166,16 @@ type ModuleConfig_AmbientLightingConfig struct {
// Sets the green LED level. Values are 0-255.
Green uint32 `protobuf:"varint,4,opt,name=green,proto3" json:"green,omitempty"`
// Sets the blue LED level. Values are 0-255.
- Blue uint32 `protobuf:"varint,5,opt,name=blue,proto3" json:"blue,omitempty"`
+ Blue uint32 `protobuf:"varint,5,opt,name=blue,proto3" json:"blue,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *ModuleConfig_AmbientLightingConfig) Reset() {
*x = ModuleConfig_AmbientLightingConfig{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_module_config_proto_msgTypes[14]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_module_config_proto_msgTypes[15]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *ModuleConfig_AmbientLightingConfig) String() string {
@@ -1981,8 +2185,8 @@ func (x *ModuleConfig_AmbientLightingConfig) String() string {
func (*ModuleConfig_AmbientLightingConfig) ProtoMessage() {}
func (x *ModuleConfig_AmbientLightingConfig) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_module_config_proto_msgTypes[14]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_module_config_proto_msgTypes[15]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -1994,7 +2198,7 @@ func (x *ModuleConfig_AmbientLightingConfig) ProtoReflect() protoreflect.Message
// Deprecated: Use ModuleConfig_AmbientLightingConfig.ProtoReflect.Descriptor instead.
func (*ModuleConfig_AmbientLightingConfig) Descriptor() ([]byte, []int) {
- return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 12}
+ return file_meshtastic_module_config_proto_rawDescGZIP(), []int{0, 13}
}
func (x *ModuleConfig_AmbientLightingConfig) GetLedState() bool {
@@ -2034,445 +2238,293 @@ func (x *ModuleConfig_AmbientLightingConfig) GetBlue() uint32 {
var File_meshtastic_module_config_proto protoreflect.FileDescriptor
-var file_meshtastic_module_config_proto_rawDesc = []byte{
- 0x0a, 0x1e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x6d, 0x6f, 0x64,
- 0x75, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
- 0x12, 0x0a, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x22, 0xdb, 0x2b, 0x0a,
- 0x0c, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x39, 0x0a,
- 0x04, 0x6d, 0x71, 0x74, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x6d, 0x65,
- 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43,
- 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x4d, 0x51, 0x54, 0x54, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
- 0x48, 0x00, 0x52, 0x04, 0x6d, 0x71, 0x74, 0x74, 0x12, 0x3f, 0x0a, 0x06, 0x73, 0x65, 0x72, 0x69,
- 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74,
- 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66,
- 0x69, 0x67, 0x2e, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48,
- 0x00, 0x52, 0x06, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x12, 0x6a, 0x0a, 0x15, 0x65, 0x78, 0x74,
- 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69,
- 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74,
- 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66,
- 0x69, 0x67, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x4e, 0x6f, 0x74, 0x69, 0x66,
- 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52,
- 0x14, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63,
- 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x52, 0x0a, 0x0d, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x5f, 0x66,
- 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x6d,
- 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65,
- 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x46, 0x6f, 0x72, 0x77,
- 0x61, 0x72, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x0c, 0x73, 0x74, 0x6f,
- 0x72, 0x65, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x12, 0x49, 0x0a, 0x0a, 0x72, 0x61, 0x6e,
- 0x67, 0x65, 0x5f, 0x74, 0x65, 0x73, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e,
- 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c,
- 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x65, 0x73,
- 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x09, 0x72, 0x61, 0x6e, 0x67, 0x65,
- 0x54, 0x65, 0x73, 0x74, 0x12, 0x48, 0x0a, 0x09, 0x74, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x74, 0x72,
- 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61,
- 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x2e, 0x54, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x48, 0x00, 0x52, 0x09, 0x74, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x12, 0x55,
- 0x0a, 0x0e, 0x63, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
- 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73,
- 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
- 0x2e, 0x43, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f,
- 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x0d, 0x63, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x4d, 0x65,
- 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x3c, 0x0a, 0x05, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x18, 0x08,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69,
- 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x41,
- 0x75, 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x05, 0x61, 0x75,
- 0x64, 0x69, 0x6f, 0x12, 0x58, 0x0a, 0x0f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x68, 0x61,
- 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x6d,
- 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65,
- 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x48, 0x61, 0x72,
- 0x64, 0x77, 0x61, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x0e, 0x72,
- 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x12, 0x52, 0x0a,
- 0x0d, 0x6e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x72, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x0a,
- 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69,
- 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x4e,
- 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x48, 0x00, 0x52, 0x0c, 0x6e, 0x65, 0x69, 0x67, 0x68, 0x62, 0x6f, 0x72, 0x49, 0x6e, 0x66,
- 0x6f, 0x12, 0x5b, 0x0a, 0x10, 0x61, 0x6d, 0x62, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x69, 0x67,
- 0x68, 0x74, 0x69, 0x6e, 0x67, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x6d, 0x65,
- 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43,
- 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x41, 0x6d, 0x62, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x67,
- 0x68, 0x74, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x0f, 0x61,
- 0x6d, 0x62, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x5b,
- 0x0a, 0x10, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x65, 0x6e, 0x73,
- 0x6f, 0x72, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74,
- 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66,
- 0x69, 0x67, 0x2e, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x6e, 0x73,
- 0x6f, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x0f, 0x64, 0x65, 0x74, 0x65,
- 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x12, 0x4b, 0x0a, 0x0a, 0x70,
- 0x61, 0x78, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32,
- 0x29, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x6f, 0x64,
- 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x50, 0x61, 0x78, 0x63, 0x6f, 0x75,
- 0x6e, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x0a, 0x70, 0x61,
- 0x78, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x1a, 0xb6, 0x02, 0x0a, 0x0a, 0x4d, 0x51, 0x54,
- 0x54, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c,
- 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65,
- 0x64, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01,
- 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x75,
- 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75,
- 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77,
- 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, 0x77,
- 0x6f, 0x72, 0x64, 0x12, 0x2d, 0x0a, 0x12, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f,
- 0x6e, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52,
- 0x11, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x61, 0x62, 0x6c,
- 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6a, 0x73, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c,
- 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6a, 0x73, 0x6f, 0x6e, 0x45, 0x6e,
- 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x6c, 0x73, 0x5f, 0x65, 0x6e, 0x61,
- 0x62, 0x6c, 0x65, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x74, 0x6c, 0x73, 0x45,
- 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x6f, 0x74, 0x18, 0x08,
- 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x72, 0x6f, 0x6f, 0x74, 0x12, 0x35, 0x0a, 0x17, 0x70, 0x72,
- 0x6f, 0x78, 0x79, 0x5f, 0x74, 0x6f, 0x5f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x65, 0x6e,
- 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x14, 0x70, 0x72, 0x6f,
- 0x78, 0x79, 0x54, 0x6f, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65,
- 0x64, 0x1a, 0xb3, 0x01, 0x0a, 0x14, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x48, 0x61, 0x72, 0x64,
- 0x77, 0x61, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e,
- 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61,
- 0x62, 0x6c, 0x65, 0x64, 0x12, 0x3b, 0x0a, 0x1a, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x75, 0x6e,
- 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x70, 0x69, 0x6e, 0x5f, 0x61, 0x63, 0x63, 0x65,
- 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x55,
- 0x6e, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64, 0x50, 0x69, 0x6e, 0x41, 0x63, 0x63, 0x65, 0x73,
- 0x73, 0x12, 0x44, 0x0a, 0x0e, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x70,
- 0x69, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6d, 0x65, 0x73, 0x68,
- 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x48, 0x61, 0x72,
- 0x64, 0x77, 0x61, 0x72, 0x65, 0x50, 0x69, 0x6e, 0x52, 0x0d, 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61,
- 0x62, 0x6c, 0x65, 0x50, 0x69, 0x6e, 0x73, 0x1a, 0x57, 0x0a, 0x12, 0x4e, 0x65, 0x69, 0x67, 0x68,
- 0x62, 0x6f, 0x72, 0x49, 0x6e, 0x66, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x18, 0x0a,
- 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07,
- 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x75, 0x70, 0x64, 0x61, 0x74,
- 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d,
- 0x52, 0x0e, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c,
- 0x1a, 0xc4, 0x02, 0x0a, 0x15, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65,
- 0x6e, 0x73, 0x6f, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e,
- 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61,
- 0x62, 0x6c, 0x65, 0x64, 0x12, 0x34, 0x0a, 0x16, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x5f,
- 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x73, 0x18, 0x02,
- 0x20, 0x01, 0x28, 0x0d, 0x52, 0x14, 0x6d, 0x69, 0x6e, 0x69, 0x6d, 0x75, 0x6d, 0x42, 0x72, 0x6f,
- 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x53, 0x65, 0x63, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x73, 0x74,
- 0x61, 0x74, 0x65, 0x5f, 0x62, 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x73, 0x65,
- 0x63, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x73, 0x74, 0x61, 0x74, 0x65, 0x42,
- 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x53, 0x65, 0x63, 0x73, 0x12, 0x1b, 0x0a, 0x09,
- 0x73, 0x65, 0x6e, 0x64, 0x5f, 0x62, 0x65, 0x6c, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52,
- 0x08, 0x73, 0x65, 0x6e, 0x64, 0x42, 0x65, 0x6c, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
- 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a,
- 0x0b, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x5f, 0x70, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01,
- 0x28, 0x0d, 0x52, 0x0a, 0x6d, 0x6f, 0x6e, 0x69, 0x74, 0x6f, 0x72, 0x50, 0x69, 0x6e, 0x12, 0x38,
- 0x0a, 0x18, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x72, 0x69, 0x67,
- 0x67, 0x65, 0x72, 0x65, 0x64, 0x5f, 0x68, 0x69, 0x67, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08,
- 0x52, 0x16, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x72, 0x69, 0x67, 0x67,
- 0x65, 0x72, 0x65, 0x64, 0x48, 0x69, 0x67, 0x68, 0x12, 0x1d, 0x0a, 0x0a, 0x75, 0x73, 0x65, 0x5f,
- 0x70, 0x75, 0x6c, 0x6c, 0x75, 0x70, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x75, 0x73,
- 0x65, 0x50, 0x75, 0x6c, 0x6c, 0x75, 0x70, 0x1a, 0xa2, 0x03, 0x0a, 0x0b, 0x41, 0x75, 0x64, 0x69,
- 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x64, 0x65, 0x63,
- 0x32, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52,
- 0x0d, 0x63, 0x6f, 0x64, 0x65, 0x63, 0x32, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x17,
- 0x0a, 0x07, 0x70, 0x74, 0x74, 0x5f, 0x70, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52,
- 0x06, 0x70, 0x74, 0x74, 0x50, 0x69, 0x6e, 0x12, 0x49, 0x0a, 0x07, 0x62, 0x69, 0x74, 0x72, 0x61,
- 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74,
- 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66,
- 0x69, 0x67, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x41,
- 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x42, 0x61, 0x75, 0x64, 0x52, 0x07, 0x62, 0x69, 0x74, 0x72, 0x61,
- 0x74, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x69, 0x32, 0x73, 0x5f, 0x77, 0x73, 0x18, 0x04, 0x20, 0x01,
- 0x28, 0x0d, 0x52, 0x05, 0x69, 0x32, 0x73, 0x57, 0x73, 0x12, 0x15, 0x0a, 0x06, 0x69, 0x32, 0x73,
- 0x5f, 0x73, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x69, 0x32, 0x73, 0x53, 0x64,
- 0x12, 0x17, 0x0a, 0x07, 0x69, 0x32, 0x73, 0x5f, 0x64, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28,
- 0x0d, 0x52, 0x06, 0x69, 0x32, 0x73, 0x44, 0x69, 0x6e, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x32, 0x73,
- 0x5f, 0x73, 0x63, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x69, 0x32, 0x73, 0x53,
- 0x63, 0x6b, 0x22, 0xa7, 0x01, 0x0a, 0x0a, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x42, 0x61, 0x75,
- 0x64, 0x12, 0x12, 0x0a, 0x0e, 0x43, 0x4f, 0x44, 0x45, 0x43, 0x32, 0x5f, 0x44, 0x45, 0x46, 0x41,
- 0x55, 0x4c, 0x54, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x4f, 0x44, 0x45, 0x43, 0x32, 0x5f,
- 0x33, 0x32, 0x30, 0x30, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x4f, 0x44, 0x45, 0x43, 0x32,
- 0x5f, 0x32, 0x34, 0x30, 0x30, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x4f, 0x44, 0x45, 0x43,
- 0x32, 0x5f, 0x31, 0x36, 0x30, 0x30, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x4f, 0x44, 0x45,
- 0x43, 0x32, 0x5f, 0x31, 0x34, 0x30, 0x30, 0x10, 0x04, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x4f, 0x44,
- 0x45, 0x43, 0x32, 0x5f, 0x31, 0x33, 0x30, 0x30, 0x10, 0x05, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x4f,
- 0x44, 0x45, 0x43, 0x32, 0x5f, 0x31, 0x32, 0x30, 0x30, 0x10, 0x06, 0x12, 0x0e, 0x0a, 0x0a, 0x43,
- 0x4f, 0x44, 0x45, 0x43, 0x32, 0x5f, 0x37, 0x30, 0x30, 0x10, 0x07, 0x12, 0x0f, 0x0a, 0x0b, 0x43,
- 0x4f, 0x44, 0x45, 0x43, 0x32, 0x5f, 0x37, 0x30, 0x30, 0x42, 0x10, 0x08, 0x1a, 0x6a, 0x0a, 0x10,
- 0x50, 0x61, 0x78, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
- 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x3c, 0x0a, 0x1a, 0x70, 0x61,
- 0x78, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f,
- 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x18,
- 0x70, 0x61, 0x78, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
- 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x1a, 0xad, 0x05, 0x0a, 0x0c, 0x53, 0x65, 0x72,
- 0x69, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61,
- 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62,
- 0x6c, 0x65, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x63, 0x68, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28,
- 0x08, 0x52, 0x04, 0x65, 0x63, 0x68, 0x6f, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x78, 0x64, 0x18, 0x03,
- 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x72, 0x78, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x78, 0x64,
- 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x74, 0x78, 0x64, 0x12, 0x45, 0x0a, 0x04, 0x62,
- 0x61, 0x75, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x6d, 0x65, 0x73, 0x68,
- 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e,
- 0x66, 0x69, 0x67, 0x2e, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
- 0x2e, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x5f, 0x42, 0x61, 0x75, 0x64, 0x52, 0x04, 0x62, 0x61,
- 0x75, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x06, 0x20,
- 0x01, 0x28, 0x0d, 0x52, 0x07, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x45, 0x0a, 0x04,
- 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x6d, 0x65, 0x73,
- 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f,
- 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x2e, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x5f, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x6d,
- 0x6f, 0x64, 0x65, 0x12, 0x3f, 0x0a, 0x1c, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x5f,
- 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x5f, 0x70,
- 0x6f, 0x72, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x19, 0x6f, 0x76, 0x65, 0x72, 0x72,
- 0x69, 0x64, 0x65, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c,
- 0x50, 0x6f, 0x72, 0x74, 0x22, 0x8a, 0x02, 0x0a, 0x0b, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x5f,
- 0x42, 0x61, 0x75, 0x64, 0x12, 0x10, 0x0a, 0x0c, 0x42, 0x41, 0x55, 0x44, 0x5f, 0x44, 0x45, 0x46,
- 0x41, 0x55, 0x4c, 0x54, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x42, 0x41, 0x55, 0x44, 0x5f, 0x31,
- 0x31, 0x30, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x42, 0x41, 0x55, 0x44, 0x5f, 0x33, 0x30, 0x30,
- 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x42, 0x41, 0x55, 0x44, 0x5f, 0x36, 0x30, 0x30, 0x10, 0x03,
- 0x12, 0x0d, 0x0a, 0x09, 0x42, 0x41, 0x55, 0x44, 0x5f, 0x31, 0x32, 0x30, 0x30, 0x10, 0x04, 0x12,
- 0x0d, 0x0a, 0x09, 0x42, 0x41, 0x55, 0x44, 0x5f, 0x32, 0x34, 0x30, 0x30, 0x10, 0x05, 0x12, 0x0d,
- 0x0a, 0x09, 0x42, 0x41, 0x55, 0x44, 0x5f, 0x34, 0x38, 0x30, 0x30, 0x10, 0x06, 0x12, 0x0d, 0x0a,
- 0x09, 0x42, 0x41, 0x55, 0x44, 0x5f, 0x39, 0x36, 0x30, 0x30, 0x10, 0x07, 0x12, 0x0e, 0x0a, 0x0a,
- 0x42, 0x41, 0x55, 0x44, 0x5f, 0x31, 0x39, 0x32, 0x30, 0x30, 0x10, 0x08, 0x12, 0x0e, 0x0a, 0x0a,
- 0x42, 0x41, 0x55, 0x44, 0x5f, 0x33, 0x38, 0x34, 0x30, 0x30, 0x10, 0x09, 0x12, 0x0e, 0x0a, 0x0a,
- 0x42, 0x41, 0x55, 0x44, 0x5f, 0x35, 0x37, 0x36, 0x30, 0x30, 0x10, 0x0a, 0x12, 0x0f, 0x0a, 0x0b,
- 0x42, 0x41, 0x55, 0x44, 0x5f, 0x31, 0x31, 0x35, 0x32, 0x30, 0x30, 0x10, 0x0b, 0x12, 0x0f, 0x0a,
- 0x0b, 0x42, 0x41, 0x55, 0x44, 0x5f, 0x32, 0x33, 0x30, 0x34, 0x30, 0x30, 0x10, 0x0c, 0x12, 0x0f,
- 0x0a, 0x0b, 0x42, 0x41, 0x55, 0x44, 0x5f, 0x34, 0x36, 0x30, 0x38, 0x30, 0x30, 0x10, 0x0d, 0x12,
- 0x0f, 0x0a, 0x0b, 0x42, 0x41, 0x55, 0x44, 0x5f, 0x35, 0x37, 0x36, 0x30, 0x30, 0x30, 0x10, 0x0e,
- 0x12, 0x0f, 0x0a, 0x0b, 0x42, 0x41, 0x55, 0x44, 0x5f, 0x39, 0x32, 0x31, 0x36, 0x30, 0x30, 0x10,
- 0x0f, 0x22, 0x55, 0x0a, 0x0b, 0x53, 0x65, 0x72, 0x69, 0x61, 0x6c, 0x5f, 0x4d, 0x6f, 0x64, 0x65,
- 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x00, 0x12, 0x0a, 0x0a,
- 0x06, 0x53, 0x49, 0x4d, 0x50, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x50, 0x52, 0x4f,
- 0x54, 0x4f, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x54, 0x45, 0x58, 0x54, 0x4d, 0x53, 0x47, 0x10,
- 0x03, 0x12, 0x08, 0x0a, 0x04, 0x4e, 0x4d, 0x45, 0x41, 0x10, 0x04, 0x12, 0x0b, 0x0a, 0x07, 0x43,
- 0x41, 0x4c, 0x54, 0x4f, 0x50, 0x4f, 0x10, 0x05, 0x1a, 0xac, 0x04, 0x0a, 0x1a, 0x45, 0x78, 0x74,
- 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
- 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c,
- 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65,
- 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x6d, 0x73, 0x18, 0x02,
- 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x4d, 0x73, 0x12, 0x16,
- 0x0a, 0x06, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06,
- 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74,
- 0x5f, 0x76, 0x69, 0x62, 0x72, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6f, 0x75,
- 0x74, 0x70, 0x75, 0x74, 0x56, 0x69, 0x62, 0x72, 0x61, 0x12, 0x23, 0x0a, 0x0d, 0x6f, 0x75, 0x74,
- 0x70, 0x75, 0x74, 0x5f, 0x62, 0x75, 0x7a, 0x7a, 0x65, 0x72, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d,
- 0x52, 0x0c, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x42, 0x75, 0x7a, 0x7a, 0x65, 0x72, 0x12, 0x16,
- 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06,
- 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x5f,
- 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61,
- 0x6c, 0x65, 0x72, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x61,
- 0x6c, 0x65, 0x72, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x76, 0x69, 0x62,
- 0x72, 0x61, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x4d,
- 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x56, 0x69, 0x62, 0x72, 0x61, 0x12, 0x30, 0x0a, 0x14, 0x61,
- 0x6c, 0x65, 0x72, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x62, 0x75, 0x7a,
- 0x7a, 0x65, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x61, 0x6c, 0x65, 0x72, 0x74,
- 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x75, 0x7a, 0x7a, 0x65, 0x72, 0x12, 0x1d, 0x0a,
- 0x0a, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x5f, 0x62, 0x65, 0x6c, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28,
- 0x08, 0x52, 0x09, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x42, 0x65, 0x6c, 0x6c, 0x12, 0x28, 0x0a, 0x10,
- 0x61, 0x6c, 0x65, 0x72, 0x74, 0x5f, 0x62, 0x65, 0x6c, 0x6c, 0x5f, 0x76, 0x69, 0x62, 0x72, 0x61,
- 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x42, 0x65, 0x6c,
- 0x6c, 0x56, 0x69, 0x62, 0x72, 0x61, 0x12, 0x2a, 0x0a, 0x11, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x5f,
- 0x62, 0x65, 0x6c, 0x6c, 0x5f, 0x62, 0x75, 0x7a, 0x7a, 0x65, 0x72, 0x18, 0x0d, 0x20, 0x01, 0x28,
- 0x08, 0x52, 0x0f, 0x61, 0x6c, 0x65, 0x72, 0x74, 0x42, 0x65, 0x6c, 0x6c, 0x42, 0x75, 0x7a, 0x7a,
- 0x65, 0x72, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x73, 0x65, 0x5f, 0x70, 0x77, 0x6d, 0x18, 0x07, 0x20,
- 0x01, 0x28, 0x08, 0x52, 0x06, 0x75, 0x73, 0x65, 0x50, 0x77, 0x6d, 0x12, 0x1f, 0x0a, 0x0b, 0x6e,
- 0x61, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d,
- 0x52, 0x0a, 0x6e, 0x61, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x29, 0x0a, 0x11,
- 0x75, 0x73, 0x65, 0x5f, 0x69, 0x32, 0x73, 0x5f, 0x61, 0x73, 0x5f, 0x62, 0x75, 0x7a, 0x7a, 0x65,
- 0x72, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x75, 0x73, 0x65, 0x49, 0x32, 0x73, 0x41,
- 0x73, 0x42, 0x75, 0x7a, 0x7a, 0x65, 0x72, 0x1a, 0xc8, 0x01, 0x0a, 0x12, 0x53, 0x74, 0x6f, 0x72,
- 0x65, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x18,
- 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52,
- 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x68, 0x65, 0x61, 0x72,
- 0x74, 0x62, 0x65, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x68, 0x65, 0x61,
- 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64,
- 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73,
- 0x12, 0x2c, 0x0a, 0x12, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x72, 0x65, 0x74, 0x75,
- 0x72, 0x6e, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x68, 0x69,
- 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x4d, 0x61, 0x78, 0x12, 0x32,
- 0x0a, 0x15, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x5f, 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e,
- 0x5f, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x68,
- 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x57, 0x69, 0x6e, 0x64,
- 0x6f, 0x77, 0x1a, 0x57, 0x0a, 0x0f, 0x52, 0x61, 0x6e, 0x67, 0x65, 0x54, 0x65, 0x73, 0x74, 0x43,
- 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
- 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12,
- 0x16, 0x0a, 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52,
- 0x06, 0x73, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x61, 0x76, 0x65, 0x18,
- 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x73, 0x61, 0x76, 0x65, 0x1a, 0xd7, 0x04, 0x0a, 0x0f,
- 0x54, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12,
- 0x34, 0x0a, 0x16, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65,
- 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52,
- 0x14, 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74,
- 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x3e, 0x0a, 0x1b, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e,
- 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x69, 0x6e, 0x74, 0x65,
- 0x72, 0x76, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x19, 0x65, 0x6e, 0x76, 0x69,
- 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74,
- 0x65, 0x72, 0x76, 0x61, 0x6c, 0x12, 0x46, 0x0a, 0x1f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e,
- 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74,
- 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1d,
- 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x61, 0x73, 0x75,
- 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x3c, 0x0a,
- 0x1a, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x63, 0x72,
- 0x65, 0x65, 0x6e, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28,
- 0x08, 0x52, 0x18, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x53, 0x63,
- 0x72, 0x65, 0x65, 0x6e, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x44, 0x0a, 0x1e, 0x65,
- 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x64, 0x69, 0x73, 0x70, 0x6c,
- 0x61, 0x79, 0x5f, 0x66, 0x61, 0x68, 0x72, 0x65, 0x6e, 0x68, 0x65, 0x69, 0x74, 0x18, 0x05, 0x20,
- 0x01, 0x28, 0x08, 0x52, 0x1c, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74,
- 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x46, 0x61, 0x68, 0x72, 0x65, 0x6e, 0x68, 0x65, 0x69,
- 0x74, 0x12, 0x2e, 0x0a, 0x13, 0x61, 0x69, 0x72, 0x5f, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79,
- 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x11,
- 0x61, 0x69, 0x72, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65,
- 0x64, 0x12, 0x30, 0x0a, 0x14, 0x61, 0x69, 0x72, 0x5f, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79,
- 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52,
- 0x12, 0x61, 0x69, 0x72, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x49, 0x6e, 0x74, 0x65, 0x72,
- 0x76, 0x61, 0x6c, 0x12, 0x3a, 0x0a, 0x19, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x6d, 0x65, 0x61,
- 0x73, 0x75, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
- 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x4d, 0x65, 0x61,
- 0x73, 0x75, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12,
- 0x32, 0x0a, 0x15, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f,
- 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13,
- 0x70, 0x6f, 0x77, 0x65, 0x72, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x72,
- 0x76, 0x61, 0x6c, 0x12, 0x30, 0x0a, 0x14, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x73, 0x63, 0x72,
- 0x65, 0x65, 0x6e, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28,
- 0x08, 0x52, 0x12, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x53, 0x63, 0x72, 0x65, 0x65, 0x6e, 0x45, 0x6e,
- 0x61, 0x62, 0x6c, 0x65, 0x64, 0x1a, 0x92, 0x06, 0x0a, 0x13, 0x43, 0x61, 0x6e, 0x6e, 0x65, 0x64,
- 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x27, 0x0a,
- 0x0f, 0x72, 0x6f, 0x74, 0x61, 0x72, 0x79, 0x31, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
- 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x72, 0x6f, 0x74, 0x61, 0x72, 0x79, 0x31, 0x45,
- 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x62,
- 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x70, 0x69, 0x6e, 0x5f, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28,
- 0x0d, 0x52, 0x0f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x50, 0x69,
- 0x6e, 0x41, 0x12, 0x2a, 0x0a, 0x11, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x62, 0x72, 0x6f, 0x6b, 0x65,
- 0x72, 0x5f, 0x70, 0x69, 0x6e, 0x5f, 0x62, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x69,
- 0x6e, 0x70, 0x75, 0x74, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x50, 0x69, 0x6e, 0x42, 0x12, 0x32,
- 0x0a, 0x15, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x70, 0x69,
- 0x6e, 0x5f, 0x70, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x13, 0x69,
- 0x6e, 0x70, 0x75, 0x74, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x50, 0x69, 0x6e, 0x50, 0x72, 0x65,
- 0x73, 0x73, 0x12, 0x6d, 0x0a, 0x14, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x62, 0x72, 0x6f, 0x6b, 0x65,
- 0x72, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x77, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e,
- 0x32, 0x3b, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x6f,
- 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x43, 0x61, 0x6e, 0x6e, 0x65,
- 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x49,
- 0x6e, 0x70, 0x75, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x72, 0x52, 0x12, 0x69,
- 0x6e, 0x70, 0x75, 0x74, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x43,
- 0x77, 0x12, 0x6f, 0x0a, 0x15, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72,
- 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x63, 0x77, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e,
- 0x32, 0x3b, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x6f,
- 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x43, 0x61, 0x6e, 0x6e, 0x65,
- 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x49,
- 0x6e, 0x70, 0x75, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x72, 0x52, 0x13, 0x69,
- 0x6e, 0x70, 0x75, 0x74, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x43,
- 0x63, 0x77, 0x12, 0x73, 0x0a, 0x17, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x62, 0x72, 0x6f, 0x6b, 0x65,
- 0x72, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x72, 0x65, 0x73, 0x73, 0x18, 0x07, 0x20,
- 0x01, 0x28, 0x0e, 0x32, 0x3b, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63,
- 0x2e, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x43, 0x61,
- 0x6e, 0x6e, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69,
- 0x67, 0x2e, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x72,
- 0x52, 0x15, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x45, 0x76, 0x65,
- 0x6e, 0x74, 0x50, 0x72, 0x65, 0x73, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x75, 0x70, 0x64, 0x6f, 0x77,
- 0x6e, 0x31, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08,
- 0x52, 0x0e, 0x75, 0x70, 0x64, 0x6f, 0x77, 0x6e, 0x31, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
- 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28,
- 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x2c, 0x0a, 0x12, 0x61, 0x6c,
- 0x6c, 0x6f, 0x77, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
- 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x49, 0x6e, 0x70,
- 0x75, 0x74, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x64,
- 0x5f, 0x62, 0x65, 0x6c, 0x6c, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x73, 0x65, 0x6e,
- 0x64, 0x42, 0x65, 0x6c, 0x6c, 0x22, 0x63, 0x0a, 0x0e, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x45, 0x76,
- 0x65, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x72, 0x12, 0x08, 0x0a, 0x04, 0x4e, 0x4f, 0x4e, 0x45, 0x10,
- 0x00, 0x12, 0x06, 0x0a, 0x02, 0x55, 0x50, 0x10, 0x11, 0x12, 0x08, 0x0a, 0x04, 0x44, 0x4f, 0x57,
- 0x4e, 0x10, 0x12, 0x12, 0x08, 0x0a, 0x04, 0x4c, 0x45, 0x46, 0x54, 0x10, 0x13, 0x12, 0x09, 0x0a,
- 0x05, 0x52, 0x49, 0x47, 0x48, 0x54, 0x10, 0x14, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x45, 0x4c, 0x45,
- 0x43, 0x54, 0x10, 0x0a, 0x12, 0x08, 0x0a, 0x04, 0x42, 0x41, 0x43, 0x4b, 0x10, 0x1b, 0x12, 0x0a,
- 0x0a, 0x06, 0x43, 0x41, 0x4e, 0x43, 0x45, 0x4c, 0x10, 0x18, 0x1a, 0x8a, 0x01, 0x0a, 0x15, 0x41,
- 0x6d, 0x62, 0x69, 0x65, 0x6e, 0x74, 0x4c, 0x69, 0x67, 0x68, 0x74, 0x69, 0x6e, 0x67, 0x43, 0x6f,
- 0x6e, 0x66, 0x69, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x6c, 0x65, 0x64, 0x5f, 0x73, 0x74, 0x61, 0x74,
- 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x6c, 0x65, 0x64, 0x53, 0x74, 0x61, 0x74,
- 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01,
- 0x28, 0x0d, 0x52, 0x07, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x72,
- 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x72, 0x65, 0x64, 0x12, 0x14, 0x0a,
- 0x05, 0x67, 0x72, 0x65, 0x65, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x67, 0x72,
- 0x65, 0x65, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6c, 0x75, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28,
- 0x0d, 0x52, 0x04, 0x62, 0x6c, 0x75, 0x65, 0x42, 0x11, 0x0a, 0x0f, 0x70, 0x61, 0x79, 0x6c, 0x6f,
- 0x61, 0x64, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x22, 0x79, 0x0a, 0x11, 0x52, 0x65,
- 0x6d, 0x6f, 0x74, 0x65, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x50, 0x69, 0x6e, 0x12,
- 0x19, 0x0a, 0x08, 0x67, 0x70, 0x69, 0x6f, 0x5f, 0x70, 0x69, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x0d, 0x52, 0x07, 0x67, 0x70, 0x69, 0x6f, 0x50, 0x69, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
- 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x35,
- 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x21, 0x2e, 0x6d,
- 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65,
- 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x50, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52,
- 0x04, 0x74, 0x79, 0x70, 0x65, 0x2a, 0x49, 0x0a, 0x15, 0x52, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x48,
- 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x50, 0x69, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b,
- 0x0a, 0x07, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x44,
- 0x49, 0x47, 0x49, 0x54, 0x41, 0x4c, 0x5f, 0x52, 0x45, 0x41, 0x44, 0x10, 0x01, 0x12, 0x11, 0x0a,
- 0x0d, 0x44, 0x49, 0x47, 0x49, 0x54, 0x41, 0x4c, 0x5f, 0x57, 0x52, 0x49, 0x54, 0x45, 0x10, 0x02,
- 0x42, 0x67, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x65, 0x65, 0x6b, 0x73, 0x76, 0x69, 0x6c,
- 0x6c, 0x65, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x42, 0x12, 0x4d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x43,
- 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x5a, 0x22, 0x67, 0x69, 0x74,
- 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74,
- 0x69, 0x63, 0x2f, 0x67, 0x6f, 0x2f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0xaa,
- 0x02, 0x14, 0x4d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x50, 0x72, 0x6f,
- 0x74, 0x6f, 0x62, 0x75, 0x66, 0x73, 0xba, 0x02, 0x00, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
- 0x33,
-}
+const file_meshtastic_module_config_proto_rawDesc = "" +
+ "\n" +
+ "\x1emeshtastic/module_config.proto\x12\n" +
+ "meshtastic\"\xb72\n" +
+ "\fModuleConfig\x129\n" +
+ "\x04mqtt\x18\x01 \x01(\v2#.meshtastic.ModuleConfig.MQTTConfigH\x00R\x04mqtt\x12?\n" +
+ "\x06serial\x18\x02 \x01(\v2%.meshtastic.ModuleConfig.SerialConfigH\x00R\x06serial\x12j\n" +
+ "\x15external_notification\x18\x03 \x01(\v23.meshtastic.ModuleConfig.ExternalNotificationConfigH\x00R\x14externalNotification\x12R\n" +
+ "\rstore_forward\x18\x04 \x01(\v2+.meshtastic.ModuleConfig.StoreForwardConfigH\x00R\fstoreForward\x12I\n" +
+ "\n" +
+ "range_test\x18\x05 \x01(\v2(.meshtastic.ModuleConfig.RangeTestConfigH\x00R\trangeTest\x12H\n" +
+ "\ttelemetry\x18\x06 \x01(\v2(.meshtastic.ModuleConfig.TelemetryConfigH\x00R\ttelemetry\x12U\n" +
+ "\x0ecanned_message\x18\a \x01(\v2,.meshtastic.ModuleConfig.CannedMessageConfigH\x00R\rcannedMessage\x12<\n" +
+ "\x05audio\x18\b \x01(\v2$.meshtastic.ModuleConfig.AudioConfigH\x00R\x05audio\x12X\n" +
+ "\x0fremote_hardware\x18\t \x01(\v2-.meshtastic.ModuleConfig.RemoteHardwareConfigH\x00R\x0eremoteHardware\x12R\n" +
+ "\rneighbor_info\x18\n" +
+ " \x01(\v2+.meshtastic.ModuleConfig.NeighborInfoConfigH\x00R\fneighborInfo\x12[\n" +
+ "\x10ambient_lighting\x18\v \x01(\v2..meshtastic.ModuleConfig.AmbientLightingConfigH\x00R\x0fambientLighting\x12[\n" +
+ "\x10detection_sensor\x18\f \x01(\v2..meshtastic.ModuleConfig.DetectionSensorConfigH\x00R\x0fdetectionSensor\x12K\n" +
+ "\n" +
+ "paxcounter\x18\r \x01(\v2).meshtastic.ModuleConfig.PaxcounterConfigH\x00R\n" +
+ "paxcounter\x1a\xc6\x03\n" +
+ "\n" +
+ "MQTTConfig\x12\x18\n" +
+ "\aenabled\x18\x01 \x01(\bR\aenabled\x12\x18\n" +
+ "\aaddress\x18\x02 \x01(\tR\aaddress\x12\x1a\n" +
+ "\busername\x18\x03 \x01(\tR\busername\x12\x1a\n" +
+ "\bpassword\x18\x04 \x01(\tR\bpassword\x12-\n" +
+ "\x12encryption_enabled\x18\x05 \x01(\bR\x11encryptionEnabled\x12!\n" +
+ "\fjson_enabled\x18\x06 \x01(\bR\vjsonEnabled\x12\x1f\n" +
+ "\vtls_enabled\x18\a \x01(\bR\n" +
+ "tlsEnabled\x12\x12\n" +
+ "\x04root\x18\b \x01(\tR\x04root\x125\n" +
+ "\x17proxy_to_client_enabled\x18\t \x01(\bR\x14proxyToClientEnabled\x122\n" +
+ "\x15map_reporting_enabled\x18\n" +
+ " \x01(\bR\x13mapReportingEnabled\x12Z\n" +
+ "\x13map_report_settings\x18\v \x01(\v2*.meshtastic.ModuleConfig.MapReportSettingsR\x11mapReportSettings\x1a\xac\x01\n" +
+ "\x11MapReportSettings\x122\n" +
+ "\x15publish_interval_secs\x18\x01 \x01(\rR\x13publishIntervalSecs\x12-\n" +
+ "\x12position_precision\x18\x02 \x01(\rR\x11positionPrecision\x124\n" +
+ "\x16should_report_location\x18\x03 \x01(\bR\x14shouldReportLocation\x1a\xb3\x01\n" +
+ "\x14RemoteHardwareConfig\x12\x18\n" +
+ "\aenabled\x18\x01 \x01(\bR\aenabled\x12;\n" +
+ "\x1aallow_undefined_pin_access\x18\x02 \x01(\bR\x17allowUndefinedPinAccess\x12D\n" +
+ "\x0eavailable_pins\x18\x03 \x03(\v2\x1d.meshtastic.RemoteHardwarePinR\ravailablePins\x1a\x85\x01\n" +
+ "\x12NeighborInfoConfig\x12\x18\n" +
+ "\aenabled\x18\x01 \x01(\bR\aenabled\x12'\n" +
+ "\x0fupdate_interval\x18\x02 \x01(\rR\x0eupdateInterval\x12,\n" +
+ "\x12transmit_over_lora\x18\x03 \x01(\bR\x10transmitOverLora\x1a\x87\x04\n" +
+ "\x15DetectionSensorConfig\x12\x18\n" +
+ "\aenabled\x18\x01 \x01(\bR\aenabled\x124\n" +
+ "\x16minimum_broadcast_secs\x18\x02 \x01(\rR\x14minimumBroadcastSecs\x120\n" +
+ "\x14state_broadcast_secs\x18\x03 \x01(\rR\x12stateBroadcastSecs\x12\x1b\n" +
+ "\tsend_bell\x18\x04 \x01(\bR\bsendBell\x12\x12\n" +
+ "\x04name\x18\x05 \x01(\tR\x04name\x12\x1f\n" +
+ "\vmonitor_pin\x18\x06 \x01(\rR\n" +
+ "monitorPin\x12p\n" +
+ "\x16detection_trigger_type\x18\a \x01(\x0e2:.meshtastic.ModuleConfig.DetectionSensorConfig.TriggerTypeR\x14detectionTriggerType\x12\x1d\n" +
+ "\n" +
+ "use_pullup\x18\b \x01(\bR\tusePullup\"\x88\x01\n" +
+ "\vTriggerType\x12\r\n" +
+ "\tLOGIC_LOW\x10\x00\x12\x0e\n" +
+ "\n" +
+ "LOGIC_HIGH\x10\x01\x12\x10\n" +
+ "\fFALLING_EDGE\x10\x02\x12\x0f\n" +
+ "\vRISING_EDGE\x10\x03\x12\x1a\n" +
+ "\x16EITHER_EDGE_ACTIVE_LOW\x10\x04\x12\x1b\n" +
+ "\x17EITHER_EDGE_ACTIVE_HIGH\x10\x05\x1a\xa2\x03\n" +
+ "\vAudioConfig\x12%\n" +
+ "\x0ecodec2_enabled\x18\x01 \x01(\bR\rcodec2Enabled\x12\x17\n" +
+ "\aptt_pin\x18\x02 \x01(\rR\x06pttPin\x12I\n" +
+ "\abitrate\x18\x03 \x01(\x0e2/.meshtastic.ModuleConfig.AudioConfig.Audio_BaudR\abitrate\x12\x15\n" +
+ "\x06i2s_ws\x18\x04 \x01(\rR\x05i2sWs\x12\x15\n" +
+ "\x06i2s_sd\x18\x05 \x01(\rR\x05i2sSd\x12\x17\n" +
+ "\ai2s_din\x18\x06 \x01(\rR\x06i2sDin\x12\x17\n" +
+ "\ai2s_sck\x18\a \x01(\rR\x06i2sSck\"\xa7\x01\n" +
+ "\n" +
+ "Audio_Baud\x12\x12\n" +
+ "\x0eCODEC2_DEFAULT\x10\x00\x12\x0f\n" +
+ "\vCODEC2_3200\x10\x01\x12\x0f\n" +
+ "\vCODEC2_2400\x10\x02\x12\x0f\n" +
+ "\vCODEC2_1600\x10\x03\x12\x0f\n" +
+ "\vCODEC2_1400\x10\x04\x12\x0f\n" +
+ "\vCODEC2_1300\x10\x05\x12\x0f\n" +
+ "\vCODEC2_1200\x10\x06\x12\x0e\n" +
+ "\n" +
+ "CODEC2_700\x10\a\x12\x0f\n" +
+ "\vCODEC2_700B\x10\b\x1a\xb6\x01\n" +
+ "\x10PaxcounterConfig\x12\x18\n" +
+ "\aenabled\x18\x01 \x01(\bR\aenabled\x12<\n" +
+ "\x1apaxcounter_update_interval\x18\x02 \x01(\rR\x18paxcounterUpdateInterval\x12%\n" +
+ "\x0ewifi_threshold\x18\x03 \x01(\x05R\rwifiThreshold\x12#\n" +
+ "\rble_threshold\x18\x04 \x01(\x05R\fbleThreshold\x1a\xc6\x05\n" +
+ "\fSerialConfig\x12\x18\n" +
+ "\aenabled\x18\x01 \x01(\bR\aenabled\x12\x12\n" +
+ "\x04echo\x18\x02 \x01(\bR\x04echo\x12\x10\n" +
+ "\x03rxd\x18\x03 \x01(\rR\x03rxd\x12\x10\n" +
+ "\x03txd\x18\x04 \x01(\rR\x03txd\x12E\n" +
+ "\x04baud\x18\x05 \x01(\x0e21.meshtastic.ModuleConfig.SerialConfig.Serial_BaudR\x04baud\x12\x18\n" +
+ "\atimeout\x18\x06 \x01(\rR\atimeout\x12E\n" +
+ "\x04mode\x18\a \x01(\x0e21.meshtastic.ModuleConfig.SerialConfig.Serial_ModeR\x04mode\x12?\n" +
+ "\x1coverride_console_serial_port\x18\b \x01(\bR\x19overrideConsoleSerialPort\"\x8a\x02\n" +
+ "\vSerial_Baud\x12\x10\n" +
+ "\fBAUD_DEFAULT\x10\x00\x12\f\n" +
+ "\bBAUD_110\x10\x01\x12\f\n" +
+ "\bBAUD_300\x10\x02\x12\f\n" +
+ "\bBAUD_600\x10\x03\x12\r\n" +
+ "\tBAUD_1200\x10\x04\x12\r\n" +
+ "\tBAUD_2400\x10\x05\x12\r\n" +
+ "\tBAUD_4800\x10\x06\x12\r\n" +
+ "\tBAUD_9600\x10\a\x12\x0e\n" +
+ "\n" +
+ "BAUD_19200\x10\b\x12\x0e\n" +
+ "\n" +
+ "BAUD_38400\x10\t\x12\x0e\n" +
+ "\n" +
+ "BAUD_57600\x10\n" +
+ "\x12\x0f\n" +
+ "\vBAUD_115200\x10\v\x12\x0f\n" +
+ "\vBAUD_230400\x10\f\x12\x0f\n" +
+ "\vBAUD_460800\x10\r\x12\x0f\n" +
+ "\vBAUD_576000\x10\x0e\x12\x0f\n" +
+ "\vBAUD_921600\x10\x0f\"n\n" +
+ "\vSerial_Mode\x12\v\n" +
+ "\aDEFAULT\x10\x00\x12\n" +
+ "\n" +
+ "\x06SIMPLE\x10\x01\x12\t\n" +
+ "\x05PROTO\x10\x02\x12\v\n" +
+ "\aTEXTMSG\x10\x03\x12\b\n" +
+ "\x04NMEA\x10\x04\x12\v\n" +
+ "\aCALTOPO\x10\x05\x12\b\n" +
+ "\x04WS85\x10\x06\x12\r\n" +
+ "\tVE_DIRECT\x10\a\x1a\xac\x04\n" +
+ "\x1aExternalNotificationConfig\x12\x18\n" +
+ "\aenabled\x18\x01 \x01(\bR\aenabled\x12\x1b\n" +
+ "\toutput_ms\x18\x02 \x01(\rR\boutputMs\x12\x16\n" +
+ "\x06output\x18\x03 \x01(\rR\x06output\x12!\n" +
+ "\foutput_vibra\x18\b \x01(\rR\voutputVibra\x12#\n" +
+ "\routput_buzzer\x18\t \x01(\rR\foutputBuzzer\x12\x16\n" +
+ "\x06active\x18\x04 \x01(\bR\x06active\x12#\n" +
+ "\ralert_message\x18\x05 \x01(\bR\falertMessage\x12.\n" +
+ "\x13alert_message_vibra\x18\n" +
+ " \x01(\bR\x11alertMessageVibra\x120\n" +
+ "\x14alert_message_buzzer\x18\v \x01(\bR\x12alertMessageBuzzer\x12\x1d\n" +
+ "\n" +
+ "alert_bell\x18\x06 \x01(\bR\talertBell\x12(\n" +
+ "\x10alert_bell_vibra\x18\f \x01(\bR\x0ealertBellVibra\x12*\n" +
+ "\x11alert_bell_buzzer\x18\r \x01(\bR\x0falertBellBuzzer\x12\x17\n" +
+ "\ause_pwm\x18\a \x01(\bR\x06usePwm\x12\x1f\n" +
+ "\vnag_timeout\x18\x0e \x01(\rR\n" +
+ "nagTimeout\x12)\n" +
+ "\x11use_i2s_as_buzzer\x18\x0f \x01(\bR\x0euseI2sAsBuzzer\x1a\xe5\x01\n" +
+ "\x12StoreForwardConfig\x12\x18\n" +
+ "\aenabled\x18\x01 \x01(\bR\aenabled\x12\x1c\n" +
+ "\theartbeat\x18\x02 \x01(\bR\theartbeat\x12\x18\n" +
+ "\arecords\x18\x03 \x01(\rR\arecords\x12,\n" +
+ "\x12history_return_max\x18\x04 \x01(\rR\x10historyReturnMax\x122\n" +
+ "\x15history_return_window\x18\x05 \x01(\rR\x13historyReturnWindow\x12\x1b\n" +
+ "\tis_server\x18\x06 \x01(\bR\bisServer\x1aW\n" +
+ "\x0fRangeTestConfig\x12\x18\n" +
+ "\aenabled\x18\x01 \x01(\bR\aenabled\x12\x16\n" +
+ "\x06sender\x18\x02 \x01(\rR\x06sender\x12\x12\n" +
+ "\x04save\x18\x03 \x01(\bR\x04save\x1a\xff\x05\n" +
+ "\x0fTelemetryConfig\x124\n" +
+ "\x16device_update_interval\x18\x01 \x01(\rR\x14deviceUpdateInterval\x12>\n" +
+ "\x1benvironment_update_interval\x18\x02 \x01(\rR\x19environmentUpdateInterval\x12F\n" +
+ "\x1fenvironment_measurement_enabled\x18\x03 \x01(\bR\x1denvironmentMeasurementEnabled\x12<\n" +
+ "\x1aenvironment_screen_enabled\x18\x04 \x01(\bR\x18environmentScreenEnabled\x12D\n" +
+ "\x1eenvironment_display_fahrenheit\x18\x05 \x01(\bR\x1cenvironmentDisplayFahrenheit\x12.\n" +
+ "\x13air_quality_enabled\x18\x06 \x01(\bR\x11airQualityEnabled\x120\n" +
+ "\x14air_quality_interval\x18\a \x01(\rR\x12airQualityInterval\x12:\n" +
+ "\x19power_measurement_enabled\x18\b \x01(\bR\x17powerMeasurementEnabled\x122\n" +
+ "\x15power_update_interval\x18\t \x01(\rR\x13powerUpdateInterval\x120\n" +
+ "\x14power_screen_enabled\x18\n" +
+ " \x01(\bR\x12powerScreenEnabled\x12<\n" +
+ "\x1ahealth_measurement_enabled\x18\v \x01(\bR\x18healthMeasurementEnabled\x124\n" +
+ "\x16health_update_interval\x18\f \x01(\rR\x14healthUpdateInterval\x122\n" +
+ "\x15health_screen_enabled\x18\r \x01(\bR\x13healthScreenEnabled\x1a\x92\x06\n" +
+ "\x13CannedMessageConfig\x12'\n" +
+ "\x0frotary1_enabled\x18\x01 \x01(\bR\x0erotary1Enabled\x12*\n" +
+ "\x11inputbroker_pin_a\x18\x02 \x01(\rR\x0finputbrokerPinA\x12*\n" +
+ "\x11inputbroker_pin_b\x18\x03 \x01(\rR\x0finputbrokerPinB\x122\n" +
+ "\x15inputbroker_pin_press\x18\x04 \x01(\rR\x13inputbrokerPinPress\x12m\n" +
+ "\x14inputbroker_event_cw\x18\x05 \x01(\x0e2;.meshtastic.ModuleConfig.CannedMessageConfig.InputEventCharR\x12inputbrokerEventCw\x12o\n" +
+ "\x15inputbroker_event_ccw\x18\x06 \x01(\x0e2;.meshtastic.ModuleConfig.CannedMessageConfig.InputEventCharR\x13inputbrokerEventCcw\x12s\n" +
+ "\x17inputbroker_event_press\x18\a \x01(\x0e2;.meshtastic.ModuleConfig.CannedMessageConfig.InputEventCharR\x15inputbrokerEventPress\x12'\n" +
+ "\x0fupdown1_enabled\x18\b \x01(\bR\x0eupdown1Enabled\x12\x18\n" +
+ "\aenabled\x18\t \x01(\bR\aenabled\x12,\n" +
+ "\x12allow_input_source\x18\n" +
+ " \x01(\tR\x10allowInputSource\x12\x1b\n" +
+ "\tsend_bell\x18\v \x01(\bR\bsendBell\"c\n" +
+ "\x0eInputEventChar\x12\b\n" +
+ "\x04NONE\x10\x00\x12\x06\n" +
+ "\x02UP\x10\x11\x12\b\n" +
+ "\x04DOWN\x10\x12\x12\b\n" +
+ "\x04LEFT\x10\x13\x12\t\n" +
+ "\x05RIGHT\x10\x14\x12\n" +
+ "\n" +
+ "\x06SELECT\x10\n" +
+ "\x12\b\n" +
+ "\x04BACK\x10\x1b\x12\n" +
+ "\n" +
+ "\x06CANCEL\x10\x18\x1a\x8a\x01\n" +
+ "\x15AmbientLightingConfig\x12\x1b\n" +
+ "\tled_state\x18\x01 \x01(\bR\bledState\x12\x18\n" +
+ "\acurrent\x18\x02 \x01(\rR\acurrent\x12\x10\n" +
+ "\x03red\x18\x03 \x01(\rR\x03red\x12\x14\n" +
+ "\x05green\x18\x04 \x01(\rR\x05green\x12\x12\n" +
+ "\x04blue\x18\x05 \x01(\rR\x04blueB\x11\n" +
+ "\x0fpayload_variant\"y\n" +
+ "\x11RemoteHardwarePin\x12\x19\n" +
+ "\bgpio_pin\x18\x01 \x01(\rR\agpioPin\x12\x12\n" +
+ "\x04name\x18\x02 \x01(\tR\x04name\x125\n" +
+ "\x04type\x18\x03 \x01(\x0e2!.meshtastic.RemoteHardwarePinTypeR\x04type*I\n" +
+ "\x15RemoteHardwarePinType\x12\v\n" +
+ "\aUNKNOWN\x10\x00\x12\x10\n" +
+ "\fDIGITAL_READ\x10\x01\x12\x11\n" +
+ "\rDIGITAL_WRITE\x10\x02Bg\n" +
+ "\x13com.geeksville.meshB\x12ModuleConfigProtosZ\"github.com/meshtastic/go/generated\xaa\x02\x14Meshtastic.Protobufs\xba\x02\x00b\x06proto3"
var (
file_meshtastic_module_config_proto_rawDescOnce sync.Once
- file_meshtastic_module_config_proto_rawDescData = file_meshtastic_module_config_proto_rawDesc
+ file_meshtastic_module_config_proto_rawDescData []byte
)
func file_meshtastic_module_config_proto_rawDescGZIP() []byte {
file_meshtastic_module_config_proto_rawDescOnce.Do(func() {
- file_meshtastic_module_config_proto_rawDescData = protoimpl.X.CompressGZIP(file_meshtastic_module_config_proto_rawDescData)
+ file_meshtastic_module_config_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_meshtastic_module_config_proto_rawDesc), len(file_meshtastic_module_config_proto_rawDesc)))
})
return file_meshtastic_module_config_proto_rawDescData
}
-var file_meshtastic_module_config_proto_enumTypes = make([]protoimpl.EnumInfo, 5)
-var file_meshtastic_module_config_proto_msgTypes = make([]protoimpl.MessageInfo, 15)
-var file_meshtastic_module_config_proto_goTypes = []interface{}{
+var file_meshtastic_module_config_proto_enumTypes = make([]protoimpl.EnumInfo, 6)
+var file_meshtastic_module_config_proto_msgTypes = make([]protoimpl.MessageInfo, 16)
+var file_meshtastic_module_config_proto_goTypes = []any{
(RemoteHardwarePinType)(0), // 0: meshtastic.RemoteHardwarePinType
- (ModuleConfig_AudioConfig_Audio_Baud)(0), // 1: meshtastic.ModuleConfig.AudioConfig.Audio_Baud
- (ModuleConfig_SerialConfig_Serial_Baud)(0), // 2: meshtastic.ModuleConfig.SerialConfig.Serial_Baud
- (ModuleConfig_SerialConfig_Serial_Mode)(0), // 3: meshtastic.ModuleConfig.SerialConfig.Serial_Mode
- (ModuleConfig_CannedMessageConfig_InputEventChar)(0), // 4: meshtastic.ModuleConfig.CannedMessageConfig.InputEventChar
- (*ModuleConfig)(nil), // 5: meshtastic.ModuleConfig
- (*RemoteHardwarePin)(nil), // 6: meshtastic.RemoteHardwarePin
- (*ModuleConfig_MQTTConfig)(nil), // 7: meshtastic.ModuleConfig.MQTTConfig
- (*ModuleConfig_RemoteHardwareConfig)(nil), // 8: meshtastic.ModuleConfig.RemoteHardwareConfig
- (*ModuleConfig_NeighborInfoConfig)(nil), // 9: meshtastic.ModuleConfig.NeighborInfoConfig
- (*ModuleConfig_DetectionSensorConfig)(nil), // 10: meshtastic.ModuleConfig.DetectionSensorConfig
- (*ModuleConfig_AudioConfig)(nil), // 11: meshtastic.ModuleConfig.AudioConfig
- (*ModuleConfig_PaxcounterConfig)(nil), // 12: meshtastic.ModuleConfig.PaxcounterConfig
- (*ModuleConfig_SerialConfig)(nil), // 13: meshtastic.ModuleConfig.SerialConfig
- (*ModuleConfig_ExternalNotificationConfig)(nil), // 14: meshtastic.ModuleConfig.ExternalNotificationConfig
- (*ModuleConfig_StoreForwardConfig)(nil), // 15: meshtastic.ModuleConfig.StoreForwardConfig
- (*ModuleConfig_RangeTestConfig)(nil), // 16: meshtastic.ModuleConfig.RangeTestConfig
- (*ModuleConfig_TelemetryConfig)(nil), // 17: meshtastic.ModuleConfig.TelemetryConfig
- (*ModuleConfig_CannedMessageConfig)(nil), // 18: meshtastic.ModuleConfig.CannedMessageConfig
- (*ModuleConfig_AmbientLightingConfig)(nil), // 19: meshtastic.ModuleConfig.AmbientLightingConfig
+ (ModuleConfig_DetectionSensorConfig_TriggerType)(0), // 1: meshtastic.ModuleConfig.DetectionSensorConfig.TriggerType
+ (ModuleConfig_AudioConfig_Audio_Baud)(0), // 2: meshtastic.ModuleConfig.AudioConfig.Audio_Baud
+ (ModuleConfig_SerialConfig_Serial_Baud)(0), // 3: meshtastic.ModuleConfig.SerialConfig.Serial_Baud
+ (ModuleConfig_SerialConfig_Serial_Mode)(0), // 4: meshtastic.ModuleConfig.SerialConfig.Serial_Mode
+ (ModuleConfig_CannedMessageConfig_InputEventChar)(0), // 5: meshtastic.ModuleConfig.CannedMessageConfig.InputEventChar
+ (*ModuleConfig)(nil), // 6: meshtastic.ModuleConfig
+ (*RemoteHardwarePin)(nil), // 7: meshtastic.RemoteHardwarePin
+ (*ModuleConfig_MQTTConfig)(nil), // 8: meshtastic.ModuleConfig.MQTTConfig
+ (*ModuleConfig_MapReportSettings)(nil), // 9: meshtastic.ModuleConfig.MapReportSettings
+ (*ModuleConfig_RemoteHardwareConfig)(nil), // 10: meshtastic.ModuleConfig.RemoteHardwareConfig
+ (*ModuleConfig_NeighborInfoConfig)(nil), // 11: meshtastic.ModuleConfig.NeighborInfoConfig
+ (*ModuleConfig_DetectionSensorConfig)(nil), // 12: meshtastic.ModuleConfig.DetectionSensorConfig
+ (*ModuleConfig_AudioConfig)(nil), // 13: meshtastic.ModuleConfig.AudioConfig
+ (*ModuleConfig_PaxcounterConfig)(nil), // 14: meshtastic.ModuleConfig.PaxcounterConfig
+ (*ModuleConfig_SerialConfig)(nil), // 15: meshtastic.ModuleConfig.SerialConfig
+ (*ModuleConfig_ExternalNotificationConfig)(nil), // 16: meshtastic.ModuleConfig.ExternalNotificationConfig
+ (*ModuleConfig_StoreForwardConfig)(nil), // 17: meshtastic.ModuleConfig.StoreForwardConfig
+ (*ModuleConfig_RangeTestConfig)(nil), // 18: meshtastic.ModuleConfig.RangeTestConfig
+ (*ModuleConfig_TelemetryConfig)(nil), // 19: meshtastic.ModuleConfig.TelemetryConfig
+ (*ModuleConfig_CannedMessageConfig)(nil), // 20: meshtastic.ModuleConfig.CannedMessageConfig
+ (*ModuleConfig_AmbientLightingConfig)(nil), // 21: meshtastic.ModuleConfig.AmbientLightingConfig
}
var file_meshtastic_module_config_proto_depIdxs = []int32{
- 7, // 0: meshtastic.ModuleConfig.mqtt:type_name -> meshtastic.ModuleConfig.MQTTConfig
- 13, // 1: meshtastic.ModuleConfig.serial:type_name -> meshtastic.ModuleConfig.SerialConfig
- 14, // 2: meshtastic.ModuleConfig.external_notification:type_name -> meshtastic.ModuleConfig.ExternalNotificationConfig
- 15, // 3: meshtastic.ModuleConfig.store_forward:type_name -> meshtastic.ModuleConfig.StoreForwardConfig
- 16, // 4: meshtastic.ModuleConfig.range_test:type_name -> meshtastic.ModuleConfig.RangeTestConfig
- 17, // 5: meshtastic.ModuleConfig.telemetry:type_name -> meshtastic.ModuleConfig.TelemetryConfig
- 18, // 6: meshtastic.ModuleConfig.canned_message:type_name -> meshtastic.ModuleConfig.CannedMessageConfig
- 11, // 7: meshtastic.ModuleConfig.audio:type_name -> meshtastic.ModuleConfig.AudioConfig
- 8, // 8: meshtastic.ModuleConfig.remote_hardware:type_name -> meshtastic.ModuleConfig.RemoteHardwareConfig
- 9, // 9: meshtastic.ModuleConfig.neighbor_info:type_name -> meshtastic.ModuleConfig.NeighborInfoConfig
- 19, // 10: meshtastic.ModuleConfig.ambient_lighting:type_name -> meshtastic.ModuleConfig.AmbientLightingConfig
- 10, // 11: meshtastic.ModuleConfig.detection_sensor:type_name -> meshtastic.ModuleConfig.DetectionSensorConfig
- 12, // 12: meshtastic.ModuleConfig.paxcounter:type_name -> meshtastic.ModuleConfig.PaxcounterConfig
+ 8, // 0: meshtastic.ModuleConfig.mqtt:type_name -> meshtastic.ModuleConfig.MQTTConfig
+ 15, // 1: meshtastic.ModuleConfig.serial:type_name -> meshtastic.ModuleConfig.SerialConfig
+ 16, // 2: meshtastic.ModuleConfig.external_notification:type_name -> meshtastic.ModuleConfig.ExternalNotificationConfig
+ 17, // 3: meshtastic.ModuleConfig.store_forward:type_name -> meshtastic.ModuleConfig.StoreForwardConfig
+ 18, // 4: meshtastic.ModuleConfig.range_test:type_name -> meshtastic.ModuleConfig.RangeTestConfig
+ 19, // 5: meshtastic.ModuleConfig.telemetry:type_name -> meshtastic.ModuleConfig.TelemetryConfig
+ 20, // 6: meshtastic.ModuleConfig.canned_message:type_name -> meshtastic.ModuleConfig.CannedMessageConfig
+ 13, // 7: meshtastic.ModuleConfig.audio:type_name -> meshtastic.ModuleConfig.AudioConfig
+ 10, // 8: meshtastic.ModuleConfig.remote_hardware:type_name -> meshtastic.ModuleConfig.RemoteHardwareConfig
+ 11, // 9: meshtastic.ModuleConfig.neighbor_info:type_name -> meshtastic.ModuleConfig.NeighborInfoConfig
+ 21, // 10: meshtastic.ModuleConfig.ambient_lighting:type_name -> meshtastic.ModuleConfig.AmbientLightingConfig
+ 12, // 11: meshtastic.ModuleConfig.detection_sensor:type_name -> meshtastic.ModuleConfig.DetectionSensorConfig
+ 14, // 12: meshtastic.ModuleConfig.paxcounter:type_name -> meshtastic.ModuleConfig.PaxcounterConfig
0, // 13: meshtastic.RemoteHardwarePin.type:type_name -> meshtastic.RemoteHardwarePinType
- 6, // 14: meshtastic.ModuleConfig.RemoteHardwareConfig.available_pins:type_name -> meshtastic.RemoteHardwarePin
- 1, // 15: meshtastic.ModuleConfig.AudioConfig.bitrate:type_name -> meshtastic.ModuleConfig.AudioConfig.Audio_Baud
- 2, // 16: meshtastic.ModuleConfig.SerialConfig.baud:type_name -> meshtastic.ModuleConfig.SerialConfig.Serial_Baud
- 3, // 17: meshtastic.ModuleConfig.SerialConfig.mode:type_name -> meshtastic.ModuleConfig.SerialConfig.Serial_Mode
- 4, // 18: meshtastic.ModuleConfig.CannedMessageConfig.inputbroker_event_cw:type_name -> meshtastic.ModuleConfig.CannedMessageConfig.InputEventChar
- 4, // 19: meshtastic.ModuleConfig.CannedMessageConfig.inputbroker_event_ccw:type_name -> meshtastic.ModuleConfig.CannedMessageConfig.InputEventChar
- 4, // 20: meshtastic.ModuleConfig.CannedMessageConfig.inputbroker_event_press:type_name -> meshtastic.ModuleConfig.CannedMessageConfig.InputEventChar
- 21, // [21:21] is the sub-list for method output_type
- 21, // [21:21] is the sub-list for method input_type
- 21, // [21:21] is the sub-list for extension type_name
- 21, // [21:21] is the sub-list for extension extendee
- 0, // [0:21] is the sub-list for field type_name
+ 9, // 14: meshtastic.ModuleConfig.MQTTConfig.map_report_settings:type_name -> meshtastic.ModuleConfig.MapReportSettings
+ 7, // 15: meshtastic.ModuleConfig.RemoteHardwareConfig.available_pins:type_name -> meshtastic.RemoteHardwarePin
+ 1, // 16: meshtastic.ModuleConfig.DetectionSensorConfig.detection_trigger_type:type_name -> meshtastic.ModuleConfig.DetectionSensorConfig.TriggerType
+ 2, // 17: meshtastic.ModuleConfig.AudioConfig.bitrate:type_name -> meshtastic.ModuleConfig.AudioConfig.Audio_Baud
+ 3, // 18: meshtastic.ModuleConfig.SerialConfig.baud:type_name -> meshtastic.ModuleConfig.SerialConfig.Serial_Baud
+ 4, // 19: meshtastic.ModuleConfig.SerialConfig.mode:type_name -> meshtastic.ModuleConfig.SerialConfig.Serial_Mode
+ 5, // 20: meshtastic.ModuleConfig.CannedMessageConfig.inputbroker_event_cw:type_name -> meshtastic.ModuleConfig.CannedMessageConfig.InputEventChar
+ 5, // 21: meshtastic.ModuleConfig.CannedMessageConfig.inputbroker_event_ccw:type_name -> meshtastic.ModuleConfig.CannedMessageConfig.InputEventChar
+ 5, // 22: meshtastic.ModuleConfig.CannedMessageConfig.inputbroker_event_press:type_name -> meshtastic.ModuleConfig.CannedMessageConfig.InputEventChar
+ 23, // [23:23] is the sub-list for method output_type
+ 23, // [23:23] is the sub-list for method input_type
+ 23, // [23:23] is the sub-list for extension type_name
+ 23, // [23:23] is the sub-list for extension extendee
+ 0, // [0:23] is the sub-list for field type_name
}
func init() { file_meshtastic_module_config_proto_init() }
@@ -2480,189 +2532,7 @@ func file_meshtastic_module_config_proto_init() {
if File_meshtastic_module_config_proto != nil {
return
}
- if !protoimpl.UnsafeEnabled {
- file_meshtastic_module_config_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ModuleConfig); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_module_config_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*RemoteHardwarePin); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_module_config_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ModuleConfig_MQTTConfig); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_module_config_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ModuleConfig_RemoteHardwareConfig); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_module_config_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ModuleConfig_NeighborInfoConfig); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_module_config_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ModuleConfig_DetectionSensorConfig); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_module_config_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ModuleConfig_AudioConfig); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_module_config_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ModuleConfig_PaxcounterConfig); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_module_config_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ModuleConfig_SerialConfig); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_module_config_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ModuleConfig_ExternalNotificationConfig); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_module_config_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ModuleConfig_StoreForwardConfig); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_module_config_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ModuleConfig_RangeTestConfig); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_module_config_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ModuleConfig_TelemetryConfig); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_module_config_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ModuleConfig_CannedMessageConfig); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_module_config_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ModuleConfig_AmbientLightingConfig); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- }
- file_meshtastic_module_config_proto_msgTypes[0].OneofWrappers = []interface{}{
+ file_meshtastic_module_config_proto_msgTypes[0].OneofWrappers = []any{
(*ModuleConfig_Mqtt)(nil),
(*ModuleConfig_Serial)(nil),
(*ModuleConfig_ExternalNotification)(nil),
@@ -2681,9 +2551,9 @@ func file_meshtastic_module_config_proto_init() {
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
- RawDescriptor: file_meshtastic_module_config_proto_rawDesc,
- NumEnums: 5,
- NumMessages: 15,
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_meshtastic_module_config_proto_rawDesc), len(file_meshtastic_module_config_proto_rawDesc)),
+ NumEnums: 6,
+ NumMessages: 16,
NumExtensions: 0,
NumServices: 0,
},
@@ -2693,7 +2563,6 @@ func file_meshtastic_module_config_proto_init() {
MessageInfos: file_meshtastic_module_config_proto_msgTypes,
}.Build()
File_meshtastic_module_config_proto = out.File
- file_meshtastic_module_config_proto_rawDesc = nil
file_meshtastic_module_config_proto_goTypes = nil
file_meshtastic_module_config_proto_depIdxs = nil
}
diff --git a/meshtastic/module_config_vtproto.pb.go b/meshtastic/module_config_vtproto.pb.go
index 272cb64..a7a0b1f 100644
--- a/meshtastic/module_config_vtproto.pb.go
+++ b/meshtastic/module_config_vtproto.pb.go
@@ -48,6 +48,26 @@ func (m *ModuleConfig_MQTTConfig) MarshalToSizedBufferVT(dAtA []byte) (int, erro
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
+ if m.MapReportSettings != nil {
+ size, err := m.MapReportSettings.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x5a
+ }
+ if m.MapReportingEnabled {
+ i--
+ if m.MapReportingEnabled {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x50
+ }
if m.ProxyToClientEnabled {
i--
if m.ProxyToClientEnabled {
@@ -129,6 +149,59 @@ func (m *ModuleConfig_MQTTConfig) MarshalToSizedBufferVT(dAtA []byte) (int, erro
return len(dAtA) - i, nil
}
+func (m *ModuleConfig_MapReportSettings) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *ModuleConfig_MapReportSettings) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *ModuleConfig_MapReportSettings) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if m.ShouldReportLocation {
+ i--
+ if m.ShouldReportLocation {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x18
+ }
+ if m.PositionPrecision != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.PositionPrecision))
+ i--
+ dAtA[i] = 0x10
+ }
+ if m.PublishIntervalSecs != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.PublishIntervalSecs))
+ i--
+ dAtA[i] = 0x8
+ }
+ return len(dAtA) - i, nil
+}
+
func (m *ModuleConfig_RemoteHardwareConfig) MarshalVT() (dAtA []byte, err error) {
if m == nil {
return nil, nil
@@ -224,6 +297,16 @@ func (m *ModuleConfig_NeighborInfoConfig) MarshalToSizedBufferVT(dAtA []byte) (i
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
+ if m.TransmitOverLora {
+ i--
+ if m.TransmitOverLora {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x18
+ }
if m.UpdateInterval != 0 {
i = protohelpers.EncodeVarint(dAtA, i, uint64(m.UpdateInterval))
i--
@@ -282,13 +365,8 @@ func (m *ModuleConfig_DetectionSensorConfig) MarshalToSizedBufferVT(dAtA []byte)
i--
dAtA[i] = 0x40
}
- if m.DetectionTriggeredHigh {
- i--
- if m.DetectionTriggeredHigh {
- dAtA[i] = 1
- } else {
- dAtA[i] = 0
- }
+ if m.DetectionTriggerType != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.DetectionTriggerType))
i--
dAtA[i] = 0x38
}
@@ -440,6 +518,16 @@ func (m *ModuleConfig_PaxcounterConfig) MarshalToSizedBufferVT(dAtA []byte) (int
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
+ if m.BleThreshold != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.BleThreshold))
+ i--
+ dAtA[i] = 0x20
+ }
+ if m.WifiThreshold != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.WifiThreshold))
+ i--
+ dAtA[i] = 0x18
+ }
if m.PaxcounterUpdateInterval != 0 {
i = protohelpers.EncodeVarint(dAtA, i, uint64(m.PaxcounterUpdateInterval))
i--
@@ -734,6 +822,16 @@ func (m *ModuleConfig_StoreForwardConfig) MarshalToSizedBufferVT(dAtA []byte) (i
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
+ if m.IsServer {
+ i--
+ if m.IsServer {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x30
+ }
if m.HistoryReturnWindow != 0 {
i = protohelpers.EncodeVarint(dAtA, i, uint64(m.HistoryReturnWindow))
i--
@@ -860,6 +958,31 @@ func (m *ModuleConfig_TelemetryConfig) MarshalToSizedBufferVT(dAtA []byte) (int,
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
+ if m.HealthScreenEnabled {
+ i--
+ if m.HealthScreenEnabled {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x68
+ }
+ if m.HealthUpdateInterval != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.HealthUpdateInterval))
+ i--
+ dAtA[i] = 0x60
+ }
+ if m.HealthMeasurementEnabled {
+ i--
+ if m.HealthMeasurementEnabled {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x58
+ }
if m.PowerScreenEnabled {
i--
if m.PowerScreenEnabled {
@@ -1492,6 +1615,32 @@ func (m *ModuleConfig_MQTTConfig) SizeVT() (n int) {
if m.ProxyToClientEnabled {
n += 2
}
+ if m.MapReportingEnabled {
+ n += 2
+ }
+ if m.MapReportSettings != nil {
+ l = m.MapReportSettings.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *ModuleConfig_MapReportSettings) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.PublishIntervalSecs != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.PublishIntervalSecs))
+ }
+ if m.PositionPrecision != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.PositionPrecision))
+ }
+ if m.ShouldReportLocation {
+ n += 2
+ }
n += len(m.unknownFields)
return n
}
@@ -1530,6 +1679,9 @@ func (m *ModuleConfig_NeighborInfoConfig) SizeVT() (n int) {
if m.UpdateInterval != 0 {
n += 1 + protohelpers.SizeOfVarint(uint64(m.UpdateInterval))
}
+ if m.TransmitOverLora {
+ n += 2
+ }
n += len(m.unknownFields)
return n
}
@@ -1559,8 +1711,8 @@ func (m *ModuleConfig_DetectionSensorConfig) SizeVT() (n int) {
if m.MonitorPin != 0 {
n += 1 + protohelpers.SizeOfVarint(uint64(m.MonitorPin))
}
- if m.DetectionTriggeredHigh {
- n += 2
+ if m.DetectionTriggerType != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.DetectionTriggerType))
}
if m.UsePullup {
n += 2
@@ -1612,6 +1764,12 @@ func (m *ModuleConfig_PaxcounterConfig) SizeVT() (n int) {
if m.PaxcounterUpdateInterval != 0 {
n += 1 + protohelpers.SizeOfVarint(uint64(m.PaxcounterUpdateInterval))
}
+ if m.WifiThreshold != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.WifiThreshold))
+ }
+ if m.BleThreshold != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.BleThreshold))
+ }
n += len(m.unknownFields)
return n
}
@@ -1726,6 +1884,9 @@ func (m *ModuleConfig_StoreForwardConfig) SizeVT() (n int) {
if m.HistoryReturnWindow != 0 {
n += 1 + protohelpers.SizeOfVarint(uint64(m.HistoryReturnWindow))
}
+ if m.IsServer {
+ n += 2
+ }
n += len(m.unknownFields)
return n
}
@@ -1785,6 +1946,15 @@ func (m *ModuleConfig_TelemetryConfig) SizeVT() (n int) {
if m.PowerScreenEnabled {
n += 2
}
+ if m.HealthMeasurementEnabled {
+ n += 2
+ }
+ if m.HealthUpdateInterval != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.HealthUpdateInterval))
+ }
+ if m.HealthScreenEnabled {
+ n += 2
+ }
n += len(m.unknownFields)
return n
}
@@ -2304,6 +2474,171 @@ func (m *ModuleConfig_MQTTConfig) UnmarshalVT(dAtA []byte) error {
}
}
m.ProxyToClientEnabled = bool(v != 0)
+ case 10:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field MapReportingEnabled", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.MapReportingEnabled = bool(v != 0)
+ case 11:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field MapReportSettings", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if m.MapReportSettings == nil {
+ m.MapReportSettings = &ModuleConfig_MapReportSettings{}
+ }
+ if err := m.MapReportSettings.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *ModuleConfig_MapReportSettings) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: ModuleConfig_MapReportSettings: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: ModuleConfig_MapReportSettings: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field PublishIntervalSecs", wireType)
+ }
+ m.PublishIntervalSecs = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.PublishIntervalSecs |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 2:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field PositionPrecision", wireType)
+ }
+ m.PositionPrecision = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.PositionPrecision |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 3:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field ShouldReportLocation", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.ShouldReportLocation = bool(v != 0)
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
@@ -2519,6 +2854,26 @@ func (m *ModuleConfig_NeighborInfoConfig) UnmarshalVT(dAtA []byte) error {
break
}
}
+ case 3:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field TransmitOverLora", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.TransmitOverLora = bool(v != 0)
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
@@ -2701,9 +3056,9 @@ func (m *ModuleConfig_DetectionSensorConfig) UnmarshalVT(dAtA []byte) error {
}
case 7:
if wireType != 0 {
- return fmt.Errorf("proto: wrong wireType = %d for field DetectionTriggeredHigh", wireType)
+ return fmt.Errorf("proto: wrong wireType = %d for field DetectionTriggerType", wireType)
}
- var v int
+ m.DetectionTriggerType = 0
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -2713,12 +3068,11 @@ func (m *ModuleConfig_DetectionSensorConfig) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- v |= int(b&0x7F) << shift
+ m.DetectionTriggerType |= ModuleConfig_DetectionSensorConfig_TriggerType(b&0x7F) << shift
if b < 0x80 {
break
}
}
- m.DetectionTriggeredHigh = bool(v != 0)
case 8:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field UsePullup", wireType)
@@ -3014,6 +3368,44 @@ func (m *ModuleConfig_PaxcounterConfig) UnmarshalVT(dAtA []byte) error {
break
}
}
+ case 3:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field WifiThreshold", wireType)
+ }
+ m.WifiThreshold = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.WifiThreshold |= int32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 4:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field BleThreshold", wireType)
+ }
+ m.BleThreshold = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.BleThreshold |= int32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
@@ -3714,6 +4106,26 @@ func (m *ModuleConfig_StoreForwardConfig) UnmarshalVT(dAtA []byte) error {
break
}
}
+ case 6:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field IsServer", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.IsServer = bool(v != 0)
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
@@ -4071,6 +4483,65 @@ func (m *ModuleConfig_TelemetryConfig) UnmarshalVT(dAtA []byte) error {
}
}
m.PowerScreenEnabled = bool(v != 0)
+ case 11:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field HealthMeasurementEnabled", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.HealthMeasurementEnabled = bool(v != 0)
+ case 12:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field HealthUpdateInterval", wireType)
+ }
+ m.HealthUpdateInterval = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.HealthUpdateInterval |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 13:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field HealthScreenEnabled", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.HealthScreenEnabled = bool(v != 0)
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
diff --git a/meshtastic/mqtt.pb.go b/meshtastic/mqtt.pb.go
index ea3e5c7..8a2e579 100644
--- a/meshtastic/mqtt.pb.go
+++ b/meshtastic/mqtt.pb.go
@@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.32.0
-// protoc v4.25.2
+// protoc-gen-go v1.36.6
+// protoc v3.21.12
// source: meshtastic/mqtt.proto
package generated
@@ -11,6 +11,7 @@ import (
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
+ unsafe "unsafe"
)
const (
@@ -22,10 +23,7 @@ const (
// This message wraps a MeshPacket with extra metadata about the sender and how it arrived.
type ServiceEnvelope struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// The (probably encrypted) packet
Packet *MeshPacket `protobuf:"bytes,1,opt,name=packet,proto3" json:"packet,omitempty"`
// The global channel ID it was sent on
@@ -33,16 +31,16 @@ type ServiceEnvelope struct {
// The sending gateway node ID. Can we use this to authenticate/prevent fake
// nodeid impersonation for senders? - i.e. use gateway/mesh id (which is authenticated) + local node id as
// the globally trusted nodenum
- GatewayId string `protobuf:"bytes,3,opt,name=gateway_id,json=gatewayId,proto3" json:"gateway_id,omitempty"`
+ GatewayId string `protobuf:"bytes,3,opt,name=gateway_id,json=gatewayId,proto3" json:"gateway_id,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *ServiceEnvelope) Reset() {
*x = ServiceEnvelope{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_mqtt_proto_msgTypes[0]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_mqtt_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *ServiceEnvelope) String() string {
@@ -53,7 +51,7 @@ func (*ServiceEnvelope) ProtoMessage() {}
func (x *ServiceEnvelope) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_mqtt_proto_msgTypes[0]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -89,54 +87,239 @@ func (x *ServiceEnvelope) GetGatewayId() string {
return ""
}
-var File_meshtastic_mqtt_proto protoreflect.FileDescriptor
+// Information about a node intended to be reported unencrypted to a map using MQTT.
+type MapReport struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // A full name for this user, i.e. "Kevin Hester"
+ LongName string `protobuf:"bytes,1,opt,name=long_name,json=longName,proto3" json:"long_name,omitempty"`
+ // A VERY short name, ideally two characters.
+ // Suitable for a tiny OLED screen
+ ShortName string `protobuf:"bytes,2,opt,name=short_name,json=shortName,proto3" json:"short_name,omitempty"`
+ // Role of the node that applies specific settings for a particular use-case
+ Role Config_DeviceConfig_Role `protobuf:"varint,3,opt,name=role,proto3,enum=meshtastic.Config_DeviceConfig_Role" json:"role,omitempty"`
+ // Hardware model of the node, i.e. T-Beam, Heltec V3, etc...
+ HwModel HardwareModel `protobuf:"varint,4,opt,name=hw_model,json=hwModel,proto3,enum=meshtastic.HardwareModel" json:"hw_model,omitempty"`
+ // Device firmware version string
+ FirmwareVersion string `protobuf:"bytes,5,opt,name=firmware_version,json=firmwareVersion,proto3" json:"firmware_version,omitempty"`
+ // The region code for the radio (US, CN, EU433, etc...)
+ Region Config_LoRaConfig_RegionCode `protobuf:"varint,6,opt,name=region,proto3,enum=meshtastic.Config_LoRaConfig_RegionCode" json:"region,omitempty"`
+ // Modem preset used by the radio (LongFast, MediumSlow, etc...)
+ ModemPreset Config_LoRaConfig_ModemPreset `protobuf:"varint,7,opt,name=modem_preset,json=modemPreset,proto3,enum=meshtastic.Config_LoRaConfig_ModemPreset" json:"modem_preset,omitempty"`
+ // Whether the node has a channel with default PSK and name (LongFast, MediumSlow, etc...)
+ // and it uses the default frequency slot given the region and modem preset.
+ HasDefaultChannel bool `protobuf:"varint,8,opt,name=has_default_channel,json=hasDefaultChannel,proto3" json:"has_default_channel,omitempty"`
+ // Latitude: multiply by 1e-7 to get degrees in floating point
+ LatitudeI int32 `protobuf:"fixed32,9,opt,name=latitude_i,json=latitudeI,proto3" json:"latitude_i,omitempty"`
+ // Longitude: multiply by 1e-7 to get degrees in floating point
+ LongitudeI int32 `protobuf:"fixed32,10,opt,name=longitude_i,json=longitudeI,proto3" json:"longitude_i,omitempty"`
+ // Altitude in meters above MSL
+ Altitude int32 `protobuf:"varint,11,opt,name=altitude,proto3" json:"altitude,omitempty"`
+ // Indicates the bits of precision for latitude and longitude set by the sending node
+ PositionPrecision uint32 `protobuf:"varint,12,opt,name=position_precision,json=positionPrecision,proto3" json:"position_precision,omitempty"`
+ // Number of online nodes (heard in the last 2 hours) this node has in its list that were received locally (not via MQTT)
+ NumOnlineLocalNodes uint32 `protobuf:"varint,13,opt,name=num_online_local_nodes,json=numOnlineLocalNodes,proto3" json:"num_online_local_nodes,omitempty"`
+ // User has opted in to share their location (map report) with the mqtt server
+ // Controlled by map_report.should_report_location
+ HasOptedReportLocation bool `protobuf:"varint,14,opt,name=has_opted_report_location,json=hasOptedReportLocation,proto3" json:"has_opted_report_location,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *MapReport) Reset() {
+ *x = MapReport{}
+ mi := &file_meshtastic_mqtt_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *MapReport) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*MapReport) ProtoMessage() {}
+
+func (x *MapReport) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_mqtt_proto_msgTypes[1]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use MapReport.ProtoReflect.Descriptor instead.
+func (*MapReport) Descriptor() ([]byte, []int) {
+ return file_meshtastic_mqtt_proto_rawDescGZIP(), []int{1}
+}
-var file_meshtastic_mqtt_proto_rawDesc = []byte{
- 0x0a, 0x15, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x6d, 0x71, 0x74,
- 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0a, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73,
- 0x74, 0x69, 0x63, 0x1a, 0x15, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f,
- 0x6d, 0x65, 0x73, 0x68, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x7f, 0x0a, 0x0f, 0x53, 0x65,
- 0x72, 0x76, 0x69, 0x63, 0x65, 0x45, 0x6e, 0x76, 0x65, 0x6c, 0x6f, 0x70, 0x65, 0x12, 0x2e, 0x0a,
- 0x06, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e,
- 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x4d, 0x65, 0x73, 0x68, 0x50,
- 0x61, 0x63, 0x6b, 0x65, 0x74, 0x52, 0x06, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x1d, 0x0a,
- 0x0a, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
- 0x09, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a,
- 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
- 0x52, 0x09, 0x67, 0x61, 0x74, 0x65, 0x77, 0x61, 0x79, 0x49, 0x64, 0x42, 0x5f, 0x0a, 0x13, 0x63,
- 0x6f, 0x6d, 0x2e, 0x67, 0x65, 0x65, 0x6b, 0x73, 0x76, 0x69, 0x6c, 0x6c, 0x65, 0x2e, 0x6d, 0x65,
- 0x73, 0x68, 0x42, 0x0a, 0x4d, 0x51, 0x54, 0x54, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x5a, 0x22,
- 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x65, 0x73, 0x68, 0x74,
- 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x67, 0x6f, 0x2f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74,
- 0x65, 0x64, 0xaa, 0x02, 0x14, 0x4d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e,
- 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x73, 0xba, 0x02, 0x00, 0x62, 0x06, 0x70, 0x72,
- 0x6f, 0x74, 0x6f, 0x33,
+func (x *MapReport) GetLongName() string {
+ if x != nil {
+ return x.LongName
+ }
+ return ""
}
+func (x *MapReport) GetShortName() string {
+ if x != nil {
+ return x.ShortName
+ }
+ return ""
+}
+
+func (x *MapReport) GetRole() Config_DeviceConfig_Role {
+ if x != nil {
+ return x.Role
+ }
+ return Config_DeviceConfig_CLIENT
+}
+
+func (x *MapReport) GetHwModel() HardwareModel {
+ if x != nil {
+ return x.HwModel
+ }
+ return HardwareModel_UNSET
+}
+
+func (x *MapReport) GetFirmwareVersion() string {
+ if x != nil {
+ return x.FirmwareVersion
+ }
+ return ""
+}
+
+func (x *MapReport) GetRegion() Config_LoRaConfig_RegionCode {
+ if x != nil {
+ return x.Region
+ }
+ return Config_LoRaConfig_UNSET
+}
+
+func (x *MapReport) GetModemPreset() Config_LoRaConfig_ModemPreset {
+ if x != nil {
+ return x.ModemPreset
+ }
+ return Config_LoRaConfig_LONG_FAST
+}
+
+func (x *MapReport) GetHasDefaultChannel() bool {
+ if x != nil {
+ return x.HasDefaultChannel
+ }
+ return false
+}
+
+func (x *MapReport) GetLatitudeI() int32 {
+ if x != nil {
+ return x.LatitudeI
+ }
+ return 0
+}
+
+func (x *MapReport) GetLongitudeI() int32 {
+ if x != nil {
+ return x.LongitudeI
+ }
+ return 0
+}
+
+func (x *MapReport) GetAltitude() int32 {
+ if x != nil {
+ return x.Altitude
+ }
+ return 0
+}
+
+func (x *MapReport) GetPositionPrecision() uint32 {
+ if x != nil {
+ return x.PositionPrecision
+ }
+ return 0
+}
+
+func (x *MapReport) GetNumOnlineLocalNodes() uint32 {
+ if x != nil {
+ return x.NumOnlineLocalNodes
+ }
+ return 0
+}
+
+func (x *MapReport) GetHasOptedReportLocation() bool {
+ if x != nil {
+ return x.HasOptedReportLocation
+ }
+ return false
+}
+
+var File_meshtastic_mqtt_proto protoreflect.FileDescriptor
+
+const file_meshtastic_mqtt_proto_rawDesc = "" +
+ "\n" +
+ "\x15meshtastic/mqtt.proto\x12\n" +
+ "meshtastic\x1a\x17meshtastic/config.proto\x1a\x15meshtastic/mesh.proto\"\x7f\n" +
+ "\x0fServiceEnvelope\x12.\n" +
+ "\x06packet\x18\x01 \x01(\v2\x16.meshtastic.MeshPacketR\x06packet\x12\x1d\n" +
+ "\n" +
+ "channel_id\x18\x02 \x01(\tR\tchannelId\x12\x1d\n" +
+ "\n" +
+ "gateway_id\x18\x03 \x01(\tR\tgatewayId\"\x9d\x05\n" +
+ "\tMapReport\x12\x1b\n" +
+ "\tlong_name\x18\x01 \x01(\tR\blongName\x12\x1d\n" +
+ "\n" +
+ "short_name\x18\x02 \x01(\tR\tshortName\x128\n" +
+ "\x04role\x18\x03 \x01(\x0e2$.meshtastic.Config.DeviceConfig.RoleR\x04role\x124\n" +
+ "\bhw_model\x18\x04 \x01(\x0e2\x19.meshtastic.HardwareModelR\ahwModel\x12)\n" +
+ "\x10firmware_version\x18\x05 \x01(\tR\x0ffirmwareVersion\x12@\n" +
+ "\x06region\x18\x06 \x01(\x0e2(.meshtastic.Config.LoRaConfig.RegionCodeR\x06region\x12L\n" +
+ "\fmodem_preset\x18\a \x01(\x0e2).meshtastic.Config.LoRaConfig.ModemPresetR\vmodemPreset\x12.\n" +
+ "\x13has_default_channel\x18\b \x01(\bR\x11hasDefaultChannel\x12\x1d\n" +
+ "\n" +
+ "latitude_i\x18\t \x01(\x0fR\tlatitudeI\x12\x1f\n" +
+ "\vlongitude_i\x18\n" +
+ " \x01(\x0fR\n" +
+ "longitudeI\x12\x1a\n" +
+ "\baltitude\x18\v \x01(\x05R\baltitude\x12-\n" +
+ "\x12position_precision\x18\f \x01(\rR\x11positionPrecision\x123\n" +
+ "\x16num_online_local_nodes\x18\r \x01(\rR\x13numOnlineLocalNodes\x129\n" +
+ "\x19has_opted_report_location\x18\x0e \x01(\bR\x16hasOptedReportLocationB_\n" +
+ "\x13com.geeksville.meshB\n" +
+ "MQTTProtosZ\"github.com/meshtastic/go/generated\xaa\x02\x14Meshtastic.Protobufs\xba\x02\x00b\x06proto3"
+
var (
file_meshtastic_mqtt_proto_rawDescOnce sync.Once
- file_meshtastic_mqtt_proto_rawDescData = file_meshtastic_mqtt_proto_rawDesc
+ file_meshtastic_mqtt_proto_rawDescData []byte
)
func file_meshtastic_mqtt_proto_rawDescGZIP() []byte {
file_meshtastic_mqtt_proto_rawDescOnce.Do(func() {
- file_meshtastic_mqtt_proto_rawDescData = protoimpl.X.CompressGZIP(file_meshtastic_mqtt_proto_rawDescData)
+ file_meshtastic_mqtt_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_meshtastic_mqtt_proto_rawDesc), len(file_meshtastic_mqtt_proto_rawDesc)))
})
return file_meshtastic_mqtt_proto_rawDescData
}
-var file_meshtastic_mqtt_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
-var file_meshtastic_mqtt_proto_goTypes = []interface{}{
- (*ServiceEnvelope)(nil), // 0: meshtastic.ServiceEnvelope
- (*MeshPacket)(nil), // 1: meshtastic.MeshPacket
+var file_meshtastic_mqtt_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
+var file_meshtastic_mqtt_proto_goTypes = []any{
+ (*ServiceEnvelope)(nil), // 0: meshtastic.ServiceEnvelope
+ (*MapReport)(nil), // 1: meshtastic.MapReport
+ (*MeshPacket)(nil), // 2: meshtastic.MeshPacket
+ (Config_DeviceConfig_Role)(0), // 3: meshtastic.Config.DeviceConfig.Role
+ (HardwareModel)(0), // 4: meshtastic.HardwareModel
+ (Config_LoRaConfig_RegionCode)(0), // 5: meshtastic.Config.LoRaConfig.RegionCode
+ (Config_LoRaConfig_ModemPreset)(0), // 6: meshtastic.Config.LoRaConfig.ModemPreset
}
var file_meshtastic_mqtt_proto_depIdxs = []int32{
- 1, // 0: meshtastic.ServiceEnvelope.packet:type_name -> meshtastic.MeshPacket
- 1, // [1:1] is the sub-list for method output_type
- 1, // [1:1] is the sub-list for method input_type
- 1, // [1:1] is the sub-list for extension type_name
- 1, // [1:1] is the sub-list for extension extendee
- 0, // [0:1] is the sub-list for field type_name
+ 2, // 0: meshtastic.ServiceEnvelope.packet:type_name -> meshtastic.MeshPacket
+ 3, // 1: meshtastic.MapReport.role:type_name -> meshtastic.Config.DeviceConfig.Role
+ 4, // 2: meshtastic.MapReport.hw_model:type_name -> meshtastic.HardwareModel
+ 5, // 3: meshtastic.MapReport.region:type_name -> meshtastic.Config.LoRaConfig.RegionCode
+ 6, // 4: meshtastic.MapReport.modem_preset:type_name -> meshtastic.Config.LoRaConfig.ModemPreset
+ 5, // [5:5] is the sub-list for method output_type
+ 5, // [5:5] is the sub-list for method input_type
+ 5, // [5:5] is the sub-list for extension type_name
+ 5, // [5:5] is the sub-list for extension extendee
+ 0, // [0:5] is the sub-list for field type_name
}
func init() { file_meshtastic_mqtt_proto_init() }
@@ -144,28 +327,15 @@ func file_meshtastic_mqtt_proto_init() {
if File_meshtastic_mqtt_proto != nil {
return
}
+ file_meshtastic_config_proto_init()
file_meshtastic_mesh_proto_init()
- if !protoimpl.UnsafeEnabled {
- file_meshtastic_mqtt_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*ServiceEnvelope); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- }
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
- RawDescriptor: file_meshtastic_mqtt_proto_rawDesc,
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_meshtastic_mqtt_proto_rawDesc), len(file_meshtastic_mqtt_proto_rawDesc)),
NumEnums: 0,
- NumMessages: 1,
+ NumMessages: 2,
NumExtensions: 0,
NumServices: 0,
},
@@ -174,7 +344,6 @@ func file_meshtastic_mqtt_proto_init() {
MessageInfos: file_meshtastic_mqtt_proto_msgTypes,
}.Build()
File_meshtastic_mqtt_proto = out.File
- file_meshtastic_mqtt_proto_rawDesc = nil
file_meshtastic_mqtt_proto_goTypes = nil
file_meshtastic_mqtt_proto_depIdxs = nil
}
diff --git a/meshtastic/mqtt_vtproto.pb.go b/meshtastic/mqtt_vtproto.pb.go
index ddfe1b8..06ee095 100644
--- a/meshtastic/mqtt_vtproto.pb.go
+++ b/meshtastic/mqtt_vtproto.pb.go
@@ -5,6 +5,7 @@
package generated
import (
+ binary "encoding/binary"
fmt "fmt"
protohelpers "github.com/planetscale/vtprotobuf/protohelpers"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
@@ -75,6 +76,127 @@ func (m *ServiceEnvelope) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
return len(dAtA) - i, nil
}
+func (m *MapReport) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *MapReport) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *MapReport) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if m.HasOptedReportLocation {
+ i--
+ if m.HasOptedReportLocation {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x70
+ }
+ if m.NumOnlineLocalNodes != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.NumOnlineLocalNodes))
+ i--
+ dAtA[i] = 0x68
+ }
+ if m.PositionPrecision != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.PositionPrecision))
+ i--
+ dAtA[i] = 0x60
+ }
+ if m.Altitude != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Altitude))
+ i--
+ dAtA[i] = 0x58
+ }
+ if m.LongitudeI != 0 {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(m.LongitudeI))
+ i--
+ dAtA[i] = 0x55
+ }
+ if m.LatitudeI != 0 {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(m.LatitudeI))
+ i--
+ dAtA[i] = 0x4d
+ }
+ if m.HasDefaultChannel {
+ i--
+ if m.HasDefaultChannel {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x40
+ }
+ if m.ModemPreset != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.ModemPreset))
+ i--
+ dAtA[i] = 0x38
+ }
+ if m.Region != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Region))
+ i--
+ dAtA[i] = 0x30
+ }
+ if len(m.FirmwareVersion) > 0 {
+ i -= len(m.FirmwareVersion)
+ copy(dAtA[i:], m.FirmwareVersion)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.FirmwareVersion)))
+ i--
+ dAtA[i] = 0x2a
+ }
+ if m.HwModel != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.HwModel))
+ i--
+ dAtA[i] = 0x20
+ }
+ if m.Role != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Role))
+ i--
+ dAtA[i] = 0x18
+ }
+ if len(m.ShortName) > 0 {
+ i -= len(m.ShortName)
+ copy(dAtA[i:], m.ShortName)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.ShortName)))
+ i--
+ dAtA[i] = 0x12
+ }
+ if len(m.LongName) > 0 {
+ i -= len(m.LongName)
+ copy(dAtA[i:], m.LongName)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.LongName)))
+ i--
+ dAtA[i] = 0xa
+ }
+ return len(dAtA) - i, nil
+}
+
func (m *ServiceEnvelope) SizeVT() (n int) {
if m == nil {
return 0
@@ -97,6 +219,61 @@ func (m *ServiceEnvelope) SizeVT() (n int) {
return n
}
+func (m *MapReport) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ l = len(m.LongName)
+ if l > 0 {
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ l = len(m.ShortName)
+ if l > 0 {
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ if m.Role != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Role))
+ }
+ if m.HwModel != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.HwModel))
+ }
+ l = len(m.FirmwareVersion)
+ if l > 0 {
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ if m.Region != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Region))
+ }
+ if m.ModemPreset != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.ModemPreset))
+ }
+ if m.HasDefaultChannel {
+ n += 2
+ }
+ if m.LatitudeI != 0 {
+ n += 5
+ }
+ if m.LongitudeI != 0 {
+ n += 5
+ }
+ if m.Altitude != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Altitude))
+ }
+ if m.PositionPrecision != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.PositionPrecision))
+ }
+ if m.NumOnlineLocalNodes != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.NumOnlineLocalNodes))
+ }
+ if m.HasOptedReportLocation {
+ n += 2
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
func (m *ServiceEnvelope) UnmarshalVT(dAtA []byte) error {
l := len(dAtA)
iNdEx := 0
@@ -248,3 +425,343 @@ func (m *ServiceEnvelope) UnmarshalVT(dAtA []byte) error {
}
return nil
}
+func (m *MapReport) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: MapReport: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: MapReport: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field LongName", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.LongName = string(dAtA[iNdEx:postIndex])
+ iNdEx = postIndex
+ case 2:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field ShortName", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.ShortName = string(dAtA[iNdEx:postIndex])
+ iNdEx = postIndex
+ case 3:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Role", wireType)
+ }
+ m.Role = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.Role |= Config_DeviceConfig_Role(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 4:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field HwModel", wireType)
+ }
+ m.HwModel = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.HwModel |= HardwareModel(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 5:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field FirmwareVersion", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.FirmwareVersion = string(dAtA[iNdEx:postIndex])
+ iNdEx = postIndex
+ case 6:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Region", wireType)
+ }
+ m.Region = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.Region |= Config_LoRaConfig_RegionCode(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 7:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field ModemPreset", wireType)
+ }
+ m.ModemPreset = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.ModemPreset |= Config_LoRaConfig_ModemPreset(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 8:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field HasDefaultChannel", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.HasDefaultChannel = bool(v != 0)
+ case 9:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field LatitudeI", wireType)
+ }
+ m.LatitudeI = 0
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.LatitudeI = int32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ case 10:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field LongitudeI", wireType)
+ }
+ m.LongitudeI = 0
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.LongitudeI = int32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ case 11:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Altitude", wireType)
+ }
+ m.Altitude = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.Altitude |= int32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 12:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field PositionPrecision", wireType)
+ }
+ m.PositionPrecision = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.PositionPrecision |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 13:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field NumOnlineLocalNodes", wireType)
+ }
+ m.NumOnlineLocalNodes = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.NumOnlineLocalNodes |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 14:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field HasOptedReportLocation", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.HasOptedReportLocation = bool(v != 0)
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
diff --git a/meshtastic/nanopb.pb.go b/meshtastic/nanopb.pb.go
new file mode 100644
index 0000000..5342554
--- /dev/null
+++ b/meshtastic/nanopb.pb.go
@@ -0,0 +1,849 @@
+// Custom options for defining:
+// - Maximum size of string/bytes
+// - Maximum number of elements in array
+//
+// These are used by nanopb to generate statically allocable structures
+// for memory-limited environments.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.36.6
+// protoc v3.21.12
+// source: nanopb.proto
+
+package generated
+
+import (
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ descriptorpb "google.golang.org/protobuf/types/descriptorpb"
+ reflect "reflect"
+ sync "sync"
+ unsafe "unsafe"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+type FieldType int32
+
+const (
+ FieldType_FT_DEFAULT FieldType = 0 // Automatically decide field type, generate static field if possible.
+ FieldType_FT_CALLBACK FieldType = 1 // Always generate a callback field.
+ FieldType_FT_POINTER FieldType = 4 // Always generate a dynamically allocated field.
+ FieldType_FT_STATIC FieldType = 2 // Generate a static field or raise an exception if not possible.
+ FieldType_FT_IGNORE FieldType = 3 // Ignore the field completely.
+ FieldType_FT_INLINE FieldType = 5 // Legacy option, use the separate 'fixed_length' option instead
+)
+
+// Enum value maps for FieldType.
+var (
+ FieldType_name = map[int32]string{
+ 0: "FT_DEFAULT",
+ 1: "FT_CALLBACK",
+ 4: "FT_POINTER",
+ 2: "FT_STATIC",
+ 3: "FT_IGNORE",
+ 5: "FT_INLINE",
+ }
+ FieldType_value = map[string]int32{
+ "FT_DEFAULT": 0,
+ "FT_CALLBACK": 1,
+ "FT_POINTER": 4,
+ "FT_STATIC": 2,
+ "FT_IGNORE": 3,
+ "FT_INLINE": 5,
+ }
+)
+
+func (x FieldType) Enum() *FieldType {
+ p := new(FieldType)
+ *p = x
+ return p
+}
+
+func (x FieldType) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (FieldType) Descriptor() protoreflect.EnumDescriptor {
+ return file_nanopb_proto_enumTypes[0].Descriptor()
+}
+
+func (FieldType) Type() protoreflect.EnumType {
+ return &file_nanopb_proto_enumTypes[0]
+}
+
+func (x FieldType) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Do not use.
+func (x *FieldType) UnmarshalJSON(b []byte) error {
+ num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
+ if err != nil {
+ return err
+ }
+ *x = FieldType(num)
+ return nil
+}
+
+// Deprecated: Use FieldType.Descriptor instead.
+func (FieldType) EnumDescriptor() ([]byte, []int) {
+ return file_nanopb_proto_rawDescGZIP(), []int{0}
+}
+
+type IntSize int32
+
+const (
+ IntSize_IS_DEFAULT IntSize = 0 // Default, 32/64bit based on type in .proto
+ IntSize_IS_8 IntSize = 8
+ IntSize_IS_16 IntSize = 16
+ IntSize_IS_32 IntSize = 32
+ IntSize_IS_64 IntSize = 64
+)
+
+// Enum value maps for IntSize.
+var (
+ IntSize_name = map[int32]string{
+ 0: "IS_DEFAULT",
+ 8: "IS_8",
+ 16: "IS_16",
+ 32: "IS_32",
+ 64: "IS_64",
+ }
+ IntSize_value = map[string]int32{
+ "IS_DEFAULT": 0,
+ "IS_8": 8,
+ "IS_16": 16,
+ "IS_32": 32,
+ "IS_64": 64,
+ }
+)
+
+func (x IntSize) Enum() *IntSize {
+ p := new(IntSize)
+ *p = x
+ return p
+}
+
+func (x IntSize) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (IntSize) Descriptor() protoreflect.EnumDescriptor {
+ return file_nanopb_proto_enumTypes[1].Descriptor()
+}
+
+func (IntSize) Type() protoreflect.EnumType {
+ return &file_nanopb_proto_enumTypes[1]
+}
+
+func (x IntSize) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Do not use.
+func (x *IntSize) UnmarshalJSON(b []byte) error {
+ num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
+ if err != nil {
+ return err
+ }
+ *x = IntSize(num)
+ return nil
+}
+
+// Deprecated: Use IntSize.Descriptor instead.
+func (IntSize) EnumDescriptor() ([]byte, []int) {
+ return file_nanopb_proto_rawDescGZIP(), []int{1}
+}
+
+type TypenameMangling int32
+
+const (
+ TypenameMangling_M_NONE TypenameMangling = 0 // Default, no typename mangling
+ TypenameMangling_M_STRIP_PACKAGE TypenameMangling = 1 // Strip current package name
+ TypenameMangling_M_FLATTEN TypenameMangling = 2 // Only use last path component
+ TypenameMangling_M_PACKAGE_INITIALS TypenameMangling = 3 // Replace the package name by the initials
+)
+
+// Enum value maps for TypenameMangling.
+var (
+ TypenameMangling_name = map[int32]string{
+ 0: "M_NONE",
+ 1: "M_STRIP_PACKAGE",
+ 2: "M_FLATTEN",
+ 3: "M_PACKAGE_INITIALS",
+ }
+ TypenameMangling_value = map[string]int32{
+ "M_NONE": 0,
+ "M_STRIP_PACKAGE": 1,
+ "M_FLATTEN": 2,
+ "M_PACKAGE_INITIALS": 3,
+ }
+)
+
+func (x TypenameMangling) Enum() *TypenameMangling {
+ p := new(TypenameMangling)
+ *p = x
+ return p
+}
+
+func (x TypenameMangling) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (TypenameMangling) Descriptor() protoreflect.EnumDescriptor {
+ return file_nanopb_proto_enumTypes[2].Descriptor()
+}
+
+func (TypenameMangling) Type() protoreflect.EnumType {
+ return &file_nanopb_proto_enumTypes[2]
+}
+
+func (x TypenameMangling) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Do not use.
+func (x *TypenameMangling) UnmarshalJSON(b []byte) error {
+ num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
+ if err != nil {
+ return err
+ }
+ *x = TypenameMangling(num)
+ return nil
+}
+
+// Deprecated: Use TypenameMangling.Descriptor instead.
+func (TypenameMangling) EnumDescriptor() ([]byte, []int) {
+ return file_nanopb_proto_rawDescGZIP(), []int{2}
+}
+
+type DescriptorSize int32
+
+const (
+ DescriptorSize_DS_AUTO DescriptorSize = 0 // Select minimal size based on field type
+ DescriptorSize_DS_1 DescriptorSize = 1 // 1 word; up to 15 byte fields, no arrays
+ DescriptorSize_DS_2 DescriptorSize = 2 // 2 words; up to 4095 byte fields, 4095 entry arrays
+ DescriptorSize_DS_4 DescriptorSize = 4 // 4 words; up to 2^32-1 byte fields, 2^16-1 entry arrays
+ DescriptorSize_DS_8 DescriptorSize = 8 // 8 words; up to 2^32-1 entry arrays
+)
+
+// Enum value maps for DescriptorSize.
+var (
+ DescriptorSize_name = map[int32]string{
+ 0: "DS_AUTO",
+ 1: "DS_1",
+ 2: "DS_2",
+ 4: "DS_4",
+ 8: "DS_8",
+ }
+ DescriptorSize_value = map[string]int32{
+ "DS_AUTO": 0,
+ "DS_1": 1,
+ "DS_2": 2,
+ "DS_4": 4,
+ "DS_8": 8,
+ }
+)
+
+func (x DescriptorSize) Enum() *DescriptorSize {
+ p := new(DescriptorSize)
+ *p = x
+ return p
+}
+
+func (x DescriptorSize) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (DescriptorSize) Descriptor() protoreflect.EnumDescriptor {
+ return file_nanopb_proto_enumTypes[3].Descriptor()
+}
+
+func (DescriptorSize) Type() protoreflect.EnumType {
+ return &file_nanopb_proto_enumTypes[3]
+}
+
+func (x DescriptorSize) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Do not use.
+func (x *DescriptorSize) UnmarshalJSON(b []byte) error {
+ num, err := protoimpl.X.UnmarshalJSONEnum(x.Descriptor(), b)
+ if err != nil {
+ return err
+ }
+ *x = DescriptorSize(num)
+ return nil
+}
+
+// Deprecated: Use DescriptorSize.Descriptor instead.
+func (DescriptorSize) EnumDescriptor() ([]byte, []int) {
+ return file_nanopb_proto_rawDescGZIP(), []int{3}
+}
+
+// This is the inner options message, which basically defines options for
+// a field. When it is used in message or file scope, it applies to all
+// fields.
+type NanoPBOptions struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // Allocated size for 'bytes' and 'string' fields.
+ // For string fields, this should include the space for null terminator.
+ MaxSize *int32 `protobuf:"varint,1,opt,name=max_size,json=maxSize" json:"max_size,omitempty"`
+ // Maximum length for 'string' fields. Setting this is equivalent
+ // to setting max_size to a value of length+1.
+ MaxLength *int32 `protobuf:"varint,14,opt,name=max_length,json=maxLength" json:"max_length,omitempty"`
+ // Allocated number of entries in arrays ('repeated' fields)
+ MaxCount *int32 `protobuf:"varint,2,opt,name=max_count,json=maxCount" json:"max_count,omitempty"`
+ // Size of integer fields. Can save some memory if you don't need
+ // full 32 bits for the value.
+ IntSize *IntSize `protobuf:"varint,7,opt,name=int_size,json=intSize,enum=IntSize,def=0" json:"int_size,omitempty"`
+ // Force type of field (callback or static allocation)
+ Type *FieldType `protobuf:"varint,3,opt,name=type,enum=FieldType,def=0" json:"type,omitempty"`
+ // Use long names for enums, i.e. EnumName_EnumValue.
+ LongNames *bool `protobuf:"varint,4,opt,name=long_names,json=longNames,def=1" json:"long_names,omitempty"`
+ // Add 'packed' attribute to generated structs.
+ // Note: this cannot be used on CPUs that break on unaligned
+ // accesses to variables.
+ PackedStruct *bool `protobuf:"varint,5,opt,name=packed_struct,json=packedStruct,def=0" json:"packed_struct,omitempty"`
+ // Add 'packed' attribute to generated enums.
+ PackedEnum *bool `protobuf:"varint,10,opt,name=packed_enum,json=packedEnum,def=0" json:"packed_enum,omitempty"`
+ // Skip this message
+ SkipMessage *bool `protobuf:"varint,6,opt,name=skip_message,json=skipMessage,def=0" json:"skip_message,omitempty"`
+ // Generate oneof fields as normal optional fields instead of union.
+ NoUnions *bool `protobuf:"varint,8,opt,name=no_unions,json=noUnions,def=0" json:"no_unions,omitempty"`
+ // integer type tag for a message
+ Msgid *uint32 `protobuf:"varint,9,opt,name=msgid" json:"msgid,omitempty"`
+ // decode oneof as anonymous union
+ AnonymousOneof *bool `protobuf:"varint,11,opt,name=anonymous_oneof,json=anonymousOneof,def=0" json:"anonymous_oneof,omitempty"`
+ // Proto3 singular field does not generate a "has_" flag
+ Proto3 *bool `protobuf:"varint,12,opt,name=proto3,def=0" json:"proto3,omitempty"`
+ // Force proto3 messages to have no "has_" flag.
+ // This was default behavior until nanopb-0.4.0.
+ Proto3SingularMsgs *bool `protobuf:"varint,21,opt,name=proto3_singular_msgs,json=proto3SingularMsgs,def=0" json:"proto3_singular_msgs,omitempty"`
+ // Generate an enum->string mapping function (can take up lots of space).
+ EnumToString *bool `protobuf:"varint,13,opt,name=enum_to_string,json=enumToString,def=0" json:"enum_to_string,omitempty"`
+ // Generate bytes arrays with fixed length
+ FixedLength *bool `protobuf:"varint,15,opt,name=fixed_length,json=fixedLength,def=0" json:"fixed_length,omitempty"`
+ // Generate repeated field with fixed count
+ FixedCount *bool `protobuf:"varint,16,opt,name=fixed_count,json=fixedCount,def=0" json:"fixed_count,omitempty"`
+ // Generate message-level callback that is called before decoding submessages.
+ // This can be used to set callback fields for submsgs inside oneofs.
+ SubmsgCallback *bool `protobuf:"varint,22,opt,name=submsg_callback,json=submsgCallback,def=0" json:"submsg_callback,omitempty"`
+ // Shorten or remove package names from type names.
+ // This option applies only on the file level.
+ MangleNames *TypenameMangling `protobuf:"varint,17,opt,name=mangle_names,json=mangleNames,enum=TypenameMangling,def=0" json:"mangle_names,omitempty"`
+ // Data type for storage associated with callback fields.
+ CallbackDatatype *string `protobuf:"bytes,18,opt,name=callback_datatype,json=callbackDatatype,def=pb_callback_t" json:"callback_datatype,omitempty"`
+ // Callback function used for encoding and decoding.
+ // Prior to nanopb-0.4.0, the callback was specified in per-field pb_callback_t
+ // structure. This is still supported, but does not work inside e.g. oneof or pointer
+ // fields. Instead, a new method allows specifying a per-message callback that
+ // will be called for all callback fields in a message type.
+ CallbackFunction *string `protobuf:"bytes,19,opt,name=callback_function,json=callbackFunction,def=pb_default_field_callback" json:"callback_function,omitempty"`
+ // Select the size of field descriptors. This option has to be defined
+ // for the whole message, not per-field. Usually automatic selection is
+ // ok, but if it results in compilation errors you can increase the field
+ // size here.
+ Descriptorsize *DescriptorSize `protobuf:"varint,20,opt,name=descriptorsize,enum=DescriptorSize,def=0" json:"descriptorsize,omitempty"`
+ // Set default value for has_ fields.
+ DefaultHas *bool `protobuf:"varint,23,opt,name=default_has,json=defaultHas,def=0" json:"default_has,omitempty"`
+ // Extra files to include in generated `.pb.h`
+ Include []string `protobuf:"bytes,24,rep,name=include" json:"include,omitempty"`
+ // Automatic includes to exclude from generated `.pb.h`
+ // Same as nanopb_generator.py command line flag -x.
+ Exclude []string `protobuf:"bytes,26,rep,name=exclude" json:"exclude,omitempty"`
+ // Package name that applies only for nanopb.
+ Package *string `protobuf:"bytes,25,opt,name=package" json:"package,omitempty"`
+ // Override type of the field in generated C code. Only to be used with related field types
+ TypeOverride *descriptorpb.FieldDescriptorProto_Type `protobuf:"varint,27,opt,name=type_override,json=typeOverride,enum=google.protobuf.FieldDescriptorProto_Type" json:"type_override,omitempty"`
+ // Due to historical reasons, nanopb orders fields in structs by their tag number
+ // instead of the order in .proto. Set this to false to keep the .proto order.
+ // The default value will probably change to false in nanopb-0.5.0.
+ SortByTag *bool `protobuf:"varint,28,opt,name=sort_by_tag,json=sortByTag,def=1" json:"sort_by_tag,omitempty"`
+ // Set the FT_DEFAULT field conversion strategy.
+ // A field that can become a static member of a c struct (e.g. int, bool, etc)
+ // will be a a static field.
+ // Fields with dynamic length are converted to either a pointer or a callback.
+ FallbackType *FieldType `protobuf:"varint,29,opt,name=fallback_type,json=fallbackType,enum=FieldType,def=1" json:"fallback_type,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+// Default values for NanoPBOptions fields.
+const (
+ Default_NanoPBOptions_IntSize = IntSize_IS_DEFAULT
+ Default_NanoPBOptions_Type = FieldType_FT_DEFAULT
+ Default_NanoPBOptions_LongNames = bool(true)
+ Default_NanoPBOptions_PackedStruct = bool(false)
+ Default_NanoPBOptions_PackedEnum = bool(false)
+ Default_NanoPBOptions_SkipMessage = bool(false)
+ Default_NanoPBOptions_NoUnions = bool(false)
+ Default_NanoPBOptions_AnonymousOneof = bool(false)
+ Default_NanoPBOptions_Proto3 = bool(false)
+ Default_NanoPBOptions_Proto3SingularMsgs = bool(false)
+ Default_NanoPBOptions_EnumToString = bool(false)
+ Default_NanoPBOptions_FixedLength = bool(false)
+ Default_NanoPBOptions_FixedCount = bool(false)
+ Default_NanoPBOptions_SubmsgCallback = bool(false)
+ Default_NanoPBOptions_MangleNames = TypenameMangling_M_NONE
+ Default_NanoPBOptions_CallbackDatatype = string("pb_callback_t")
+ Default_NanoPBOptions_CallbackFunction = string("pb_default_field_callback")
+ Default_NanoPBOptions_Descriptorsize = DescriptorSize_DS_AUTO
+ Default_NanoPBOptions_DefaultHas = bool(false)
+ Default_NanoPBOptions_SortByTag = bool(true)
+ Default_NanoPBOptions_FallbackType = FieldType_FT_CALLBACK
+)
+
+func (x *NanoPBOptions) Reset() {
+ *x = NanoPBOptions{}
+ mi := &file_nanopb_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *NanoPBOptions) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*NanoPBOptions) ProtoMessage() {}
+
+func (x *NanoPBOptions) ProtoReflect() protoreflect.Message {
+ mi := &file_nanopb_proto_msgTypes[0]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use NanoPBOptions.ProtoReflect.Descriptor instead.
+func (*NanoPBOptions) Descriptor() ([]byte, []int) {
+ return file_nanopb_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *NanoPBOptions) GetMaxSize() int32 {
+ if x != nil && x.MaxSize != nil {
+ return *x.MaxSize
+ }
+ return 0
+}
+
+func (x *NanoPBOptions) GetMaxLength() int32 {
+ if x != nil && x.MaxLength != nil {
+ return *x.MaxLength
+ }
+ return 0
+}
+
+func (x *NanoPBOptions) GetMaxCount() int32 {
+ if x != nil && x.MaxCount != nil {
+ return *x.MaxCount
+ }
+ return 0
+}
+
+func (x *NanoPBOptions) GetIntSize() IntSize {
+ if x != nil && x.IntSize != nil {
+ return *x.IntSize
+ }
+ return Default_NanoPBOptions_IntSize
+}
+
+func (x *NanoPBOptions) GetType() FieldType {
+ if x != nil && x.Type != nil {
+ return *x.Type
+ }
+ return Default_NanoPBOptions_Type
+}
+
+func (x *NanoPBOptions) GetLongNames() bool {
+ if x != nil && x.LongNames != nil {
+ return *x.LongNames
+ }
+ return Default_NanoPBOptions_LongNames
+}
+
+func (x *NanoPBOptions) GetPackedStruct() bool {
+ if x != nil && x.PackedStruct != nil {
+ return *x.PackedStruct
+ }
+ return Default_NanoPBOptions_PackedStruct
+}
+
+func (x *NanoPBOptions) GetPackedEnum() bool {
+ if x != nil && x.PackedEnum != nil {
+ return *x.PackedEnum
+ }
+ return Default_NanoPBOptions_PackedEnum
+}
+
+func (x *NanoPBOptions) GetSkipMessage() bool {
+ if x != nil && x.SkipMessage != nil {
+ return *x.SkipMessage
+ }
+ return Default_NanoPBOptions_SkipMessage
+}
+
+func (x *NanoPBOptions) GetNoUnions() bool {
+ if x != nil && x.NoUnions != nil {
+ return *x.NoUnions
+ }
+ return Default_NanoPBOptions_NoUnions
+}
+
+func (x *NanoPBOptions) GetMsgid() uint32 {
+ if x != nil && x.Msgid != nil {
+ return *x.Msgid
+ }
+ return 0
+}
+
+func (x *NanoPBOptions) GetAnonymousOneof() bool {
+ if x != nil && x.AnonymousOneof != nil {
+ return *x.AnonymousOneof
+ }
+ return Default_NanoPBOptions_AnonymousOneof
+}
+
+func (x *NanoPBOptions) GetProto3() bool {
+ if x != nil && x.Proto3 != nil {
+ return *x.Proto3
+ }
+ return Default_NanoPBOptions_Proto3
+}
+
+func (x *NanoPBOptions) GetProto3SingularMsgs() bool {
+ if x != nil && x.Proto3SingularMsgs != nil {
+ return *x.Proto3SingularMsgs
+ }
+ return Default_NanoPBOptions_Proto3SingularMsgs
+}
+
+func (x *NanoPBOptions) GetEnumToString() bool {
+ if x != nil && x.EnumToString != nil {
+ return *x.EnumToString
+ }
+ return Default_NanoPBOptions_EnumToString
+}
+
+func (x *NanoPBOptions) GetFixedLength() bool {
+ if x != nil && x.FixedLength != nil {
+ return *x.FixedLength
+ }
+ return Default_NanoPBOptions_FixedLength
+}
+
+func (x *NanoPBOptions) GetFixedCount() bool {
+ if x != nil && x.FixedCount != nil {
+ return *x.FixedCount
+ }
+ return Default_NanoPBOptions_FixedCount
+}
+
+func (x *NanoPBOptions) GetSubmsgCallback() bool {
+ if x != nil && x.SubmsgCallback != nil {
+ return *x.SubmsgCallback
+ }
+ return Default_NanoPBOptions_SubmsgCallback
+}
+
+func (x *NanoPBOptions) GetMangleNames() TypenameMangling {
+ if x != nil && x.MangleNames != nil {
+ return *x.MangleNames
+ }
+ return Default_NanoPBOptions_MangleNames
+}
+
+func (x *NanoPBOptions) GetCallbackDatatype() string {
+ if x != nil && x.CallbackDatatype != nil {
+ return *x.CallbackDatatype
+ }
+ return Default_NanoPBOptions_CallbackDatatype
+}
+
+func (x *NanoPBOptions) GetCallbackFunction() string {
+ if x != nil && x.CallbackFunction != nil {
+ return *x.CallbackFunction
+ }
+ return Default_NanoPBOptions_CallbackFunction
+}
+
+func (x *NanoPBOptions) GetDescriptorsize() DescriptorSize {
+ if x != nil && x.Descriptorsize != nil {
+ return *x.Descriptorsize
+ }
+ return Default_NanoPBOptions_Descriptorsize
+}
+
+func (x *NanoPBOptions) GetDefaultHas() bool {
+ if x != nil && x.DefaultHas != nil {
+ return *x.DefaultHas
+ }
+ return Default_NanoPBOptions_DefaultHas
+}
+
+func (x *NanoPBOptions) GetInclude() []string {
+ if x != nil {
+ return x.Include
+ }
+ return nil
+}
+
+func (x *NanoPBOptions) GetExclude() []string {
+ if x != nil {
+ return x.Exclude
+ }
+ return nil
+}
+
+func (x *NanoPBOptions) GetPackage() string {
+ if x != nil && x.Package != nil {
+ return *x.Package
+ }
+ return ""
+}
+
+func (x *NanoPBOptions) GetTypeOverride() descriptorpb.FieldDescriptorProto_Type {
+ if x != nil && x.TypeOverride != nil {
+ return *x.TypeOverride
+ }
+ return descriptorpb.FieldDescriptorProto_Type(1)
+}
+
+func (x *NanoPBOptions) GetSortByTag() bool {
+ if x != nil && x.SortByTag != nil {
+ return *x.SortByTag
+ }
+ return Default_NanoPBOptions_SortByTag
+}
+
+func (x *NanoPBOptions) GetFallbackType() FieldType {
+ if x != nil && x.FallbackType != nil {
+ return *x.FallbackType
+ }
+ return Default_NanoPBOptions_FallbackType
+}
+
+var file_nanopb_proto_extTypes = []protoimpl.ExtensionInfo{
+ {
+ ExtendedType: (*descriptorpb.FileOptions)(nil),
+ ExtensionType: (*NanoPBOptions)(nil),
+ Field: 1010,
+ Name: "nanopb_fileopt",
+ Tag: "bytes,1010,opt,name=nanopb_fileopt",
+ Filename: "nanopb.proto",
+ },
+ {
+ ExtendedType: (*descriptorpb.MessageOptions)(nil),
+ ExtensionType: (*NanoPBOptions)(nil),
+ Field: 1010,
+ Name: "nanopb_msgopt",
+ Tag: "bytes,1010,opt,name=nanopb_msgopt",
+ Filename: "nanopb.proto",
+ },
+ {
+ ExtendedType: (*descriptorpb.EnumOptions)(nil),
+ ExtensionType: (*NanoPBOptions)(nil),
+ Field: 1010,
+ Name: "nanopb_enumopt",
+ Tag: "bytes,1010,opt,name=nanopb_enumopt",
+ Filename: "nanopb.proto",
+ },
+ {
+ ExtendedType: (*descriptorpb.FieldOptions)(nil),
+ ExtensionType: (*NanoPBOptions)(nil),
+ Field: 1010,
+ Name: "nanopb",
+ Tag: "bytes,1010,opt,name=nanopb",
+ Filename: "nanopb.proto",
+ },
+}
+
+// Extension fields to descriptorpb.FileOptions.
+var (
+ // optional NanoPBOptions nanopb_fileopt = 1010;
+ E_NanopbFileopt = &file_nanopb_proto_extTypes[0]
+)
+
+// Extension fields to descriptorpb.MessageOptions.
+var (
+ // optional NanoPBOptions nanopb_msgopt = 1010;
+ E_NanopbMsgopt = &file_nanopb_proto_extTypes[1]
+)
+
+// Extension fields to descriptorpb.EnumOptions.
+var (
+ // optional NanoPBOptions nanopb_enumopt = 1010;
+ E_NanopbEnumopt = &file_nanopb_proto_extTypes[2]
+)
+
+// Extension fields to descriptorpb.FieldOptions.
+var (
+ // optional NanoPBOptions nanopb = 1010;
+ E_Nanopb = &file_nanopb_proto_extTypes[3]
+)
+
+var File_nanopb_proto protoreflect.FileDescriptor
+
+const file_nanopb_proto_rawDesc = "" +
+ "\n" +
+ "\fnanopb.proto\x1a google/protobuf/descriptor.proto\"\x86\n" +
+ "\n" +
+ "\rNanoPBOptions\x12\x19\n" +
+ "\bmax_size\x18\x01 \x01(\x05R\amaxSize\x12\x1d\n" +
+ "\n" +
+ "max_length\x18\x0e \x01(\x05R\tmaxLength\x12\x1b\n" +
+ "\tmax_count\x18\x02 \x01(\x05R\bmaxCount\x12/\n" +
+ "\bint_size\x18\a \x01(\x0e2\b.IntSize:\n" +
+ "IS_DEFAULTR\aintSize\x12*\n" +
+ "\x04type\x18\x03 \x01(\x0e2\n" +
+ ".FieldType:\n" +
+ "FT_DEFAULTR\x04type\x12#\n" +
+ "\n" +
+ "long_names\x18\x04 \x01(\b:\x04trueR\tlongNames\x12*\n" +
+ "\rpacked_struct\x18\x05 \x01(\b:\x05falseR\fpackedStruct\x12&\n" +
+ "\vpacked_enum\x18\n" +
+ " \x01(\b:\x05falseR\n" +
+ "packedEnum\x12(\n" +
+ "\fskip_message\x18\x06 \x01(\b:\x05falseR\vskipMessage\x12\"\n" +
+ "\tno_unions\x18\b \x01(\b:\x05falseR\bnoUnions\x12\x14\n" +
+ "\x05msgid\x18\t \x01(\rR\x05msgid\x12.\n" +
+ "\x0fanonymous_oneof\x18\v \x01(\b:\x05falseR\x0eanonymousOneof\x12\x1d\n" +
+ "\x06proto3\x18\f \x01(\b:\x05falseR\x06proto3\x127\n" +
+ "\x14proto3_singular_msgs\x18\x15 \x01(\b:\x05falseR\x12proto3SingularMsgs\x12+\n" +
+ "\x0eenum_to_string\x18\r \x01(\b:\x05falseR\fenumToString\x12(\n" +
+ "\ffixed_length\x18\x0f \x01(\b:\x05falseR\vfixedLength\x12&\n" +
+ "\vfixed_count\x18\x10 \x01(\b:\x05falseR\n" +
+ "fixedCount\x12.\n" +
+ "\x0fsubmsg_callback\x18\x16 \x01(\b:\x05falseR\x0esubmsgCallback\x12<\n" +
+ "\fmangle_names\x18\x11 \x01(\x0e2\x11.TypenameMangling:\x06M_NONER\vmangleNames\x12:\n" +
+ "\x11callback_datatype\x18\x12 \x01(\t:\rpb_callback_tR\x10callbackDatatype\x12F\n" +
+ "\x11callback_function\x18\x13 \x01(\t:\x19pb_default_field_callbackR\x10callbackFunction\x12@\n" +
+ "\x0edescriptorsize\x18\x14 \x01(\x0e2\x0f.DescriptorSize:\aDS_AUTOR\x0edescriptorsize\x12&\n" +
+ "\vdefault_has\x18\x17 \x01(\b:\x05falseR\n" +
+ "defaultHas\x12\x18\n" +
+ "\ainclude\x18\x18 \x03(\tR\ainclude\x12\x18\n" +
+ "\aexclude\x18\x1a \x03(\tR\aexclude\x12\x18\n" +
+ "\apackage\x18\x19 \x01(\tR\apackage\x12O\n" +
+ "\rtype_override\x18\x1b \x01(\x0e2*.google.protobuf.FieldDescriptorProto.TypeR\ftypeOverride\x12$\n" +
+ "\vsort_by_tag\x18\x1c \x01(\b:\x04trueR\tsortByTag\x12<\n" +
+ "\rfallback_type\x18\x1d \x01(\x0e2\n" +
+ ".FieldType:\vFT_CALLBACKR\ffallbackType*i\n" +
+ "\tFieldType\x12\x0e\n" +
+ "\n" +
+ "FT_DEFAULT\x10\x00\x12\x0f\n" +
+ "\vFT_CALLBACK\x10\x01\x12\x0e\n" +
+ "\n" +
+ "FT_POINTER\x10\x04\x12\r\n" +
+ "\tFT_STATIC\x10\x02\x12\r\n" +
+ "\tFT_IGNORE\x10\x03\x12\r\n" +
+ "\tFT_INLINE\x10\x05*D\n" +
+ "\aIntSize\x12\x0e\n" +
+ "\n" +
+ "IS_DEFAULT\x10\x00\x12\b\n" +
+ "\x04IS_8\x10\b\x12\t\n" +
+ "\x05IS_16\x10\x10\x12\t\n" +
+ "\x05IS_32\x10 \x12\t\n" +
+ "\x05IS_64\x10@*Z\n" +
+ "\x10TypenameMangling\x12\n" +
+ "\n" +
+ "\x06M_NONE\x10\x00\x12\x13\n" +
+ "\x0fM_STRIP_PACKAGE\x10\x01\x12\r\n" +
+ "\tM_FLATTEN\x10\x02\x12\x16\n" +
+ "\x12M_PACKAGE_INITIALS\x10\x03*E\n" +
+ "\x0eDescriptorSize\x12\v\n" +
+ "\aDS_AUTO\x10\x00\x12\b\n" +
+ "\x04DS_1\x10\x01\x12\b\n" +
+ "\x04DS_2\x10\x02\x12\b\n" +
+ "\x04DS_4\x10\x04\x12\b\n" +
+ "\x04DS_8\x10\b:T\n" +
+ "\x0enanopb_fileopt\x12\x1c.google.protobuf.FileOptions\x18\xf2\a \x01(\v2\x0e.NanoPBOptionsR\rnanopbFileopt:U\n" +
+ "\rnanopb_msgopt\x12\x1f.google.protobuf.MessageOptions\x18\xf2\a \x01(\v2\x0e.NanoPBOptionsR\fnanopbMsgopt:T\n" +
+ "\x0enanopb_enumopt\x12\x1c.google.protobuf.EnumOptions\x18\xf2\a \x01(\v2\x0e.NanoPBOptionsR\rnanopbEnumopt:F\n" +
+ "\x06nanopb\x12\x1d.google.protobuf.FieldOptions\x18\xf2\a \x01(\v2\x0e.NanoPBOptionsR\x06nanopbB>\n" +
+ "\x18fi.kapsi.koti.jpa.nanopbZ\"github.com/meshtastic/go/generated"
+
+var (
+ file_nanopb_proto_rawDescOnce sync.Once
+ file_nanopb_proto_rawDescData []byte
+)
+
+func file_nanopb_proto_rawDescGZIP() []byte {
+ file_nanopb_proto_rawDescOnce.Do(func() {
+ file_nanopb_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_nanopb_proto_rawDesc), len(file_nanopb_proto_rawDesc)))
+ })
+ return file_nanopb_proto_rawDescData
+}
+
+var file_nanopb_proto_enumTypes = make([]protoimpl.EnumInfo, 4)
+var file_nanopb_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
+var file_nanopb_proto_goTypes = []any{
+ (FieldType)(0), // 0: FieldType
+ (IntSize)(0), // 1: IntSize
+ (TypenameMangling)(0), // 2: TypenameMangling
+ (DescriptorSize)(0), // 3: DescriptorSize
+ (*NanoPBOptions)(nil), // 4: NanoPBOptions
+ (descriptorpb.FieldDescriptorProto_Type)(0), // 5: google.protobuf.FieldDescriptorProto.Type
+ (*descriptorpb.FileOptions)(nil), // 6: google.protobuf.FileOptions
+ (*descriptorpb.MessageOptions)(nil), // 7: google.protobuf.MessageOptions
+ (*descriptorpb.EnumOptions)(nil), // 8: google.protobuf.EnumOptions
+ (*descriptorpb.FieldOptions)(nil), // 9: google.protobuf.FieldOptions
+}
+var file_nanopb_proto_depIdxs = []int32{
+ 1, // 0: NanoPBOptions.int_size:type_name -> IntSize
+ 0, // 1: NanoPBOptions.type:type_name -> FieldType
+ 2, // 2: NanoPBOptions.mangle_names:type_name -> TypenameMangling
+ 3, // 3: NanoPBOptions.descriptorsize:type_name -> DescriptorSize
+ 5, // 4: NanoPBOptions.type_override:type_name -> google.protobuf.FieldDescriptorProto.Type
+ 0, // 5: NanoPBOptions.fallback_type:type_name -> FieldType
+ 6, // 6: nanopb_fileopt:extendee -> google.protobuf.FileOptions
+ 7, // 7: nanopb_msgopt:extendee -> google.protobuf.MessageOptions
+ 8, // 8: nanopb_enumopt:extendee -> google.protobuf.EnumOptions
+ 9, // 9: nanopb:extendee -> google.protobuf.FieldOptions
+ 4, // 10: nanopb_fileopt:type_name -> NanoPBOptions
+ 4, // 11: nanopb_msgopt:type_name -> NanoPBOptions
+ 4, // 12: nanopb_enumopt:type_name -> NanoPBOptions
+ 4, // 13: nanopb:type_name -> NanoPBOptions
+ 14, // [14:14] is the sub-list for method output_type
+ 14, // [14:14] is the sub-list for method input_type
+ 10, // [10:14] is the sub-list for extension type_name
+ 6, // [6:10] is the sub-list for extension extendee
+ 0, // [0:6] is the sub-list for field type_name
+}
+
+func init() { file_nanopb_proto_init() }
+func file_nanopb_proto_init() {
+ if File_nanopb_proto != nil {
+ return
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_nanopb_proto_rawDesc), len(file_nanopb_proto_rawDesc)),
+ NumEnums: 4,
+ NumMessages: 1,
+ NumExtensions: 4,
+ NumServices: 0,
+ },
+ GoTypes: file_nanopb_proto_goTypes,
+ DependencyIndexes: file_nanopb_proto_depIdxs,
+ EnumInfos: file_nanopb_proto_enumTypes,
+ MessageInfos: file_nanopb_proto_msgTypes,
+ ExtensionInfos: file_nanopb_proto_extTypes,
+ }.Build()
+ File_nanopb_proto = out.File
+ file_nanopb_proto_goTypes = nil
+ file_nanopb_proto_depIdxs = nil
+}
diff --git a/meshtastic/nanopb_vtproto.pb.go b/meshtastic/nanopb_vtproto.pb.go
new file mode 100644
index 0000000..9bebeb3
--- /dev/null
+++ b/meshtastic/nanopb_vtproto.pb.go
@@ -0,0 +1,1125 @@
+// Code generated by protoc-gen-go-vtproto. DO NOT EDIT.
+// protoc-gen-go-vtproto version: v0.6.0
+// source: nanopb.proto
+
+package generated
+
+import (
+ fmt "fmt"
+ protohelpers "github.com/planetscale/vtprotobuf/protohelpers"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ descriptorpb "google.golang.org/protobuf/types/descriptorpb"
+ io "io"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+func (m *NanoPBOptions) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *NanoPBOptions) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *NanoPBOptions) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if m.FallbackType != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.FallbackType))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0xe8
+ }
+ if m.SortByTag != nil {
+ i--
+ if *m.SortByTag {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0xe0
+ }
+ if m.TypeOverride != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.TypeOverride))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0xd8
+ }
+ if len(m.Exclude) > 0 {
+ for iNdEx := len(m.Exclude) - 1; iNdEx >= 0; iNdEx-- {
+ i -= len(m.Exclude[iNdEx])
+ copy(dAtA[i:], m.Exclude[iNdEx])
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.Exclude[iNdEx])))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0xd2
+ }
+ }
+ if m.Package != nil {
+ i -= len(*m.Package)
+ copy(dAtA[i:], *m.Package)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(*m.Package)))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0xca
+ }
+ if len(m.Include) > 0 {
+ for iNdEx := len(m.Include) - 1; iNdEx >= 0; iNdEx-- {
+ i -= len(m.Include[iNdEx])
+ copy(dAtA[i:], m.Include[iNdEx])
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(m.Include[iNdEx])))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0xc2
+ }
+ }
+ if m.DefaultHas != nil {
+ i--
+ if *m.DefaultHas {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0xb8
+ }
+ if m.SubmsgCallback != nil {
+ i--
+ if *m.SubmsgCallback {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0xb0
+ }
+ if m.Proto3SingularMsgs != nil {
+ i--
+ if *m.Proto3SingularMsgs {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0xa8
+ }
+ if m.Descriptorsize != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.Descriptorsize))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0xa0
+ }
+ if m.CallbackFunction != nil {
+ i -= len(*m.CallbackFunction)
+ copy(dAtA[i:], *m.CallbackFunction)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(*m.CallbackFunction)))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0x9a
+ }
+ if m.CallbackDatatype != nil {
+ i -= len(*m.CallbackDatatype)
+ copy(dAtA[i:], *m.CallbackDatatype)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(*m.CallbackDatatype)))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0x92
+ }
+ if m.MangleNames != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.MangleNames))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0x88
+ }
+ if m.FixedCount != nil {
+ i--
+ if *m.FixedCount {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0x80
+ }
+ if m.FixedLength != nil {
+ i--
+ if *m.FixedLength {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x78
+ }
+ if m.MaxLength != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.MaxLength))
+ i--
+ dAtA[i] = 0x70
+ }
+ if m.EnumToString != nil {
+ i--
+ if *m.EnumToString {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x68
+ }
+ if m.Proto3 != nil {
+ i--
+ if *m.Proto3 {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x60
+ }
+ if m.AnonymousOneof != nil {
+ i--
+ if *m.AnonymousOneof {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x58
+ }
+ if m.PackedEnum != nil {
+ i--
+ if *m.PackedEnum {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x50
+ }
+ if m.Msgid != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.Msgid))
+ i--
+ dAtA[i] = 0x48
+ }
+ if m.NoUnions != nil {
+ i--
+ if *m.NoUnions {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x40
+ }
+ if m.IntSize != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.IntSize))
+ i--
+ dAtA[i] = 0x38
+ }
+ if m.SkipMessage != nil {
+ i--
+ if *m.SkipMessage {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x30
+ }
+ if m.PackedStruct != nil {
+ i--
+ if *m.PackedStruct {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x28
+ }
+ if m.LongNames != nil {
+ i--
+ if *m.LongNames {
+ dAtA[i] = 1
+ } else {
+ dAtA[i] = 0
+ }
+ i--
+ dAtA[i] = 0x20
+ }
+ if m.Type != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.Type))
+ i--
+ dAtA[i] = 0x18
+ }
+ if m.MaxCount != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.MaxCount))
+ i--
+ dAtA[i] = 0x10
+ }
+ if m.MaxSize != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.MaxSize))
+ i--
+ dAtA[i] = 0x8
+ }
+ return len(dAtA) - i, nil
+}
+
+func (m *NanoPBOptions) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.MaxSize != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.MaxSize))
+ }
+ if m.MaxCount != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.MaxCount))
+ }
+ if m.Type != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.Type))
+ }
+ if m.LongNames != nil {
+ n += 2
+ }
+ if m.PackedStruct != nil {
+ n += 2
+ }
+ if m.SkipMessage != nil {
+ n += 2
+ }
+ if m.IntSize != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.IntSize))
+ }
+ if m.NoUnions != nil {
+ n += 2
+ }
+ if m.Msgid != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.Msgid))
+ }
+ if m.PackedEnum != nil {
+ n += 2
+ }
+ if m.AnonymousOneof != nil {
+ n += 2
+ }
+ if m.Proto3 != nil {
+ n += 2
+ }
+ if m.EnumToString != nil {
+ n += 2
+ }
+ if m.MaxLength != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.MaxLength))
+ }
+ if m.FixedLength != nil {
+ n += 2
+ }
+ if m.FixedCount != nil {
+ n += 3
+ }
+ if m.MangleNames != nil {
+ n += 2 + protohelpers.SizeOfVarint(uint64(*m.MangleNames))
+ }
+ if m.CallbackDatatype != nil {
+ l = len(*m.CallbackDatatype)
+ n += 2 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ if m.CallbackFunction != nil {
+ l = len(*m.CallbackFunction)
+ n += 2 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ if m.Descriptorsize != nil {
+ n += 2 + protohelpers.SizeOfVarint(uint64(*m.Descriptorsize))
+ }
+ if m.Proto3SingularMsgs != nil {
+ n += 3
+ }
+ if m.SubmsgCallback != nil {
+ n += 3
+ }
+ if m.DefaultHas != nil {
+ n += 3
+ }
+ if len(m.Include) > 0 {
+ for _, s := range m.Include {
+ l = len(s)
+ n += 2 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ }
+ if m.Package != nil {
+ l = len(*m.Package)
+ n += 2 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ if len(m.Exclude) > 0 {
+ for _, s := range m.Exclude {
+ l = len(s)
+ n += 2 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ }
+ if m.TypeOverride != nil {
+ n += 2 + protohelpers.SizeOfVarint(uint64(*m.TypeOverride))
+ }
+ if m.SortByTag != nil {
+ n += 3
+ }
+ if m.FallbackType != nil {
+ n += 2 + protohelpers.SizeOfVarint(uint64(*m.FallbackType))
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *NanoPBOptions) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: NanoPBOptions: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: NanoPBOptions: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field MaxSize", wireType)
+ }
+ var v int32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.MaxSize = &v
+ case 2:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field MaxCount", wireType)
+ }
+ var v int32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.MaxCount = &v
+ case 3:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Type", wireType)
+ }
+ var v FieldType
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= FieldType(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.Type = &v
+ case 4:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field LongNames", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ b := bool(v != 0)
+ m.LongNames = &b
+ case 5:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field PackedStruct", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ b := bool(v != 0)
+ m.PackedStruct = &b
+ case 6:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field SkipMessage", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ b := bool(v != 0)
+ m.SkipMessage = &b
+ case 7:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field IntSize", wireType)
+ }
+ var v IntSize
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= IntSize(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.IntSize = &v
+ case 8:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field NoUnions", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ b := bool(v != 0)
+ m.NoUnions = &b
+ case 9:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Msgid", wireType)
+ }
+ var v uint32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.Msgid = &v
+ case 10:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field PackedEnum", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ b := bool(v != 0)
+ m.PackedEnum = &b
+ case 11:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field AnonymousOneof", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ b := bool(v != 0)
+ m.AnonymousOneof = &b
+ case 12:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Proto3", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ b := bool(v != 0)
+ m.Proto3 = &b
+ case 13:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field EnumToString", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ b := bool(v != 0)
+ m.EnumToString = &b
+ case 14:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field MaxLength", wireType)
+ }
+ var v int32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.MaxLength = &v
+ case 15:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field FixedLength", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ b := bool(v != 0)
+ m.FixedLength = &b
+ case 16:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field FixedCount", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ b := bool(v != 0)
+ m.FixedCount = &b
+ case 17:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field MangleNames", wireType)
+ }
+ var v TypenameMangling
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= TypenameMangling(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.MangleNames = &v
+ case 18:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field CallbackDatatype", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ s := string(dAtA[iNdEx:postIndex])
+ m.CallbackDatatype = &s
+ iNdEx = postIndex
+ case 19:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field CallbackFunction", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ s := string(dAtA[iNdEx:postIndex])
+ m.CallbackFunction = &s
+ iNdEx = postIndex
+ case 20:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Descriptorsize", wireType)
+ }
+ var v DescriptorSize
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= DescriptorSize(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.Descriptorsize = &v
+ case 21:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Proto3SingularMsgs", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ b := bool(v != 0)
+ m.Proto3SingularMsgs = &b
+ case 22:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field SubmsgCallback", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ b := bool(v != 0)
+ m.SubmsgCallback = &b
+ case 23:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field DefaultHas", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ b := bool(v != 0)
+ m.DefaultHas = &b
+ case 24:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Include", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.Include = append(m.Include, string(dAtA[iNdEx:postIndex]))
+ iNdEx = postIndex
+ case 25:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Package", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ s := string(dAtA[iNdEx:postIndex])
+ m.Package = &s
+ iNdEx = postIndex
+ case 26:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Exclude", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.Exclude = append(m.Exclude, string(dAtA[iNdEx:postIndex]))
+ iNdEx = postIndex
+ case 27:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field TypeOverride", wireType)
+ }
+ var v descriptorpb.FieldDescriptorProto_Type
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= descriptorpb.FieldDescriptorProto_Type(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.TypeOverride = &v
+ case 28:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field SortByTag", wireType)
+ }
+ var v int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ b := bool(v != 0)
+ m.SortByTag = &b
+ case 29:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field FallbackType", wireType)
+ }
+ var v FieldType
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= FieldType(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.FallbackType = &v
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
diff --git a/meshtastic/paxcount.pb.go b/meshtastic/paxcount.pb.go
index ee3b0e0..cce20b7 100644
--- a/meshtastic/paxcount.pb.go
+++ b/meshtastic/paxcount.pb.go
@@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.32.0
-// protoc v4.25.2
+// protoc-gen-go v1.36.6
+// protoc v3.21.12
// source: meshtastic/paxcount.proto
package generated
@@ -11,6 +11,7 @@ import (
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
+ unsafe "unsafe"
)
const (
@@ -22,25 +23,22 @@ const (
// TODO: REPLACE
type Paxcount struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// seen Wifi devices
Wifi uint32 `protobuf:"varint,1,opt,name=wifi,proto3" json:"wifi,omitempty"`
// Seen BLE devices
Ble uint32 `protobuf:"varint,2,opt,name=ble,proto3" json:"ble,omitempty"`
// Uptime in seconds
- Uptime uint32 `protobuf:"varint,3,opt,name=uptime,proto3" json:"uptime,omitempty"`
+ Uptime uint32 `protobuf:"varint,3,opt,name=uptime,proto3" json:"uptime,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *Paxcount) Reset() {
*x = Paxcount{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_paxcount_proto_msgTypes[0]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_paxcount_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *Paxcount) String() string {
@@ -51,7 +49,7 @@ func (*Paxcount) ProtoMessage() {}
func (x *Paxcount) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_paxcount_proto_msgTypes[0]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -89,37 +87,30 @@ func (x *Paxcount) GetUptime() uint32 {
var File_meshtastic_paxcount_proto protoreflect.FileDescriptor
-var file_meshtastic_paxcount_proto_rawDesc = []byte{
- 0x0a, 0x19, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x70, 0x61, 0x78,
- 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0a, 0x6d, 0x65, 0x73,
- 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x22, 0x48, 0x0a, 0x08, 0x50, 0x61, 0x78, 0x63, 0x6f,
- 0x75, 0x6e, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x77, 0x69, 0x66, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x0d, 0x52, 0x04, 0x77, 0x69, 0x66, 0x69, 0x12, 0x10, 0x0a, 0x03, 0x62, 0x6c, 0x65, 0x18, 0x02,
- 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x62, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x70, 0x74,
- 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x75, 0x70, 0x74, 0x69, 0x6d,
- 0x65, 0x42, 0x63, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x65, 0x65, 0x6b, 0x73, 0x76, 0x69,
- 0x6c, 0x6c, 0x65, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x42, 0x0e, 0x50, 0x61, 0x78, 0x63, 0x6f, 0x75,
- 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x5a, 0x22, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62,
- 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f,
- 0x67, 0x6f, 0x2f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0xaa, 0x02, 0x14, 0x4d,
- 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62,
- 0x75, 0x66, 0x73, 0xba, 0x02, 0x00, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
-}
+const file_meshtastic_paxcount_proto_rawDesc = "" +
+ "\n" +
+ "\x19meshtastic/paxcount.proto\x12\n" +
+ "meshtastic\"H\n" +
+ "\bPaxcount\x12\x12\n" +
+ "\x04wifi\x18\x01 \x01(\rR\x04wifi\x12\x10\n" +
+ "\x03ble\x18\x02 \x01(\rR\x03ble\x12\x16\n" +
+ "\x06uptime\x18\x03 \x01(\rR\x06uptimeBc\n" +
+ "\x13com.geeksville.meshB\x0ePaxcountProtosZ\"github.com/meshtastic/go/generated\xaa\x02\x14Meshtastic.Protobufs\xba\x02\x00b\x06proto3"
var (
file_meshtastic_paxcount_proto_rawDescOnce sync.Once
- file_meshtastic_paxcount_proto_rawDescData = file_meshtastic_paxcount_proto_rawDesc
+ file_meshtastic_paxcount_proto_rawDescData []byte
)
func file_meshtastic_paxcount_proto_rawDescGZIP() []byte {
file_meshtastic_paxcount_proto_rawDescOnce.Do(func() {
- file_meshtastic_paxcount_proto_rawDescData = protoimpl.X.CompressGZIP(file_meshtastic_paxcount_proto_rawDescData)
+ file_meshtastic_paxcount_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_meshtastic_paxcount_proto_rawDesc), len(file_meshtastic_paxcount_proto_rawDesc)))
})
return file_meshtastic_paxcount_proto_rawDescData
}
var file_meshtastic_paxcount_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
-var file_meshtastic_paxcount_proto_goTypes = []interface{}{
+var file_meshtastic_paxcount_proto_goTypes = []any{
(*Paxcount)(nil), // 0: meshtastic.Paxcount
}
var file_meshtastic_paxcount_proto_depIdxs = []int32{
@@ -135,25 +126,11 @@ func file_meshtastic_paxcount_proto_init() {
if File_meshtastic_paxcount_proto != nil {
return
}
- if !protoimpl.UnsafeEnabled {
- file_meshtastic_paxcount_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*Paxcount); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- }
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
- RawDescriptor: file_meshtastic_paxcount_proto_rawDesc,
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_meshtastic_paxcount_proto_rawDesc), len(file_meshtastic_paxcount_proto_rawDesc)),
NumEnums: 0,
NumMessages: 1,
NumExtensions: 0,
@@ -164,7 +141,6 @@ func file_meshtastic_paxcount_proto_init() {
MessageInfos: file_meshtastic_paxcount_proto_msgTypes,
}.Build()
File_meshtastic_paxcount_proto = out.File
- file_meshtastic_paxcount_proto_rawDesc = nil
file_meshtastic_paxcount_proto_goTypes = nil
file_meshtastic_paxcount_proto_depIdxs = nil
}
diff --git a/meshtastic/portnums.pb.go b/meshtastic/portnums.pb.go
index 69e3c76..0696160 100644
--- a/meshtastic/portnums.pb.go
+++ b/meshtastic/portnums.pb.go
@@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.32.0
-// protoc v4.25.2
+// protoc-gen-go v1.36.6
+// protoc v3.21.12
// source: meshtastic/portnums.proto
package generated
@@ -11,6 +11,7 @@ import (
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
+ unsafe "unsafe"
)
const (
@@ -50,19 +51,19 @@ const (
// ENCODING: Protobuf
PortNum_REMOTE_HARDWARE_APP PortNum = 2
// The built-in position messaging app.
- // Payload is a [Position](/docs/developers/protobufs/api#position) message
+ // Payload is a Position message.
// ENCODING: Protobuf
PortNum_POSITION_APP PortNum = 3
// The built-in user info app.
- // Payload is a [User](/docs/developers/protobufs/api#user) message
+ // Payload is a User message.
// ENCODING: Protobuf
PortNum_NODEINFO_APP PortNum = 4
// Protocol control packets for mesh protocol use.
- // Payload is a [Routing](/docs/developers/protobufs/api#routing) message
+ // Payload is a Routing message.
// ENCODING: Protobuf
PortNum_ROUTING_APP PortNum = 5
// Admin control packets.
- // Payload is a [AdminMessage](/docs/developers/protobufs/api#adminmessage) message
+ // Payload is a AdminMessage message.
// ENCODING: Protobuf
PortNum_ADMIN_APP PortNum = 6
// Compressed TEXT_MESSAGE payloads.
@@ -72,7 +73,7 @@ const (
// any incoming TEXT_MESSAGE_COMPRESSED_APP payload and convert to TEXT_MESSAGE_APP.
PortNum_TEXT_MESSAGE_COMPRESSED_APP PortNum = 7
// Waypoint payloads.
- // Payload is a [Waypoint](/docs/developers/protobufs/api#waypoint) message
+ // Payload is a Waypoint message.
// ENCODING: Protobuf
PortNum_WAYPOINT_APP PortNum = 8
// Audio Payloads.
@@ -84,6 +85,10 @@ const (
// Same as Text Message but originating from Detection Sensor Module.
// NOTE: This portnum traffic is not sent to the public MQTT starting at firmware version 2.2.9
PortNum_DETECTION_SENSOR_APP PortNum = 10
+ // Same as Text Message but used for critical alerts.
+ PortNum_ALERT_APP PortNum = 11
+ // Module/port for handling key verification requests.
+ PortNum_KEY_VERIFICATION_APP PortNum = 12
// Provides a 'ping' service that replies to any packet it receives.
// Also serves as a small example module.
// ENCODING: ASCII Plaintext
@@ -125,7 +130,7 @@ const (
// ENCODING: Protobuf (?)
PortNum_SIMULATOR_APP PortNum = 69
// Provides a traceroute functionality to show the route a packet towards
- // a certain destination would take on the mesh.
+ // a certain destination would take on the mesh. Contains a RouteDiscovery message as payload.
// ENCODING: Protobuf
PortNum_TRACEROUTE_APP PortNum = 70
// Aggregates edge info for the network by sending out a list of each node's neighbors
@@ -134,6 +139,13 @@ const (
// ATAK Plugin
// Portnum for payloads from the official Meshtastic ATAK plugin
PortNum_ATAK_PLUGIN PortNum = 72
+ // Provides unencrypted information about a node for consumption by a map via MQTT
+ PortNum_MAP_REPORT_APP PortNum = 73
+ // PowerStress based monitoring support (for automated power consumption testing)
+ PortNum_POWERSTRESS_APP PortNum = 74
+ // Reticulum Network Stack Tunnel App
+ // ENCODING: Fragmented RNS Packet. Handled by Meshtastic RNS interface
+ PortNum_RETICULUM_TUNNEL_APP PortNum = 76
// Private applications should use portnums >= 256.
// To simplify initial development and testing you can use "PRIVATE_APP"
// in your code without needing to rebuild protobuf files (via [regen-protos.sh](https://github.com/meshtastic/firmware/blob/master/bin/regen-protos.sh))
@@ -159,6 +171,8 @@ var (
8: "WAYPOINT_APP",
9: "AUDIO_APP",
10: "DETECTION_SENSOR_APP",
+ 11: "ALERT_APP",
+ 12: "KEY_VERIFICATION_APP",
32: "REPLY_APP",
33: "IP_TUNNEL_APP",
34: "PAXCOUNTER_APP",
@@ -171,6 +185,9 @@ var (
70: "TRACEROUTE_APP",
71: "NEIGHBORINFO_APP",
72: "ATAK_PLUGIN",
+ 73: "MAP_REPORT_APP",
+ 74: "POWERSTRESS_APP",
+ 76: "RETICULUM_TUNNEL_APP",
256: "PRIVATE_APP",
257: "ATAK_FORWARDER",
511: "MAX",
@@ -187,6 +204,8 @@ var (
"WAYPOINT_APP": 8,
"AUDIO_APP": 9,
"DETECTION_SENSOR_APP": 10,
+ "ALERT_APP": 11,
+ "KEY_VERIFICATION_APP": 12,
"REPLY_APP": 32,
"IP_TUNNEL_APP": 33,
"PAXCOUNTER_APP": 34,
@@ -199,6 +218,9 @@ var (
"TRACEROUTE_APP": 70,
"NEIGHBORINFO_APP": 71,
"ATAK_PLUGIN": 72,
+ "MAP_REPORT_APP": 73,
+ "POWERSTRESS_APP": 74,
+ "RETICULUM_TUNNEL_APP": 76,
"PRIVATE_APP": 256,
"ATAK_FORWARDER": 257,
"MAX": 511,
@@ -234,64 +256,60 @@ func (PortNum) EnumDescriptor() ([]byte, []int) {
var File_meshtastic_portnums_proto protoreflect.FileDescriptor
-var file_meshtastic_portnums_proto_rawDesc = []byte{
- 0x0a, 0x19, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x70, 0x6f, 0x72,
- 0x74, 0x6e, 0x75, 0x6d, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0a, 0x6d, 0x65, 0x73,
- 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2a, 0xf9, 0x03, 0x0a, 0x07, 0x50, 0x6f, 0x72, 0x74,
- 0x4e, 0x75, 0x6d, 0x12, 0x0f, 0x0a, 0x0b, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x5f, 0x41,
- 0x50, 0x50, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x54, 0x45, 0x58, 0x54, 0x5f, 0x4d, 0x45, 0x53,
- 0x53, 0x41, 0x47, 0x45, 0x5f, 0x41, 0x50, 0x50, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x52, 0x45,
- 0x4d, 0x4f, 0x54, 0x45, 0x5f, 0x48, 0x41, 0x52, 0x44, 0x57, 0x41, 0x52, 0x45, 0x5f, 0x41, 0x50,
- 0x50, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x50, 0x4f, 0x53, 0x49, 0x54, 0x49, 0x4f, 0x4e, 0x5f,
- 0x41, 0x50, 0x50, 0x10, 0x03, 0x12, 0x10, 0x0a, 0x0c, 0x4e, 0x4f, 0x44, 0x45, 0x49, 0x4e, 0x46,
- 0x4f, 0x5f, 0x41, 0x50, 0x50, 0x10, 0x04, 0x12, 0x0f, 0x0a, 0x0b, 0x52, 0x4f, 0x55, 0x54, 0x49,
- 0x4e, 0x47, 0x5f, 0x41, 0x50, 0x50, 0x10, 0x05, 0x12, 0x0d, 0x0a, 0x09, 0x41, 0x44, 0x4d, 0x49,
- 0x4e, 0x5f, 0x41, 0x50, 0x50, 0x10, 0x06, 0x12, 0x1f, 0x0a, 0x1b, 0x54, 0x45, 0x58, 0x54, 0x5f,
- 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x43, 0x4f, 0x4d, 0x50, 0x52, 0x45, 0x53, 0x53,
- 0x45, 0x44, 0x5f, 0x41, 0x50, 0x50, 0x10, 0x07, 0x12, 0x10, 0x0a, 0x0c, 0x57, 0x41, 0x59, 0x50,
- 0x4f, 0x49, 0x4e, 0x54, 0x5f, 0x41, 0x50, 0x50, 0x10, 0x08, 0x12, 0x0d, 0x0a, 0x09, 0x41, 0x55,
- 0x44, 0x49, 0x4f, 0x5f, 0x41, 0x50, 0x50, 0x10, 0x09, 0x12, 0x18, 0x0a, 0x14, 0x44, 0x45, 0x54,
- 0x45, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x45, 0x4e, 0x53, 0x4f, 0x52, 0x5f, 0x41, 0x50,
- 0x50, 0x10, 0x0a, 0x12, 0x0d, 0x0a, 0x09, 0x52, 0x45, 0x50, 0x4c, 0x59, 0x5f, 0x41, 0x50, 0x50,
- 0x10, 0x20, 0x12, 0x11, 0x0a, 0x0d, 0x49, 0x50, 0x5f, 0x54, 0x55, 0x4e, 0x4e, 0x45, 0x4c, 0x5f,
- 0x41, 0x50, 0x50, 0x10, 0x21, 0x12, 0x12, 0x0a, 0x0e, 0x50, 0x41, 0x58, 0x43, 0x4f, 0x55, 0x4e,
- 0x54, 0x45, 0x52, 0x5f, 0x41, 0x50, 0x50, 0x10, 0x22, 0x12, 0x0e, 0x0a, 0x0a, 0x53, 0x45, 0x52,
- 0x49, 0x41, 0x4c, 0x5f, 0x41, 0x50, 0x50, 0x10, 0x40, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54, 0x4f,
- 0x52, 0x45, 0x5f, 0x46, 0x4f, 0x52, 0x57, 0x41, 0x52, 0x44, 0x5f, 0x41, 0x50, 0x50, 0x10, 0x41,
- 0x12, 0x12, 0x0a, 0x0e, 0x52, 0x41, 0x4e, 0x47, 0x45, 0x5f, 0x54, 0x45, 0x53, 0x54, 0x5f, 0x41,
- 0x50, 0x50, 0x10, 0x42, 0x12, 0x11, 0x0a, 0x0d, 0x54, 0x45, 0x4c, 0x45, 0x4d, 0x45, 0x54, 0x52,
- 0x59, 0x5f, 0x41, 0x50, 0x50, 0x10, 0x43, 0x12, 0x0b, 0x0a, 0x07, 0x5a, 0x50, 0x53, 0x5f, 0x41,
- 0x50, 0x50, 0x10, 0x44, 0x12, 0x11, 0x0a, 0x0d, 0x53, 0x49, 0x4d, 0x55, 0x4c, 0x41, 0x54, 0x4f,
- 0x52, 0x5f, 0x41, 0x50, 0x50, 0x10, 0x45, 0x12, 0x12, 0x0a, 0x0e, 0x54, 0x52, 0x41, 0x43, 0x45,
- 0x52, 0x4f, 0x55, 0x54, 0x45, 0x5f, 0x41, 0x50, 0x50, 0x10, 0x46, 0x12, 0x14, 0x0a, 0x10, 0x4e,
- 0x45, 0x49, 0x47, 0x48, 0x42, 0x4f, 0x52, 0x49, 0x4e, 0x46, 0x4f, 0x5f, 0x41, 0x50, 0x50, 0x10,
- 0x47, 0x12, 0x0f, 0x0a, 0x0b, 0x41, 0x54, 0x41, 0x4b, 0x5f, 0x50, 0x4c, 0x55, 0x47, 0x49, 0x4e,
- 0x10, 0x48, 0x12, 0x10, 0x0a, 0x0b, 0x50, 0x52, 0x49, 0x56, 0x41, 0x54, 0x45, 0x5f, 0x41, 0x50,
- 0x50, 0x10, 0x80, 0x02, 0x12, 0x13, 0x0a, 0x0e, 0x41, 0x54, 0x41, 0x4b, 0x5f, 0x46, 0x4f, 0x52,
- 0x57, 0x41, 0x52, 0x44, 0x45, 0x52, 0x10, 0x81, 0x02, 0x12, 0x08, 0x0a, 0x03, 0x4d, 0x41, 0x58,
- 0x10, 0xff, 0x03, 0x42, 0x5d, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x65, 0x65, 0x6b, 0x73,
- 0x76, 0x69, 0x6c, 0x6c, 0x65, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x42, 0x08, 0x50, 0x6f, 0x72, 0x74,
- 0x6e, 0x75, 0x6d, 0x73, 0x5a, 0x22, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d,
- 0x2f, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x67, 0x6f, 0x2f, 0x67,
- 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0xaa, 0x02, 0x14, 0x4d, 0x65, 0x73, 0x68, 0x74,
- 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x73, 0xba,
- 0x02, 0x00, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
-}
+const file_meshtastic_portnums_proto_rawDesc = "" +
+ "\n" +
+ "\x19meshtastic/portnums.proto\x12\n" +
+ "meshtastic*\xe5\x04\n" +
+ "\aPortNum\x12\x0f\n" +
+ "\vUNKNOWN_APP\x10\x00\x12\x14\n" +
+ "\x10TEXT_MESSAGE_APP\x10\x01\x12\x17\n" +
+ "\x13REMOTE_HARDWARE_APP\x10\x02\x12\x10\n" +
+ "\fPOSITION_APP\x10\x03\x12\x10\n" +
+ "\fNODEINFO_APP\x10\x04\x12\x0f\n" +
+ "\vROUTING_APP\x10\x05\x12\r\n" +
+ "\tADMIN_APP\x10\x06\x12\x1f\n" +
+ "\x1bTEXT_MESSAGE_COMPRESSED_APP\x10\a\x12\x10\n" +
+ "\fWAYPOINT_APP\x10\b\x12\r\n" +
+ "\tAUDIO_APP\x10\t\x12\x18\n" +
+ "\x14DETECTION_SENSOR_APP\x10\n" +
+ "\x12\r\n" +
+ "\tALERT_APP\x10\v\x12\x18\n" +
+ "\x14KEY_VERIFICATION_APP\x10\f\x12\r\n" +
+ "\tREPLY_APP\x10 \x12\x11\n" +
+ "\rIP_TUNNEL_APP\x10!\x12\x12\n" +
+ "\x0ePAXCOUNTER_APP\x10\"\x12\x0e\n" +
+ "\n" +
+ "SERIAL_APP\x10@\x12\x15\n" +
+ "\x11STORE_FORWARD_APP\x10A\x12\x12\n" +
+ "\x0eRANGE_TEST_APP\x10B\x12\x11\n" +
+ "\rTELEMETRY_APP\x10C\x12\v\n" +
+ "\aZPS_APP\x10D\x12\x11\n" +
+ "\rSIMULATOR_APP\x10E\x12\x12\n" +
+ "\x0eTRACEROUTE_APP\x10F\x12\x14\n" +
+ "\x10NEIGHBORINFO_APP\x10G\x12\x0f\n" +
+ "\vATAK_PLUGIN\x10H\x12\x12\n" +
+ "\x0eMAP_REPORT_APP\x10I\x12\x13\n" +
+ "\x0fPOWERSTRESS_APP\x10J\x12\x18\n" +
+ "\x14RETICULUM_TUNNEL_APP\x10L\x12\x10\n" +
+ "\vPRIVATE_APP\x10\x80\x02\x12\x13\n" +
+ "\x0eATAK_FORWARDER\x10\x81\x02\x12\b\n" +
+ "\x03MAX\x10\xff\x03B]\n" +
+ "\x13com.geeksville.meshB\bPortnumsZ\"github.com/meshtastic/go/generated\xaa\x02\x14Meshtastic.Protobufs\xba\x02\x00b\x06proto3"
var (
file_meshtastic_portnums_proto_rawDescOnce sync.Once
- file_meshtastic_portnums_proto_rawDescData = file_meshtastic_portnums_proto_rawDesc
+ file_meshtastic_portnums_proto_rawDescData []byte
)
func file_meshtastic_portnums_proto_rawDescGZIP() []byte {
file_meshtastic_portnums_proto_rawDescOnce.Do(func() {
- file_meshtastic_portnums_proto_rawDescData = protoimpl.X.CompressGZIP(file_meshtastic_portnums_proto_rawDescData)
+ file_meshtastic_portnums_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_meshtastic_portnums_proto_rawDesc), len(file_meshtastic_portnums_proto_rawDesc)))
})
return file_meshtastic_portnums_proto_rawDescData
}
var file_meshtastic_portnums_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
-var file_meshtastic_portnums_proto_goTypes = []interface{}{
+var file_meshtastic_portnums_proto_goTypes = []any{
(PortNum)(0), // 0: meshtastic.PortNum
}
var file_meshtastic_portnums_proto_depIdxs = []int32{
@@ -311,7 +329,7 @@ func file_meshtastic_portnums_proto_init() {
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
- RawDescriptor: file_meshtastic_portnums_proto_rawDesc,
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_meshtastic_portnums_proto_rawDesc), len(file_meshtastic_portnums_proto_rawDesc)),
NumEnums: 1,
NumMessages: 0,
NumExtensions: 0,
@@ -322,7 +340,6 @@ func file_meshtastic_portnums_proto_init() {
EnumInfos: file_meshtastic_portnums_proto_enumTypes,
}.Build()
File_meshtastic_portnums_proto = out.File
- file_meshtastic_portnums_proto_rawDesc = nil
file_meshtastic_portnums_proto_goTypes = nil
file_meshtastic_portnums_proto_depIdxs = nil
}
diff --git a/meshtastic/powermon.pb.go b/meshtastic/powermon.pb.go
new file mode 100644
index 0000000..ba02e5f
--- /dev/null
+++ b/meshtastic/powermon.pb.go
@@ -0,0 +1,418 @@
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.36.6
+// protoc v3.21.12
+// source: meshtastic/powermon.proto
+
+package generated
+
+import (
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ reflect "reflect"
+ sync "sync"
+ unsafe "unsafe"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// Any significant power changing event in meshtastic should be tagged with a powermon state transition.
+// If you are making new meshtastic features feel free to add new entries at the end of this definition.
+type PowerMon_State int32
+
+const (
+ PowerMon_None PowerMon_State = 0
+ PowerMon_CPU_DeepSleep PowerMon_State = 1
+ PowerMon_CPU_LightSleep PowerMon_State = 2
+ // The external Vext1 power is on. Many boards have auxillary power rails that the CPU turns on only
+ // occasionally. In cases where that rail has multiple devices on it we usually want to have logging on
+ // the state of that rail as an independent record.
+ // For instance on the Heltec Tracker 1.1 board, this rail is the power source for the GPS and screen.
+ //
+ // The log messages will be short and complete (see PowerMon.Event in the protobufs for details).
+ // something like "S:PM:C,0x00001234,REASON" where the hex number is the bitmask of all current states.
+ // (We use a bitmask for states so that if a log message gets lost it won't be fatal)
+ PowerMon_Vext1_On PowerMon_State = 4
+ PowerMon_Lora_RXOn PowerMon_State = 8
+ PowerMon_Lora_TXOn PowerMon_State = 16
+ PowerMon_Lora_RXActive PowerMon_State = 32
+ PowerMon_BT_On PowerMon_State = 64
+ PowerMon_LED_On PowerMon_State = 128
+ PowerMon_Screen_On PowerMon_State = 256
+ PowerMon_Screen_Drawing PowerMon_State = 512
+ PowerMon_Wifi_On PowerMon_State = 1024
+ // GPS is actively trying to find our location
+ // See GPSPowerState for more details
+ PowerMon_GPS_Active PowerMon_State = 2048
+)
+
+// Enum value maps for PowerMon_State.
+var (
+ PowerMon_State_name = map[int32]string{
+ 0: "None",
+ 1: "CPU_DeepSleep",
+ 2: "CPU_LightSleep",
+ 4: "Vext1_On",
+ 8: "Lora_RXOn",
+ 16: "Lora_TXOn",
+ 32: "Lora_RXActive",
+ 64: "BT_On",
+ 128: "LED_On",
+ 256: "Screen_On",
+ 512: "Screen_Drawing",
+ 1024: "Wifi_On",
+ 2048: "GPS_Active",
+ }
+ PowerMon_State_value = map[string]int32{
+ "None": 0,
+ "CPU_DeepSleep": 1,
+ "CPU_LightSleep": 2,
+ "Vext1_On": 4,
+ "Lora_RXOn": 8,
+ "Lora_TXOn": 16,
+ "Lora_RXActive": 32,
+ "BT_On": 64,
+ "LED_On": 128,
+ "Screen_On": 256,
+ "Screen_Drawing": 512,
+ "Wifi_On": 1024,
+ "GPS_Active": 2048,
+ }
+)
+
+func (x PowerMon_State) Enum() *PowerMon_State {
+ p := new(PowerMon_State)
+ *p = x
+ return p
+}
+
+func (x PowerMon_State) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (PowerMon_State) Descriptor() protoreflect.EnumDescriptor {
+ return file_meshtastic_powermon_proto_enumTypes[0].Descriptor()
+}
+
+func (PowerMon_State) Type() protoreflect.EnumType {
+ return &file_meshtastic_powermon_proto_enumTypes[0]
+}
+
+func (x PowerMon_State) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use PowerMon_State.Descriptor instead.
+func (PowerMon_State) EnumDescriptor() ([]byte, []int) {
+ return file_meshtastic_powermon_proto_rawDescGZIP(), []int{0, 0}
+}
+
+// What operation would we like the UUT to perform.
+// note: senders should probably set want_response in their request packets, so that they can know when the state
+// machine has started processing their request
+type PowerStressMessage_Opcode int32
+
+const (
+ // Unset/unused
+ PowerStressMessage_UNSET PowerStressMessage_Opcode = 0
+ PowerStressMessage_PRINT_INFO PowerStressMessage_Opcode = 1 // Print board version slog and send an ack that we are alive and ready to process commands
+ PowerStressMessage_FORCE_QUIET PowerStressMessage_Opcode = 2 // Try to turn off all automatic processing of packets, screen, sleeping, etc (to make it easier to measure in isolation)
+ PowerStressMessage_END_QUIET PowerStressMessage_Opcode = 3 // Stop powerstress processing - probably by just rebooting the board
+ PowerStressMessage_SCREEN_ON PowerStressMessage_Opcode = 16 // Turn the screen on
+ PowerStressMessage_SCREEN_OFF PowerStressMessage_Opcode = 17 // Turn the screen off
+ PowerStressMessage_CPU_IDLE PowerStressMessage_Opcode = 32 // Let the CPU run but we assume mostly idling for num_seconds
+ PowerStressMessage_CPU_DEEPSLEEP PowerStressMessage_Opcode = 33 // Force deep sleep for FIXME seconds
+ PowerStressMessage_CPU_FULLON PowerStressMessage_Opcode = 34 // Spin the CPU as fast as possible for num_seconds
+ PowerStressMessage_LED_ON PowerStressMessage_Opcode = 48 // Turn the LED on for num_seconds (and leave it on - for baseline power measurement purposes)
+ PowerStressMessage_LED_OFF PowerStressMessage_Opcode = 49 // Force the LED off for num_seconds
+ PowerStressMessage_LORA_OFF PowerStressMessage_Opcode = 64 // Completely turn off the LORA radio for num_seconds
+ PowerStressMessage_LORA_TX PowerStressMessage_Opcode = 65 // Send Lora packets for num_seconds
+ PowerStressMessage_LORA_RX PowerStressMessage_Opcode = 66 // Receive Lora packets for num_seconds (node will be mostly just listening, unless an external agent is helping stress this by sending packets on the current channel)
+ PowerStressMessage_BT_OFF PowerStressMessage_Opcode = 80 // Turn off the BT radio for num_seconds
+ PowerStressMessage_BT_ON PowerStressMessage_Opcode = 81 // Turn on the BT radio for num_seconds
+ PowerStressMessage_WIFI_OFF PowerStressMessage_Opcode = 96 // Turn off the WIFI radio for num_seconds
+ PowerStressMessage_WIFI_ON PowerStressMessage_Opcode = 97 // Turn on the WIFI radio for num_seconds
+ PowerStressMessage_GPS_OFF PowerStressMessage_Opcode = 112 // Turn off the GPS radio for num_seconds
+ PowerStressMessage_GPS_ON PowerStressMessage_Opcode = 113 // Turn on the GPS radio for num_seconds
+)
+
+// Enum value maps for PowerStressMessage_Opcode.
+var (
+ PowerStressMessage_Opcode_name = map[int32]string{
+ 0: "UNSET",
+ 1: "PRINT_INFO",
+ 2: "FORCE_QUIET",
+ 3: "END_QUIET",
+ 16: "SCREEN_ON",
+ 17: "SCREEN_OFF",
+ 32: "CPU_IDLE",
+ 33: "CPU_DEEPSLEEP",
+ 34: "CPU_FULLON",
+ 48: "LED_ON",
+ 49: "LED_OFF",
+ 64: "LORA_OFF",
+ 65: "LORA_TX",
+ 66: "LORA_RX",
+ 80: "BT_OFF",
+ 81: "BT_ON",
+ 96: "WIFI_OFF",
+ 97: "WIFI_ON",
+ 112: "GPS_OFF",
+ 113: "GPS_ON",
+ }
+ PowerStressMessage_Opcode_value = map[string]int32{
+ "UNSET": 0,
+ "PRINT_INFO": 1,
+ "FORCE_QUIET": 2,
+ "END_QUIET": 3,
+ "SCREEN_ON": 16,
+ "SCREEN_OFF": 17,
+ "CPU_IDLE": 32,
+ "CPU_DEEPSLEEP": 33,
+ "CPU_FULLON": 34,
+ "LED_ON": 48,
+ "LED_OFF": 49,
+ "LORA_OFF": 64,
+ "LORA_TX": 65,
+ "LORA_RX": 66,
+ "BT_OFF": 80,
+ "BT_ON": 81,
+ "WIFI_OFF": 96,
+ "WIFI_ON": 97,
+ "GPS_OFF": 112,
+ "GPS_ON": 113,
+ }
+)
+
+func (x PowerStressMessage_Opcode) Enum() *PowerStressMessage_Opcode {
+ p := new(PowerStressMessage_Opcode)
+ *p = x
+ return p
+}
+
+func (x PowerStressMessage_Opcode) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (PowerStressMessage_Opcode) Descriptor() protoreflect.EnumDescriptor {
+ return file_meshtastic_powermon_proto_enumTypes[1].Descriptor()
+}
+
+func (PowerStressMessage_Opcode) Type() protoreflect.EnumType {
+ return &file_meshtastic_powermon_proto_enumTypes[1]
+}
+
+func (x PowerStressMessage_Opcode) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use PowerStressMessage_Opcode.Descriptor instead.
+func (PowerStressMessage_Opcode) EnumDescriptor() ([]byte, []int) {
+ return file_meshtastic_powermon_proto_rawDescGZIP(), []int{1, 0}
+}
+
+// Note: There are no 'PowerMon' messages normally in use (PowerMons are sent only as structured logs - slogs).
+// But we wrap our State enum in this message to effectively nest a namespace (without our linter yelling at us)
+type PowerMon struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *PowerMon) Reset() {
+ *x = PowerMon{}
+ mi := &file_meshtastic_powermon_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *PowerMon) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PowerMon) ProtoMessage() {}
+
+func (x *PowerMon) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_powermon_proto_msgTypes[0]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use PowerMon.ProtoReflect.Descriptor instead.
+func (*PowerMon) Descriptor() ([]byte, []int) {
+ return file_meshtastic_powermon_proto_rawDescGZIP(), []int{0}
+}
+
+// PowerStress testing support via the C++ PowerStress module
+type PowerStressMessage struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // What type of HardwareMessage is this?
+ Cmd PowerStressMessage_Opcode `protobuf:"varint,1,opt,name=cmd,proto3,enum=meshtastic.PowerStressMessage_Opcode" json:"cmd,omitempty"`
+ NumSeconds float32 `protobuf:"fixed32,2,opt,name=num_seconds,json=numSeconds,proto3" json:"num_seconds,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *PowerStressMessage) Reset() {
+ *x = PowerStressMessage{}
+ mi := &file_meshtastic_powermon_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *PowerStressMessage) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PowerStressMessage) ProtoMessage() {}
+
+func (x *PowerStressMessage) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_powermon_proto_msgTypes[1]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use PowerStressMessage.ProtoReflect.Descriptor instead.
+func (*PowerStressMessage) Descriptor() ([]byte, []int) {
+ return file_meshtastic_powermon_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *PowerStressMessage) GetCmd() PowerStressMessage_Opcode {
+ if x != nil {
+ return x.Cmd
+ }
+ return PowerStressMessage_UNSET
+}
+
+func (x *PowerStressMessage) GetNumSeconds() float32 {
+ if x != nil {
+ return x.NumSeconds
+ }
+ return 0
+}
+
+var File_meshtastic_powermon_proto protoreflect.FileDescriptor
+
+const file_meshtastic_powermon_proto_rawDesc = "" +
+ "\n" +
+ "\x19meshtastic/powermon.proto\x12\n" +
+ "meshtastic\"\xe0\x01\n" +
+ "\bPowerMon\"\xd3\x01\n" +
+ "\x05State\x12\b\n" +
+ "\x04None\x10\x00\x12\x11\n" +
+ "\rCPU_DeepSleep\x10\x01\x12\x12\n" +
+ "\x0eCPU_LightSleep\x10\x02\x12\f\n" +
+ "\bVext1_On\x10\x04\x12\r\n" +
+ "\tLora_RXOn\x10\b\x12\r\n" +
+ "\tLora_TXOn\x10\x10\x12\x11\n" +
+ "\rLora_RXActive\x10 \x12\t\n" +
+ "\x05BT_On\x10@\x12\v\n" +
+ "\x06LED_On\x10\x80\x01\x12\x0e\n" +
+ "\tScreen_On\x10\x80\x02\x12\x13\n" +
+ "\x0eScreen_Drawing\x10\x80\x04\x12\f\n" +
+ "\aWifi_On\x10\x80\b\x12\x0f\n" +
+ "\n" +
+ "GPS_Active\x10\x80\x10\"\x90\x03\n" +
+ "\x12PowerStressMessage\x127\n" +
+ "\x03cmd\x18\x01 \x01(\x0e2%.meshtastic.PowerStressMessage.OpcodeR\x03cmd\x12\x1f\n" +
+ "\vnum_seconds\x18\x02 \x01(\x02R\n" +
+ "numSeconds\"\x9f\x02\n" +
+ "\x06Opcode\x12\t\n" +
+ "\x05UNSET\x10\x00\x12\x0e\n" +
+ "\n" +
+ "PRINT_INFO\x10\x01\x12\x0f\n" +
+ "\vFORCE_QUIET\x10\x02\x12\r\n" +
+ "\tEND_QUIET\x10\x03\x12\r\n" +
+ "\tSCREEN_ON\x10\x10\x12\x0e\n" +
+ "\n" +
+ "SCREEN_OFF\x10\x11\x12\f\n" +
+ "\bCPU_IDLE\x10 \x12\x11\n" +
+ "\rCPU_DEEPSLEEP\x10!\x12\x0e\n" +
+ "\n" +
+ "CPU_FULLON\x10\"\x12\n" +
+ "\n" +
+ "\x06LED_ON\x100\x12\v\n" +
+ "\aLED_OFF\x101\x12\f\n" +
+ "\bLORA_OFF\x10@\x12\v\n" +
+ "\aLORA_TX\x10A\x12\v\n" +
+ "\aLORA_RX\x10B\x12\n" +
+ "\n" +
+ "\x06BT_OFF\x10P\x12\t\n" +
+ "\x05BT_ON\x10Q\x12\f\n" +
+ "\bWIFI_OFF\x10`\x12\v\n" +
+ "\aWIFI_ON\x10a\x12\v\n" +
+ "\aGPS_OFF\x10p\x12\n" +
+ "\n" +
+ "\x06GPS_ON\x10qBc\n" +
+ "\x13com.geeksville.meshB\x0ePowerMonProtosZ\"github.com/meshtastic/go/generated\xaa\x02\x14Meshtastic.Protobufs\xba\x02\x00b\x06proto3"
+
+var (
+ file_meshtastic_powermon_proto_rawDescOnce sync.Once
+ file_meshtastic_powermon_proto_rawDescData []byte
+)
+
+func file_meshtastic_powermon_proto_rawDescGZIP() []byte {
+ file_meshtastic_powermon_proto_rawDescOnce.Do(func() {
+ file_meshtastic_powermon_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_meshtastic_powermon_proto_rawDesc), len(file_meshtastic_powermon_proto_rawDesc)))
+ })
+ return file_meshtastic_powermon_proto_rawDescData
+}
+
+var file_meshtastic_powermon_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
+var file_meshtastic_powermon_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
+var file_meshtastic_powermon_proto_goTypes = []any{
+ (PowerMon_State)(0), // 0: meshtastic.PowerMon.State
+ (PowerStressMessage_Opcode)(0), // 1: meshtastic.PowerStressMessage.Opcode
+ (*PowerMon)(nil), // 2: meshtastic.PowerMon
+ (*PowerStressMessage)(nil), // 3: meshtastic.PowerStressMessage
+}
+var file_meshtastic_powermon_proto_depIdxs = []int32{
+ 1, // 0: meshtastic.PowerStressMessage.cmd:type_name -> meshtastic.PowerStressMessage.Opcode
+ 1, // [1:1] is the sub-list for method output_type
+ 1, // [1:1] is the sub-list for method input_type
+ 1, // [1:1] is the sub-list for extension type_name
+ 1, // [1:1] is the sub-list for extension extendee
+ 0, // [0:1] is the sub-list for field type_name
+}
+
+func init() { file_meshtastic_powermon_proto_init() }
+func file_meshtastic_powermon_proto_init() {
+ if File_meshtastic_powermon_proto != nil {
+ return
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_meshtastic_powermon_proto_rawDesc), len(file_meshtastic_powermon_proto_rawDesc)),
+ NumEnums: 2,
+ NumMessages: 2,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_meshtastic_powermon_proto_goTypes,
+ DependencyIndexes: file_meshtastic_powermon_proto_depIdxs,
+ EnumInfos: file_meshtastic_powermon_proto_enumTypes,
+ MessageInfos: file_meshtastic_powermon_proto_msgTypes,
+ }.Build()
+ File_meshtastic_powermon_proto = out.File
+ file_meshtastic_powermon_proto_goTypes = nil
+ file_meshtastic_powermon_proto_depIdxs = nil
+}
diff --git a/meshtastic/powermon_vtproto.pb.go b/meshtastic/powermon_vtproto.pb.go
new file mode 100644
index 0000000..9f33518
--- /dev/null
+++ b/meshtastic/powermon_vtproto.pb.go
@@ -0,0 +1,257 @@
+// Code generated by protoc-gen-go-vtproto. DO NOT EDIT.
+// protoc-gen-go-vtproto version: v0.6.0
+// source: meshtastic/powermon.proto
+
+package generated
+
+import (
+ binary "encoding/binary"
+ fmt "fmt"
+ protohelpers "github.com/planetscale/vtprotobuf/protohelpers"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ io "io"
+ math "math"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+func (m *PowerMon) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *PowerMon) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *PowerMon) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ return len(dAtA) - i, nil
+}
+
+func (m *PowerStressMessage) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *PowerStressMessage) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *PowerStressMessage) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if m.NumSeconds != 0 {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.NumSeconds))))
+ i--
+ dAtA[i] = 0x15
+ }
+ if m.Cmd != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Cmd))
+ i--
+ dAtA[i] = 0x8
+ }
+ return len(dAtA) - i, nil
+}
+
+func (m *PowerMon) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *PowerStressMessage) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.Cmd != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Cmd))
+ }
+ if m.NumSeconds != 0 {
+ n += 5
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *PowerMon) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: PowerMon: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: PowerMon: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *PowerStressMessage) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: PowerStressMessage: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: PowerStressMessage: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Cmd", wireType)
+ }
+ m.Cmd = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.Cmd |= PowerStressMessage_Opcode(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 2:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field NumSeconds", wireType)
+ }
+ var v uint32
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ m.NumSeconds = float32(math.Float32frombits(v))
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
diff --git a/meshtastic/remote_hardware.pb.go b/meshtastic/remote_hardware.pb.go
index f224e33..b32f1ae 100644
--- a/meshtastic/remote_hardware.pb.go
+++ b/meshtastic/remote_hardware.pb.go
@@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.32.0
-// protoc v4.25.2
+// protoc-gen-go v1.36.6
+// protoc v3.21.12
// source: meshtastic/remote_hardware.proto
package generated
@@ -11,6 +11,7 @@ import (
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
+ unsafe "unsafe"
)
const (
@@ -97,26 +98,23 @@ func (HardwareMessage_Type) EnumDescriptor() ([]byte, []int) {
// It should be off by default and then protected based on some TBD mechanism
// (a special channel once multichannel support is included?)
type HardwareMessage struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// What type of HardwareMessage is this?
Type HardwareMessage_Type `protobuf:"varint,1,opt,name=type,proto3,enum=meshtastic.HardwareMessage_Type" json:"type,omitempty"`
// What gpios are we changing. Not used for all MessageTypes, see MessageType for details
GpioMask uint64 `protobuf:"varint,2,opt,name=gpio_mask,json=gpioMask,proto3" json:"gpio_mask,omitempty"`
// For gpios that were listed in gpio_mask as valid, what are the signal levels for those gpios.
// Not used for all MessageTypes, see MessageType for details
- GpioValue uint64 `protobuf:"varint,3,opt,name=gpio_value,json=gpioValue,proto3" json:"gpio_value,omitempty"`
+ GpioValue uint64 `protobuf:"varint,3,opt,name=gpio_value,json=gpioValue,proto3" json:"gpio_value,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *HardwareMessage) Reset() {
*x = HardwareMessage{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_remote_hardware_proto_msgTypes[0]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_remote_hardware_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *HardwareMessage) String() string {
@@ -127,7 +125,7 @@ func (*HardwareMessage) ProtoMessage() {}
func (x *HardwareMessage) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_remote_hardware_proto_msgTypes[0]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -165,49 +163,40 @@ func (x *HardwareMessage) GetGpioValue() uint64 {
var File_meshtastic_remote_hardware_proto protoreflect.FileDescriptor
-var file_meshtastic_remote_hardware_proto_rawDesc = []byte{
- 0x0a, 0x20, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x72, 0x65, 0x6d,
- 0x6f, 0x74, 0x65, 0x5f, 0x68, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x2e, 0x70, 0x72, 0x6f,
- 0x74, 0x6f, 0x12, 0x0a, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x22, 0xf1,
- 0x01, 0x0a, 0x0f, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61,
- 0x67, 0x65, 0x12, 0x34, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e,
- 0x32, 0x20, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x48, 0x61,
- 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x54, 0x79,
- 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x67, 0x70, 0x69, 0x6f,
- 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x08, 0x67, 0x70, 0x69,
- 0x6f, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x1d, 0x0a, 0x0a, 0x67, 0x70, 0x69, 0x6f, 0x5f, 0x76, 0x61,
- 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x67, 0x70, 0x69, 0x6f, 0x56,
- 0x61, 0x6c, 0x75, 0x65, 0x22, 0x6c, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x09, 0x0a, 0x05,
- 0x55, 0x4e, 0x53, 0x45, 0x54, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x57, 0x52, 0x49, 0x54, 0x45,
- 0x5f, 0x47, 0x50, 0x49, 0x4f, 0x53, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x57, 0x41, 0x54, 0x43,
- 0x48, 0x5f, 0x47, 0x50, 0x49, 0x4f, 0x53, 0x10, 0x02, 0x12, 0x11, 0x0a, 0x0d, 0x47, 0x50, 0x49,
- 0x4f, 0x53, 0x5f, 0x43, 0x48, 0x41, 0x4e, 0x47, 0x45, 0x44, 0x10, 0x03, 0x12, 0x0e, 0x0a, 0x0a,
- 0x52, 0x45, 0x41, 0x44, 0x5f, 0x47, 0x50, 0x49, 0x4f, 0x53, 0x10, 0x04, 0x12, 0x14, 0x0a, 0x10,
- 0x52, 0x45, 0x41, 0x44, 0x5f, 0x47, 0x50, 0x49, 0x4f, 0x53, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x59,
- 0x10, 0x05, 0x42, 0x63, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x65, 0x65, 0x6b, 0x73, 0x76,
- 0x69, 0x6c, 0x6c, 0x65, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x42, 0x0e, 0x52, 0x65, 0x6d, 0x6f, 0x74,
- 0x65, 0x48, 0x61, 0x72, 0x64, 0x77, 0x61, 0x72, 0x65, 0x5a, 0x22, 0x67, 0x69, 0x74, 0x68, 0x75,
- 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63,
- 0x2f, 0x67, 0x6f, 0x2f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0xaa, 0x02, 0x14,
- 0x4d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f,
- 0x62, 0x75, 0x66, 0x73, 0xba, 0x02, 0x00, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
-}
+const file_meshtastic_remote_hardware_proto_rawDesc = "" +
+ "\n" +
+ " meshtastic/remote_hardware.proto\x12\n" +
+ "meshtastic\"\xf1\x01\n" +
+ "\x0fHardwareMessage\x124\n" +
+ "\x04type\x18\x01 \x01(\x0e2 .meshtastic.HardwareMessage.TypeR\x04type\x12\x1b\n" +
+ "\tgpio_mask\x18\x02 \x01(\x04R\bgpioMask\x12\x1d\n" +
+ "\n" +
+ "gpio_value\x18\x03 \x01(\x04R\tgpioValue\"l\n" +
+ "\x04Type\x12\t\n" +
+ "\x05UNSET\x10\x00\x12\x0f\n" +
+ "\vWRITE_GPIOS\x10\x01\x12\x0f\n" +
+ "\vWATCH_GPIOS\x10\x02\x12\x11\n" +
+ "\rGPIOS_CHANGED\x10\x03\x12\x0e\n" +
+ "\n" +
+ "READ_GPIOS\x10\x04\x12\x14\n" +
+ "\x10READ_GPIOS_REPLY\x10\x05Bc\n" +
+ "\x13com.geeksville.meshB\x0eRemoteHardwareZ\"github.com/meshtastic/go/generated\xaa\x02\x14Meshtastic.Protobufs\xba\x02\x00b\x06proto3"
var (
file_meshtastic_remote_hardware_proto_rawDescOnce sync.Once
- file_meshtastic_remote_hardware_proto_rawDescData = file_meshtastic_remote_hardware_proto_rawDesc
+ file_meshtastic_remote_hardware_proto_rawDescData []byte
)
func file_meshtastic_remote_hardware_proto_rawDescGZIP() []byte {
file_meshtastic_remote_hardware_proto_rawDescOnce.Do(func() {
- file_meshtastic_remote_hardware_proto_rawDescData = protoimpl.X.CompressGZIP(file_meshtastic_remote_hardware_proto_rawDescData)
+ file_meshtastic_remote_hardware_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_meshtastic_remote_hardware_proto_rawDesc), len(file_meshtastic_remote_hardware_proto_rawDesc)))
})
return file_meshtastic_remote_hardware_proto_rawDescData
}
var file_meshtastic_remote_hardware_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_meshtastic_remote_hardware_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
-var file_meshtastic_remote_hardware_proto_goTypes = []interface{}{
+var file_meshtastic_remote_hardware_proto_goTypes = []any{
(HardwareMessage_Type)(0), // 0: meshtastic.HardwareMessage.Type
(*HardwareMessage)(nil), // 1: meshtastic.HardwareMessage
}
@@ -225,25 +214,11 @@ func file_meshtastic_remote_hardware_proto_init() {
if File_meshtastic_remote_hardware_proto != nil {
return
}
- if !protoimpl.UnsafeEnabled {
- file_meshtastic_remote_hardware_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*HardwareMessage); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- }
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
- RawDescriptor: file_meshtastic_remote_hardware_proto_rawDesc,
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_meshtastic_remote_hardware_proto_rawDesc), len(file_meshtastic_remote_hardware_proto_rawDesc)),
NumEnums: 1,
NumMessages: 1,
NumExtensions: 0,
@@ -255,7 +230,6 @@ func file_meshtastic_remote_hardware_proto_init() {
MessageInfos: file_meshtastic_remote_hardware_proto_msgTypes,
}.Build()
File_meshtastic_remote_hardware_proto = out.File
- file_meshtastic_remote_hardware_proto_rawDesc = nil
file_meshtastic_remote_hardware_proto_goTypes = nil
file_meshtastic_remote_hardware_proto_depIdxs = nil
}
diff --git a/meshtastic/rtttl.pb.go b/meshtastic/rtttl.pb.go
index 436d0db..25f6ea9 100644
--- a/meshtastic/rtttl.pb.go
+++ b/meshtastic/rtttl.pb.go
@@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.32.0
-// protoc v4.25.2
+// protoc-gen-go v1.36.6
+// protoc v3.21.12
// source: meshtastic/rtttl.proto
package generated
@@ -11,6 +11,7 @@ import (
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
+ unsafe "unsafe"
)
const (
@@ -22,21 +23,18 @@ const (
// Canned message module configuration.
type RTTTLConfig struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Ringtone for PWM Buzzer in RTTTL Format.
- Ringtone string `protobuf:"bytes,1,opt,name=ringtone,proto3" json:"ringtone,omitempty"`
+ Ringtone string `protobuf:"bytes,1,opt,name=ringtone,proto3" json:"ringtone,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *RTTTLConfig) Reset() {
*x = RTTTLConfig{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_rtttl_proto_msgTypes[0]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_rtttl_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *RTTTLConfig) String() string {
@@ -47,7 +45,7 @@ func (*RTTTLConfig) ProtoMessage() {}
func (x *RTTTLConfig) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_rtttl_proto_msgTypes[0]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -71,35 +69,28 @@ func (x *RTTTLConfig) GetRingtone() string {
var File_meshtastic_rtttl_proto protoreflect.FileDescriptor
-var file_meshtastic_rtttl_proto_rawDesc = []byte{
- 0x0a, 0x16, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x72, 0x74, 0x74,
- 0x74, 0x6c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0a, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61,
- 0x73, 0x74, 0x69, 0x63, 0x22, 0x29, 0x0a, 0x0b, 0x52, 0x54, 0x54, 0x54, 0x4c, 0x43, 0x6f, 0x6e,
- 0x66, 0x69, 0x67, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x69, 0x6e, 0x67, 0x74, 0x6f, 0x6e, 0x65, 0x18,
- 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x69, 0x6e, 0x67, 0x74, 0x6f, 0x6e, 0x65, 0x42,
- 0x66, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x65, 0x65, 0x6b, 0x73, 0x76, 0x69, 0x6c, 0x6c,
- 0x65, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x42, 0x11, 0x52, 0x54, 0x54, 0x54, 0x4c, 0x43, 0x6f, 0x6e,
- 0x66, 0x69, 0x67, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x5a, 0x22, 0x67, 0x69, 0x74, 0x68, 0x75,
- 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63,
- 0x2f, 0x67, 0x6f, 0x2f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0xaa, 0x02, 0x14,
- 0x4d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f,
- 0x62, 0x75, 0x66, 0x73, 0xba, 0x02, 0x00, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
-}
+const file_meshtastic_rtttl_proto_rawDesc = "" +
+ "\n" +
+ "\x16meshtastic/rtttl.proto\x12\n" +
+ "meshtastic\")\n" +
+ "\vRTTTLConfig\x12\x1a\n" +
+ "\bringtone\x18\x01 \x01(\tR\bringtoneBf\n" +
+ "\x13com.geeksville.meshB\x11RTTTLConfigProtosZ\"github.com/meshtastic/go/generated\xaa\x02\x14Meshtastic.Protobufs\xba\x02\x00b\x06proto3"
var (
file_meshtastic_rtttl_proto_rawDescOnce sync.Once
- file_meshtastic_rtttl_proto_rawDescData = file_meshtastic_rtttl_proto_rawDesc
+ file_meshtastic_rtttl_proto_rawDescData []byte
)
func file_meshtastic_rtttl_proto_rawDescGZIP() []byte {
file_meshtastic_rtttl_proto_rawDescOnce.Do(func() {
- file_meshtastic_rtttl_proto_rawDescData = protoimpl.X.CompressGZIP(file_meshtastic_rtttl_proto_rawDescData)
+ file_meshtastic_rtttl_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_meshtastic_rtttl_proto_rawDesc), len(file_meshtastic_rtttl_proto_rawDesc)))
})
return file_meshtastic_rtttl_proto_rawDescData
}
var file_meshtastic_rtttl_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
-var file_meshtastic_rtttl_proto_goTypes = []interface{}{
+var file_meshtastic_rtttl_proto_goTypes = []any{
(*RTTTLConfig)(nil), // 0: meshtastic.RTTTLConfig
}
var file_meshtastic_rtttl_proto_depIdxs = []int32{
@@ -115,25 +106,11 @@ func file_meshtastic_rtttl_proto_init() {
if File_meshtastic_rtttl_proto != nil {
return
}
- if !protoimpl.UnsafeEnabled {
- file_meshtastic_rtttl_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*RTTTLConfig); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- }
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
- RawDescriptor: file_meshtastic_rtttl_proto_rawDesc,
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_meshtastic_rtttl_proto_rawDesc), len(file_meshtastic_rtttl_proto_rawDesc)),
NumEnums: 0,
NumMessages: 1,
NumExtensions: 0,
@@ -144,7 +121,6 @@ func file_meshtastic_rtttl_proto_init() {
MessageInfos: file_meshtastic_rtttl_proto_msgTypes,
}.Build()
File_meshtastic_rtttl_proto = out.File
- file_meshtastic_rtttl_proto_rawDesc = nil
file_meshtastic_rtttl_proto_goTypes = nil
file_meshtastic_rtttl_proto_depIdxs = nil
}
diff --git a/meshtastic/storeforward.pb.go b/meshtastic/storeforward.pb.go
index df23d89..98fb72f 100644
--- a/meshtastic/storeforward.pb.go
+++ b/meshtastic/storeforward.pb.go
@@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.32.0
-// protoc v4.25.2
+// protoc-gen-go v1.36.6
+// protoc v3.21.12
// source: meshtastic/storeforward.proto
package generated
@@ -11,6 +11,7 @@ import (
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
+ unsafe "unsafe"
)
const (
@@ -130,30 +131,27 @@ func (StoreAndForward_RequestResponse) EnumDescriptor() ([]byte, []int) {
// TODO: REPLACE
type StoreAndForward struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// TODO: REPLACE
Rr StoreAndForward_RequestResponse `protobuf:"varint,1,opt,name=rr,proto3,enum=meshtastic.StoreAndForward_RequestResponse" json:"rr,omitempty"`
// TODO: REPLACE
//
- // Types that are assignable to Variant:
+ // Types that are valid to be assigned to Variant:
//
// *StoreAndForward_Stats
// *StoreAndForward_History_
// *StoreAndForward_Heartbeat_
// *StoreAndForward_Text
- Variant isStoreAndForward_Variant `protobuf_oneof:"variant"`
+ Variant isStoreAndForward_Variant `protobuf_oneof:"variant"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *StoreAndForward) Reset() {
*x = StoreAndForward{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_storeforward_proto_msgTypes[0]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_storeforward_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *StoreAndForward) String() string {
@@ -164,7 +162,7 @@ func (*StoreAndForward) ProtoMessage() {}
func (x *StoreAndForward) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_storeforward_proto_msgTypes[0]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -186,37 +184,45 @@ func (x *StoreAndForward) GetRr() StoreAndForward_RequestResponse {
return StoreAndForward_UNSET
}
-func (m *StoreAndForward) GetVariant() isStoreAndForward_Variant {
- if m != nil {
- return m.Variant
+func (x *StoreAndForward) GetVariant() isStoreAndForward_Variant {
+ if x != nil {
+ return x.Variant
}
return nil
}
func (x *StoreAndForward) GetStats() *StoreAndForward_Statistics {
- if x, ok := x.GetVariant().(*StoreAndForward_Stats); ok {
- return x.Stats
+ if x != nil {
+ if x, ok := x.Variant.(*StoreAndForward_Stats); ok {
+ return x.Stats
+ }
}
return nil
}
func (x *StoreAndForward) GetHistory() *StoreAndForward_History {
- if x, ok := x.GetVariant().(*StoreAndForward_History_); ok {
- return x.History
+ if x != nil {
+ if x, ok := x.Variant.(*StoreAndForward_History_); ok {
+ return x.History
+ }
}
return nil
}
func (x *StoreAndForward) GetHeartbeat() *StoreAndForward_Heartbeat {
- if x, ok := x.GetVariant().(*StoreAndForward_Heartbeat_); ok {
- return x.Heartbeat
+ if x != nil {
+ if x, ok := x.Variant.(*StoreAndForward_Heartbeat_); ok {
+ return x.Heartbeat
+ }
}
return nil
}
func (x *StoreAndForward) GetText() []byte {
- if x, ok := x.GetVariant().(*StoreAndForward_Text); ok {
- return x.Text
+ if x != nil {
+ if x, ok := x.Variant.(*StoreAndForward_Text); ok {
+ return x.Text
+ }
}
return nil
}
@@ -255,10 +261,7 @@ func (*StoreAndForward_Text) isStoreAndForward_Variant() {}
// TODO: REPLACE
type StoreAndForward_Statistics struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Number of messages we have ever seen
MessagesTotal uint32 `protobuf:"varint,1,opt,name=messages_total,json=messagesTotal,proto3" json:"messages_total,omitempty"`
// Number of messages we have currently saved our history.
@@ -276,16 +279,16 @@ type StoreAndForward_Statistics struct {
// Maximum number of messages the server will return.
ReturnMax uint32 `protobuf:"varint,8,opt,name=return_max,json=returnMax,proto3" json:"return_max,omitempty"`
// Maximum history window in minutes the server will return messages from.
- ReturnWindow uint32 `protobuf:"varint,9,opt,name=return_window,json=returnWindow,proto3" json:"return_window,omitempty"`
+ ReturnWindow uint32 `protobuf:"varint,9,opt,name=return_window,json=returnWindow,proto3" json:"return_window,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *StoreAndForward_Statistics) Reset() {
*x = StoreAndForward_Statistics{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_storeforward_proto_msgTypes[1]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_storeforward_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *StoreAndForward_Statistics) String() string {
@@ -296,7 +299,7 @@ func (*StoreAndForward_Statistics) ProtoMessage() {}
func (x *StoreAndForward_Statistics) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_storeforward_proto_msgTypes[1]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -376,26 +379,23 @@ func (x *StoreAndForward_Statistics) GetReturnWindow() uint32 {
// TODO: REPLACE
type StoreAndForward_History struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Number of that will be sent to the client
HistoryMessages uint32 `protobuf:"varint,1,opt,name=history_messages,json=historyMessages,proto3" json:"history_messages,omitempty"`
// The window of messages that was used to filter the history client requested
Window uint32 `protobuf:"varint,2,opt,name=window,proto3" json:"window,omitempty"`
// Index in the packet history of the last message sent in a previous request to the server.
// Will be sent to the client before sending the history and can be set in a subsequent request to avoid getting packets the server already sent to the client.
- LastRequest uint32 `protobuf:"varint,3,opt,name=last_request,json=lastRequest,proto3" json:"last_request,omitempty"`
+ LastRequest uint32 `protobuf:"varint,3,opt,name=last_request,json=lastRequest,proto3" json:"last_request,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *StoreAndForward_History) Reset() {
*x = StoreAndForward_History{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_storeforward_proto_msgTypes[2]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_storeforward_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *StoreAndForward_History) String() string {
@@ -406,7 +406,7 @@ func (*StoreAndForward_History) ProtoMessage() {}
func (x *StoreAndForward_History) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_storeforward_proto_msgTypes[2]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -444,23 +444,20 @@ func (x *StoreAndForward_History) GetLastRequest() uint32 {
// TODO: REPLACE
type StoreAndForward_Heartbeat struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
+ state protoimpl.MessageState `protogen:"open.v1"`
// Period in seconds that the heartbeat is sent out that will be sent to the client
Period uint32 `protobuf:"varint,1,opt,name=period,proto3" json:"period,omitempty"`
// If set, this is not the primary Store & Forward router on the mesh
- Secondary uint32 `protobuf:"varint,2,opt,name=secondary,proto3" json:"secondary,omitempty"`
+ Secondary uint32 `protobuf:"varint,2,opt,name=secondary,proto3" json:"secondary,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *StoreAndForward_Heartbeat) Reset() {
*x = StoreAndForward_Heartbeat{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_storeforward_proto_msgTypes[3]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_storeforward_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *StoreAndForward_Heartbeat) String() string {
@@ -471,7 +468,7 @@ func (*StoreAndForward_Heartbeat) ProtoMessage() {}
func (x *StoreAndForward_Heartbeat) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_storeforward_proto_msgTypes[3]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -502,105 +499,70 @@ func (x *StoreAndForward_Heartbeat) GetSecondary() uint32 {
var File_meshtastic_storeforward_proto protoreflect.FileDescriptor
-var file_meshtastic_storeforward_proto_rawDesc = []byte{
- 0x0a, 0x1d, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x73, 0x74, 0x6f,
- 0x72, 0x65, 0x66, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12,
- 0x0a, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x22, 0xec, 0x08, 0x0a, 0x0f,
- 0x53, 0x74, 0x6f, 0x72, 0x65, 0x41, 0x6e, 0x64, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x12,
- 0x3b, 0x0a, 0x02, 0x72, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x6d, 0x65,
- 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x41, 0x6e,
- 0x64, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
- 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x02, 0x72, 0x72, 0x12, 0x3e, 0x0a, 0x05,
- 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x26, 0x2e, 0x6d, 0x65,
- 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x41, 0x6e,
- 0x64, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74,
- 0x69, 0x63, 0x73, 0x48, 0x00, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x12, 0x3f, 0x0a, 0x07,
- 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e,
- 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x53, 0x74, 0x6f, 0x72, 0x65,
- 0x41, 0x6e, 0x64, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x2e, 0x48, 0x69, 0x73, 0x74, 0x6f,
- 0x72, 0x79, 0x48, 0x00, 0x52, 0x07, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x45, 0x0a,
- 0x09, 0x68, 0x65, 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
- 0x32, 0x25, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x53, 0x74,
- 0x6f, 0x72, 0x65, 0x41, 0x6e, 0x64, 0x46, 0x6f, 0x72, 0x77, 0x61, 0x72, 0x64, 0x2e, 0x48, 0x65,
- 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x48, 0x00, 0x52, 0x09, 0x68, 0x65, 0x61, 0x72, 0x74,
- 0x62, 0x65, 0x61, 0x74, 0x12, 0x14, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x05, 0x20, 0x01,
- 0x28, 0x0c, 0x48, 0x00, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x1a, 0xbf, 0x02, 0x0a, 0x0a, 0x53,
- 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x65, 0x73,
- 0x73, 0x61, 0x67, 0x65, 0x73, 0x5f, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x0d, 0x52, 0x0d, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x54, 0x6f, 0x74, 0x61, 0x6c,
- 0x12, 0x25, 0x0a, 0x0e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x5f, 0x73, 0x61, 0x76,
- 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
- 0x65, 0x73, 0x53, 0x61, 0x76, 0x65, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61,
- 0x67, 0x65, 0x73, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0b, 0x6d,
- 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x4d, 0x61, 0x78, 0x12, 0x17, 0x0a, 0x07, 0x75, 0x70,
- 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x75, 0x70, 0x54,
- 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18,
- 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x12,
- 0x29, 0x0a, 0x10, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x5f, 0x68, 0x69, 0x73, 0x74,
- 0x6f, 0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0f, 0x72, 0x65, 0x71, 0x75, 0x65,
- 0x73, 0x74, 0x73, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1c, 0x0a, 0x09, 0x68, 0x65,
- 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x68,
- 0x65, 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x74, 0x75,
- 0x72, 0x6e, 0x5f, 0x6d, 0x61, 0x78, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x72, 0x65,
- 0x74, 0x75, 0x72, 0x6e, 0x4d, 0x61, 0x78, 0x12, 0x23, 0x0a, 0x0d, 0x72, 0x65, 0x74, 0x75, 0x72,
- 0x6e, 0x5f, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c,
- 0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x57, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x1a, 0x6f, 0x0a, 0x07,
- 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x29, 0x0a, 0x10, 0x68, 0x69, 0x73, 0x74, 0x6f,
- 0x72, 0x79, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x0d, 0x52, 0x0f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
- 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x18, 0x02, 0x20, 0x01,
- 0x28, 0x0d, 0x52, 0x06, 0x77, 0x69, 0x6e, 0x64, 0x6f, 0x77, 0x12, 0x21, 0x0a, 0x0c, 0x6c, 0x61,
- 0x73, 0x74, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d,
- 0x52, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x41, 0x0a,
- 0x09, 0x48, 0x65, 0x61, 0x72, 0x74, 0x62, 0x65, 0x61, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x65,
- 0x72, 0x69, 0x6f, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x70, 0x65, 0x72, 0x69,
- 0x6f, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79, 0x18,
- 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x61, 0x72, 0x79,
- 0x22, 0xbc, 0x02, 0x0a, 0x0f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70,
- 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x09, 0x0a, 0x05, 0x55, 0x4e, 0x53, 0x45, 0x54, 0x10, 0x00, 0x12,
- 0x10, 0x0a, 0x0c, 0x52, 0x4f, 0x55, 0x54, 0x45, 0x52, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10,
- 0x01, 0x12, 0x14, 0x0a, 0x10, 0x52, 0x4f, 0x55, 0x54, 0x45, 0x52, 0x5f, 0x48, 0x45, 0x41, 0x52,
- 0x54, 0x42, 0x45, 0x41, 0x54, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x52, 0x4f, 0x55, 0x54, 0x45,
- 0x52, 0x5f, 0x50, 0x49, 0x4e, 0x47, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x52, 0x4f, 0x55, 0x54,
- 0x45, 0x52, 0x5f, 0x50, 0x4f, 0x4e, 0x47, 0x10, 0x04, 0x12, 0x0f, 0x0a, 0x0b, 0x52, 0x4f, 0x55,
- 0x54, 0x45, 0x52, 0x5f, 0x42, 0x55, 0x53, 0x59, 0x10, 0x05, 0x12, 0x12, 0x0a, 0x0e, 0x52, 0x4f,
- 0x55, 0x54, 0x45, 0x52, 0x5f, 0x48, 0x49, 0x53, 0x54, 0x4f, 0x52, 0x59, 0x10, 0x06, 0x12, 0x10,
- 0x0a, 0x0c, 0x52, 0x4f, 0x55, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x53, 0x10, 0x07,
- 0x12, 0x16, 0x0a, 0x12, 0x52, 0x4f, 0x55, 0x54, 0x45, 0x52, 0x5f, 0x54, 0x45, 0x58, 0x54, 0x5f,
- 0x44, 0x49, 0x52, 0x45, 0x43, 0x54, 0x10, 0x08, 0x12, 0x19, 0x0a, 0x15, 0x52, 0x4f, 0x55, 0x54,
- 0x45, 0x52, 0x5f, 0x54, 0x45, 0x58, 0x54, 0x5f, 0x42, 0x52, 0x4f, 0x41, 0x44, 0x43, 0x41, 0x53,
- 0x54, 0x10, 0x09, 0x12, 0x10, 0x0a, 0x0c, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x45, 0x52,
- 0x52, 0x4f, 0x52, 0x10, 0x40, 0x12, 0x12, 0x0a, 0x0e, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x5f,
- 0x48, 0x49, 0x53, 0x54, 0x4f, 0x52, 0x59, 0x10, 0x41, 0x12, 0x10, 0x0a, 0x0c, 0x43, 0x4c, 0x49,
- 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x53, 0x10, 0x42, 0x12, 0x0f, 0x0a, 0x0b, 0x43,
- 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x50, 0x49, 0x4e, 0x47, 0x10, 0x43, 0x12, 0x0f, 0x0a, 0x0b,
- 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x50, 0x4f, 0x4e, 0x47, 0x10, 0x44, 0x12, 0x10, 0x0a,
- 0x0c, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x5f, 0x41, 0x42, 0x4f, 0x52, 0x54, 0x10, 0x6a, 0x42,
- 0x09, 0x0a, 0x07, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x42, 0x6a, 0x0a, 0x13, 0x63, 0x6f,
- 0x6d, 0x2e, 0x67, 0x65, 0x65, 0x6b, 0x73, 0x76, 0x69, 0x6c, 0x6c, 0x65, 0x2e, 0x6d, 0x65, 0x73,
- 0x68, 0x42, 0x15, 0x53, 0x74, 0x6f, 0x72, 0x65, 0x41, 0x6e, 0x64, 0x46, 0x6f, 0x72, 0x77, 0x61,
- 0x72, 0x64, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x5a, 0x22, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62,
- 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f,
- 0x67, 0x6f, 0x2f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0xaa, 0x02, 0x14, 0x4d,
- 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62,
- 0x75, 0x66, 0x73, 0xba, 0x02, 0x00, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
-}
+const file_meshtastic_storeforward_proto_rawDesc = "" +
+ "\n" +
+ "\x1dmeshtastic/storeforward.proto\x12\n" +
+ "meshtastic\"\xec\b\n" +
+ "\x0fStoreAndForward\x12;\n" +
+ "\x02rr\x18\x01 \x01(\x0e2+.meshtastic.StoreAndForward.RequestResponseR\x02rr\x12>\n" +
+ "\x05stats\x18\x02 \x01(\v2&.meshtastic.StoreAndForward.StatisticsH\x00R\x05stats\x12?\n" +
+ "\ahistory\x18\x03 \x01(\v2#.meshtastic.StoreAndForward.HistoryH\x00R\ahistory\x12E\n" +
+ "\theartbeat\x18\x04 \x01(\v2%.meshtastic.StoreAndForward.HeartbeatH\x00R\theartbeat\x12\x14\n" +
+ "\x04text\x18\x05 \x01(\fH\x00R\x04text\x1a\xbf\x02\n" +
+ "\n" +
+ "Statistics\x12%\n" +
+ "\x0emessages_total\x18\x01 \x01(\rR\rmessagesTotal\x12%\n" +
+ "\x0emessages_saved\x18\x02 \x01(\rR\rmessagesSaved\x12!\n" +
+ "\fmessages_max\x18\x03 \x01(\rR\vmessagesMax\x12\x17\n" +
+ "\aup_time\x18\x04 \x01(\rR\x06upTime\x12\x1a\n" +
+ "\brequests\x18\x05 \x01(\rR\brequests\x12)\n" +
+ "\x10requests_history\x18\x06 \x01(\rR\x0frequestsHistory\x12\x1c\n" +
+ "\theartbeat\x18\a \x01(\bR\theartbeat\x12\x1d\n" +
+ "\n" +
+ "return_max\x18\b \x01(\rR\treturnMax\x12#\n" +
+ "\rreturn_window\x18\t \x01(\rR\freturnWindow\x1ao\n" +
+ "\aHistory\x12)\n" +
+ "\x10history_messages\x18\x01 \x01(\rR\x0fhistoryMessages\x12\x16\n" +
+ "\x06window\x18\x02 \x01(\rR\x06window\x12!\n" +
+ "\flast_request\x18\x03 \x01(\rR\vlastRequest\x1aA\n" +
+ "\tHeartbeat\x12\x16\n" +
+ "\x06period\x18\x01 \x01(\rR\x06period\x12\x1c\n" +
+ "\tsecondary\x18\x02 \x01(\rR\tsecondary\"\xbc\x02\n" +
+ "\x0fRequestResponse\x12\t\n" +
+ "\x05UNSET\x10\x00\x12\x10\n" +
+ "\fROUTER_ERROR\x10\x01\x12\x14\n" +
+ "\x10ROUTER_HEARTBEAT\x10\x02\x12\x0f\n" +
+ "\vROUTER_PING\x10\x03\x12\x0f\n" +
+ "\vROUTER_PONG\x10\x04\x12\x0f\n" +
+ "\vROUTER_BUSY\x10\x05\x12\x12\n" +
+ "\x0eROUTER_HISTORY\x10\x06\x12\x10\n" +
+ "\fROUTER_STATS\x10\a\x12\x16\n" +
+ "\x12ROUTER_TEXT_DIRECT\x10\b\x12\x19\n" +
+ "\x15ROUTER_TEXT_BROADCAST\x10\t\x12\x10\n" +
+ "\fCLIENT_ERROR\x10@\x12\x12\n" +
+ "\x0eCLIENT_HISTORY\x10A\x12\x10\n" +
+ "\fCLIENT_STATS\x10B\x12\x0f\n" +
+ "\vCLIENT_PING\x10C\x12\x0f\n" +
+ "\vCLIENT_PONG\x10D\x12\x10\n" +
+ "\fCLIENT_ABORT\x10jB\t\n" +
+ "\avariantBj\n" +
+ "\x13com.geeksville.meshB\x15StoreAndForwardProtosZ\"github.com/meshtastic/go/generated\xaa\x02\x14Meshtastic.Protobufs\xba\x02\x00b\x06proto3"
var (
file_meshtastic_storeforward_proto_rawDescOnce sync.Once
- file_meshtastic_storeforward_proto_rawDescData = file_meshtastic_storeforward_proto_rawDesc
+ file_meshtastic_storeforward_proto_rawDescData []byte
)
func file_meshtastic_storeforward_proto_rawDescGZIP() []byte {
file_meshtastic_storeforward_proto_rawDescOnce.Do(func() {
- file_meshtastic_storeforward_proto_rawDescData = protoimpl.X.CompressGZIP(file_meshtastic_storeforward_proto_rawDescData)
+ file_meshtastic_storeforward_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_meshtastic_storeforward_proto_rawDesc), len(file_meshtastic_storeforward_proto_rawDesc)))
})
return file_meshtastic_storeforward_proto_rawDescData
}
var file_meshtastic_storeforward_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_meshtastic_storeforward_proto_msgTypes = make([]protoimpl.MessageInfo, 4)
-var file_meshtastic_storeforward_proto_goTypes = []interface{}{
+var file_meshtastic_storeforward_proto_goTypes = []any{
(StoreAndForward_RequestResponse)(0), // 0: meshtastic.StoreAndForward.RequestResponse
(*StoreAndForward)(nil), // 1: meshtastic.StoreAndForward
(*StoreAndForward_Statistics)(nil), // 2: meshtastic.StoreAndForward.Statistics
@@ -624,57 +586,7 @@ func file_meshtastic_storeforward_proto_init() {
if File_meshtastic_storeforward_proto != nil {
return
}
- if !protoimpl.UnsafeEnabled {
- file_meshtastic_storeforward_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*StoreAndForward); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_storeforward_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*StoreAndForward_Statistics); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_storeforward_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*StoreAndForward_History); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_storeforward_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*StoreAndForward_Heartbeat); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- }
- file_meshtastic_storeforward_proto_msgTypes[0].OneofWrappers = []interface{}{
+ file_meshtastic_storeforward_proto_msgTypes[0].OneofWrappers = []any{
(*StoreAndForward_Stats)(nil),
(*StoreAndForward_History_)(nil),
(*StoreAndForward_Heartbeat_)(nil),
@@ -684,7 +596,7 @@ func file_meshtastic_storeforward_proto_init() {
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
- RawDescriptor: file_meshtastic_storeforward_proto_rawDesc,
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_meshtastic_storeforward_proto_rawDesc), len(file_meshtastic_storeforward_proto_rawDesc)),
NumEnums: 1,
NumMessages: 4,
NumExtensions: 0,
@@ -696,7 +608,6 @@ func file_meshtastic_storeforward_proto_init() {
MessageInfos: file_meshtastic_storeforward_proto_msgTypes,
}.Build()
File_meshtastic_storeforward_proto = out.File
- file_meshtastic_storeforward_proto_rawDesc = nil
file_meshtastic_storeforward_proto_goTypes = nil
file_meshtastic_storeforward_proto_depIdxs = nil
}
diff --git a/meshtastic/telemetry.pb.go b/meshtastic/telemetry.pb.go
index 8b1358d..167c999 100644
--- a/meshtastic/telemetry.pb.go
+++ b/meshtastic/telemetry.pb.go
@@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.32.0
-// protoc v4.25.2
+// protoc-gen-go v1.36.6
+// protoc v3.21.12
// source: meshtastic/telemetry.proto
package generated
@@ -11,6 +11,7 @@ import (
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
+ unsafe "unsafe"
)
const (
@@ -24,51 +25,86 @@ const (
type TelemetrySensorType int32
const (
- //
// No external telemetry sensor explicitly set
TelemetrySensorType_SENSOR_UNSET TelemetrySensorType = 0
- //
// High accuracy temperature, pressure, humidity
TelemetrySensorType_BME280 TelemetrySensorType = 1
- //
// High accuracy temperature, pressure, humidity, and air resistance
TelemetrySensorType_BME680 TelemetrySensorType = 2
- //
// Very high accuracy temperature
TelemetrySensorType_MCP9808 TelemetrySensorType = 3
- //
// Moderate accuracy current and voltage
TelemetrySensorType_INA260 TelemetrySensorType = 4
- //
// Moderate accuracy current and voltage
TelemetrySensorType_INA219 TelemetrySensorType = 5
- //
// High accuracy temperature and pressure
TelemetrySensorType_BMP280 TelemetrySensorType = 6
- //
// High accuracy temperature and humidity
TelemetrySensorType_SHTC3 TelemetrySensorType = 7
- //
// High accuracy pressure
TelemetrySensorType_LPS22 TelemetrySensorType = 8
- //
// 3-Axis magnetic sensor
TelemetrySensorType_QMC6310 TelemetrySensorType = 9
- //
// 6-Axis inertial measurement sensor
TelemetrySensorType_QMI8658 TelemetrySensorType = 10
- //
// 3-Axis magnetic sensor
TelemetrySensorType_QMC5883L TelemetrySensorType = 11
- //
// High accuracy temperature and humidity
TelemetrySensorType_SHT31 TelemetrySensorType = 12
- //
// PM2.5 air quality sensor
TelemetrySensorType_PMSA003I TelemetrySensorType = 13
- //
// INA3221 3 Channel Voltage / Current Sensor
TelemetrySensorType_INA3221 TelemetrySensorType = 14
+ // BMP085/BMP180 High accuracy temperature and pressure (older Version of BMP280)
+ TelemetrySensorType_BMP085 TelemetrySensorType = 15
+ // RCWL-9620 Doppler Radar Distance Sensor, used for water level detection
+ TelemetrySensorType_RCWL9620 TelemetrySensorType = 16
+ // Sensirion High accuracy temperature and humidity
+ TelemetrySensorType_SHT4X TelemetrySensorType = 17
+ // VEML7700 high accuracy ambient light(Lux) digital 16-bit resolution sensor.
+ TelemetrySensorType_VEML7700 TelemetrySensorType = 18
+ // MLX90632 non-contact IR temperature sensor.
+ TelemetrySensorType_MLX90632 TelemetrySensorType = 19
+ // TI OPT3001 Ambient Light Sensor
+ TelemetrySensorType_OPT3001 TelemetrySensorType = 20
+ // Lite On LTR-390UV-01 UV Light Sensor
+ TelemetrySensorType_LTR390UV TelemetrySensorType = 21
+ // AMS TSL25911FN RGB Light Sensor
+ TelemetrySensorType_TSL25911FN TelemetrySensorType = 22
+ // AHT10 Integrated temperature and humidity sensor
+ TelemetrySensorType_AHT10 TelemetrySensorType = 23
+ // DFRobot Lark Weather station (temperature, humidity, pressure, wind speed and direction)
+ TelemetrySensorType_DFROBOT_LARK TelemetrySensorType = 24
+ // NAU7802 Scale Chip or compatible
+ TelemetrySensorType_NAU7802 TelemetrySensorType = 25
+ // BMP3XX High accuracy temperature and pressure
+ TelemetrySensorType_BMP3XX TelemetrySensorType = 26
+ // ICM-20948 9-Axis digital motion processor
+ TelemetrySensorType_ICM20948 TelemetrySensorType = 27
+ // MAX17048 1S lipo battery sensor (voltage, state of charge, time to go)
+ TelemetrySensorType_MAX17048 TelemetrySensorType = 28
+ // Custom I2C sensor implementation based on https://github.com/meshtastic/i2c-sensor
+ TelemetrySensorType_CUSTOM_SENSOR TelemetrySensorType = 29
+ // MAX30102 Pulse Oximeter and Heart-Rate Sensor
+ TelemetrySensorType_MAX30102 TelemetrySensorType = 30
+ // MLX90614 non-contact IR temperature sensor
+ TelemetrySensorType_MLX90614 TelemetrySensorType = 31
+ // SCD40/SCD41 CO2, humidity, temperature sensor
+ TelemetrySensorType_SCD4X TelemetrySensorType = 32
+ // ClimateGuard RadSens, radiation, Geiger-Muller Tube
+ TelemetrySensorType_RADSENS TelemetrySensorType = 33
+ // High accuracy current and voltage
+ TelemetrySensorType_INA226 TelemetrySensorType = 34
+ // DFRobot Gravity tipping bucket rain gauge
+ TelemetrySensorType_DFROBOT_RAIN TelemetrySensorType = 35
+ // Infineon DPS310 High accuracy pressure and temperature
+ TelemetrySensorType_DPS310 TelemetrySensorType = 36
+ // RAKWireless RAK12035 Soil Moisture Sensor Module
+ TelemetrySensorType_RAK12035 TelemetrySensorType = 37
+ // MAX17261 lipo battery gauge
+ TelemetrySensorType_MAX17261 TelemetrySensorType = 38
+ // PCT2075 Temperature Sensor
+ TelemetrySensorType_PCT2075 TelemetrySensorType = 39
)
// Enum value maps for TelemetrySensorType.
@@ -89,23 +125,73 @@ var (
12: "SHT31",
13: "PMSA003I",
14: "INA3221",
+ 15: "BMP085",
+ 16: "RCWL9620",
+ 17: "SHT4X",
+ 18: "VEML7700",
+ 19: "MLX90632",
+ 20: "OPT3001",
+ 21: "LTR390UV",
+ 22: "TSL25911FN",
+ 23: "AHT10",
+ 24: "DFROBOT_LARK",
+ 25: "NAU7802",
+ 26: "BMP3XX",
+ 27: "ICM20948",
+ 28: "MAX17048",
+ 29: "CUSTOM_SENSOR",
+ 30: "MAX30102",
+ 31: "MLX90614",
+ 32: "SCD4X",
+ 33: "RADSENS",
+ 34: "INA226",
+ 35: "DFROBOT_RAIN",
+ 36: "DPS310",
+ 37: "RAK12035",
+ 38: "MAX17261",
+ 39: "PCT2075",
}
TelemetrySensorType_value = map[string]int32{
- "SENSOR_UNSET": 0,
- "BME280": 1,
- "BME680": 2,
- "MCP9808": 3,
- "INA260": 4,
- "INA219": 5,
- "BMP280": 6,
- "SHTC3": 7,
- "LPS22": 8,
- "QMC6310": 9,
- "QMI8658": 10,
- "QMC5883L": 11,
- "SHT31": 12,
- "PMSA003I": 13,
- "INA3221": 14,
+ "SENSOR_UNSET": 0,
+ "BME280": 1,
+ "BME680": 2,
+ "MCP9808": 3,
+ "INA260": 4,
+ "INA219": 5,
+ "BMP280": 6,
+ "SHTC3": 7,
+ "LPS22": 8,
+ "QMC6310": 9,
+ "QMI8658": 10,
+ "QMC5883L": 11,
+ "SHT31": 12,
+ "PMSA003I": 13,
+ "INA3221": 14,
+ "BMP085": 15,
+ "RCWL9620": 16,
+ "SHT4X": 17,
+ "VEML7700": 18,
+ "MLX90632": 19,
+ "OPT3001": 20,
+ "LTR390UV": 21,
+ "TSL25911FN": 22,
+ "AHT10": 23,
+ "DFROBOT_LARK": 24,
+ "NAU7802": 25,
+ "BMP3XX": 26,
+ "ICM20948": 27,
+ "MAX17048": 28,
+ "CUSTOM_SENSOR": 29,
+ "MAX30102": 30,
+ "MLX90614": 31,
+ "SCD4X": 32,
+ "RADSENS": 33,
+ "INA226": 34,
+ "DFROBOT_RAIN": 35,
+ "DPS310": 36,
+ "RAK12035": 37,
+ "MAX17261": 38,
+ "PCT2075": 39,
}
)
@@ -138,31 +224,26 @@ func (TelemetrySensorType) EnumDescriptor() ([]byte, []int) {
// Key native device metrics such as battery level
type DeviceMetrics struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- //
+ state protoimpl.MessageState `protogen:"open.v1"`
// 0-100 (>100 means powered)
- BatteryLevel uint32 `protobuf:"varint,1,opt,name=battery_level,json=batteryLevel,proto3" json:"battery_level,omitempty"`
- //
+ BatteryLevel *uint32 `protobuf:"varint,1,opt,name=battery_level,json=batteryLevel,proto3,oneof" json:"battery_level,omitempty"`
// Voltage measured
- Voltage float32 `protobuf:"fixed32,2,opt,name=voltage,proto3" json:"voltage,omitempty"`
- //
+ Voltage *float32 `protobuf:"fixed32,2,opt,name=voltage,proto3,oneof" json:"voltage,omitempty"`
// Utilization for the current channel, including well formed TX, RX and malformed RX (aka noise).
- ChannelUtilization float32 `protobuf:"fixed32,3,opt,name=channel_utilization,json=channelUtilization,proto3" json:"channel_utilization,omitempty"`
- //
+ ChannelUtilization *float32 `protobuf:"fixed32,3,opt,name=channel_utilization,json=channelUtilization,proto3,oneof" json:"channel_utilization,omitempty"`
// Percent of airtime for transmission used within the last hour.
- AirUtilTx float32 `protobuf:"fixed32,4,opt,name=air_util_tx,json=airUtilTx,proto3" json:"air_util_tx,omitempty"`
+ AirUtilTx *float32 `protobuf:"fixed32,4,opt,name=air_util_tx,json=airUtilTx,proto3,oneof" json:"air_util_tx,omitempty"`
+ // How long the device has been running since the last reboot (in seconds)
+ UptimeSeconds *uint32 `protobuf:"varint,5,opt,name=uptime_seconds,json=uptimeSeconds,proto3,oneof" json:"uptime_seconds,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *DeviceMetrics) Reset() {
*x = DeviceMetrics{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_telemetry_proto_msgTypes[0]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_telemetry_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *DeviceMetrics) String() string {
@@ -173,7 +254,7 @@ func (*DeviceMetrics) ProtoMessage() {}
func (x *DeviceMetrics) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_telemetry_proto_msgTypes[0]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -189,66 +270,98 @@ func (*DeviceMetrics) Descriptor() ([]byte, []int) {
}
func (x *DeviceMetrics) GetBatteryLevel() uint32 {
- if x != nil {
- return x.BatteryLevel
+ if x != nil && x.BatteryLevel != nil {
+ return *x.BatteryLevel
}
return 0
}
func (x *DeviceMetrics) GetVoltage() float32 {
- if x != nil {
- return x.Voltage
+ if x != nil && x.Voltage != nil {
+ return *x.Voltage
}
return 0
}
func (x *DeviceMetrics) GetChannelUtilization() float32 {
- if x != nil {
- return x.ChannelUtilization
+ if x != nil && x.ChannelUtilization != nil {
+ return *x.ChannelUtilization
}
return 0
}
func (x *DeviceMetrics) GetAirUtilTx() float32 {
- if x != nil {
- return x.AirUtilTx
+ if x != nil && x.AirUtilTx != nil {
+ return *x.AirUtilTx
+ }
+ return 0
+}
+
+func (x *DeviceMetrics) GetUptimeSeconds() uint32 {
+ if x != nil && x.UptimeSeconds != nil {
+ return *x.UptimeSeconds
}
return 0
}
// Weather station or other environmental metrics
type EnvironmentMetrics struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- //
+ state protoimpl.MessageState `protogen:"open.v1"`
// Temperature measured
- Temperature float32 `protobuf:"fixed32,1,opt,name=temperature,proto3" json:"temperature,omitempty"`
- //
+ Temperature *float32 `protobuf:"fixed32,1,opt,name=temperature,proto3,oneof" json:"temperature,omitempty"`
// Relative humidity percent measured
- RelativeHumidity float32 `protobuf:"fixed32,2,opt,name=relative_humidity,json=relativeHumidity,proto3" json:"relative_humidity,omitempty"`
- //
+ RelativeHumidity *float32 `protobuf:"fixed32,2,opt,name=relative_humidity,json=relativeHumidity,proto3,oneof" json:"relative_humidity,omitempty"`
// Barometric pressure in hPA measured
- BarometricPressure float32 `protobuf:"fixed32,3,opt,name=barometric_pressure,json=barometricPressure,proto3" json:"barometric_pressure,omitempty"`
- //
+ BarometricPressure *float32 `protobuf:"fixed32,3,opt,name=barometric_pressure,json=barometricPressure,proto3,oneof" json:"barometric_pressure,omitempty"`
// Gas resistance in MOhm measured
- GasResistance float32 `protobuf:"fixed32,4,opt,name=gas_resistance,json=gasResistance,proto3" json:"gas_resistance,omitempty"`
- //
+ GasResistance *float32 `protobuf:"fixed32,4,opt,name=gas_resistance,json=gasResistance,proto3,oneof" json:"gas_resistance,omitempty"`
// Voltage measured (To be depreciated in favor of PowerMetrics in Meshtastic 3.x)
- Voltage float32 `protobuf:"fixed32,5,opt,name=voltage,proto3" json:"voltage,omitempty"`
- //
+ Voltage *float32 `protobuf:"fixed32,5,opt,name=voltage,proto3,oneof" json:"voltage,omitempty"`
// Current measured (To be depreciated in favor of PowerMetrics in Meshtastic 3.x)
- Current float32 `protobuf:"fixed32,6,opt,name=current,proto3" json:"current,omitempty"`
+ Current *float32 `protobuf:"fixed32,6,opt,name=current,proto3,oneof" json:"current,omitempty"`
+ // relative scale IAQ value as measured by Bosch BME680 . value 0-500.
+ // Belongs to Air Quality but is not particle but VOC measurement. Other VOC values can also be put in here.
+ Iaq *uint32 `protobuf:"varint,7,opt,name=iaq,proto3,oneof" json:"iaq,omitempty"`
+ // RCWL9620 Doppler Radar Distance Sensor, used for water level detection. Float value in mm.
+ Distance *float32 `protobuf:"fixed32,8,opt,name=distance,proto3,oneof" json:"distance,omitempty"`
+ // VEML7700 high accuracy ambient light(Lux) digital 16-bit resolution sensor.
+ Lux *float32 `protobuf:"fixed32,9,opt,name=lux,proto3,oneof" json:"lux,omitempty"`
+ // VEML7700 high accuracy white light(irradiance) not calibrated digital 16-bit resolution sensor.
+ WhiteLux *float32 `protobuf:"fixed32,10,opt,name=white_lux,json=whiteLux,proto3,oneof" json:"white_lux,omitempty"`
+ // Infrared lux
+ IrLux *float32 `protobuf:"fixed32,11,opt,name=ir_lux,json=irLux,proto3,oneof" json:"ir_lux,omitempty"`
+ // Ultraviolet lux
+ UvLux *float32 `protobuf:"fixed32,12,opt,name=uv_lux,json=uvLux,proto3,oneof" json:"uv_lux,omitempty"`
+ // Wind direction in degrees
+ // 0 degrees = North, 90 = East, etc...
+ WindDirection *uint32 `protobuf:"varint,13,opt,name=wind_direction,json=windDirection,proto3,oneof" json:"wind_direction,omitempty"`
+ // Wind speed in m/s
+ WindSpeed *float32 `protobuf:"fixed32,14,opt,name=wind_speed,json=windSpeed,proto3,oneof" json:"wind_speed,omitempty"`
+ // Weight in KG
+ Weight *float32 `protobuf:"fixed32,15,opt,name=weight,proto3,oneof" json:"weight,omitempty"`
+ // Wind gust in m/s
+ WindGust *float32 `protobuf:"fixed32,16,opt,name=wind_gust,json=windGust,proto3,oneof" json:"wind_gust,omitempty"`
+ // Wind lull in m/s
+ WindLull *float32 `protobuf:"fixed32,17,opt,name=wind_lull,json=windLull,proto3,oneof" json:"wind_lull,omitempty"`
+ // Radiation in µR/h
+ Radiation *float32 `protobuf:"fixed32,18,opt,name=radiation,proto3,oneof" json:"radiation,omitempty"`
+ // Rainfall in the last hour in mm
+ Rainfall_1H *float32 `protobuf:"fixed32,19,opt,name=rainfall_1h,json=rainfall1h,proto3,oneof" json:"rainfall_1h,omitempty"`
+ // Rainfall in the last 24 hours in mm
+ Rainfall_24H *float32 `protobuf:"fixed32,20,opt,name=rainfall_24h,json=rainfall24h,proto3,oneof" json:"rainfall_24h,omitempty"`
+ // Soil moisture measured (% 1-100)
+ SoilMoisture *uint32 `protobuf:"varint,21,opt,name=soil_moisture,json=soilMoisture,proto3,oneof" json:"soil_moisture,omitempty"`
+ // Soil temperature measured (*C)
+ SoilTemperature *float32 `protobuf:"fixed32,22,opt,name=soil_temperature,json=soilTemperature,proto3,oneof" json:"soil_temperature,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *EnvironmentMetrics) Reset() {
*x = EnvironmentMetrics{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_telemetry_proto_msgTypes[1]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_telemetry_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *EnvironmentMetrics) String() string {
@@ -259,7 +372,7 @@ func (*EnvironmentMetrics) ProtoMessage() {}
func (x *EnvironmentMetrics) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_telemetry_proto_msgTypes[1]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -275,80 +388,183 @@ func (*EnvironmentMetrics) Descriptor() ([]byte, []int) {
}
func (x *EnvironmentMetrics) GetTemperature() float32 {
- if x != nil {
- return x.Temperature
+ if x != nil && x.Temperature != nil {
+ return *x.Temperature
}
return 0
}
func (x *EnvironmentMetrics) GetRelativeHumidity() float32 {
- if x != nil {
- return x.RelativeHumidity
+ if x != nil && x.RelativeHumidity != nil {
+ return *x.RelativeHumidity
}
return 0
}
func (x *EnvironmentMetrics) GetBarometricPressure() float32 {
- if x != nil {
- return x.BarometricPressure
+ if x != nil && x.BarometricPressure != nil {
+ return *x.BarometricPressure
}
return 0
}
func (x *EnvironmentMetrics) GetGasResistance() float32 {
- if x != nil {
- return x.GasResistance
+ if x != nil && x.GasResistance != nil {
+ return *x.GasResistance
}
return 0
}
func (x *EnvironmentMetrics) GetVoltage() float32 {
- if x != nil {
- return x.Voltage
+ if x != nil && x.Voltage != nil {
+ return *x.Voltage
}
return 0
}
func (x *EnvironmentMetrics) GetCurrent() float32 {
- if x != nil {
- return x.Current
+ if x != nil && x.Current != nil {
+ return *x.Current
+ }
+ return 0
+}
+
+func (x *EnvironmentMetrics) GetIaq() uint32 {
+ if x != nil && x.Iaq != nil {
+ return *x.Iaq
+ }
+ return 0
+}
+
+func (x *EnvironmentMetrics) GetDistance() float32 {
+ if x != nil && x.Distance != nil {
+ return *x.Distance
+ }
+ return 0
+}
+
+func (x *EnvironmentMetrics) GetLux() float32 {
+ if x != nil && x.Lux != nil {
+ return *x.Lux
+ }
+ return 0
+}
+
+func (x *EnvironmentMetrics) GetWhiteLux() float32 {
+ if x != nil && x.WhiteLux != nil {
+ return *x.WhiteLux
+ }
+ return 0
+}
+
+func (x *EnvironmentMetrics) GetIrLux() float32 {
+ if x != nil && x.IrLux != nil {
+ return *x.IrLux
+ }
+ return 0
+}
+
+func (x *EnvironmentMetrics) GetUvLux() float32 {
+ if x != nil && x.UvLux != nil {
+ return *x.UvLux
+ }
+ return 0
+}
+
+func (x *EnvironmentMetrics) GetWindDirection() uint32 {
+ if x != nil && x.WindDirection != nil {
+ return *x.WindDirection
+ }
+ return 0
+}
+
+func (x *EnvironmentMetrics) GetWindSpeed() float32 {
+ if x != nil && x.WindSpeed != nil {
+ return *x.WindSpeed
+ }
+ return 0
+}
+
+func (x *EnvironmentMetrics) GetWeight() float32 {
+ if x != nil && x.Weight != nil {
+ return *x.Weight
+ }
+ return 0
+}
+
+func (x *EnvironmentMetrics) GetWindGust() float32 {
+ if x != nil && x.WindGust != nil {
+ return *x.WindGust
+ }
+ return 0
+}
+
+func (x *EnvironmentMetrics) GetWindLull() float32 {
+ if x != nil && x.WindLull != nil {
+ return *x.WindLull
+ }
+ return 0
+}
+
+func (x *EnvironmentMetrics) GetRadiation() float32 {
+ if x != nil && x.Radiation != nil {
+ return *x.Radiation
+ }
+ return 0
+}
+
+func (x *EnvironmentMetrics) GetRainfall_1H() float32 {
+ if x != nil && x.Rainfall_1H != nil {
+ return *x.Rainfall_1H
+ }
+ return 0
+}
+
+func (x *EnvironmentMetrics) GetRainfall_24H() float32 {
+ if x != nil && x.Rainfall_24H != nil {
+ return *x.Rainfall_24H
+ }
+ return 0
+}
+
+func (x *EnvironmentMetrics) GetSoilMoisture() uint32 {
+ if x != nil && x.SoilMoisture != nil {
+ return *x.SoilMoisture
+ }
+ return 0
+}
+
+func (x *EnvironmentMetrics) GetSoilTemperature() float32 {
+ if x != nil && x.SoilTemperature != nil {
+ return *x.SoilTemperature
}
return 0
}
// Power Metrics (voltage / current / etc)
type PowerMetrics struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- //
+ state protoimpl.MessageState `protogen:"open.v1"`
// Voltage (Ch1)
- Ch1Voltage float32 `protobuf:"fixed32,1,opt,name=ch1_voltage,json=ch1Voltage,proto3" json:"ch1_voltage,omitempty"`
- //
+ Ch1Voltage *float32 `protobuf:"fixed32,1,opt,name=ch1_voltage,json=ch1Voltage,proto3,oneof" json:"ch1_voltage,omitempty"`
// Current (Ch1)
- Ch1Current float32 `protobuf:"fixed32,2,opt,name=ch1_current,json=ch1Current,proto3" json:"ch1_current,omitempty"`
- //
+ Ch1Current *float32 `protobuf:"fixed32,2,opt,name=ch1_current,json=ch1Current,proto3,oneof" json:"ch1_current,omitempty"`
// Voltage (Ch2)
- Ch2Voltage float32 `protobuf:"fixed32,3,opt,name=ch2_voltage,json=ch2Voltage,proto3" json:"ch2_voltage,omitempty"`
- //
+ Ch2Voltage *float32 `protobuf:"fixed32,3,opt,name=ch2_voltage,json=ch2Voltage,proto3,oneof" json:"ch2_voltage,omitempty"`
// Current (Ch2)
- Ch2Current float32 `protobuf:"fixed32,4,opt,name=ch2_current,json=ch2Current,proto3" json:"ch2_current,omitempty"`
- //
+ Ch2Current *float32 `protobuf:"fixed32,4,opt,name=ch2_current,json=ch2Current,proto3,oneof" json:"ch2_current,omitempty"`
// Voltage (Ch3)
- Ch3Voltage float32 `protobuf:"fixed32,5,opt,name=ch3_voltage,json=ch3Voltage,proto3" json:"ch3_voltage,omitempty"`
- //
+ Ch3Voltage *float32 `protobuf:"fixed32,5,opt,name=ch3_voltage,json=ch3Voltage,proto3,oneof" json:"ch3_voltage,omitempty"`
// Current (Ch3)
- Ch3Current float32 `protobuf:"fixed32,6,opt,name=ch3_current,json=ch3Current,proto3" json:"ch3_current,omitempty"`
+ Ch3Current *float32 `protobuf:"fixed32,6,opt,name=ch3_current,json=ch3Current,proto3,oneof" json:"ch3_current,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *PowerMetrics) Reset() {
*x = PowerMetrics{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_telemetry_proto_msgTypes[2]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_telemetry_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *PowerMetrics) String() string {
@@ -359,7 +575,7 @@ func (*PowerMetrics) ProtoMessage() {}
func (x *PowerMetrics) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_telemetry_proto_msgTypes[2]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -375,98 +591,85 @@ func (*PowerMetrics) Descriptor() ([]byte, []int) {
}
func (x *PowerMetrics) GetCh1Voltage() float32 {
- if x != nil {
- return x.Ch1Voltage
+ if x != nil && x.Ch1Voltage != nil {
+ return *x.Ch1Voltage
}
return 0
}
func (x *PowerMetrics) GetCh1Current() float32 {
- if x != nil {
- return x.Ch1Current
+ if x != nil && x.Ch1Current != nil {
+ return *x.Ch1Current
}
return 0
}
func (x *PowerMetrics) GetCh2Voltage() float32 {
- if x != nil {
- return x.Ch2Voltage
+ if x != nil && x.Ch2Voltage != nil {
+ return *x.Ch2Voltage
}
return 0
}
func (x *PowerMetrics) GetCh2Current() float32 {
- if x != nil {
- return x.Ch2Current
+ if x != nil && x.Ch2Current != nil {
+ return *x.Ch2Current
}
return 0
}
func (x *PowerMetrics) GetCh3Voltage() float32 {
- if x != nil {
- return x.Ch3Voltage
+ if x != nil && x.Ch3Voltage != nil {
+ return *x.Ch3Voltage
}
return 0
}
func (x *PowerMetrics) GetCh3Current() float32 {
- if x != nil {
- return x.Ch3Current
+ if x != nil && x.Ch3Current != nil {
+ return *x.Ch3Current
}
return 0
}
// Air quality metrics
type AirQualityMetrics struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
- unknownFields protoimpl.UnknownFields
-
- //
+ state protoimpl.MessageState `protogen:"open.v1"`
// Concentration Units Standard PM1.0
- Pm10Standard uint32 `protobuf:"varint,1,opt,name=pm10_standard,json=pm10Standard,proto3" json:"pm10_standard,omitempty"`
- //
+ Pm10Standard *uint32 `protobuf:"varint,1,opt,name=pm10_standard,json=pm10Standard,proto3,oneof" json:"pm10_standard,omitempty"`
// Concentration Units Standard PM2.5
- Pm25Standard uint32 `protobuf:"varint,2,opt,name=pm25_standard,json=pm25Standard,proto3" json:"pm25_standard,omitempty"`
- //
+ Pm25Standard *uint32 `protobuf:"varint,2,opt,name=pm25_standard,json=pm25Standard,proto3,oneof" json:"pm25_standard,omitempty"`
// Concentration Units Standard PM10.0
- Pm100Standard uint32 `protobuf:"varint,3,opt,name=pm100_standard,json=pm100Standard,proto3" json:"pm100_standard,omitempty"`
- //
+ Pm100Standard *uint32 `protobuf:"varint,3,opt,name=pm100_standard,json=pm100Standard,proto3,oneof" json:"pm100_standard,omitempty"`
// Concentration Units Environmental PM1.0
- Pm10Environmental uint32 `protobuf:"varint,4,opt,name=pm10_environmental,json=pm10Environmental,proto3" json:"pm10_environmental,omitempty"`
- //
+ Pm10Environmental *uint32 `protobuf:"varint,4,opt,name=pm10_environmental,json=pm10Environmental,proto3,oneof" json:"pm10_environmental,omitempty"`
// Concentration Units Environmental PM2.5
- Pm25Environmental uint32 `protobuf:"varint,5,opt,name=pm25_environmental,json=pm25Environmental,proto3" json:"pm25_environmental,omitempty"`
- //
+ Pm25Environmental *uint32 `protobuf:"varint,5,opt,name=pm25_environmental,json=pm25Environmental,proto3,oneof" json:"pm25_environmental,omitempty"`
// Concentration Units Environmental PM10.0
- Pm100Environmental uint32 `protobuf:"varint,6,opt,name=pm100_environmental,json=pm100Environmental,proto3" json:"pm100_environmental,omitempty"`
- //
+ Pm100Environmental *uint32 `protobuf:"varint,6,opt,name=pm100_environmental,json=pm100Environmental,proto3,oneof" json:"pm100_environmental,omitempty"`
// 0.3um Particle Count
- Particles_03Um uint32 `protobuf:"varint,7,opt,name=particles_03um,json=particles03um,proto3" json:"particles_03um,omitempty"`
- //
+ Particles_03Um *uint32 `protobuf:"varint,7,opt,name=particles_03um,json=particles03um,proto3,oneof" json:"particles_03um,omitempty"`
// 0.5um Particle Count
- Particles_05Um uint32 `protobuf:"varint,8,opt,name=particles_05um,json=particles05um,proto3" json:"particles_05um,omitempty"`
- //
+ Particles_05Um *uint32 `protobuf:"varint,8,opt,name=particles_05um,json=particles05um,proto3,oneof" json:"particles_05um,omitempty"`
// 1.0um Particle Count
- Particles_10Um uint32 `protobuf:"varint,9,opt,name=particles_10um,json=particles10um,proto3" json:"particles_10um,omitempty"`
- //
+ Particles_10Um *uint32 `protobuf:"varint,9,opt,name=particles_10um,json=particles10um,proto3,oneof" json:"particles_10um,omitempty"`
// 2.5um Particle Count
- Particles_25Um uint32 `protobuf:"varint,10,opt,name=particles_25um,json=particles25um,proto3" json:"particles_25um,omitempty"`
- //
+ Particles_25Um *uint32 `protobuf:"varint,10,opt,name=particles_25um,json=particles25um,proto3,oneof" json:"particles_25um,omitempty"`
// 5.0um Particle Count
- Particles_50Um uint32 `protobuf:"varint,11,opt,name=particles_50um,json=particles50um,proto3" json:"particles_50um,omitempty"`
- //
+ Particles_50Um *uint32 `protobuf:"varint,11,opt,name=particles_50um,json=particles50um,proto3,oneof" json:"particles_50um,omitempty"`
// 10.0um Particle Count
- Particles_100Um uint32 `protobuf:"varint,12,opt,name=particles_100um,json=particles100um,proto3" json:"particles_100um,omitempty"`
+ Particles_100Um *uint32 `protobuf:"varint,12,opt,name=particles_100um,json=particles100um,proto3,oneof" json:"particles_100um,omitempty"`
+ // CO2 concentration in ppm
+ Co2 *uint32 `protobuf:"varint,13,opt,name=co2,proto3,oneof" json:"co2,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *AirQualityMetrics) Reset() {
*x = AirQualityMetrics{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_telemetry_proto_msgTypes[3]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_telemetry_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *AirQualityMetrics) String() string {
@@ -477,7 +680,7 @@ func (*AirQualityMetrics) ProtoMessage() {}
func (x *AirQualityMetrics) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_telemetry_proto_msgTypes[3]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -493,114 +696,459 @@ func (*AirQualityMetrics) Descriptor() ([]byte, []int) {
}
func (x *AirQualityMetrics) GetPm10Standard() uint32 {
- if x != nil {
- return x.Pm10Standard
+ if x != nil && x.Pm10Standard != nil {
+ return *x.Pm10Standard
}
return 0
}
func (x *AirQualityMetrics) GetPm25Standard() uint32 {
- if x != nil {
- return x.Pm25Standard
+ if x != nil && x.Pm25Standard != nil {
+ return *x.Pm25Standard
}
return 0
}
func (x *AirQualityMetrics) GetPm100Standard() uint32 {
- if x != nil {
- return x.Pm100Standard
+ if x != nil && x.Pm100Standard != nil {
+ return *x.Pm100Standard
}
return 0
}
func (x *AirQualityMetrics) GetPm10Environmental() uint32 {
- if x != nil {
- return x.Pm10Environmental
+ if x != nil && x.Pm10Environmental != nil {
+ return *x.Pm10Environmental
}
return 0
}
func (x *AirQualityMetrics) GetPm25Environmental() uint32 {
- if x != nil {
- return x.Pm25Environmental
+ if x != nil && x.Pm25Environmental != nil {
+ return *x.Pm25Environmental
}
return 0
}
func (x *AirQualityMetrics) GetPm100Environmental() uint32 {
- if x != nil {
- return x.Pm100Environmental
+ if x != nil && x.Pm100Environmental != nil {
+ return *x.Pm100Environmental
}
return 0
}
func (x *AirQualityMetrics) GetParticles_03Um() uint32 {
- if x != nil {
- return x.Particles_03Um
+ if x != nil && x.Particles_03Um != nil {
+ return *x.Particles_03Um
}
return 0
}
func (x *AirQualityMetrics) GetParticles_05Um() uint32 {
- if x != nil {
- return x.Particles_05Um
+ if x != nil && x.Particles_05Um != nil {
+ return *x.Particles_05Um
}
return 0
}
func (x *AirQualityMetrics) GetParticles_10Um() uint32 {
- if x != nil {
- return x.Particles_10Um
+ if x != nil && x.Particles_10Um != nil {
+ return *x.Particles_10Um
}
return 0
}
func (x *AirQualityMetrics) GetParticles_25Um() uint32 {
- if x != nil {
- return x.Particles_25Um
+ if x != nil && x.Particles_25Um != nil {
+ return *x.Particles_25Um
}
return 0
}
func (x *AirQualityMetrics) GetParticles_50Um() uint32 {
- if x != nil {
- return x.Particles_50Um
+ if x != nil && x.Particles_50Um != nil {
+ return *x.Particles_50Um
}
return 0
}
func (x *AirQualityMetrics) GetParticles_100Um() uint32 {
+ if x != nil && x.Particles_100Um != nil {
+ return *x.Particles_100Um
+ }
+ return 0
+}
+
+func (x *AirQualityMetrics) GetCo2() uint32 {
+ if x != nil && x.Co2 != nil {
+ return *x.Co2
+ }
+ return 0
+}
+
+// Local device mesh statistics
+type LocalStats struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // How long the device has been running since the last reboot (in seconds)
+ UptimeSeconds uint32 `protobuf:"varint,1,opt,name=uptime_seconds,json=uptimeSeconds,proto3" json:"uptime_seconds,omitempty"`
+ // Utilization for the current channel, including well formed TX, RX and malformed RX (aka noise).
+ ChannelUtilization float32 `protobuf:"fixed32,2,opt,name=channel_utilization,json=channelUtilization,proto3" json:"channel_utilization,omitempty"`
+ // Percent of airtime for transmission used within the last hour.
+ AirUtilTx float32 `protobuf:"fixed32,3,opt,name=air_util_tx,json=airUtilTx,proto3" json:"air_util_tx,omitempty"`
+ // Number of packets sent
+ NumPacketsTx uint32 `protobuf:"varint,4,opt,name=num_packets_tx,json=numPacketsTx,proto3" json:"num_packets_tx,omitempty"`
+ // Number of packets received (both good and bad)
+ NumPacketsRx uint32 `protobuf:"varint,5,opt,name=num_packets_rx,json=numPacketsRx,proto3" json:"num_packets_rx,omitempty"`
+ // Number of packets received that are malformed or violate the protocol
+ NumPacketsRxBad uint32 `protobuf:"varint,6,opt,name=num_packets_rx_bad,json=numPacketsRxBad,proto3" json:"num_packets_rx_bad,omitempty"`
+ // Number of nodes online (in the past 2 hours)
+ NumOnlineNodes uint32 `protobuf:"varint,7,opt,name=num_online_nodes,json=numOnlineNodes,proto3" json:"num_online_nodes,omitempty"`
+ // Number of nodes total
+ NumTotalNodes uint32 `protobuf:"varint,8,opt,name=num_total_nodes,json=numTotalNodes,proto3" json:"num_total_nodes,omitempty"`
+ // Number of received packets that were duplicates (due to multiple nodes relaying).
+ // If this number is high, there are nodes in the mesh relaying packets when it's unnecessary, for example due to the ROUTER/REPEATER role.
+ NumRxDupe uint32 `protobuf:"varint,9,opt,name=num_rx_dupe,json=numRxDupe,proto3" json:"num_rx_dupe,omitempty"`
+ // Number of packets we transmitted that were a relay for others (not originating from ourselves).
+ NumTxRelay uint32 `protobuf:"varint,10,opt,name=num_tx_relay,json=numTxRelay,proto3" json:"num_tx_relay,omitempty"`
+ // Number of times we canceled a packet to be relayed, because someone else did it before us.
+ // This will always be zero for ROUTERs/REPEATERs. If this number is high, some other node(s) is/are relaying faster than you.
+ NumTxRelayCanceled uint32 `protobuf:"varint,11,opt,name=num_tx_relay_canceled,json=numTxRelayCanceled,proto3" json:"num_tx_relay_canceled,omitempty"`
+ // Number of bytes used in the heap
+ HeapTotalBytes uint32 `protobuf:"varint,12,opt,name=heap_total_bytes,json=heapTotalBytes,proto3" json:"heap_total_bytes,omitempty"`
+ // Number of bytes free in the heap
+ HeapFreeBytes uint32 `protobuf:"varint,13,opt,name=heap_free_bytes,json=heapFreeBytes,proto3" json:"heap_free_bytes,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *LocalStats) Reset() {
+ *x = LocalStats{}
+ mi := &file_meshtastic_telemetry_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *LocalStats) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*LocalStats) ProtoMessage() {}
+
+func (x *LocalStats) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_telemetry_proto_msgTypes[4]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use LocalStats.ProtoReflect.Descriptor instead.
+func (*LocalStats) Descriptor() ([]byte, []int) {
+ return file_meshtastic_telemetry_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *LocalStats) GetUptimeSeconds() uint32 {
if x != nil {
- return x.Particles_100Um
+ return x.UptimeSeconds
}
return 0
}
-// Types of Measurements the telemetry module is equipped to handle
-type Telemetry struct {
- state protoimpl.MessageState
+func (x *LocalStats) GetChannelUtilization() float32 {
+ if x != nil {
+ return x.ChannelUtilization
+ }
+ return 0
+}
+
+func (x *LocalStats) GetAirUtilTx() float32 {
+ if x != nil {
+ return x.AirUtilTx
+ }
+ return 0
+}
+
+func (x *LocalStats) GetNumPacketsTx() uint32 {
+ if x != nil {
+ return x.NumPacketsTx
+ }
+ return 0
+}
+
+func (x *LocalStats) GetNumPacketsRx() uint32 {
+ if x != nil {
+ return x.NumPacketsRx
+ }
+ return 0
+}
+
+func (x *LocalStats) GetNumPacketsRxBad() uint32 {
+ if x != nil {
+ return x.NumPacketsRxBad
+ }
+ return 0
+}
+
+func (x *LocalStats) GetNumOnlineNodes() uint32 {
+ if x != nil {
+ return x.NumOnlineNodes
+ }
+ return 0
+}
+
+func (x *LocalStats) GetNumTotalNodes() uint32 {
+ if x != nil {
+ return x.NumTotalNodes
+ }
+ return 0
+}
+
+func (x *LocalStats) GetNumRxDupe() uint32 {
+ if x != nil {
+ return x.NumRxDupe
+ }
+ return 0
+}
+
+func (x *LocalStats) GetNumTxRelay() uint32 {
+ if x != nil {
+ return x.NumTxRelay
+ }
+ return 0
+}
+
+func (x *LocalStats) GetNumTxRelayCanceled() uint32 {
+ if x != nil {
+ return x.NumTxRelayCanceled
+ }
+ return 0
+}
+
+func (x *LocalStats) GetHeapTotalBytes() uint32 {
+ if x != nil {
+ return x.HeapTotalBytes
+ }
+ return 0
+}
+
+func (x *LocalStats) GetHeapFreeBytes() uint32 {
+ if x != nil {
+ return x.HeapFreeBytes
+ }
+ return 0
+}
+
+// Health telemetry metrics
+type HealthMetrics struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // Heart rate (beats per minute)
+ HeartBpm *uint32 `protobuf:"varint,1,opt,name=heart_bpm,json=heartBpm,proto3,oneof" json:"heart_bpm,omitempty"`
+ // SpO2 (blood oxygen saturation) level
+ SpO2 *uint32 `protobuf:"varint,2,opt,name=spO2,proto3,oneof" json:"spO2,omitempty"`
+ // Body temperature in degrees Celsius
+ Temperature *float32 `protobuf:"fixed32,3,opt,name=temperature,proto3,oneof" json:"temperature,omitempty"`
+ unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
+}
+
+func (x *HealthMetrics) Reset() {
+ *x = HealthMetrics{}
+ mi := &file_meshtastic_telemetry_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *HealthMetrics) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HealthMetrics) ProtoMessage() {}
+
+func (x *HealthMetrics) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_telemetry_proto_msgTypes[5]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use HealthMetrics.ProtoReflect.Descriptor instead.
+func (*HealthMetrics) Descriptor() ([]byte, []int) {
+ return file_meshtastic_telemetry_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *HealthMetrics) GetHeartBpm() uint32 {
+ if x != nil && x.HeartBpm != nil {
+ return *x.HeartBpm
+ }
+ return 0
+}
+
+func (x *HealthMetrics) GetSpO2() uint32 {
+ if x != nil && x.SpO2 != nil {
+ return *x.SpO2
+ }
+ return 0
+}
+
+func (x *HealthMetrics) GetTemperature() float32 {
+ if x != nil && x.Temperature != nil {
+ return *x.Temperature
+ }
+ return 0
+}
+
+// Linux host metrics
+type HostMetrics struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // Host system uptime
+ UptimeSeconds uint32 `protobuf:"varint,1,opt,name=uptime_seconds,json=uptimeSeconds,proto3" json:"uptime_seconds,omitempty"`
+ // Host system free memory
+ FreememBytes uint64 `protobuf:"varint,2,opt,name=freemem_bytes,json=freememBytes,proto3" json:"freemem_bytes,omitempty"`
+ // Host system disk space free for /
+ Diskfree1Bytes uint64 `protobuf:"varint,3,opt,name=diskfree1_bytes,json=diskfree1Bytes,proto3" json:"diskfree1_bytes,omitempty"`
+ // Secondary system disk space free
+ Diskfree2Bytes *uint64 `protobuf:"varint,4,opt,name=diskfree2_bytes,json=diskfree2Bytes,proto3,oneof" json:"diskfree2_bytes,omitempty"`
+ // Tertiary disk space free
+ Diskfree3Bytes *uint64 `protobuf:"varint,5,opt,name=diskfree3_bytes,json=diskfree3Bytes,proto3,oneof" json:"diskfree3_bytes,omitempty"`
+ // Host system one minute load in 1/100ths
+ Load1 uint32 `protobuf:"varint,6,opt,name=load1,proto3" json:"load1,omitempty"`
+ // Host system five minute load in 1/100ths
+ Load5 uint32 `protobuf:"varint,7,opt,name=load5,proto3" json:"load5,omitempty"`
+ // Host system fifteen minute load in 1/100ths
+ Load15 uint32 `protobuf:"varint,8,opt,name=load15,proto3" json:"load15,omitempty"`
+ // Optional User-provided string for arbitrary host system information
+ // that doesn't make sense as a dedicated entry.
+ UserString *string `protobuf:"bytes,9,opt,name=user_string,json=userString,proto3,oneof" json:"user_string,omitempty"`
unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
- //
+func (x *HostMetrics) Reset() {
+ *x = HostMetrics{}
+ mi := &file_meshtastic_telemetry_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *HostMetrics) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HostMetrics) ProtoMessage() {}
+
+func (x *HostMetrics) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_telemetry_proto_msgTypes[6]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use HostMetrics.ProtoReflect.Descriptor instead.
+func (*HostMetrics) Descriptor() ([]byte, []int) {
+ return file_meshtastic_telemetry_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *HostMetrics) GetUptimeSeconds() uint32 {
+ if x != nil {
+ return x.UptimeSeconds
+ }
+ return 0
+}
+
+func (x *HostMetrics) GetFreememBytes() uint64 {
+ if x != nil {
+ return x.FreememBytes
+ }
+ return 0
+}
+
+func (x *HostMetrics) GetDiskfree1Bytes() uint64 {
+ if x != nil {
+ return x.Diskfree1Bytes
+ }
+ return 0
+}
+
+func (x *HostMetrics) GetDiskfree2Bytes() uint64 {
+ if x != nil && x.Diskfree2Bytes != nil {
+ return *x.Diskfree2Bytes
+ }
+ return 0
+}
+
+func (x *HostMetrics) GetDiskfree3Bytes() uint64 {
+ if x != nil && x.Diskfree3Bytes != nil {
+ return *x.Diskfree3Bytes
+ }
+ return 0
+}
+
+func (x *HostMetrics) GetLoad1() uint32 {
+ if x != nil {
+ return x.Load1
+ }
+ return 0
+}
+
+func (x *HostMetrics) GetLoad5() uint32 {
+ if x != nil {
+ return x.Load5
+ }
+ return 0
+}
+
+func (x *HostMetrics) GetLoad15() uint32 {
+ if x != nil {
+ return x.Load15
+ }
+ return 0
+}
+
+func (x *HostMetrics) GetUserString() string {
+ if x != nil && x.UserString != nil {
+ return *x.UserString
+ }
+ return ""
+}
+
+// Types of Measurements the telemetry module is equipped to handle
+type Telemetry struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
// Seconds since 1970 - or 0 for unknown/unset
Time uint32 `protobuf:"fixed32,1,opt,name=time,proto3" json:"time,omitempty"`
- // Types that are assignable to Variant:
+ // Types that are valid to be assigned to Variant:
//
// *Telemetry_DeviceMetrics
// *Telemetry_EnvironmentMetrics
// *Telemetry_AirQualityMetrics
// *Telemetry_PowerMetrics
- Variant isTelemetry_Variant `protobuf_oneof:"variant"`
+ // *Telemetry_LocalStats
+ // *Telemetry_HealthMetrics
+ // *Telemetry_HostMetrics
+ Variant isTelemetry_Variant `protobuf_oneof:"variant"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
}
func (x *Telemetry) Reset() {
*x = Telemetry{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_telemetry_proto_msgTypes[4]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_telemetry_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *Telemetry) String() string {
@@ -610,8 +1158,8 @@ func (x *Telemetry) String() string {
func (*Telemetry) ProtoMessage() {}
func (x *Telemetry) ProtoReflect() protoreflect.Message {
- mi := &file_meshtastic_telemetry_proto_msgTypes[4]
- if protoimpl.UnsafeEnabled && x != nil {
+ mi := &file_meshtastic_telemetry_proto_msgTypes[7]
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -623,7 +1171,7 @@ func (x *Telemetry) ProtoReflect() protoreflect.Message {
// Deprecated: Use Telemetry.ProtoReflect.Descriptor instead.
func (*Telemetry) Descriptor() ([]byte, []int) {
- return file_meshtastic_telemetry_proto_rawDescGZIP(), []int{4}
+ return file_meshtastic_telemetry_proto_rawDescGZIP(), []int{7}
}
func (x *Telemetry) GetTime() uint32 {
@@ -633,37 +1181,72 @@ func (x *Telemetry) GetTime() uint32 {
return 0
}
-func (m *Telemetry) GetVariant() isTelemetry_Variant {
- if m != nil {
- return m.Variant
+func (x *Telemetry) GetVariant() isTelemetry_Variant {
+ if x != nil {
+ return x.Variant
}
return nil
}
func (x *Telemetry) GetDeviceMetrics() *DeviceMetrics {
- if x, ok := x.GetVariant().(*Telemetry_DeviceMetrics); ok {
- return x.DeviceMetrics
+ if x != nil {
+ if x, ok := x.Variant.(*Telemetry_DeviceMetrics); ok {
+ return x.DeviceMetrics
+ }
}
return nil
}
func (x *Telemetry) GetEnvironmentMetrics() *EnvironmentMetrics {
- if x, ok := x.GetVariant().(*Telemetry_EnvironmentMetrics); ok {
- return x.EnvironmentMetrics
+ if x != nil {
+ if x, ok := x.Variant.(*Telemetry_EnvironmentMetrics); ok {
+ return x.EnvironmentMetrics
+ }
}
return nil
}
func (x *Telemetry) GetAirQualityMetrics() *AirQualityMetrics {
- if x, ok := x.GetVariant().(*Telemetry_AirQualityMetrics); ok {
- return x.AirQualityMetrics
+ if x != nil {
+ if x, ok := x.Variant.(*Telemetry_AirQualityMetrics); ok {
+ return x.AirQualityMetrics
+ }
}
return nil
}
func (x *Telemetry) GetPowerMetrics() *PowerMetrics {
- if x, ok := x.GetVariant().(*Telemetry_PowerMetrics); ok {
- return x.PowerMetrics
+ if x != nil {
+ if x, ok := x.Variant.(*Telemetry_PowerMetrics); ok {
+ return x.PowerMetrics
+ }
+ }
+ return nil
+}
+
+func (x *Telemetry) GetLocalStats() *LocalStats {
+ if x != nil {
+ if x, ok := x.Variant.(*Telemetry_LocalStats); ok {
+ return x.LocalStats
+ }
+ }
+ return nil
+}
+
+func (x *Telemetry) GetHealthMetrics() *HealthMetrics {
+ if x != nil {
+ if x, ok := x.Variant.(*Telemetry_HealthMetrics); ok {
+ return x.HealthMetrics
+ }
+ }
+ return nil
+}
+
+func (x *Telemetry) GetHostMetrics() *HostMetrics {
+ if x != nil {
+ if x, ok := x.Variant.(*Telemetry_HostMetrics); ok {
+ return x.HostMetrics
+ }
}
return nil
}
@@ -673,29 +1256,40 @@ type isTelemetry_Variant interface {
}
type Telemetry_DeviceMetrics struct {
- //
// Key native device metrics such as battery level
DeviceMetrics *DeviceMetrics `protobuf:"bytes,2,opt,name=device_metrics,json=deviceMetrics,proto3,oneof"`
}
type Telemetry_EnvironmentMetrics struct {
- //
// Weather station or other environmental metrics
EnvironmentMetrics *EnvironmentMetrics `protobuf:"bytes,3,opt,name=environment_metrics,json=environmentMetrics,proto3,oneof"`
}
type Telemetry_AirQualityMetrics struct {
- //
// Air quality metrics
AirQualityMetrics *AirQualityMetrics `protobuf:"bytes,4,opt,name=air_quality_metrics,json=airQualityMetrics,proto3,oneof"`
}
type Telemetry_PowerMetrics struct {
- //
// Power Metrics
PowerMetrics *PowerMetrics `protobuf:"bytes,5,opt,name=power_metrics,json=powerMetrics,proto3,oneof"`
}
+type Telemetry_LocalStats struct {
+ // Local device mesh statistics
+ LocalStats *LocalStats `protobuf:"bytes,6,opt,name=local_stats,json=localStats,proto3,oneof"`
+}
+
+type Telemetry_HealthMetrics struct {
+ // Health telemetry metrics
+ HealthMetrics *HealthMetrics `protobuf:"bytes,7,opt,name=health_metrics,json=healthMetrics,proto3,oneof"`
+}
+
+type Telemetry_HostMetrics struct {
+ // Linux host metrics
+ HostMetrics *HostMetrics `protobuf:"bytes,8,opt,name=host_metrics,json=hostMetrics,proto3,oneof"`
+}
+
func (*Telemetry_DeviceMetrics) isTelemetry_Variant() {}
func (*Telemetry_EnvironmentMetrics) isTelemetry_Variant() {}
@@ -704,158 +1298,336 @@ func (*Telemetry_AirQualityMetrics) isTelemetry_Variant() {}
func (*Telemetry_PowerMetrics) isTelemetry_Variant() {}
-var File_meshtastic_telemetry_proto protoreflect.FileDescriptor
+func (*Telemetry_LocalStats) isTelemetry_Variant() {}
+
+func (*Telemetry_HealthMetrics) isTelemetry_Variant() {}
+
+func (*Telemetry_HostMetrics) isTelemetry_Variant() {}
+
+// NAU7802 Telemetry configuration, for saving to flash
+type Nau7802Config struct {
+ state protoimpl.MessageState `protogen:"open.v1"`
+ // The offset setting for the NAU7802
+ ZeroOffset int32 `protobuf:"varint,1,opt,name=zeroOffset,proto3" json:"zeroOffset,omitempty"`
+ // The calibration factor for the NAU7802
+ CalibrationFactor float32 `protobuf:"fixed32,2,opt,name=calibrationFactor,proto3" json:"calibrationFactor,omitempty"`
+ unknownFields protoimpl.UnknownFields
+ sizeCache protoimpl.SizeCache
+}
+
+func (x *Nau7802Config) Reset() {
+ *x = Nau7802Config{}
+ mi := &file_meshtastic_telemetry_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+}
+
+func (x *Nau7802Config) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Nau7802Config) ProtoMessage() {}
+
+func (x *Nau7802Config) ProtoReflect() protoreflect.Message {
+ mi := &file_meshtastic_telemetry_proto_msgTypes[8]
+ if x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Nau7802Config.ProtoReflect.Descriptor instead.
+func (*Nau7802Config) Descriptor() ([]byte, []int) {
+ return file_meshtastic_telemetry_proto_rawDescGZIP(), []int{8}
+}
+
+func (x *Nau7802Config) GetZeroOffset() int32 {
+ if x != nil {
+ return x.ZeroOffset
+ }
+ return 0
+}
-var file_meshtastic_telemetry_proto_rawDesc = []byte{
- 0x0a, 0x1a, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x74, 0x65, 0x6c,
- 0x65, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0a, 0x6d, 0x65,
- 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x22, 0x9f, 0x01, 0x0a, 0x0d, 0x44, 0x65, 0x76,
- 0x69, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x62, 0x61,
- 0x74, 0x74, 0x65, 0x72, 0x79, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x0d, 0x52, 0x0c, 0x62, 0x61, 0x74, 0x74, 0x65, 0x72, 0x79, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12,
- 0x18, 0x0a, 0x07, 0x76, 0x6f, 0x6c, 0x74, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02,
- 0x52, 0x07, 0x76, 0x6f, 0x6c, 0x74, 0x61, 0x67, 0x65, 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x68, 0x61,
- 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x75, 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e,
- 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x12, 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x55,
- 0x74, 0x69, 0x6c, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x0b, 0x61, 0x69,
- 0x72, 0x5f, 0x75, 0x74, 0x69, 0x6c, 0x5f, 0x74, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52,
- 0x09, 0x61, 0x69, 0x72, 0x55, 0x74, 0x69, 0x6c, 0x54, 0x78, 0x22, 0xef, 0x01, 0x0a, 0x12, 0x45,
- 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63,
- 0x73, 0x12, 0x20, 0x0a, 0x0b, 0x74, 0x65, 0x6d, 0x70, 0x65, 0x72, 0x61, 0x74, 0x75, 0x72, 0x65,
- 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x74, 0x65, 0x6d, 0x70, 0x65, 0x72, 0x61, 0x74,
- 0x75, 0x72, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f,
- 0x68, 0x75, 0x6d, 0x69, 0x64, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x10,
- 0x72, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x76, 0x65, 0x48, 0x75, 0x6d, 0x69, 0x64, 0x69, 0x74, 0x79,
- 0x12, 0x2f, 0x0a, 0x13, 0x62, 0x61, 0x72, 0x6f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x5f, 0x70,
- 0x72, 0x65, 0x73, 0x73, 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x12, 0x62,
- 0x61, 0x72, 0x6f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x50, 0x72, 0x65, 0x73, 0x73, 0x75, 0x72,
- 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x67, 0x61, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x69, 0x73, 0x74, 0x61,
- 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x67, 0x61, 0x73, 0x52, 0x65,
- 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x6f, 0x6c, 0x74,
- 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x07, 0x76, 0x6f, 0x6c, 0x74, 0x61,
- 0x67, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20,
- 0x01, 0x28, 0x02, 0x52, 0x07, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x22, 0xd4, 0x01, 0x0a,
- 0x0c, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x1f, 0x0a,
- 0x0b, 0x63, 0x68, 0x31, 0x5f, 0x76, 0x6f, 0x6c, 0x74, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01,
- 0x28, 0x02, 0x52, 0x0a, 0x63, 0x68, 0x31, 0x56, 0x6f, 0x6c, 0x74, 0x61, 0x67, 0x65, 0x12, 0x1f,
- 0x0a, 0x0b, 0x63, 0x68, 0x31, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20,
- 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x68, 0x31, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x12,
- 0x1f, 0x0a, 0x0b, 0x63, 0x68, 0x32, 0x5f, 0x76, 0x6f, 0x6c, 0x74, 0x61, 0x67, 0x65, 0x18, 0x03,
- 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x68, 0x32, 0x56, 0x6f, 0x6c, 0x74, 0x61, 0x67, 0x65,
- 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x68, 0x32, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x18,
- 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x68, 0x32, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e,
- 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x68, 0x33, 0x5f, 0x76, 0x6f, 0x6c, 0x74, 0x61, 0x67, 0x65,
- 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x68, 0x33, 0x56, 0x6f, 0x6c, 0x74, 0x61,
- 0x67, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x68, 0x33, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e,
- 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x68, 0x33, 0x43, 0x75, 0x72, 0x72,
- 0x65, 0x6e, 0x74, 0x22, 0xff, 0x03, 0x0a, 0x11, 0x41, 0x69, 0x72, 0x51, 0x75, 0x61, 0x6c, 0x69,
- 0x74, 0x79, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x6d, 0x31,
- 0x30, 0x5f, 0x73, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d,
- 0x52, 0x0c, 0x70, 0x6d, 0x31, 0x30, 0x53, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x12, 0x23,
- 0x0a, 0x0d, 0x70, 0x6d, 0x32, 0x35, 0x5f, 0x73, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x18,
- 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x70, 0x6d, 0x32, 0x35, 0x53, 0x74, 0x61, 0x6e, 0x64,
- 0x61, 0x72, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x6d, 0x31, 0x30, 0x30, 0x5f, 0x73, 0x74, 0x61,
- 0x6e, 0x64, 0x61, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x6d, 0x31,
- 0x30, 0x30, 0x53, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x12, 0x2d, 0x0a, 0x12, 0x70, 0x6d,
- 0x31, 0x30, 0x5f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c,
- 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x70, 0x6d, 0x31, 0x30, 0x45, 0x6e, 0x76, 0x69,
- 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x12, 0x2d, 0x0a, 0x12, 0x70, 0x6d, 0x32,
- 0x35, 0x5f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x18,
- 0x05, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x70, 0x6d, 0x32, 0x35, 0x45, 0x6e, 0x76, 0x69, 0x72,
- 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x12, 0x2f, 0x0a, 0x13, 0x70, 0x6d, 0x31, 0x30,
- 0x30, 0x5f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x18,
- 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x12, 0x70, 0x6d, 0x31, 0x30, 0x30, 0x45, 0x6e, 0x76, 0x69,
- 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x61, 0x6c, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x61, 0x72,
- 0x74, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x5f, 0x30, 0x33, 0x75, 0x6d, 0x18, 0x07, 0x20, 0x01, 0x28,
- 0x0d, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x30, 0x33, 0x75, 0x6d,
- 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x5f, 0x30, 0x35,
- 0x75, 0x6d, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63,
- 0x6c, 0x65, 0x73, 0x30, 0x35, 0x75, 0x6d, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x61, 0x72, 0x74, 0x69,
- 0x63, 0x6c, 0x65, 0x73, 0x5f, 0x31, 0x30, 0x75, 0x6d, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52,
- 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x31, 0x30, 0x75, 0x6d, 0x12, 0x25,
- 0x0a, 0x0e, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x5f, 0x32, 0x35, 0x75, 0x6d,
- 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65,
- 0x73, 0x32, 0x35, 0x75, 0x6d, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c,
- 0x65, 0x73, 0x5f, 0x35, 0x30, 0x75, 0x6d, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x70,
- 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x35, 0x30, 0x75, 0x6d, 0x12, 0x27, 0x0a, 0x0f,
- 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x5f, 0x31, 0x30, 0x30, 0x75, 0x6d, 0x18,
- 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x73,
- 0x31, 0x30, 0x30, 0x75, 0x6d, 0x22, 0xd3, 0x02, 0x0a, 0x09, 0x54, 0x65, 0x6c, 0x65, 0x6d, 0x65,
- 0x74, 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x07, 0x52, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x42, 0x0a, 0x0e, 0x64, 0x65, 0x76, 0x69, 0x63,
- 0x65, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
- 0x19, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x44, 0x65, 0x76,
- 0x69, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x48, 0x00, 0x52, 0x0d, 0x64, 0x65,
- 0x76, 0x69, 0x63, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x51, 0x0a, 0x13, 0x65,
- 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69,
- 0x63, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74,
- 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e,
- 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x48, 0x00, 0x52, 0x12, 0x65, 0x6e, 0x76, 0x69,
- 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x4f,
- 0x0a, 0x13, 0x61, 0x69, 0x72, 0x5f, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x6d, 0x65,
- 0x74, 0x72, 0x69, 0x63, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6d, 0x65,
- 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x41, 0x69, 0x72, 0x51, 0x75, 0x61, 0x6c,
- 0x69, 0x74, 0x79, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x48, 0x00, 0x52, 0x11, 0x61, 0x69,
- 0x72, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12,
- 0x3f, 0x0a, 0x0d, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x5f, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73,
- 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73,
- 0x74, 0x69, 0x63, 0x2e, 0x50, 0x6f, 0x77, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73,
- 0x48, 0x00, 0x52, 0x0c, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73,
- 0x42, 0x09, 0x0a, 0x07, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x2a, 0xd4, 0x01, 0x0a, 0x13,
- 0x54, 0x65, 0x6c, 0x65, 0x6d, 0x65, 0x74, 0x72, 0x79, 0x53, 0x65, 0x6e, 0x73, 0x6f, 0x72, 0x54,
- 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x53, 0x45, 0x4e, 0x53, 0x4f, 0x52, 0x5f, 0x55, 0x4e,
- 0x53, 0x45, 0x54, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x42, 0x4d, 0x45, 0x32, 0x38, 0x30, 0x10,
- 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x42, 0x4d, 0x45, 0x36, 0x38, 0x30, 0x10, 0x02, 0x12, 0x0b, 0x0a,
- 0x07, 0x4d, 0x43, 0x50, 0x39, 0x38, 0x30, 0x38, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x49, 0x4e,
- 0x41, 0x32, 0x36, 0x30, 0x10, 0x04, 0x12, 0x0a, 0x0a, 0x06, 0x49, 0x4e, 0x41, 0x32, 0x31, 0x39,
- 0x10, 0x05, 0x12, 0x0a, 0x0a, 0x06, 0x42, 0x4d, 0x50, 0x32, 0x38, 0x30, 0x10, 0x06, 0x12, 0x09,
- 0x0a, 0x05, 0x53, 0x48, 0x54, 0x43, 0x33, 0x10, 0x07, 0x12, 0x09, 0x0a, 0x05, 0x4c, 0x50, 0x53,
- 0x32, 0x32, 0x10, 0x08, 0x12, 0x0b, 0x0a, 0x07, 0x51, 0x4d, 0x43, 0x36, 0x33, 0x31, 0x30, 0x10,
- 0x09, 0x12, 0x0b, 0x0a, 0x07, 0x51, 0x4d, 0x49, 0x38, 0x36, 0x35, 0x38, 0x10, 0x0a, 0x12, 0x0c,
- 0x0a, 0x08, 0x51, 0x4d, 0x43, 0x35, 0x38, 0x38, 0x33, 0x4c, 0x10, 0x0b, 0x12, 0x09, 0x0a, 0x05,
- 0x53, 0x48, 0x54, 0x33, 0x31, 0x10, 0x0c, 0x12, 0x0c, 0x0a, 0x08, 0x50, 0x4d, 0x53, 0x41, 0x30,
- 0x30, 0x33, 0x49, 0x10, 0x0d, 0x12, 0x0b, 0x0a, 0x07, 0x49, 0x4e, 0x41, 0x33, 0x32, 0x32, 0x31,
- 0x10, 0x0e, 0x42, 0x64, 0x0a, 0x13, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x65, 0x65, 0x6b, 0x73, 0x76,
- 0x69, 0x6c, 0x6c, 0x65, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x42, 0x0f, 0x54, 0x65, 0x6c, 0x65, 0x6d,
- 0x65, 0x74, 0x72, 0x79, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x5a, 0x22, 0x67, 0x69, 0x74, 0x68,
- 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69,
- 0x63, 0x2f, 0x67, 0x6f, 0x2f, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x64, 0xaa, 0x02,
- 0x14, 0x4d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x74,
- 0x6f, 0x62, 0x75, 0x66, 0x73, 0xba, 0x02, 0x00, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+func (x *Nau7802Config) GetCalibrationFactor() float32 {
+ if x != nil {
+ return x.CalibrationFactor
+ }
+ return 0
}
+var File_meshtastic_telemetry_proto protoreflect.FileDescriptor
+
+const file_meshtastic_telemetry_proto_rawDesc = "" +
+ "\n" +
+ "\x1ameshtastic/telemetry.proto\x12\n" +
+ "meshtastic\"\xb8\x02\n" +
+ "\rDeviceMetrics\x12(\n" +
+ "\rbattery_level\x18\x01 \x01(\rH\x00R\fbatteryLevel\x88\x01\x01\x12\x1d\n" +
+ "\avoltage\x18\x02 \x01(\x02H\x01R\avoltage\x88\x01\x01\x124\n" +
+ "\x13channel_utilization\x18\x03 \x01(\x02H\x02R\x12channelUtilization\x88\x01\x01\x12#\n" +
+ "\vair_util_tx\x18\x04 \x01(\x02H\x03R\tairUtilTx\x88\x01\x01\x12*\n" +
+ "\x0euptime_seconds\x18\x05 \x01(\rH\x04R\ruptimeSeconds\x88\x01\x01B\x10\n" +
+ "\x0e_battery_levelB\n" +
+ "\n" +
+ "\b_voltageB\x16\n" +
+ "\x14_channel_utilizationB\x0e\n" +
+ "\f_air_util_txB\x11\n" +
+ "\x0f_uptime_seconds\"\xfb\b\n" +
+ "\x12EnvironmentMetrics\x12%\n" +
+ "\vtemperature\x18\x01 \x01(\x02H\x00R\vtemperature\x88\x01\x01\x120\n" +
+ "\x11relative_humidity\x18\x02 \x01(\x02H\x01R\x10relativeHumidity\x88\x01\x01\x124\n" +
+ "\x13barometric_pressure\x18\x03 \x01(\x02H\x02R\x12barometricPressure\x88\x01\x01\x12*\n" +
+ "\x0egas_resistance\x18\x04 \x01(\x02H\x03R\rgasResistance\x88\x01\x01\x12\x1d\n" +
+ "\avoltage\x18\x05 \x01(\x02H\x04R\avoltage\x88\x01\x01\x12\x1d\n" +
+ "\acurrent\x18\x06 \x01(\x02H\x05R\acurrent\x88\x01\x01\x12\x15\n" +
+ "\x03iaq\x18\a \x01(\rH\x06R\x03iaq\x88\x01\x01\x12\x1f\n" +
+ "\bdistance\x18\b \x01(\x02H\aR\bdistance\x88\x01\x01\x12\x15\n" +
+ "\x03lux\x18\t \x01(\x02H\bR\x03lux\x88\x01\x01\x12 \n" +
+ "\twhite_lux\x18\n" +
+ " \x01(\x02H\tR\bwhiteLux\x88\x01\x01\x12\x1a\n" +
+ "\x06ir_lux\x18\v \x01(\x02H\n" +
+ "R\x05irLux\x88\x01\x01\x12\x1a\n" +
+ "\x06uv_lux\x18\f \x01(\x02H\vR\x05uvLux\x88\x01\x01\x12*\n" +
+ "\x0ewind_direction\x18\r \x01(\rH\fR\rwindDirection\x88\x01\x01\x12\"\n" +
+ "\n" +
+ "wind_speed\x18\x0e \x01(\x02H\rR\twindSpeed\x88\x01\x01\x12\x1b\n" +
+ "\x06weight\x18\x0f \x01(\x02H\x0eR\x06weight\x88\x01\x01\x12 \n" +
+ "\twind_gust\x18\x10 \x01(\x02H\x0fR\bwindGust\x88\x01\x01\x12 \n" +
+ "\twind_lull\x18\x11 \x01(\x02H\x10R\bwindLull\x88\x01\x01\x12!\n" +
+ "\tradiation\x18\x12 \x01(\x02H\x11R\tradiation\x88\x01\x01\x12$\n" +
+ "\vrainfall_1h\x18\x13 \x01(\x02H\x12R\n" +
+ "rainfall1h\x88\x01\x01\x12&\n" +
+ "\frainfall_24h\x18\x14 \x01(\x02H\x13R\vrainfall24h\x88\x01\x01\x12(\n" +
+ "\rsoil_moisture\x18\x15 \x01(\rH\x14R\fsoilMoisture\x88\x01\x01\x12.\n" +
+ "\x10soil_temperature\x18\x16 \x01(\x02H\x15R\x0fsoilTemperature\x88\x01\x01B\x0e\n" +
+ "\f_temperatureB\x14\n" +
+ "\x12_relative_humidityB\x16\n" +
+ "\x14_barometric_pressureB\x11\n" +
+ "\x0f_gas_resistanceB\n" +
+ "\n" +
+ "\b_voltageB\n" +
+ "\n" +
+ "\b_currentB\x06\n" +
+ "\x04_iaqB\v\n" +
+ "\t_distanceB\x06\n" +
+ "\x04_luxB\f\n" +
+ "\n" +
+ "_white_luxB\t\n" +
+ "\a_ir_luxB\t\n" +
+ "\a_uv_luxB\x11\n" +
+ "\x0f_wind_directionB\r\n" +
+ "\v_wind_speedB\t\n" +
+ "\a_weightB\f\n" +
+ "\n" +
+ "_wind_gustB\f\n" +
+ "\n" +
+ "_wind_lullB\f\n" +
+ "\n" +
+ "_radiationB\x0e\n" +
+ "\f_rainfall_1hB\x0f\n" +
+ "\r_rainfall_24hB\x10\n" +
+ "\x0e_soil_moistureB\x13\n" +
+ "\x11_soil_temperature\"\xd2\x02\n" +
+ "\fPowerMetrics\x12$\n" +
+ "\vch1_voltage\x18\x01 \x01(\x02H\x00R\n" +
+ "ch1Voltage\x88\x01\x01\x12$\n" +
+ "\vch1_current\x18\x02 \x01(\x02H\x01R\n" +
+ "ch1Current\x88\x01\x01\x12$\n" +
+ "\vch2_voltage\x18\x03 \x01(\x02H\x02R\n" +
+ "ch2Voltage\x88\x01\x01\x12$\n" +
+ "\vch2_current\x18\x04 \x01(\x02H\x03R\n" +
+ "ch2Current\x88\x01\x01\x12$\n" +
+ "\vch3_voltage\x18\x05 \x01(\x02H\x04R\n" +
+ "ch3Voltage\x88\x01\x01\x12$\n" +
+ "\vch3_current\x18\x06 \x01(\x02H\x05R\n" +
+ "ch3Current\x88\x01\x01B\x0e\n" +
+ "\f_ch1_voltageB\x0e\n" +
+ "\f_ch1_currentB\x0e\n" +
+ "\f_ch2_voltageB\x0e\n" +
+ "\f_ch2_currentB\x0e\n" +
+ "\f_ch3_voltageB\x0e\n" +
+ "\f_ch3_current\"\xca\x06\n" +
+ "\x11AirQualityMetrics\x12(\n" +
+ "\rpm10_standard\x18\x01 \x01(\rH\x00R\fpm10Standard\x88\x01\x01\x12(\n" +
+ "\rpm25_standard\x18\x02 \x01(\rH\x01R\fpm25Standard\x88\x01\x01\x12*\n" +
+ "\x0epm100_standard\x18\x03 \x01(\rH\x02R\rpm100Standard\x88\x01\x01\x122\n" +
+ "\x12pm10_environmental\x18\x04 \x01(\rH\x03R\x11pm10Environmental\x88\x01\x01\x122\n" +
+ "\x12pm25_environmental\x18\x05 \x01(\rH\x04R\x11pm25Environmental\x88\x01\x01\x124\n" +
+ "\x13pm100_environmental\x18\x06 \x01(\rH\x05R\x12pm100Environmental\x88\x01\x01\x12*\n" +
+ "\x0eparticles_03um\x18\a \x01(\rH\x06R\rparticles03um\x88\x01\x01\x12*\n" +
+ "\x0eparticles_05um\x18\b \x01(\rH\aR\rparticles05um\x88\x01\x01\x12*\n" +
+ "\x0eparticles_10um\x18\t \x01(\rH\bR\rparticles10um\x88\x01\x01\x12*\n" +
+ "\x0eparticles_25um\x18\n" +
+ " \x01(\rH\tR\rparticles25um\x88\x01\x01\x12*\n" +
+ "\x0eparticles_50um\x18\v \x01(\rH\n" +
+ "R\rparticles50um\x88\x01\x01\x12,\n" +
+ "\x0fparticles_100um\x18\f \x01(\rH\vR\x0eparticles100um\x88\x01\x01\x12\x15\n" +
+ "\x03co2\x18\r \x01(\rH\fR\x03co2\x88\x01\x01B\x10\n" +
+ "\x0e_pm10_standardB\x10\n" +
+ "\x0e_pm25_standardB\x11\n" +
+ "\x0f_pm100_standardB\x15\n" +
+ "\x13_pm10_environmentalB\x15\n" +
+ "\x13_pm25_environmentalB\x16\n" +
+ "\x14_pm100_environmentalB\x11\n" +
+ "\x0f_particles_03umB\x11\n" +
+ "\x0f_particles_05umB\x11\n" +
+ "\x0f_particles_10umB\x11\n" +
+ "\x0f_particles_25umB\x11\n" +
+ "\x0f_particles_50umB\x12\n" +
+ "\x10_particles_100umB\x06\n" +
+ "\x04_co2\"\x96\x04\n" +
+ "\n" +
+ "LocalStats\x12%\n" +
+ "\x0euptime_seconds\x18\x01 \x01(\rR\ruptimeSeconds\x12/\n" +
+ "\x13channel_utilization\x18\x02 \x01(\x02R\x12channelUtilization\x12\x1e\n" +
+ "\vair_util_tx\x18\x03 \x01(\x02R\tairUtilTx\x12$\n" +
+ "\x0enum_packets_tx\x18\x04 \x01(\rR\fnumPacketsTx\x12$\n" +
+ "\x0enum_packets_rx\x18\x05 \x01(\rR\fnumPacketsRx\x12+\n" +
+ "\x12num_packets_rx_bad\x18\x06 \x01(\rR\x0fnumPacketsRxBad\x12(\n" +
+ "\x10num_online_nodes\x18\a \x01(\rR\x0enumOnlineNodes\x12&\n" +
+ "\x0fnum_total_nodes\x18\b \x01(\rR\rnumTotalNodes\x12\x1e\n" +
+ "\vnum_rx_dupe\x18\t \x01(\rR\tnumRxDupe\x12 \n" +
+ "\fnum_tx_relay\x18\n" +
+ " \x01(\rR\n" +
+ "numTxRelay\x121\n" +
+ "\x15num_tx_relay_canceled\x18\v \x01(\rR\x12numTxRelayCanceled\x12(\n" +
+ "\x10heap_total_bytes\x18\f \x01(\rR\x0eheapTotalBytes\x12&\n" +
+ "\x0fheap_free_bytes\x18\r \x01(\rR\rheapFreeBytes\"\x98\x01\n" +
+ "\rHealthMetrics\x12 \n" +
+ "\theart_bpm\x18\x01 \x01(\rH\x00R\bheartBpm\x88\x01\x01\x12\x17\n" +
+ "\x04spO2\x18\x02 \x01(\rH\x01R\x04spO2\x88\x01\x01\x12%\n" +
+ "\vtemperature\x18\x03 \x01(\x02H\x02R\vtemperature\x88\x01\x01B\f\n" +
+ "\n" +
+ "_heart_bpmB\a\n" +
+ "\x05_spO2B\x0e\n" +
+ "\f_temperature\"\x80\x03\n" +
+ "\vHostMetrics\x12%\n" +
+ "\x0euptime_seconds\x18\x01 \x01(\rR\ruptimeSeconds\x12#\n" +
+ "\rfreemem_bytes\x18\x02 \x01(\x04R\ffreememBytes\x12'\n" +
+ "\x0fdiskfree1_bytes\x18\x03 \x01(\x04R\x0ediskfree1Bytes\x12,\n" +
+ "\x0fdiskfree2_bytes\x18\x04 \x01(\x04H\x00R\x0ediskfree2Bytes\x88\x01\x01\x12,\n" +
+ "\x0fdiskfree3_bytes\x18\x05 \x01(\x04H\x01R\x0ediskfree3Bytes\x88\x01\x01\x12\x14\n" +
+ "\x05load1\x18\x06 \x01(\rR\x05load1\x12\x14\n" +
+ "\x05load5\x18\a \x01(\rR\x05load5\x12\x16\n" +
+ "\x06load15\x18\b \x01(\rR\x06load15\x12$\n" +
+ "\vuser_string\x18\t \x01(\tH\x02R\n" +
+ "userString\x88\x01\x01B\x12\n" +
+ "\x10_diskfree2_bytesB\x12\n" +
+ "\x10_diskfree3_bytesB\x0e\n" +
+ "\f_user_string\"\x90\x04\n" +
+ "\tTelemetry\x12\x12\n" +
+ "\x04time\x18\x01 \x01(\aR\x04time\x12B\n" +
+ "\x0edevice_metrics\x18\x02 \x01(\v2\x19.meshtastic.DeviceMetricsH\x00R\rdeviceMetrics\x12Q\n" +
+ "\x13environment_metrics\x18\x03 \x01(\v2\x1e.meshtastic.EnvironmentMetricsH\x00R\x12environmentMetrics\x12O\n" +
+ "\x13air_quality_metrics\x18\x04 \x01(\v2\x1d.meshtastic.AirQualityMetricsH\x00R\x11airQualityMetrics\x12?\n" +
+ "\rpower_metrics\x18\x05 \x01(\v2\x18.meshtastic.PowerMetricsH\x00R\fpowerMetrics\x129\n" +
+ "\vlocal_stats\x18\x06 \x01(\v2\x16.meshtastic.LocalStatsH\x00R\n" +
+ "localStats\x12B\n" +
+ "\x0ehealth_metrics\x18\a \x01(\v2\x19.meshtastic.HealthMetricsH\x00R\rhealthMetrics\x12<\n" +
+ "\fhost_metrics\x18\b \x01(\v2\x17.meshtastic.HostMetricsH\x00R\vhostMetricsB\t\n" +
+ "\avariant\"]\n" +
+ "\rNau7802Config\x12\x1e\n" +
+ "\n" +
+ "zeroOffset\x18\x01 \x01(\x05R\n" +
+ "zeroOffset\x12,\n" +
+ "\x11calibrationFactor\x18\x02 \x01(\x02R\x11calibrationFactor*\xac\x04\n" +
+ "\x13TelemetrySensorType\x12\x10\n" +
+ "\fSENSOR_UNSET\x10\x00\x12\n" +
+ "\n" +
+ "\x06BME280\x10\x01\x12\n" +
+ "\n" +
+ "\x06BME680\x10\x02\x12\v\n" +
+ "\aMCP9808\x10\x03\x12\n" +
+ "\n" +
+ "\x06INA260\x10\x04\x12\n" +
+ "\n" +
+ "\x06INA219\x10\x05\x12\n" +
+ "\n" +
+ "\x06BMP280\x10\x06\x12\t\n" +
+ "\x05SHTC3\x10\a\x12\t\n" +
+ "\x05LPS22\x10\b\x12\v\n" +
+ "\aQMC6310\x10\t\x12\v\n" +
+ "\aQMI8658\x10\n" +
+ "\x12\f\n" +
+ "\bQMC5883L\x10\v\x12\t\n" +
+ "\x05SHT31\x10\f\x12\f\n" +
+ "\bPMSA003I\x10\r\x12\v\n" +
+ "\aINA3221\x10\x0e\x12\n" +
+ "\n" +
+ "\x06BMP085\x10\x0f\x12\f\n" +
+ "\bRCWL9620\x10\x10\x12\t\n" +
+ "\x05SHT4X\x10\x11\x12\f\n" +
+ "\bVEML7700\x10\x12\x12\f\n" +
+ "\bMLX90632\x10\x13\x12\v\n" +
+ "\aOPT3001\x10\x14\x12\f\n" +
+ "\bLTR390UV\x10\x15\x12\x0e\n" +
+ "\n" +
+ "TSL25911FN\x10\x16\x12\t\n" +
+ "\x05AHT10\x10\x17\x12\x10\n" +
+ "\fDFROBOT_LARK\x10\x18\x12\v\n" +
+ "\aNAU7802\x10\x19\x12\n" +
+ "\n" +
+ "\x06BMP3XX\x10\x1a\x12\f\n" +
+ "\bICM20948\x10\x1b\x12\f\n" +
+ "\bMAX17048\x10\x1c\x12\x11\n" +
+ "\rCUSTOM_SENSOR\x10\x1d\x12\f\n" +
+ "\bMAX30102\x10\x1e\x12\f\n" +
+ "\bMLX90614\x10\x1f\x12\t\n" +
+ "\x05SCD4X\x10 \x12\v\n" +
+ "\aRADSENS\x10!\x12\n" +
+ "\n" +
+ "\x06INA226\x10\"\x12\x10\n" +
+ "\fDFROBOT_RAIN\x10#\x12\n" +
+ "\n" +
+ "\x06DPS310\x10$\x12\f\n" +
+ "\bRAK12035\x10%\x12\f\n" +
+ "\bMAX17261\x10&\x12\v\n" +
+ "\aPCT2075\x10'Bd\n" +
+ "\x13com.geeksville.meshB\x0fTelemetryProtosZ\"github.com/meshtastic/go/generated\xaa\x02\x14Meshtastic.Protobufs\xba\x02\x00b\x06proto3"
+
var (
file_meshtastic_telemetry_proto_rawDescOnce sync.Once
- file_meshtastic_telemetry_proto_rawDescData = file_meshtastic_telemetry_proto_rawDesc
+ file_meshtastic_telemetry_proto_rawDescData []byte
)
func file_meshtastic_telemetry_proto_rawDescGZIP() []byte {
file_meshtastic_telemetry_proto_rawDescOnce.Do(func() {
- file_meshtastic_telemetry_proto_rawDescData = protoimpl.X.CompressGZIP(file_meshtastic_telemetry_proto_rawDescData)
+ file_meshtastic_telemetry_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_meshtastic_telemetry_proto_rawDesc), len(file_meshtastic_telemetry_proto_rawDesc)))
})
return file_meshtastic_telemetry_proto_rawDescData
}
var file_meshtastic_telemetry_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
-var file_meshtastic_telemetry_proto_msgTypes = make([]protoimpl.MessageInfo, 5)
-var file_meshtastic_telemetry_proto_goTypes = []interface{}{
+var file_meshtastic_telemetry_proto_msgTypes = make([]protoimpl.MessageInfo, 9)
+var file_meshtastic_telemetry_proto_goTypes = []any{
(TelemetrySensorType)(0), // 0: meshtastic.TelemetrySensorType
(*DeviceMetrics)(nil), // 1: meshtastic.DeviceMetrics
(*EnvironmentMetrics)(nil), // 2: meshtastic.EnvironmentMetrics
(*PowerMetrics)(nil), // 3: meshtastic.PowerMetrics
(*AirQualityMetrics)(nil), // 4: meshtastic.AirQualityMetrics
- (*Telemetry)(nil), // 5: meshtastic.Telemetry
+ (*LocalStats)(nil), // 5: meshtastic.LocalStats
+ (*HealthMetrics)(nil), // 6: meshtastic.HealthMetrics
+ (*HostMetrics)(nil), // 7: meshtastic.HostMetrics
+ (*Telemetry)(nil), // 8: meshtastic.Telemetry
+ (*Nau7802Config)(nil), // 9: meshtastic.Nau7802Config
}
var file_meshtastic_telemetry_proto_depIdxs = []int32{
1, // 0: meshtastic.Telemetry.device_metrics:type_name -> meshtastic.DeviceMetrics
2, // 1: meshtastic.Telemetry.environment_metrics:type_name -> meshtastic.EnvironmentMetrics
4, // 2: meshtastic.Telemetry.air_quality_metrics:type_name -> meshtastic.AirQualityMetrics
3, // 3: meshtastic.Telemetry.power_metrics:type_name -> meshtastic.PowerMetrics
- 4, // [4:4] is the sub-list for method output_type
- 4, // [4:4] is the sub-list for method input_type
- 4, // [4:4] is the sub-list for extension type_name
- 4, // [4:4] is the sub-list for extension extendee
- 0, // [0:4] is the sub-list for field type_name
+ 5, // 4: meshtastic.Telemetry.local_stats:type_name -> meshtastic.LocalStats
+ 6, // 5: meshtastic.Telemetry.health_metrics:type_name -> meshtastic.HealthMetrics
+ 7, // 6: meshtastic.Telemetry.host_metrics:type_name -> meshtastic.HostMetrics
+ 7, // [7:7] is the sub-list for method output_type
+ 7, // [7:7] is the sub-list for method input_type
+ 7, // [7:7] is the sub-list for extension type_name
+ 7, // [7:7] is the sub-list for extension extendee
+ 0, // [0:7] is the sub-list for field type_name
}
func init() { file_meshtastic_telemetry_proto_init() }
@@ -863,81 +1635,28 @@ func file_meshtastic_telemetry_proto_init() {
if File_meshtastic_telemetry_proto != nil {
return
}
- if !protoimpl.UnsafeEnabled {
- file_meshtastic_telemetry_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*DeviceMetrics); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_telemetry_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*EnvironmentMetrics); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_telemetry_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*PowerMetrics); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_telemetry_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*AirQualityMetrics); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- file_meshtastic_telemetry_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*Telemetry); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- }
- file_meshtastic_telemetry_proto_msgTypes[4].OneofWrappers = []interface{}{
+ file_meshtastic_telemetry_proto_msgTypes[0].OneofWrappers = []any{}
+ file_meshtastic_telemetry_proto_msgTypes[1].OneofWrappers = []any{}
+ file_meshtastic_telemetry_proto_msgTypes[2].OneofWrappers = []any{}
+ file_meshtastic_telemetry_proto_msgTypes[3].OneofWrappers = []any{}
+ file_meshtastic_telemetry_proto_msgTypes[5].OneofWrappers = []any{}
+ file_meshtastic_telemetry_proto_msgTypes[6].OneofWrappers = []any{}
+ file_meshtastic_telemetry_proto_msgTypes[7].OneofWrappers = []any{
(*Telemetry_DeviceMetrics)(nil),
(*Telemetry_EnvironmentMetrics)(nil),
(*Telemetry_AirQualityMetrics)(nil),
(*Telemetry_PowerMetrics)(nil),
+ (*Telemetry_LocalStats)(nil),
+ (*Telemetry_HealthMetrics)(nil),
+ (*Telemetry_HostMetrics)(nil),
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
- RawDescriptor: file_meshtastic_telemetry_proto_rawDesc,
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_meshtastic_telemetry_proto_rawDesc), len(file_meshtastic_telemetry_proto_rawDesc)),
NumEnums: 1,
- NumMessages: 5,
+ NumMessages: 9,
NumExtensions: 0,
NumServices: 0,
},
@@ -947,7 +1666,6 @@ func file_meshtastic_telemetry_proto_init() {
MessageInfos: file_meshtastic_telemetry_proto_msgTypes,
}.Build()
File_meshtastic_telemetry_proto = out.File
- file_meshtastic_telemetry_proto_rawDesc = nil
file_meshtastic_telemetry_proto_goTypes = nil
file_meshtastic_telemetry_proto_depIdxs = nil
}
diff --git a/meshtastic/telemetry_vtproto.pb.go b/meshtastic/telemetry_vtproto.pb.go
index 1586062..cfdfcc5 100644
--- a/meshtastic/telemetry_vtproto.pb.go
+++ b/meshtastic/telemetry_vtproto.pb.go
@@ -50,26 +50,31 @@ func (m *DeviceMetrics) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
- if m.AirUtilTx != 0 {
+ if m.UptimeSeconds != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.UptimeSeconds))
+ i--
+ dAtA[i] = 0x28
+ }
+ if m.AirUtilTx != nil {
i -= 4
- binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.AirUtilTx))))
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.AirUtilTx))))
i--
dAtA[i] = 0x25
}
- if m.ChannelUtilization != 0 {
+ if m.ChannelUtilization != nil {
i -= 4
- binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.ChannelUtilization))))
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.ChannelUtilization))))
i--
dAtA[i] = 0x1d
}
- if m.Voltage != 0 {
+ if m.Voltage != nil {
i -= 4
- binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.Voltage))))
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.Voltage))))
i--
dAtA[i] = 0x15
}
- if m.BatteryLevel != 0 {
- i = protohelpers.EncodeVarint(dAtA, i, uint64(m.BatteryLevel))
+ if m.BatteryLevel != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.BatteryLevel))
i--
dAtA[i] = 0x8
}
@@ -106,39 +111,146 @@ func (m *EnvironmentMetrics) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
- if m.Current != 0 {
+ if m.SoilTemperature != nil {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.SoilTemperature))))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0xb5
+ }
+ if m.SoilMoisture != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.SoilMoisture))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0xa8
+ }
+ if m.Rainfall_24H != nil {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.Rainfall_24H))))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0xa5
+ }
+ if m.Rainfall_1H != nil {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.Rainfall_1H))))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0x9d
+ }
+ if m.Radiation != nil {
i -= 4
- binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.Current))))
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.Radiation))))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0x95
+ }
+ if m.WindLull != nil {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.WindLull))))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0x8d
+ }
+ if m.WindGust != nil {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.WindGust))))
+ i--
+ dAtA[i] = 0x1
+ i--
+ dAtA[i] = 0x85
+ }
+ if m.Weight != nil {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.Weight))))
+ i--
+ dAtA[i] = 0x7d
+ }
+ if m.WindSpeed != nil {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.WindSpeed))))
+ i--
+ dAtA[i] = 0x75
+ }
+ if m.WindDirection != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.WindDirection))
+ i--
+ dAtA[i] = 0x68
+ }
+ if m.UvLux != nil {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.UvLux))))
+ i--
+ dAtA[i] = 0x65
+ }
+ if m.IrLux != nil {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.IrLux))))
+ i--
+ dAtA[i] = 0x5d
+ }
+ if m.WhiteLux != nil {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.WhiteLux))))
+ i--
+ dAtA[i] = 0x55
+ }
+ if m.Lux != nil {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.Lux))))
+ i--
+ dAtA[i] = 0x4d
+ }
+ if m.Distance != nil {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.Distance))))
+ i--
+ dAtA[i] = 0x45
+ }
+ if m.Iaq != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.Iaq))
+ i--
+ dAtA[i] = 0x38
+ }
+ if m.Current != nil {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.Current))))
i--
dAtA[i] = 0x35
}
- if m.Voltage != 0 {
+ if m.Voltage != nil {
i -= 4
- binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.Voltage))))
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.Voltage))))
i--
dAtA[i] = 0x2d
}
- if m.GasResistance != 0 {
+ if m.GasResistance != nil {
i -= 4
- binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.GasResistance))))
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.GasResistance))))
i--
dAtA[i] = 0x25
}
- if m.BarometricPressure != 0 {
+ if m.BarometricPressure != nil {
i -= 4
- binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.BarometricPressure))))
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.BarometricPressure))))
i--
dAtA[i] = 0x1d
}
- if m.RelativeHumidity != 0 {
+ if m.RelativeHumidity != nil {
i -= 4
- binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.RelativeHumidity))))
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.RelativeHumidity))))
i--
dAtA[i] = 0x15
}
- if m.Temperature != 0 {
+ if m.Temperature != nil {
i -= 4
- binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.Temperature))))
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.Temperature))))
i--
dAtA[i] = 0xd
}
@@ -175,39 +287,39 @@ func (m *PowerMetrics) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
- if m.Ch3Current != 0 {
+ if m.Ch3Current != nil {
i -= 4
- binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.Ch3Current))))
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.Ch3Current))))
i--
dAtA[i] = 0x35
}
- if m.Ch3Voltage != 0 {
+ if m.Ch3Voltage != nil {
i -= 4
- binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.Ch3Voltage))))
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.Ch3Voltage))))
i--
dAtA[i] = 0x2d
}
- if m.Ch2Current != 0 {
+ if m.Ch2Current != nil {
i -= 4
- binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.Ch2Current))))
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.Ch2Current))))
i--
dAtA[i] = 0x25
}
- if m.Ch2Voltage != 0 {
+ if m.Ch2Voltage != nil {
i -= 4
- binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.Ch2Voltage))))
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.Ch2Voltage))))
i--
dAtA[i] = 0x1d
}
- if m.Ch1Current != 0 {
+ if m.Ch1Current != nil {
i -= 4
- binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.Ch1Current))))
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.Ch1Current))))
i--
dAtA[i] = 0x15
}
- if m.Ch1Voltage != 0 {
+ if m.Ch1Voltage != nil {
i -= 4
- binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.Ch1Voltage))))
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.Ch1Voltage))))
i--
dAtA[i] = 0xd
}
@@ -244,63 +356,297 @@ func (m *AirQualityMetrics) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
i -= len(m.unknownFields)
copy(dAtA[i:], m.unknownFields)
}
- if m.Particles_100Um != 0 {
- i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Particles_100Um))
+ if m.Co2 != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.Co2))
+ i--
+ dAtA[i] = 0x68
+ }
+ if m.Particles_100Um != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.Particles_100Um))
+ i--
+ dAtA[i] = 0x60
+ }
+ if m.Particles_50Um != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.Particles_50Um))
+ i--
+ dAtA[i] = 0x58
+ }
+ if m.Particles_25Um != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.Particles_25Um))
+ i--
+ dAtA[i] = 0x50
+ }
+ if m.Particles_10Um != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.Particles_10Um))
+ i--
+ dAtA[i] = 0x48
+ }
+ if m.Particles_05Um != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.Particles_05Um))
+ i--
+ dAtA[i] = 0x40
+ }
+ if m.Particles_03Um != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.Particles_03Um))
+ i--
+ dAtA[i] = 0x38
+ }
+ if m.Pm100Environmental != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.Pm100Environmental))
+ i--
+ dAtA[i] = 0x30
+ }
+ if m.Pm25Environmental != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.Pm25Environmental))
+ i--
+ dAtA[i] = 0x28
+ }
+ if m.Pm10Environmental != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.Pm10Environmental))
+ i--
+ dAtA[i] = 0x20
+ }
+ if m.Pm100Standard != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.Pm100Standard))
+ i--
+ dAtA[i] = 0x18
+ }
+ if m.Pm25Standard != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.Pm25Standard))
+ i--
+ dAtA[i] = 0x10
+ }
+ if m.Pm10Standard != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.Pm10Standard))
+ i--
+ dAtA[i] = 0x8
+ }
+ return len(dAtA) - i, nil
+}
+
+func (m *LocalStats) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *LocalStats) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *LocalStats) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if m.HeapFreeBytes != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.HeapFreeBytes))
+ i--
+ dAtA[i] = 0x68
+ }
+ if m.HeapTotalBytes != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.HeapTotalBytes))
i--
dAtA[i] = 0x60
}
- if m.Particles_50Um != 0 {
- i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Particles_50Um))
+ if m.NumTxRelayCanceled != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.NumTxRelayCanceled))
i--
dAtA[i] = 0x58
}
- if m.Particles_25Um != 0 {
- i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Particles_25Um))
+ if m.NumTxRelay != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.NumTxRelay))
i--
dAtA[i] = 0x50
}
- if m.Particles_10Um != 0 {
- i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Particles_10Um))
+ if m.NumRxDupe != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.NumRxDupe))
i--
dAtA[i] = 0x48
}
- if m.Particles_05Um != 0 {
- i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Particles_05Um))
+ if m.NumTotalNodes != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.NumTotalNodes))
+ i--
+ dAtA[i] = 0x40
+ }
+ if m.NumOnlineNodes != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.NumOnlineNodes))
+ i--
+ dAtA[i] = 0x38
+ }
+ if m.NumPacketsRxBad != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.NumPacketsRxBad))
+ i--
+ dAtA[i] = 0x30
+ }
+ if m.NumPacketsRx != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.NumPacketsRx))
+ i--
+ dAtA[i] = 0x28
+ }
+ if m.NumPacketsTx != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.NumPacketsTx))
+ i--
+ dAtA[i] = 0x20
+ }
+ if m.AirUtilTx != 0 {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.AirUtilTx))))
+ i--
+ dAtA[i] = 0x1d
+ }
+ if m.ChannelUtilization != 0 {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.ChannelUtilization))))
+ i--
+ dAtA[i] = 0x15
+ }
+ if m.UptimeSeconds != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.UptimeSeconds))
+ i--
+ dAtA[i] = 0x8
+ }
+ return len(dAtA) - i, nil
+}
+
+func (m *HealthMetrics) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *HealthMetrics) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *HealthMetrics) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if m.Temperature != nil {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(*m.Temperature))))
+ i--
+ dAtA[i] = 0x1d
+ }
+ if m.SpO2 != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.SpO2))
+ i--
+ dAtA[i] = 0x10
+ }
+ if m.HeartBpm != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.HeartBpm))
+ i--
+ dAtA[i] = 0x8
+ }
+ return len(dAtA) - i, nil
+}
+
+func (m *HostMetrics) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *HostMetrics) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *HostMetrics) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if m.UserString != nil {
+ i -= len(*m.UserString)
+ copy(dAtA[i:], *m.UserString)
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(len(*m.UserString)))
+ i--
+ dAtA[i] = 0x4a
+ }
+ if m.Load15 != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Load15))
i--
dAtA[i] = 0x40
}
- if m.Particles_03Um != 0 {
- i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Particles_03Um))
+ if m.Load5 != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Load5))
i--
dAtA[i] = 0x38
}
- if m.Pm100Environmental != 0 {
- i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Pm100Environmental))
+ if m.Load1 != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Load1))
i--
dAtA[i] = 0x30
}
- if m.Pm25Environmental != 0 {
- i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Pm25Environmental))
+ if m.Diskfree3Bytes != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.Diskfree3Bytes))
i--
dAtA[i] = 0x28
}
- if m.Pm10Environmental != 0 {
- i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Pm10Environmental))
+ if m.Diskfree2Bytes != nil {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(*m.Diskfree2Bytes))
i--
dAtA[i] = 0x20
}
- if m.Pm100Standard != 0 {
- i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Pm100Standard))
+ if m.Diskfree1Bytes != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Diskfree1Bytes))
i--
dAtA[i] = 0x18
}
- if m.Pm25Standard != 0 {
- i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Pm25Standard))
+ if m.FreememBytes != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.FreememBytes))
i--
dAtA[i] = 0x10
}
- if m.Pm10Standard != 0 {
- i = protohelpers.EncodeVarint(dAtA, i, uint64(m.Pm10Standard))
+ if m.UptimeSeconds != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.UptimeSeconds))
i--
dAtA[i] = 0x8
}
@@ -431,24 +777,128 @@ func (m *Telemetry_PowerMetrics) MarshalToSizedBufferVT(dAtA []byte) (int, error
}
return len(dAtA) - i, nil
}
+func (m *Telemetry_LocalStats) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *Telemetry_LocalStats) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ if m.LocalStats != nil {
+ size, err := m.LocalStats.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x32
+ }
+ return len(dAtA) - i, nil
+}
+func (m *Telemetry_HealthMetrics) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *Telemetry_HealthMetrics) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ if m.HealthMetrics != nil {
+ size, err := m.HealthMetrics.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x3a
+ }
+ return len(dAtA) - i, nil
+}
+func (m *Telemetry_HostMetrics) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *Telemetry_HostMetrics) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ i := len(dAtA)
+ if m.HostMetrics != nil {
+ size, err := m.HostMetrics.MarshalToSizedBufferVT(dAtA[:i])
+ if err != nil {
+ return 0, err
+ }
+ i -= size
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(size))
+ i--
+ dAtA[i] = 0x42
+ }
+ return len(dAtA) - i, nil
+}
+func (m *Nau7802Config) MarshalVT() (dAtA []byte, err error) {
+ if m == nil {
+ return nil, nil
+ }
+ size := m.SizeVT()
+ dAtA = make([]byte, size)
+ n, err := m.MarshalToSizedBufferVT(dAtA[:size])
+ if err != nil {
+ return nil, err
+ }
+ return dAtA[:n], nil
+}
+
+func (m *Nau7802Config) MarshalToVT(dAtA []byte) (int, error) {
+ size := m.SizeVT()
+ return m.MarshalToSizedBufferVT(dAtA[:size])
+}
+
+func (m *Nau7802Config) MarshalToSizedBufferVT(dAtA []byte) (int, error) {
+ if m == nil {
+ return 0, nil
+ }
+ i := len(dAtA)
+ _ = i
+ var l int
+ _ = l
+ if m.unknownFields != nil {
+ i -= len(m.unknownFields)
+ copy(dAtA[i:], m.unknownFields)
+ }
+ if m.CalibrationFactor != 0 {
+ i -= 4
+ binary.LittleEndian.PutUint32(dAtA[i:], uint32(math.Float32bits(float32(m.CalibrationFactor))))
+ i--
+ dAtA[i] = 0x15
+ }
+ if m.ZeroOffset != 0 {
+ i = protohelpers.EncodeVarint(dAtA, i, uint64(m.ZeroOffset))
+ i--
+ dAtA[i] = 0x8
+ }
+ return len(dAtA) - i, nil
+}
+
func (m *DeviceMetrics) SizeVT() (n int) {
if m == nil {
return 0
}
var l int
_ = l
- if m.BatteryLevel != 0 {
- n += 1 + protohelpers.SizeOfVarint(uint64(m.BatteryLevel))
+ if m.BatteryLevel != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.BatteryLevel))
}
- if m.Voltage != 0 {
+ if m.Voltage != nil {
n += 5
}
- if m.ChannelUtilization != 0 {
+ if m.ChannelUtilization != nil {
n += 5
}
- if m.AirUtilTx != 0 {
+ if m.AirUtilTx != nil {
n += 5
}
+ if m.UptimeSeconds != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.UptimeSeconds))
+ }
n += len(m.unknownFields)
return n
}
@@ -459,24 +909,72 @@ func (m *EnvironmentMetrics) SizeVT() (n int) {
}
var l int
_ = l
- if m.Temperature != 0 {
+ if m.Temperature != nil {
+ n += 5
+ }
+ if m.RelativeHumidity != nil {
+ n += 5
+ }
+ if m.BarometricPressure != nil {
+ n += 5
+ }
+ if m.GasResistance != nil {
+ n += 5
+ }
+ if m.Voltage != nil {
n += 5
}
- if m.RelativeHumidity != 0 {
+ if m.Current != nil {
+ n += 5
+ }
+ if m.Iaq != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.Iaq))
+ }
+ if m.Distance != nil {
n += 5
}
- if m.BarometricPressure != 0 {
+ if m.Lux != nil {
n += 5
}
- if m.GasResistance != 0 {
+ if m.WhiteLux != nil {
n += 5
}
- if m.Voltage != 0 {
+ if m.IrLux != nil {
+ n += 5
+ }
+ if m.UvLux != nil {
+ n += 5
+ }
+ if m.WindDirection != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.WindDirection))
+ }
+ if m.WindSpeed != nil {
n += 5
}
- if m.Current != 0 {
+ if m.Weight != nil {
n += 5
}
+ if m.WindGust != nil {
+ n += 6
+ }
+ if m.WindLull != nil {
+ n += 6
+ }
+ if m.Radiation != nil {
+ n += 6
+ }
+ if m.Rainfall_1H != nil {
+ n += 6
+ }
+ if m.Rainfall_24H != nil {
+ n += 6
+ }
+ if m.SoilMoisture != nil {
+ n += 2 + protohelpers.SizeOfVarint(uint64(*m.SoilMoisture))
+ }
+ if m.SoilTemperature != nil {
+ n += 6
+ }
n += len(m.unknownFields)
return n
}
@@ -487,22 +985,22 @@ func (m *PowerMetrics) SizeVT() (n int) {
}
var l int
_ = l
- if m.Ch1Voltage != 0 {
+ if m.Ch1Voltage != nil {
n += 5
}
- if m.Ch1Current != 0 {
+ if m.Ch1Current != nil {
n += 5
}
- if m.Ch2Voltage != 0 {
+ if m.Ch2Voltage != nil {
n += 5
}
- if m.Ch2Current != 0 {
+ if m.Ch2Current != nil {
n += 5
}
- if m.Ch3Voltage != 0 {
+ if m.Ch3Voltage != nil {
n += 5
}
- if m.Ch3Current != 0 {
+ if m.Ch3Current != nil {
n += 5
}
n += len(m.unknownFields)
@@ -515,41 +1013,150 @@ func (m *AirQualityMetrics) SizeVT() (n int) {
}
var l int
_ = l
- if m.Pm10Standard != 0 {
- n += 1 + protohelpers.SizeOfVarint(uint64(m.Pm10Standard))
+ if m.Pm10Standard != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.Pm10Standard))
+ }
+ if m.Pm25Standard != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.Pm25Standard))
+ }
+ if m.Pm100Standard != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.Pm100Standard))
+ }
+ if m.Pm10Environmental != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.Pm10Environmental))
+ }
+ if m.Pm25Environmental != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.Pm25Environmental))
+ }
+ if m.Pm100Environmental != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.Pm100Environmental))
+ }
+ if m.Particles_03Um != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.Particles_03Um))
+ }
+ if m.Particles_05Um != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.Particles_05Um))
+ }
+ if m.Particles_10Um != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.Particles_10Um))
+ }
+ if m.Particles_25Um != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.Particles_25Um))
+ }
+ if m.Particles_50Um != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.Particles_50Um))
+ }
+ if m.Particles_100Um != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.Particles_100Um))
+ }
+ if m.Co2 != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.Co2))
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *LocalStats) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.UptimeSeconds != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.UptimeSeconds))
}
- if m.Pm25Standard != 0 {
- n += 1 + protohelpers.SizeOfVarint(uint64(m.Pm25Standard))
+ if m.ChannelUtilization != 0 {
+ n += 5
}
- if m.Pm100Standard != 0 {
- n += 1 + protohelpers.SizeOfVarint(uint64(m.Pm100Standard))
+ if m.AirUtilTx != 0 {
+ n += 5
+ }
+ if m.NumPacketsTx != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.NumPacketsTx))
}
- if m.Pm10Environmental != 0 {
- n += 1 + protohelpers.SizeOfVarint(uint64(m.Pm10Environmental))
+ if m.NumPacketsRx != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.NumPacketsRx))
}
- if m.Pm25Environmental != 0 {
- n += 1 + protohelpers.SizeOfVarint(uint64(m.Pm25Environmental))
+ if m.NumPacketsRxBad != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.NumPacketsRxBad))
}
- if m.Pm100Environmental != 0 {
- n += 1 + protohelpers.SizeOfVarint(uint64(m.Pm100Environmental))
+ if m.NumOnlineNodes != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.NumOnlineNodes))
}
- if m.Particles_03Um != 0 {
- n += 1 + protohelpers.SizeOfVarint(uint64(m.Particles_03Um))
+ if m.NumTotalNodes != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.NumTotalNodes))
}
- if m.Particles_05Um != 0 {
- n += 1 + protohelpers.SizeOfVarint(uint64(m.Particles_05Um))
+ if m.NumRxDupe != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.NumRxDupe))
}
- if m.Particles_10Um != 0 {
- n += 1 + protohelpers.SizeOfVarint(uint64(m.Particles_10Um))
+ if m.NumTxRelay != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.NumTxRelay))
}
- if m.Particles_25Um != 0 {
- n += 1 + protohelpers.SizeOfVarint(uint64(m.Particles_25Um))
+ if m.NumTxRelayCanceled != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.NumTxRelayCanceled))
}
- if m.Particles_50Um != 0 {
- n += 1 + protohelpers.SizeOfVarint(uint64(m.Particles_50Um))
+ if m.HeapTotalBytes != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.HeapTotalBytes))
}
- if m.Particles_100Um != 0 {
- n += 1 + protohelpers.SizeOfVarint(uint64(m.Particles_100Um))
+ if m.HeapFreeBytes != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.HeapFreeBytes))
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *HealthMetrics) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.HeartBpm != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.HeartBpm))
+ }
+ if m.SpO2 != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.SpO2))
+ }
+ if m.Temperature != nil {
+ n += 5
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
+func (m *HostMetrics) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.UptimeSeconds != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.UptimeSeconds))
+ }
+ if m.FreememBytes != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.FreememBytes))
+ }
+ if m.Diskfree1Bytes != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Diskfree1Bytes))
+ }
+ if m.Diskfree2Bytes != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.Diskfree2Bytes))
+ }
+ if m.Diskfree3Bytes != nil {
+ n += 1 + protohelpers.SizeOfVarint(uint64(*m.Diskfree3Bytes))
+ }
+ if m.Load1 != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Load1))
+ }
+ if m.Load5 != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Load5))
+ }
+ if m.Load15 != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.Load15))
+ }
+ if m.UserString != nil {
+ l = len(*m.UserString)
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
}
n += len(m.unknownFields)
return n
@@ -619,6 +1226,58 @@ func (m *Telemetry_PowerMetrics) SizeVT() (n int) {
}
return n
}
+func (m *Telemetry_LocalStats) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.LocalStats != nil {
+ l = m.LocalStats.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ return n
+}
+func (m *Telemetry_HealthMetrics) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.HealthMetrics != nil {
+ l = m.HealthMetrics.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ return n
+}
+func (m *Telemetry_HostMetrics) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.HostMetrics != nil {
+ l = m.HostMetrics.SizeVT()
+ n += 1 + l + protohelpers.SizeOfVarint(uint64(l))
+ }
+ return n
+}
+func (m *Nau7802Config) SizeVT() (n int) {
+ if m == nil {
+ return 0
+ }
+ var l int
+ _ = l
+ if m.ZeroOffset != 0 {
+ n += 1 + protohelpers.SizeOfVarint(uint64(m.ZeroOffset))
+ }
+ if m.CalibrationFactor != 0 {
+ n += 5
+ }
+ n += len(m.unknownFields)
+ return n
+}
+
func (m *DeviceMetrics) UnmarshalVT(dAtA []byte) error {
l := len(dAtA)
iNdEx := 0
@@ -652,7 +1311,7 @@ func (m *DeviceMetrics) UnmarshalVT(dAtA []byte) error {
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field BatteryLevel", wireType)
}
- m.BatteryLevel = 0
+ var v uint32
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -662,11 +1321,12 @@ func (m *DeviceMetrics) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- m.BatteryLevel |= uint32(b&0x7F) << shift
+ v |= uint32(b&0x7F) << shift
if b < 0x80 {
break
}
}
+ m.BatteryLevel = &v
case 2:
if wireType != 5 {
return fmt.Errorf("proto: wrong wireType = %d for field Voltage", wireType)
@@ -677,7 +1337,8 @@ func (m *DeviceMetrics) UnmarshalVT(dAtA []byte) error {
}
v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
iNdEx += 4
- m.Voltage = float32(math.Float32frombits(v))
+ v2 := float32(math.Float32frombits(v))
+ m.Voltage = &v2
case 3:
if wireType != 5 {
return fmt.Errorf("proto: wrong wireType = %d for field ChannelUtilization", wireType)
@@ -688,7 +1349,8 @@ func (m *DeviceMetrics) UnmarshalVT(dAtA []byte) error {
}
v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
iNdEx += 4
- m.ChannelUtilization = float32(math.Float32frombits(v))
+ v2 := float32(math.Float32frombits(v))
+ m.ChannelUtilization = &v2
case 4:
if wireType != 5 {
return fmt.Errorf("proto: wrong wireType = %d for field AirUtilTx", wireType)
@@ -699,7 +1361,28 @@ func (m *DeviceMetrics) UnmarshalVT(dAtA []byte) error {
}
v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
iNdEx += 4
- m.AirUtilTx = float32(math.Float32frombits(v))
+ v2 := float32(math.Float32frombits(v))
+ m.AirUtilTx = &v2
+ case 5:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field UptimeSeconds", wireType)
+ }
+ var v uint32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.UptimeSeconds = &v
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
@@ -761,7 +1444,8 @@ func (m *EnvironmentMetrics) UnmarshalVT(dAtA []byte) error {
}
v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
iNdEx += 4
- m.Temperature = float32(math.Float32frombits(v))
+ v2 := float32(math.Float32frombits(v))
+ m.Temperature = &v2
case 2:
if wireType != 5 {
return fmt.Errorf("proto: wrong wireType = %d for field RelativeHumidity", wireType)
@@ -772,7 +1456,8 @@ func (m *EnvironmentMetrics) UnmarshalVT(dAtA []byte) error {
}
v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
iNdEx += 4
- m.RelativeHumidity = float32(math.Float32frombits(v))
+ v2 := float32(math.Float32frombits(v))
+ m.RelativeHumidity = &v2
case 3:
if wireType != 5 {
return fmt.Errorf("proto: wrong wireType = %d for field BarometricPressure", wireType)
@@ -783,7 +1468,8 @@ func (m *EnvironmentMetrics) UnmarshalVT(dAtA []byte) error {
}
v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
iNdEx += 4
- m.BarometricPressure = float32(math.Float32frombits(v))
+ v2 := float32(math.Float32frombits(v))
+ m.BarometricPressure = &v2
case 4:
if wireType != 5 {
return fmt.Errorf("proto: wrong wireType = %d for field GasResistance", wireType)
@@ -794,7 +1480,8 @@ func (m *EnvironmentMetrics) UnmarshalVT(dAtA []byte) error {
}
v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
iNdEx += 4
- m.GasResistance = float32(math.Float32frombits(v))
+ v2 := float32(math.Float32frombits(v))
+ m.GasResistance = &v2
case 5:
if wireType != 5 {
return fmt.Errorf("proto: wrong wireType = %d for field Voltage", wireType)
@@ -805,7 +1492,8 @@ func (m *EnvironmentMetrics) UnmarshalVT(dAtA []byte) error {
}
v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
iNdEx += 4
- m.Voltage = float32(math.Float32frombits(v))
+ v2 := float32(math.Float32frombits(v))
+ m.Voltage = &v2
case 6:
if wireType != 5 {
return fmt.Errorf("proto: wrong wireType = %d for field Current", wireType)
@@ -816,7 +1504,224 @@ func (m *EnvironmentMetrics) UnmarshalVT(dAtA []byte) error {
}
v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
iNdEx += 4
- m.Current = float32(math.Float32frombits(v))
+ v2 := float32(math.Float32frombits(v))
+ m.Current = &v2
+ case 7:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Iaq", wireType)
+ }
+ var v uint32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.Iaq = &v
+ case 8:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Distance", wireType)
+ }
+ var v uint32
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ v2 := float32(math.Float32frombits(v))
+ m.Distance = &v2
+ case 9:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Lux", wireType)
+ }
+ var v uint32
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ v2 := float32(math.Float32frombits(v))
+ m.Lux = &v2
+ case 10:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field WhiteLux", wireType)
+ }
+ var v uint32
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ v2 := float32(math.Float32frombits(v))
+ m.WhiteLux = &v2
+ case 11:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field IrLux", wireType)
+ }
+ var v uint32
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ v2 := float32(math.Float32frombits(v))
+ m.IrLux = &v2
+ case 12:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field UvLux", wireType)
+ }
+ var v uint32
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ v2 := float32(math.Float32frombits(v))
+ m.UvLux = &v2
+ case 13:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field WindDirection", wireType)
+ }
+ var v uint32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.WindDirection = &v
+ case 14:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field WindSpeed", wireType)
+ }
+ var v uint32
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ v2 := float32(math.Float32frombits(v))
+ m.WindSpeed = &v2
+ case 15:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Weight", wireType)
+ }
+ var v uint32
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ v2 := float32(math.Float32frombits(v))
+ m.Weight = &v2
+ case 16:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field WindGust", wireType)
+ }
+ var v uint32
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ v2 := float32(math.Float32frombits(v))
+ m.WindGust = &v2
+ case 17:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field WindLull", wireType)
+ }
+ var v uint32
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ v2 := float32(math.Float32frombits(v))
+ m.WindLull = &v2
+ case 18:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Radiation", wireType)
+ }
+ var v uint32
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ v2 := float32(math.Float32frombits(v))
+ m.Radiation = &v2
+ case 19:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Rainfall_1H", wireType)
+ }
+ var v uint32
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ v2 := float32(math.Float32frombits(v))
+ m.Rainfall_1H = &v2
+ case 20:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Rainfall_24H", wireType)
+ }
+ var v uint32
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ v2 := float32(math.Float32frombits(v))
+ m.Rainfall_24H = &v2
+ case 21:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field SoilMoisture", wireType)
+ }
+ var v uint32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.SoilMoisture = &v
+ case 22:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field SoilTemperature", wireType)
+ }
+ var v uint32
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ v2 := float32(math.Float32frombits(v))
+ m.SoilTemperature = &v2
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
@@ -878,7 +1783,8 @@ func (m *PowerMetrics) UnmarshalVT(dAtA []byte) error {
}
v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
iNdEx += 4
- m.Ch1Voltage = float32(math.Float32frombits(v))
+ v2 := float32(math.Float32frombits(v))
+ m.Ch1Voltage = &v2
case 2:
if wireType != 5 {
return fmt.Errorf("proto: wrong wireType = %d for field Ch1Current", wireType)
@@ -889,7 +1795,8 @@ func (m *PowerMetrics) UnmarshalVT(dAtA []byte) error {
}
v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
iNdEx += 4
- m.Ch1Current = float32(math.Float32frombits(v))
+ v2 := float32(math.Float32frombits(v))
+ m.Ch1Current = &v2
case 3:
if wireType != 5 {
return fmt.Errorf("proto: wrong wireType = %d for field Ch2Voltage", wireType)
@@ -900,7 +1807,8 @@ func (m *PowerMetrics) UnmarshalVT(dAtA []byte) error {
}
v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
iNdEx += 4
- m.Ch2Voltage = float32(math.Float32frombits(v))
+ v2 := float32(math.Float32frombits(v))
+ m.Ch2Voltage = &v2
case 4:
if wireType != 5 {
return fmt.Errorf("proto: wrong wireType = %d for field Ch2Current", wireType)
@@ -911,7 +1819,8 @@ func (m *PowerMetrics) UnmarshalVT(dAtA []byte) error {
}
v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
iNdEx += 4
- m.Ch2Current = float32(math.Float32frombits(v))
+ v2 := float32(math.Float32frombits(v))
+ m.Ch2Current = &v2
case 5:
if wireType != 5 {
return fmt.Errorf("proto: wrong wireType = %d for field Ch3Voltage", wireType)
@@ -922,7 +1831,8 @@ func (m *PowerMetrics) UnmarshalVT(dAtA []byte) error {
}
v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
iNdEx += 4
- m.Ch3Voltage = float32(math.Float32frombits(v))
+ v2 := float32(math.Float32frombits(v))
+ m.Ch3Voltage = &v2
case 6:
if wireType != 5 {
return fmt.Errorf("proto: wrong wireType = %d for field Ch3Current", wireType)
@@ -933,7 +1843,8 @@ func (m *PowerMetrics) UnmarshalVT(dAtA []byte) error {
}
v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
iNdEx += 4
- m.Ch3Current = float32(math.Float32frombits(v))
+ v2 := float32(math.Float32frombits(v))
+ m.Ch3Current = &v2
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
@@ -989,7 +1900,7 @@ func (m *AirQualityMetrics) UnmarshalVT(dAtA []byte) error {
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field Pm10Standard", wireType)
}
- m.Pm10Standard = 0
+ var v uint32
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -999,16 +1910,17 @@ func (m *AirQualityMetrics) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- m.Pm10Standard |= uint32(b&0x7F) << shift
+ v |= uint32(b&0x7F) << shift
if b < 0x80 {
break
}
}
+ m.Pm10Standard = &v
case 2:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field Pm25Standard", wireType)
}
- m.Pm25Standard = 0
+ var v uint32
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -1018,16 +1930,17 @@ func (m *AirQualityMetrics) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- m.Pm25Standard |= uint32(b&0x7F) << shift
+ v |= uint32(b&0x7F) << shift
if b < 0x80 {
break
}
}
+ m.Pm25Standard = &v
case 3:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field Pm100Standard", wireType)
}
- m.Pm100Standard = 0
+ var v uint32
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -1037,16 +1950,17 @@ func (m *AirQualityMetrics) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- m.Pm100Standard |= uint32(b&0x7F) << shift
+ v |= uint32(b&0x7F) << shift
if b < 0x80 {
break
}
}
+ m.Pm100Standard = &v
case 4:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field Pm10Environmental", wireType)
}
- m.Pm10Environmental = 0
+ var v uint32
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -1056,16 +1970,17 @@ func (m *AirQualityMetrics) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- m.Pm10Environmental |= uint32(b&0x7F) << shift
+ v |= uint32(b&0x7F) << shift
if b < 0x80 {
break
}
}
+ m.Pm10Environmental = &v
case 5:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field Pm25Environmental", wireType)
}
- m.Pm25Environmental = 0
+ var v uint32
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -1075,16 +1990,17 @@ func (m *AirQualityMetrics) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- m.Pm25Environmental |= uint32(b&0x7F) << shift
+ v |= uint32(b&0x7F) << shift
if b < 0x80 {
break
}
}
+ m.Pm25Environmental = &v
case 6:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field Pm100Environmental", wireType)
}
- m.Pm100Environmental = 0
+ var v uint32
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -1094,16 +2010,17 @@ func (m *AirQualityMetrics) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- m.Pm100Environmental |= uint32(b&0x7F) << shift
+ v |= uint32(b&0x7F) << shift
if b < 0x80 {
break
}
}
+ m.Pm100Environmental = &v
case 7:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field Particles_03Um", wireType)
}
- m.Particles_03Um = 0
+ var v uint32
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -1113,16 +2030,17 @@ func (m *AirQualityMetrics) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- m.Particles_03Um |= uint32(b&0x7F) << shift
+ v |= uint32(b&0x7F) << shift
if b < 0x80 {
break
}
}
+ m.Particles_03Um = &v
case 8:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field Particles_05Um", wireType)
}
- m.Particles_05Um = 0
+ var v uint32
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -1132,16 +2050,17 @@ func (m *AirQualityMetrics) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- m.Particles_05Um |= uint32(b&0x7F) << shift
+ v |= uint32(b&0x7F) << shift
if b < 0x80 {
break
}
}
+ m.Particles_05Um = &v
case 9:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field Particles_10Um", wireType)
}
- m.Particles_10Um = 0
+ var v uint32
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -1151,16 +2070,17 @@ func (m *AirQualityMetrics) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- m.Particles_10Um |= uint32(b&0x7F) << shift
+ v |= uint32(b&0x7F) << shift
if b < 0x80 {
break
}
}
+ m.Particles_10Um = &v
case 10:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field Particles_25Um", wireType)
}
- m.Particles_25Um = 0
+ var v uint32
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -1170,16 +2090,17 @@ func (m *AirQualityMetrics) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- m.Particles_25Um |= uint32(b&0x7F) << shift
+ v |= uint32(b&0x7F) << shift
if b < 0x80 {
break
}
}
+ m.Particles_25Um = &v
case 11:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field Particles_50Um", wireType)
}
- m.Particles_50Um = 0
+ var v uint32
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -1189,16 +2110,590 @@ func (m *AirQualityMetrics) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- m.Particles_50Um |= uint32(b&0x7F) << shift
+ v |= uint32(b&0x7F) << shift
if b < 0x80 {
break
}
}
+ m.Particles_50Um = &v
case 12:
if wireType != 0 {
return fmt.Errorf("proto: wrong wireType = %d for field Particles_100Um", wireType)
}
- m.Particles_100Um = 0
+ var v uint32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.Particles_100Um = &v
+ case 13:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Co2", wireType)
+ }
+ var v uint32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.Co2 = &v
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *LocalStats) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: LocalStats: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: LocalStats: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field UptimeSeconds", wireType)
+ }
+ m.UptimeSeconds = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.UptimeSeconds |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 2:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field ChannelUtilization", wireType)
+ }
+ var v uint32
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ m.ChannelUtilization = float32(math.Float32frombits(v))
+ case 3:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field AirUtilTx", wireType)
+ }
+ var v uint32
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ m.AirUtilTx = float32(math.Float32frombits(v))
+ case 4:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field NumPacketsTx", wireType)
+ }
+ m.NumPacketsTx = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.NumPacketsTx |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 5:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field NumPacketsRx", wireType)
+ }
+ m.NumPacketsRx = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.NumPacketsRx |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 6:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field NumPacketsRxBad", wireType)
+ }
+ m.NumPacketsRxBad = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.NumPacketsRxBad |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 7:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field NumOnlineNodes", wireType)
+ }
+ m.NumOnlineNodes = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.NumOnlineNodes |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 8:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field NumTotalNodes", wireType)
+ }
+ m.NumTotalNodes = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.NumTotalNodes |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 9:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field NumRxDupe", wireType)
+ }
+ m.NumRxDupe = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.NumRxDupe |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 10:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field NumTxRelay", wireType)
+ }
+ m.NumTxRelay = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.NumTxRelay |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 11:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field NumTxRelayCanceled", wireType)
+ }
+ m.NumTxRelayCanceled = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.NumTxRelayCanceled |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 12:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field HeapTotalBytes", wireType)
+ }
+ m.HeapTotalBytes = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.HeapTotalBytes |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 13:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field HeapFreeBytes", wireType)
+ }
+ m.HeapFreeBytes = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.HeapFreeBytes |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *HealthMetrics) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: HealthMetrics: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: HealthMetrics: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field HeartBpm", wireType)
+ }
+ var v uint32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.HeartBpm = &v
+ case 2:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field SpO2", wireType)
+ }
+ var v uint32
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.SpO2 = &v
+ case 3:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Temperature", wireType)
+ }
+ var v uint32
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ v2 := float32(math.Float32frombits(v))
+ m.Temperature = &v2
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *HostMetrics) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: HostMetrics: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: HostMetrics: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field UptimeSeconds", wireType)
+ }
+ m.UptimeSeconds = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.UptimeSeconds |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 2:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field FreememBytes", wireType)
+ }
+ m.FreememBytes = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.FreememBytes |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 3:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Diskfree1Bytes", wireType)
+ }
+ m.Diskfree1Bytes = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.Diskfree1Bytes |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 4:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Diskfree2Bytes", wireType)
+ }
+ var v uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.Diskfree2Bytes = &v
+ case 5:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Diskfree3Bytes", wireType)
+ }
+ var v uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ v |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ m.Diskfree3Bytes = &v
+ case 6:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Load1", wireType)
+ }
+ m.Load1 = 0
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return protohelpers.ErrIntOverflow
@@ -1208,11 +2703,82 @@ func (m *AirQualityMetrics) UnmarshalVT(dAtA []byte) error {
}
b := dAtA[iNdEx]
iNdEx++
- m.Particles_100Um |= uint32(b&0x7F) << shift
+ m.Load1 |= uint32(b&0x7F) << shift
if b < 0x80 {
break
}
}
+ case 7:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Load5", wireType)
+ }
+ m.Load5 = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.Load5 |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 8:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field Load15", wireType)
+ }
+ m.Load15 = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.Load15 |= uint32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 9:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field UserString", wireType)
+ }
+ var stringLen uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ stringLen |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ intStringLen := int(stringLen)
+ if intStringLen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + intStringLen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ s := string(dAtA[iNdEx:postIndex])
+ m.UserString = &s
+ iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
@@ -1438,6 +3004,210 @@ func (m *Telemetry) UnmarshalVT(dAtA []byte) error {
m.Variant = &Telemetry_PowerMetrics{PowerMetrics: v}
}
iNdEx = postIndex
+ case 6:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field LocalStats", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if oneof, ok := m.Variant.(*Telemetry_LocalStats); ok {
+ if err := oneof.LocalStats.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ } else {
+ v := &LocalStats{}
+ if err := v.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ m.Variant = &Telemetry_LocalStats{LocalStats: v}
+ }
+ iNdEx = postIndex
+ case 7:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field HealthMetrics", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if oneof, ok := m.Variant.(*Telemetry_HealthMetrics); ok {
+ if err := oneof.HealthMetrics.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ } else {
+ v := &HealthMetrics{}
+ if err := v.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ m.Variant = &Telemetry_HealthMetrics{HealthMetrics: v}
+ }
+ iNdEx = postIndex
+ case 8:
+ if wireType != 2 {
+ return fmt.Errorf("proto: wrong wireType = %d for field HostMetrics", wireType)
+ }
+ var msglen int
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ msglen |= int(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ if msglen < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ postIndex := iNdEx + msglen
+ if postIndex < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if postIndex > l {
+ return io.ErrUnexpectedEOF
+ }
+ if oneof, ok := m.Variant.(*Telemetry_HostMetrics); ok {
+ if err := oneof.HostMetrics.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ } else {
+ v := &HostMetrics{}
+ if err := v.UnmarshalVT(dAtA[iNdEx:postIndex]); err != nil {
+ return err
+ }
+ m.Variant = &Telemetry_HostMetrics{HostMetrics: v}
+ }
+ iNdEx = postIndex
+ default:
+ iNdEx = preIndex
+ skippy, err := protohelpers.Skip(dAtA[iNdEx:])
+ if err != nil {
+ return err
+ }
+ if (skippy < 0) || (iNdEx+skippy) < 0 {
+ return protohelpers.ErrInvalidLength
+ }
+ if (iNdEx + skippy) > l {
+ return io.ErrUnexpectedEOF
+ }
+ m.unknownFields = append(m.unknownFields, dAtA[iNdEx:iNdEx+skippy]...)
+ iNdEx += skippy
+ }
+ }
+
+ if iNdEx > l {
+ return io.ErrUnexpectedEOF
+ }
+ return nil
+}
+func (m *Nau7802Config) UnmarshalVT(dAtA []byte) error {
+ l := len(dAtA)
+ iNdEx := 0
+ for iNdEx < l {
+ preIndex := iNdEx
+ var wire uint64
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ wire |= uint64(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ fieldNum := int32(wire >> 3)
+ wireType := int(wire & 0x7)
+ if wireType == 4 {
+ return fmt.Errorf("proto: Nau7802Config: wiretype end group for non-group")
+ }
+ if fieldNum <= 0 {
+ return fmt.Errorf("proto: Nau7802Config: illegal tag %d (wire type %d)", fieldNum, wire)
+ }
+ switch fieldNum {
+ case 1:
+ if wireType != 0 {
+ return fmt.Errorf("proto: wrong wireType = %d for field ZeroOffset", wireType)
+ }
+ m.ZeroOffset = 0
+ for shift := uint(0); ; shift += 7 {
+ if shift >= 64 {
+ return protohelpers.ErrIntOverflow
+ }
+ if iNdEx >= l {
+ return io.ErrUnexpectedEOF
+ }
+ b := dAtA[iNdEx]
+ iNdEx++
+ m.ZeroOffset |= int32(b&0x7F) << shift
+ if b < 0x80 {
+ break
+ }
+ }
+ case 2:
+ if wireType != 5 {
+ return fmt.Errorf("proto: wrong wireType = %d for field CalibrationFactor", wireType)
+ }
+ var v uint32
+ if (iNdEx + 4) > l {
+ return io.ErrUnexpectedEOF
+ }
+ v = uint32(binary.LittleEndian.Uint32(dAtA[iNdEx:]))
+ iNdEx += 4
+ m.CalibrationFactor = float32(math.Float32frombits(v))
default:
iNdEx = preIndex
skippy, err := protohelpers.Skip(dAtA[iNdEx:])
diff --git a/meshtastic/xmodem.pb.go b/meshtastic/xmodem.pb.go
index 40e986a..0395198 100644
--- a/meshtastic/xmodem.pb.go
+++ b/meshtastic/xmodem.pb.go
@@ -1,7 +1,7 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
-// protoc-gen-go v1.32.0
-// protoc v4.25.2
+// protoc-gen-go v1.36.6
+// protoc v3.21.12
// source: meshtastic/xmodem.proto
package generated
@@ -11,6 +11,7 @@ import (
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
+ unsafe "unsafe"
)
const (
@@ -85,23 +86,20 @@ func (XModem_Control) EnumDescriptor() ([]byte, []int) {
}
type XModem struct {
- state protoimpl.MessageState
- sizeCache protoimpl.SizeCache
+ state protoimpl.MessageState `protogen:"open.v1"`
+ Control XModem_Control `protobuf:"varint,1,opt,name=control,proto3,enum=meshtastic.XModem_Control" json:"control,omitempty"`
+ Seq uint32 `protobuf:"varint,2,opt,name=seq,proto3" json:"seq,omitempty"`
+ Crc16 uint32 `protobuf:"varint,3,opt,name=crc16,proto3" json:"crc16,omitempty"`
+ Buffer []byte `protobuf:"bytes,4,opt,name=buffer,proto3" json:"buffer,omitempty"`
unknownFields protoimpl.UnknownFields
-
- Control XModem_Control `protobuf:"varint,1,opt,name=control,proto3,enum=meshtastic.XModem_Control" json:"control,omitempty"`
- Seq uint32 `protobuf:"varint,2,opt,name=seq,proto3" json:"seq,omitempty"`
- Crc16 uint32 `protobuf:"varint,3,opt,name=crc16,proto3" json:"crc16,omitempty"`
- Buffer []byte `protobuf:"bytes,4,opt,name=buffer,proto3" json:"buffer,omitempty"`
+ sizeCache protoimpl.SizeCache
}
func (x *XModem) Reset() {
*x = XModem{}
- if protoimpl.UnsafeEnabled {
- mi := &file_meshtastic_xmodem_proto_msgTypes[0]
- ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
- ms.StoreMessageInfo(mi)
- }
+ mi := &file_meshtastic_xmodem_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
}
func (x *XModem) String() string {
@@ -112,7 +110,7 @@ func (*XModem) ProtoMessage() {}
func (x *XModem) ProtoReflect() protoreflect.Message {
mi := &file_meshtastic_xmodem_proto_msgTypes[0]
- if protoimpl.UnsafeEnabled && x != nil {
+ if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
@@ -157,47 +155,41 @@ func (x *XModem) GetBuffer() []byte {
var File_meshtastic_xmodem_proto protoreflect.FileDescriptor
-var file_meshtastic_xmodem_proto_rawDesc = []byte{
- 0x0a, 0x17, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x78, 0x6d, 0x6f,
- 0x64, 0x65, 0x6d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0a, 0x6d, 0x65, 0x73, 0x68, 0x74,
- 0x61, 0x73, 0x74, 0x69, 0x63, 0x22, 0xd3, 0x01, 0x0a, 0x06, 0x58, 0x4d, 0x6f, 0x64, 0x65, 0x6d,
- 0x12, 0x34, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28,
- 0x0e, 0x32, 0x1a, 0x2e, 0x6d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2e, 0x58,
- 0x4d, 0x6f, 0x64, 0x65, 0x6d, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x52, 0x07, 0x63,
- 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x12, 0x10, 0x0a, 0x03, 0x73, 0x65, 0x71, 0x18, 0x02, 0x20,
- 0x01, 0x28, 0x0d, 0x52, 0x03, 0x73, 0x65, 0x71, 0x12, 0x14, 0x0a, 0x05, 0x63, 0x72, 0x63, 0x31,
- 0x36, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x63, 0x72, 0x63, 0x31, 0x36, 0x12, 0x16,
- 0x0a, 0x06, 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06,
- 0x62, 0x75, 0x66, 0x66, 0x65, 0x72, 0x22, 0x53, 0x0a, 0x07, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f,
- 0x6c, 0x12, 0x07, 0x0a, 0x03, 0x4e, 0x55, 0x4c, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x53, 0x4f,
- 0x48, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x53, 0x54, 0x58, 0x10, 0x02, 0x12, 0x07, 0x0a, 0x03,
- 0x45, 0x4f, 0x54, 0x10, 0x04, 0x12, 0x07, 0x0a, 0x03, 0x41, 0x43, 0x4b, 0x10, 0x06, 0x12, 0x07,
- 0x0a, 0x03, 0x4e, 0x41, 0x4b, 0x10, 0x15, 0x12, 0x07, 0x0a, 0x03, 0x43, 0x41, 0x4e, 0x10, 0x18,
- 0x12, 0x09, 0x0a, 0x05, 0x43, 0x54, 0x52, 0x4c, 0x5a, 0x10, 0x1a, 0x42, 0x61, 0x0a, 0x13, 0x63,
- 0x6f, 0x6d, 0x2e, 0x67, 0x65, 0x65, 0x6b, 0x73, 0x76, 0x69, 0x6c, 0x6c, 0x65, 0x2e, 0x6d, 0x65,
- 0x73, 0x68, 0x42, 0x0c, 0x58, 0x6d, 0x6f, 0x64, 0x65, 0x6d, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x73,
- 0x5a, 0x22, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6d, 0x65, 0x73,
- 0x68, 0x74, 0x61, 0x73, 0x74, 0x69, 0x63, 0x2f, 0x67, 0x6f, 0x2f, 0x67, 0x65, 0x6e, 0x65, 0x72,
- 0x61, 0x74, 0x65, 0x64, 0xaa, 0x02, 0x14, 0x4d, 0x65, 0x73, 0x68, 0x74, 0x61, 0x73, 0x74, 0x69,
- 0x63, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x73, 0xba, 0x02, 0x00, 0x62, 0x06,
- 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
-}
+const file_meshtastic_xmodem_proto_rawDesc = "" +
+ "\n" +
+ "\x17meshtastic/xmodem.proto\x12\n" +
+ "meshtastic\"\xd3\x01\n" +
+ "\x06XModem\x124\n" +
+ "\acontrol\x18\x01 \x01(\x0e2\x1a.meshtastic.XModem.ControlR\acontrol\x12\x10\n" +
+ "\x03seq\x18\x02 \x01(\rR\x03seq\x12\x14\n" +
+ "\x05crc16\x18\x03 \x01(\rR\x05crc16\x12\x16\n" +
+ "\x06buffer\x18\x04 \x01(\fR\x06buffer\"S\n" +
+ "\aControl\x12\a\n" +
+ "\x03NUL\x10\x00\x12\a\n" +
+ "\x03SOH\x10\x01\x12\a\n" +
+ "\x03STX\x10\x02\x12\a\n" +
+ "\x03EOT\x10\x04\x12\a\n" +
+ "\x03ACK\x10\x06\x12\a\n" +
+ "\x03NAK\x10\x15\x12\a\n" +
+ "\x03CAN\x10\x18\x12\t\n" +
+ "\x05CTRLZ\x10\x1aBa\n" +
+ "\x13com.geeksville.meshB\fXmodemProtosZ\"github.com/meshtastic/go/generated\xaa\x02\x14Meshtastic.Protobufs\xba\x02\x00b\x06proto3"
var (
file_meshtastic_xmodem_proto_rawDescOnce sync.Once
- file_meshtastic_xmodem_proto_rawDescData = file_meshtastic_xmodem_proto_rawDesc
+ file_meshtastic_xmodem_proto_rawDescData []byte
)
func file_meshtastic_xmodem_proto_rawDescGZIP() []byte {
file_meshtastic_xmodem_proto_rawDescOnce.Do(func() {
- file_meshtastic_xmodem_proto_rawDescData = protoimpl.X.CompressGZIP(file_meshtastic_xmodem_proto_rawDescData)
+ file_meshtastic_xmodem_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_meshtastic_xmodem_proto_rawDesc), len(file_meshtastic_xmodem_proto_rawDesc)))
})
return file_meshtastic_xmodem_proto_rawDescData
}
var file_meshtastic_xmodem_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_meshtastic_xmodem_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
-var file_meshtastic_xmodem_proto_goTypes = []interface{}{
+var file_meshtastic_xmodem_proto_goTypes = []any{
(XModem_Control)(0), // 0: meshtastic.XModem.Control
(*XModem)(nil), // 1: meshtastic.XModem
}
@@ -215,25 +207,11 @@ func file_meshtastic_xmodem_proto_init() {
if File_meshtastic_xmodem_proto != nil {
return
}
- if !protoimpl.UnsafeEnabled {
- file_meshtastic_xmodem_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
- switch v := v.(*XModem); i {
- case 0:
- return &v.state
- case 1:
- return &v.sizeCache
- case 2:
- return &v.unknownFields
- default:
- return nil
- }
- }
- }
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
- RawDescriptor: file_meshtastic_xmodem_proto_rawDesc,
+ RawDescriptor: unsafe.Slice(unsafe.StringData(file_meshtastic_xmodem_proto_rawDesc), len(file_meshtastic_xmodem_proto_rawDesc)),
NumEnums: 1,
NumMessages: 1,
NumExtensions: 0,
@@ -245,7 +223,6 @@ func file_meshtastic_xmodem_proto_init() {
MessageInfos: file_meshtastic_xmodem_proto_msgTypes,
}.Build()
File_meshtastic_xmodem_proto = out.File
- file_meshtastic_xmodem_proto_rawDesc = nil
file_meshtastic_xmodem_proto_goTypes = nil
file_meshtastic_xmodem_proto_depIdxs = nil
}
diff --git a/protobufs b/protobufs
-Subproject 68720ed8dbcb2c055e3d1ecd4f78d60692f5949
+Subproject 24c7a3d287a4bd269ce191827e5dabd8ce8f57a