device-ui persistency

pull/597/head
mverch67 2024-10-09 12:49:09 +02:00
rodzic c9ae7fd478
commit c28a677d7d
4 zmienionych plików z 199 dodań i 0 usunięć

Wyświetl plik

@ -7,6 +7,7 @@ import "meshtastic/config.proto";
import "meshtastic/connection_status.proto";
import "meshtastic/mesh.proto";
import "meshtastic/module_config.proto";
import "meshtastic/device_ui.proto";
option csharp_namespace = "Meshtastic.Protobufs";
option go_package = "github.com/meshtastic/go/generated";
@ -76,6 +77,11 @@ message AdminMessage {
*
*/
SESSIONKEY_CONFIG = 8;
/*
* device-ui config
*/
DEVICEUI_CONFIG = 9;
}
/*
@ -376,6 +382,21 @@ message AdminMessage {
* Tell the node to reset the nodedb.
*/
int32 nodedb_reset = 100;
/*
* Tell the node to send the stored ui data.
*/
bool get_ui_config_request = 102;
/*
* reply stored device ui data.
*/
DeviceUIConfig get_ui_config_response = 103;
/*
* Tell the node to store UI data persistently.
*/
DeviceUIConfig store_ui_config = 104;
}
}

Wyświetl plik

@ -0,0 +1,5 @@
*DeviceUIConfig.screen_brightness int_size:8
*DeviceUIConfig.screen_timeout int_size:16
*NodeFilter.node_name max_size:16
*NodeFilter.hopys_away int_size:8
*NodeHighlight.node_name max_size:16

Wyświetl plik

@ -0,0 +1,167 @@
syntax = "proto3";
package meshtastic;
option csharp_namespace = "Meshtastic.Protobufs";
option go_package = "github.com/meshtastic/go/generated";
option java_outer_classname = "LocalOnlyProtos";
option java_package = "com.geeksville.mesh";
option swift_prefix = "";
/*
* Protobuf structures for device-ui persistency
*/
message DeviceUIConfig {
/*
* TFT display brightness 1..255
*/
uint32 screen_brightness = 1;
/*
* Screen timeout 0..900
*/
uint32 screen_timeout = 2;
/*
* Screen lock enabled
*/
bool screen_lock = 3;
/*
* Color theme
*/
Theme theme = 4;
/*
* Audible message alert enabled
*/
bool alert_enabled = 5;
/*
* Localization
*/
Language language = 6;
/*
* Node list filter
*/
NodeFilter node_filter = 7;
/*
* Node list highlightening
*/
NodeHighlight node_highlight = 8;
}
message NodeFilter {
/*
* Filter unknown nodes
*/
bool switch_unknown = 1;
/*
* Filter offline nodes
*/
bool switch_offline = 2;
/*
* Filter nodes w/o public key
*/
bool switch_public_key = 3;
/*
* Filter based on hops away
*/
int32 hopys_away = 4;
/*
* Filter nodes w/o position
*/
bool switch_position = 5;
/*
* Filter nodes by matching name string
*/
string node_name = 6;
}
message NodeHighlight {
/*
* Hightlight nodes w/ active chat
*/
bool switch_chat = 1;
/*
* Highlight nodes w/ position
*/
bool switch_position = 2;
/*
* Highlight nodes w/ telemetry data
*/
bool switch_telemetry = 3;
/*
* Highlight nodes w/ iaq data
*/
bool switch_iaq = 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;
}

Wyświetl plik

@ -8,6 +8,7 @@ import "meshtastic/module_config.proto";
import "meshtastic/portnums.proto";
import "meshtastic/telemetry.proto";
import "meshtastic/xmodem.proto";
import "meshtastic/device_ui.proto";
option csharp_namespace = "Meshtastic.Protobufs";
option go_package = "github.com/meshtastic/go/generated";
@ -1640,6 +1641,11 @@ message FromRadio {
* Notification message to the client
*/
ClientNotification clientNotification = 16;
/*
* Persistent data for device-ui
*/
DeviceUIConfig deviceuiConfig = 17;
}
}