227 lines
2.9 KiB
Protocol Buffer
227 lines
2.9 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
package meshtastic;
|
|
|
|
option csharp_namespace = "Meshtastic.Protobufs";
|
|
option go_package = "git.janky.solutions/finn/matrix-meshtastic-bridge-go/meshtastic/protobufs";
|
|
option java_outer_classname = "DeviceUIProtos";
|
|
option java_package = "com.geeksville.mesh";
|
|
option swift_prefix = "";
|
|
|
|
/*
|
|
* Protobuf structures for device-ui persistency
|
|
*/
|
|
|
|
message DeviceUIConfig {
|
|
/*
|
|
* A version integer used to invalidate saved files when we make incompatible changes.
|
|
*/
|
|
uint32 version = 1;
|
|
|
|
/*
|
|
* TFT display brightness 1..255
|
|
*/
|
|
uint32 screen_brightness = 2;
|
|
|
|
/*
|
|
* Screen timeout 0..900
|
|
*/
|
|
uint32 screen_timeout = 3;
|
|
|
|
/*
|
|
* Screen/Settings lock enabled
|
|
*/
|
|
bool screen_lock = 4;
|
|
bool settings_lock = 5;
|
|
uint32 pin_code = 6;
|
|
|
|
/*
|
|
* Color theme
|
|
*/
|
|
Theme theme = 7;
|
|
|
|
/*
|
|
* Audible message, banner and ring tone
|
|
*/
|
|
bool alert_enabled = 8;
|
|
bool banner_enabled = 9;
|
|
uint32 ring_tone_id = 10;
|
|
|
|
/*
|
|
* Localization
|
|
*/
|
|
Language language = 11;
|
|
|
|
/*
|
|
* Node list filter
|
|
*/
|
|
NodeFilter node_filter = 12;
|
|
|
|
/*
|
|
* Node list highlightening
|
|
*/
|
|
NodeHighlight node_highlight = 13;
|
|
}
|
|
|
|
|
|
message NodeFilter {
|
|
/*
|
|
* Filter unknown nodes
|
|
*/
|
|
bool unknown_switch = 1;
|
|
|
|
/*
|
|
* Filter offline nodes
|
|
*/
|
|
bool offline_switch = 2;
|
|
|
|
/*
|
|
* Filter nodes w/o public key
|
|
*/
|
|
bool public_key_switch = 3;
|
|
|
|
/*
|
|
* Filter based on hops away
|
|
*/
|
|
int32 hops_away = 4;
|
|
|
|
/*
|
|
* Filter nodes w/o position
|
|
*/
|
|
bool position_switch = 5;
|
|
|
|
/*
|
|
* Filter nodes by matching name string
|
|
*/
|
|
string node_name = 6;
|
|
|
|
}
|
|
|
|
message NodeHighlight {
|
|
/*
|
|
* Hightlight nodes w/ active chat
|
|
*/
|
|
bool chat_switch = 1;
|
|
|
|
/*
|
|
* Highlight nodes w/ position
|
|
*/
|
|
bool position_switch = 2;
|
|
|
|
/*
|
|
* Highlight nodes w/ telemetry data
|
|
*/
|
|
bool telemetry_switch = 3;
|
|
|
|
/*
|
|
* Highlight nodes w/ iaq data
|
|
*/
|
|
bool iaq_switch = 4;
|
|
|
|
/*
|
|
* Highlight nodes by matching name string
|
|
*/
|
|
string node_name = 5;
|
|
|
|
}
|
|
|
|
enum Theme {
|
|
/*
|
|
* Dark
|
|
*/
|
|
DARK = 0;
|
|
/*
|
|
* Light
|
|
*/
|
|
LIGHT = 1;
|
|
/*
|
|
* Red
|
|
*/
|
|
RED = 2;
|
|
}
|
|
|
|
/*
|
|
* Localization
|
|
*/
|
|
enum Language {
|
|
/*
|
|
* English
|
|
*/
|
|
ENGLISH = 0;
|
|
|
|
/*
|
|
* French
|
|
*/
|
|
FRENCH = 1;
|
|
|
|
/*
|
|
* German
|
|
*/
|
|
GERMAN = 2;
|
|
|
|
/*
|
|
* Italian
|
|
*/
|
|
ITALIAN = 3;
|
|
|
|
/*
|
|
* Portuguese
|
|
*/
|
|
PORTUGUESE = 4;
|
|
|
|
/*
|
|
* Spanish
|
|
*/
|
|
SPANISH = 5;
|
|
|
|
/*
|
|
* Swedish
|
|
*/
|
|
SWEDISH = 6;
|
|
|
|
/*
|
|
* Finnish
|
|
*/
|
|
FINNISH = 7;
|
|
|
|
/*
|
|
* Polish
|
|
*/
|
|
POLISH = 8;
|
|
|
|
/*
|
|
* Turkish
|
|
*/
|
|
TURKISH = 9;
|
|
|
|
/*
|
|
* Serbian
|
|
*/
|
|
SERBIAN = 10;
|
|
|
|
/*
|
|
* Russian
|
|
*/
|
|
RUSSIAN = 11;
|
|
|
|
/*
|
|
* Dutch
|
|
*/
|
|
DUTCH = 12;
|
|
|
|
/*
|
|
* Greek
|
|
*/
|
|
GREEK = 13;
|
|
|
|
/*
|
|
* Simplified Chinese (experimental)
|
|
*/
|
|
SIMPLIFIED_CHINESE = 30;
|
|
|
|
/*
|
|
* Traditional Chinese (experimental)
|
|
*/
|
|
TRADITIONAL_CHINESE = 31;
|
|
}
|
|
|