From 2b113141e410957ef5683efd19efcc02a59b4e8c Mon Sep 17 00:00:00 2001 From: Garth Vander Houwen Date: Wed, 1 Feb 2023 10:04:37 -0800 Subject: [PATCH] Use device metadata for shutdown and reboot functionality --- Meshtastic/Views/Nodes/NodeDetail.swift | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/Meshtastic/Views/Nodes/NodeDetail.swift b/Meshtastic/Views/Nodes/NodeDetail.swift index c00d475b..3e9b0d56 100644 --- a/Meshtastic/Views/Nodes/NodeDetail.swift +++ b/Meshtastic/Views/Nodes/NodeDetail.swift @@ -357,11 +357,11 @@ struct NodeDetail: View { } } - if self.bleManager.connectedPeripheral != nil && self.bleManager.connectedPeripheral.num == node.num && self.bleManager.connectedPeripheral.num == node.num { + if self.bleManager.connectedPeripheral != nil && self.bleManager.connectedPeripheral.num == node.num && self.bleManager.connectedPeripheral.num == node.num && node.metadata != nil { HStack { - if node.metadata != nil && node.metadata?.canShutdown ?? false { + if node.metadata?.canShutdown ?? false { Button(action: { showingShutdownConfirm = true @@ -440,6 +440,10 @@ struct NodeDetail: View { }) .onAppear { self.bleManager.context = context + + let connectedNode = getNodeInfo(id: bleManager.connectedPeripheral.num, context: context) + let adminMessageId = bleManager.requestDeviceMetadata(fromUser: connectedNode.user!, toUser: node.user!, adminIndex: node.myInfo!.adminIndex, context: context) + } .task(id: node.num) { do {