meshtastic-protobuf/portnums.proto

74 wiersze
2.9 KiB
Protocol Buffer

syntax = "proto3";
option java_package = "com.geeksville.mesh";
option java_outer_classname = "Portnums";
option optimize_for = LITE_RUNTIME;
/**
For any new 'apps' that run on the device or via sister apps on phones/PCs they should pick and use a
unique 'portnum' for their application.
If you are making a new app using meshtastic, please send in a pull request to add your 'portnum' to this
master table. PortNums should be assigned in the following range:
0-63 Core Meshtastic use, do not use for third party apps
64-127 Registered 3rd party apps, send in a pull request that adds a new entry to portnums.proto to
register your application
256-511 Use one of these portnums for your private applications that you don't want to register publically
1024-66559 Are reserved for use by IP tunneling (see FIXME for more information)
All other values are reserved.
Note: This was formerly a Type enum named 'typ' with the same id #
We have change to this 'portnum' based scheme for specifying app handlers for particular payloads.
This change is backwards compatible by treating the legacy OPAQUE/CLEAR_TEXT values identically.
*/
enum PortNum {
/** Deprecated: do not use in new code (formerly called OPAQUE)
A message sent from a device outside of the mesh, in a form the mesh
does not understand
NOTE: This must be 0, because it is documented in IMeshService.aidl to be so
*/
UNKNOWN_APP = 0;
/** a simple UTF-8 text message, which even the little micros in the mesh
can understand and show on their screen eventually in some circumstances
even signal might send messages in this form (see below)
Formerly called CLEAR_TEXT */
TEXT_MESSAGE_APP = 1;
/** a message receive acknowledgement, sent in cleartext - allows radio to
show user that a message has been read by the recipient, optional
Note: this concept has been removed for now. Once READACK is implemented, use the
new packet type/port number stuff?
@exclude
CLEAR_READACK = 2;
*/
/** Reserved for built-in GPIO/example app.
See remote_hardware.proto/HardwareMessage for details on the message sent/received to this port number
*/
REMOTE_HARDWARE_APP = 2;
/** The built-in position messaging app.
See Position for details on the message sent to this port number.
*/
POSITION_APP = 3;
/** The built-in user info app.
See User for details on the message sent to this port number.
*/
NODEINFO_APP = 4;
/** 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 bin/regin_protos.sh) */
PRIVATE_APP = 256;
/** 1024-66559 Are reserved for use by IP tunneling (see FIXME for more information) */
IP_TUNNEL_APP = 1024;
}