diff --git a/app/src/main/aidl/com/geeksville/mesh/IMeshService.aidl b/app/src/main/aidl/com/geeksville/mesh/IMeshService.aidl index 5912acb17..dff283be7 100644 --- a/app/src/main/aidl/com/geeksville/mesh/IMeshService.aidl +++ b/app/src/main/aidl/com/geeksville/mesh/IMeshService.aidl @@ -21,6 +21,9 @@ interface IMeshService { */ void setOwner(String myId, String longName, String shortName); + /// Return my unique user ID string + String getMyId(); + /* Send an opaque packet to a specified node name diff --git a/app/src/main/java/com/geeksville/mesh/service/MeshService.kt b/app/src/main/java/com/geeksville/mesh/service/MeshService.kt index e0da3b92f..908545a41 100644 --- a/app/src/main/java/com/geeksville/mesh/service/MeshService.kt +++ b/app/src/main/java/com/geeksville/mesh/service/MeshService.kt @@ -403,12 +403,18 @@ class MeshService : Service(), Logging { broadcastNodeChange(info) } + /// My node num + private val myNodeNum get() = myNodeInfo!!.myNodeNum + + /// My node ID string + private val myNodeID get() = toNodeID(myNodeNum) + /// Generate a new mesh packet builder with our node as the sender, and the specified node num private fun newMeshPacketTo(idNum: Int) = MeshPacket.newBuilder().apply { if (myNodeInfo == null) throw RadioNotConnectedException() - from = myNodeInfo!!.myNodeNum + from = myNodeNum to = idNum } @@ -659,6 +665,8 @@ class MeshService : Service(), Logging { clientPackages[receiverName] = packageName } + override fun getMyId() = toRemoteExceptions { myNodeID } + override fun setOwner(myId: String?, longName: String, shortName: String) = toRemoteExceptions { debug("SetOwner $myId : $longName : $shortName")