async void DroneClient_NavigationDataAcquired(AR.Drone.Data.Navigation.NavigationData obj) { if (deviceClient != null) { if (DateTime.Now.Subtract(last).TotalMilliseconds > 1000) { last = DateTime.Now; try { var info = new { DeviceID = deviceId, Battery = obj.Battery.Percentage, obj.Yaw, obj.Pitch, obj.Roll, obj.Altitude, State = obj.State.ToString(), Timestamp = DateTime.UtcNow }; var infoString = JsonConvert.SerializeObject(info); Message msg = new Message(Encoding.UTF8.GetBytes(infoString)); msg.Properties.Add("type", "telemetry"); await deviceClient.SendEventAsync(msg).ConfigureAwait(false); } catch (Exception ex) { Logger.LogException(ex); } } } }
private void DroneClient_NavigationDataAcquired(AR.Drone.Data.Navigation.NavigationData obj) { Altitude = obj.Altitude; Battery = obj.Battery.Percentage; }