NodeInfo class

The bluetooth to device link: Old BTLE protocol docs from TODO, merge in above and make real docs... use protocol buffers, and NanoPB messages from device to phone: POSITION_UPDATE (..., time) TEXT_RECEIVED(from, text, time) OPAQUE_RECEIVED(from, payload, time) (for signal messages or other applications) messages from phone to device: SET_MYID(id, human readable long, human readable short) (send down the unique ID string used for this node, a human readable string shown for that id, and a very short human readable string suitable for oled screen) SEND_OPAQUE(dest, payload) (for signal messages or other applications) SEND_TEXT(dest, text) Get all nodes() (returns list of nodes, with full info, last time seen, loc, battery level etc) SET_CONFIG (switches device to a new set of radio params and preshared key, drops all existing nodes, force our node to rejoin this new group) Full information about a node on the mesh

Available extensions

Constructors

NodeInfo.new({int? num, User? user, Position? position, double? snr, int? lastHeard, DeviceMetrics? deviceMetrics, int? channel, bool? viaMqtt, int? hopsAway, bool? isFavorite, bool? isIgnored, bool? isKeyManuallyVerified})
factory
NodeInfo.fromBuffer(List<int> data, [ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY])
factory
NodeInfo.fromJson(String json, [ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY])
factory

Properties

channel int
local channel index we heard that node on. Only populated if its not the default channel.
getter/setter pair
deviceMetrics DeviceMetrics
The latest device metrics for the node.
getter/setter pair
hashCode int
Calculates a hash code based on the contents of the protobuf.
no setterinherited
hopsAway int
Number of hops away from us this node is (0 if direct neighbor)
getter/setter pair
info_ → BuilderInfo
no setter
isFavorite bool
True if node is in our favorites list Persists between NodeDB internal clean ups
getter/setter pair
isFrozen bool
Returns true if this message is marked read-only. Otherwise false.
no setterinherited
isIgnored bool
True if node is in our ignored list Persists between NodeDB internal clean ups
getter/setter pair
isKeyManuallyVerified bool
True if node public key has been verified. Persists between NodeDB internal clean ups LSB 0 of the bitfield
getter/setter pair
lastHeard int
Set to indicate the last time we received a packet from this node
getter/setter pair
num int
The node number
getter/setter pair
position Position
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.
getter/setter pair
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
snr double
Returns the Signal-to-noise ratio (SNR) of the last received message, as measured by the receiver. Return SNR of the last received message in dB
getter/setter pair
unknownFields → UnknownFieldSet
no setterinherited
user User
The user info for this node
getter/setter pair
viaMqtt bool
True if we witnessed the node over MQTT instead of LoRA transport
getter/setter pair

Methods

addExtension(Extension extension, Object? value) → void
Adds an extension field value to a repeated field.
inherited
check() → void
Throws a StateError if the message has required fields without a value.
inherited
clear() → void
Clears all data that was set in this message.
inherited
clearChannel() → void
clearDeviceMetrics() → void
clearExtension(Extension extension) → void
Clears an extension field and also removes the extension.
inherited
clearField(int tagNumber) → void
Clears the contents of a given field.
inherited
clearHopsAway() → void
clearIsFavorite() → void
clearIsIgnored() → void
clearIsKeyManuallyVerified() → void
clearLastHeard() → void
clearNum() → void
clearPosition() → void
clearSnr() → void
clearUser() → void
clearViaMqtt() → void
clone() NodeInfo
Creates a deep copy of the fields in this message. (The generated code uses mergeFromMessage.)
copyWith(void updates(NodeInfo)) NodeInfo
Apply updates to a copy of this message.
createEmptyInstance() NodeInfo
Creates an empty instance of the same message type as this.
deepCopy() → T

Available on T, provided by the GeneratedMessageGenericExtensions extension

Returns a writable deep copy of this message.
ensureDeviceMetrics() DeviceMetrics
ensurePosition() Position
ensureUser() User
extensionsAreInitialized() bool
inherited
freeze() → GeneratedMessage
Make this message read-only.
inherited
getDefaultForField(int tagNumber) → dynamic
Returns the default value for the given field.
inherited
getExtension(Extension extension) → dynamic
Returns the value of extension.
inherited
getField(int tagNumber) → dynamic
Returns the value of the field associated with tagNumber, or the default value if it is not set.
inherited
getFieldOrNull(int tagNumber) → dynamic
Returns the value of a field, ignoring any defaults.
inherited
getTagNumber(String fieldName) int?
inherited
hasChannel() bool
hasDeviceMetrics() bool
hasExtension(Extension extension) bool
Returns true if a value of extension is present.
inherited
hasField(int tagNumber) bool
Whether this message has a field associated with tagNumber.
inherited
hasHopsAway() bool
hasIsFavorite() bool
hasIsIgnored() bool
hasIsKeyManuallyVerified() bool
hasLastHeard() bool
hasNum() bool
hasPosition() bool
hasRequiredFields() bool
Whether the message has required fields.
inherited
hasSnr() bool
hasUser() bool
hasViaMqtt() bool
isInitialized() bool
Whether all required fields in the message and embedded messages are set.
inherited
mergeFromBuffer(List<int> input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) → void
Merges serialized protocol buffer data into this message.
inherited
mergeFromCodedBufferReader(CodedBufferReader input, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) → void
Same as mergeFromBuffer, but takes a CodedBufferReader input.
inherited
mergeFromJson(String data, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) → void
Merges field values from data, a JSON object, encoded as described by GeneratedMessage.writeToJson.
inherited
mergeFromJsonMap(Map<String, dynamic> json, [ExtensionRegistry extensionRegistry = ExtensionRegistry.EMPTY]) → void
Merges field values from a JSON object represented as a Dart map.
inherited
mergeFromMessage(GeneratedMessage other) → void
Merges the contents of the other into this message.
inherited
mergeFromProto3Json(Object? json, {TypeRegistry typeRegistry = const TypeRegistry.empty(), bool ignoreUnknownFields = false, bool supportNamesWithUnderscores = true, bool permissiveEnums = false}) → void
Merges field values from json, a JSON object using proto3 encoding.
inherited
mergeUnknownFields(UnknownFieldSet unknownFieldSet) → void
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
rebuild(void updates(T)) → T

Available on T, provided by the GeneratedMessageGenericExtensions extension

Apply updates to a copy of this message.
setExtension(Extension extension, Object value) → void
Sets the value of a non-repeated extension field to value.
inherited
setField(int tagNumber, Object value) → void
Sets the value of a field by its tagNumber.
inherited
toBuilder() → GeneratedMessage
Creates a writable, shallow copy of this message.
inherited
toDebugString() String
Returns a String representation of this message.
inherited
toProto3Json({TypeRegistry typeRegistry = const TypeRegistry.empty()}) Object?
Returns an Object representing Proto3 JSON serialization of this.
inherited
toString() String
Returns a String representation of this message.
inherited
writeToBuffer() Uint8List
Serialize the message as the protobuf binary format.
inherited
writeToCodedBufferWriter(CodedBufferWriter output) → void
Same as writeToBuffer, but serializes to the given CodedBufferWriter.
inherited
writeToJson() String
Returns a JSON string that encodes this message.
inherited
writeToJsonMap() Map<String, dynamic>
Returns the JSON encoding of this message as a Dart Map.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Methods

create() NodeInfo
createRepeated() → PbList<NodeInfo>
getDefault() NodeInfo