@@ -875,14 +875,28 @@ def _handleFromRadio(self, fromRadioBytes):
875875 elif fromRadio .HasField ("queueStatus" ):
876876 self ._handleQueueStatusFromRadio (fromRadio .queueStatus )
877877
878- elif fromRadio .rebooted :
878+ elif fromRadio .HasField ("mqttClientProxyMessage" ):
879+ publishingThread .queueWork (
880+ lambda : pub .sendMessage (
881+ "meshtastic.mqttclientproxymessage" , proxymessage = fromRadio .mqttClientProxyMessage , interface = self
882+ )
883+ )
884+
885+ elif fromRadio .HasField ("xmodemPacket" ):
886+ publishingThread .queueWork (
887+ lambda : pub .sendMessage (
888+ "meshtastic.xmodempacket" , packet = fromRadio .xmodemPacket , interface = self
889+ )
890+ )
891+
892+ elif fromRadio .HasField ("rebooted" ) and fromRadio .rebooted :
879893 # Tell clients the device went away. Careful not to call the overridden
880894 # subclass version that closes the serial port
881895 MeshInterface ._disconnected (self )
882896
883897 self ._startConfig () # redownload the node db etc...
884898
885- elif fromRadio .config or fromRadio .moduleConfig :
899+ elif fromRadio .HasField ( " config" ) or fromRadio .HasField ( " moduleConfig" ) :
886900 if fromRadio .config .HasField ("device" ):
887901 self .localNode .localConfig .device .CopyFrom (fromRadio .config .device )
888902 elif fromRadio .config .HasField ("position" ):
0 commit comments