static void DoSends(CancellationToken ct, string iotHubConnectionString) { // Was cancellation already requested? if (ct.IsCancellationRequested == true) { Console.WriteLine("DoSends was cancelled before it got started."); ct.ThrowIfCancellationRequested(); } long msgTime = 1473956534640; var deviceClient = DeviceClient.CreateFromConnectionString(iotHubConnectionString, TransportType.Amqp); while (true) { //send device to cloud telemetry var deviceToCloudMessage = new DeviceTelemetryMessage { datestamp = DateTime.UtcNow, response = "environment", temperature = lastTemp, humidity = 28.7, pressure = 100912 }; var messageString = JsonConvert.SerializeObject(deviceToCloudMessage); var sendTask = AzureIoTHub.SendDeviceToCloudMessageAsync(deviceClient, messageString); sendTask.Wait(ct); Console.WriteLine("Sent Message to Cloud: {0}", messageString); ct.WaitHandle.WaitOne(TimeSpan.FromSeconds(5));//wait before sending so we are not in a tight loop ++msgTime; } }
static void DoSends(CancellationToken ct) { // Was cancellation already requested? if (ct.IsCancellationRequested == true) { Console.WriteLine("DoSends was cancelled before it got started."); ct.ThrowIfCancellationRequested(); } long msgTime = 1473956534640; int iteration = 0; while (true) { //send device to cloud telemetry var deviceToCloudMessage = new DeviceTelemetryMessage { datestamp = DateTime.UtcNow, response = "environment", temperature = lastTemp, humidity = 28.7, pressure = 100912, message_id = Guid.NewGuid().ToString(), device_id = deviceId }; var messageString = JsonConvert.SerializeObject(deviceToCloudMessage); var sendTask = AzureIoTHub.SendDeviceToCloudMessageAsync(messageString, deviceToCloudMessage.message_id); sendTask.Wait(ct); Console.WriteLine("Sent Message to Cloud: {0}", messageString); ct.WaitHandle.WaitOne(TimeSpan.FromSeconds(sendIntervalInSeconds));//wait before sending so we are not in a tight loop ++msgTime; } }
protected override async void OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); _pinDht = _gpio.OpenPin(DHT11_PIN, GpioSharingMode.Exclusive); _dht11 = new Dht11(_pinDht, GpioPinDriveMode.Input); _pinLed = _gpio.OpenPin(LED_PIN); _pinLed.SetDriveMode(GpioPinDriveMode.Output); _pinLed.Write(GpioPinValue.Low); _timer.Start(); _startedAt = DateTimeOffset.Now; // Send IoT device info (once). if (_sendToCloud) { try { await AzureIoTHub.SendDeviceToCloudMessageAsync(JsonConvert.SerializeObject(_deviceInfo)); _gridOffline.Visibility = Visibility.Collapsed; } catch (Exception ex) { Debug.WriteLine("Problem sending to IoT Hub: " + ex.Message.ToString()); _gridOffline.Visibility = Visibility.Visible; } } }
//private string CheckForStateValue(eState newState) //{ // String lightStatus; // switch (newState) // { // case eState.JustRight: // { // lightStatus = JustRightLightString; // } // break; // case eState.TooBright: // { // lightStatus = HighLightString; // } // break; // case eState.TooDark: // { // lightStatus = LowLightString; // } // break; // default: // { // lightStatus = "N/A"; // } // break; // } // return lightStatus; //} private async Task SendDeviceToCloudMessageAsync(string status, BMP280SensorData BMP280SensorData, MCP3008SensorData MCP3008SensorData) { ConferenceRoomDataPoint conferenceRoomDataPoint = new ConferenceRoomDataPoint() { DeviceId = deviceName, Time = DateTime.UtcNow.ToString("o"), RoomTemp = BMP280SensorData.Temperature.ToString(), RoomPressure = BMP280SensorData.Pressure.ToString(), RoomAlt = BMP280SensorData.Altitude.ToString(), }; if (status == "Occupied") { conferenceRoomDataPoint.Color = "Red"; } else { conferenceRoomDataPoint.Color = "Green"; } var jsonString = JsonConvert.SerializeObject(conferenceRoomDataPoint); //var jsonStringInBytes = new Message(Encoding.ASCII.GetBytes(jsonString)); await AzureIoTHub.SendDeviceToCloudMessageAsync(jsonString); Debug.WriteLine("{0} > Sending message: {1}", DateTime.UtcNow, jsonString); }
async public Task Display(IDeviceMessage sensor) { await AzureIoTHub.SendDeviceToCloudMessageAsync(sensor.MachineID, JsonConvert.SerializeObject(sensor, new JsonSerializerSettings() { NullValueHandling = NullValueHandling.Ignore })); }
private async void SendButton_Click(object sender, RoutedEventArgs e) { AzureIoTHub.SendDeviceToCloudMessageAsync(); var message = await AzureIoTHub.ReceiveCloudToDeviceMessageAsync(); Debug.WriteLine("Message: " + message); }
private static async void sendMessage() { double avgWindSpeed = 10; // m/s Random rand = new Random(); while (true) { double currentWindSpeed = avgWindSpeed + rand.NextDouble() * 4 - 2; var telemetryDataPoint = new { deviceId = "myFirstDevice", windSpeed = currentWindSpeed }; var messageString = JsonConvert.SerializeObject(telemetryDataPoint); //var message = new Microsoft.Azure.Devices.Client.Message(Encoding.ASCII.GetBytes(messageString)); await AzureIoTHub.SendDeviceToCloudMessageAsync(messageString); // HelloMessage.Text = String.Format("{0} > Sending message: {1}", DateTime.Now, messageString); // Console.WriteLine("{0} > Sending message: {1}", DateTime.Now, messageString); Task.Delay(1000).Wait(); } // await AzureIoTHub.SendDeviceToCloudMessageAsync(); }
private void UpdateDevice_Click(object sender, RoutedEventArgs e) { AzureDevices SelectedDevice = (AzureDevices)DeviceList.SelectedItems[0]; if (TrueRadio.IsChecked.Value) { SelectedDevice.Status = true; } else { SelectedDevice.Status = false; } var index = DeviceList.Items.IndexOf(DeviceList.SelectedItem); list.RemoveAt(index); list.Insert(index, SelectedDevice); /* DeviceList.ItemsSource = null; * DeviceList.ItemsSource = list;*/ MyAzureClass myAzureClass = new MyAzureClass(); myAzureClass.UpdateRecordInTable(SelectedDevice); AzureIoTHub.SendDeviceToCloudMessageAsync(); }
private async Task CollectSensorData(IProgress <Measurement> progress) { using (ISenseHat senseHat = await SenseHatFactory.GetSenseHat()) { for (; ;) { try { senseHat.Sensors.HumiditySensor.Update(); senseHat.Sensors.PressureSensor.Update(); senseHat.Sensors.ImuSensor.Update(); var measurement = new Measurement() { Temperature = senseHat.Sensors.Temperature ?? 0, Humidity = senseHat.Sensors.Humidity ?? 0, Pressure = senseHat.Sensors.Pressure ?? 0, MagneticField = (Vector3)senseHat.Sensors.MagneticField, Gyroscope = (Vector3)senseHat.Sensors.Gyro, Acceleration = (Vector3)senseHat.Sensors.Acceleration }; progress.Report(measurement); await AzureIoTHub.SendDeviceToCloudMessageAsync(measurement); } catch (Exception e) { Debug.WriteLine("Exception: " + e.Message); } await Task.Delay(1000); } } }
public void Stop() { ena.Write(GpioPinValue.Low); enb.Write(GpioPinValue.Low); in1.Write(GpioPinValue.Low); in2.Write(GpioPinValue.Low); in3.Write(GpioPinValue.Low); in4.Write(GpioPinValue.Low); if (timerForward.IsRunning) { Debug.WriteLine("Tiempo hacia delante: " + timerForward.ElapsedMilliseconds); timerForward.Stop(); AzureIoTHub.SendDeviceToCloudMessageAsync((int)timerForward.ElapsedMilliseconds, "forward", true); } if (timerBacward.IsRunning) { Debug.WriteLine("Tiempo hacia atrás: " + timerBacward.ElapsedMilliseconds); timerBacward.Stop(); AzureIoTHub.SendDeviceToCloudMessageAsync((int)timerForward.ElapsedMilliseconds, "backward", true); } if (timerLeft.IsRunning) { Debug.WriteLine("Tiempo hacia izquierda: " + timerLeft.ElapsedMilliseconds); timerLeft.Stop(); AzureIoTHub.SendDeviceToCloudMessageAsync((int)timerForward.ElapsedMilliseconds, "left", false); } if (timerRight.IsRunning) { Debug.WriteLine("Tiempo hacia derecha: " + timerRight.ElapsedMilliseconds); timerRight.Stop(); AzureIoTHub.SendDeviceToCloudMessageAsync((int)timerForward.ElapsedMilliseconds, "right", false); } }
private async Task ReadAsync() { Task <UInt32> loadAsyncTask; uint ReadBufferLength = 1024; string MedValues = null; // Set InputStreamOptions to complete the asynchronous read operation when one or more bytes is available dataReaderObject.InputStreamOptions = InputStreamOptions.Partial; // Create a task object to wait for data on the serialPort.InputStream loadAsyncTask = dataReaderObject.LoadAsync(ReadBufferLength).AsTask(); UInt32 bytesRead = await loadAsyncTask; if (bytesRead > 0) { string pulseReading = dataReaderObject.ReadString(bytesRead) .Split(new[] { "\r", "\n" }, StringSplitOptions.RemoveEmptyEntries).Last().Trim(); MedValues = rcvdText.Text = $"Medical_IOT_PulseOximeter,John Doe,{pulseReading},17.438575,78.510194"; //,17.3971, 78.4903"; status.Text = "bytes read successfully!"; await AzureIoTHub.SendDeviceToCloudMessageAsync(MedValues); } await Task.Delay(TimeSpan.FromSeconds(3)); }
public async void uda() { int ud = 3; this.InitializeComponent(); await AzureIoTHub.SendDeviceToCloudMessageAsync(ud.ToString()); //await AzureIoTHub.ReceiveCloudToDeviceMessageAsync(luminozitate.ToString()); }
private void DeviceStatusButton_PointerPressed(object sender, PointerRoutedEventArgs e) { MainDevice.Status = true; MyAzureClass myAzureClass = new MyAzureClass(); myAzureClass.UpdateRecordInTable(MainDevice); AzureIoTHub.SendDeviceToCloudMessageAsync(); Debug.WriteLine("Button Pressed"); }
private async Task SendDataToAzure() { while (true) { if (SendDataToAzureIoTHub) { await AzureIoTHub.SendDeviceToCloudMessageAsync(); } await Task.Delay(1000); } }
public async void sendSong() { System.Diagnostics.Debug.WriteLine("sending..."); Dictionary <string, string> jsend = new Dictionary <string, string>(); DRP drp = new DRP(DRPDevType.RBPI, "yeguslavia", 2, 3, new System.Collections.Generic.List <float>(), 0, DRPMessageType.ILLEGAL); await AzureIoTHub.SendDeviceToCloudMessageAsync(drp.ToString()); System.Diagnostics.Debug.WriteLine("message send"); }
private async void SendGeoPosition(BasicGeoposition location) { // The location to reverse geocode. while (true) { string str = "ambulance2" + "," + location.Latitude.ToString() + "," + location.Longitude.ToString(); await AzureIoTHub.SendDeviceToCloudMessageAsync(str); await Task.Delay(10000); } }
private void SendMessagesToIoTHub() { Task.Run(async() => { try { await AzureIoTHub.SendDeviceToCloudMessageAsync(); } catch (Exception e) { Console.WriteLine(e.Message); } }); }
private async void _timer_Tick(object sender, object e) { DhtReading reading = new DhtReading(); int val = this.TotalAttempts; this.TotalAttempts++; reading = await _dht11.GetReadingAsync().AsTask(); _retryCount.Add(reading.RetryCount); this.OnPropertyChanged(nameof(AverageRetriesDisplay)); this.OnPropertyChanged(nameof(TotalAttempts)); this.OnPropertyChanged(nameof(PercentSuccess)); if (reading.IsValid) { this.TotalSuccess++; this.Temperature = Convert.ToSingle(reading.Temperature); this.Humidity = Convert.ToSingle(reading.Humidity); this.LastUpdated = DateTimeOffset.Now; // Set IoT data. _sensorData = new SensorData(); _sensorData.DeviceId = _deviceName; _sensorData.Temperature = Convert.ToSingle(reading.Temperature); _sensorData.ExternalTemperature = 20; _sensorData.Humidity = Convert.ToSingle(reading.Humidity); // Blink led. this.BlinkLed(); // Send IoT data. if (_sendToCloud) { try { await AzureIoTHub.SendDeviceToCloudMessageAsync(JsonConvert.SerializeObject(_sensorData)); _gridOffline.Visibility = Visibility.Collapsed; } catch (Exception ex) { Debug.WriteLine("Problem sending to IoT Hub: " + ex.Message.ToString()); _gridOffline.Visibility = Visibility.Visible; } } // Update UI. this.OnPropertyChanged(nameof(SuccessRate)); } this.OnPropertyChanged(nameof(LastUpdatedDisplay)); }
private async void send_button_Click(object sender, RoutedEventArgs e) { // Read data from the simulated sensor SensorData data = new SensorData(); data.Temperature = Convert.ToDouble(this.InTemperature.Text); data.Pressure = Convert.ToDouble(this.InPressure.Text); // Send data to the cloud await AzureIoTHub.SendDeviceToCloudMessageAsync(data); Debug.WriteLine(String.Format("Data sent: {0}, {1}", data.Temperature, data.Pressure)); }
public async void getData() { // Read data from the sensor WeatherData data = new WeatherData(); data.Temperature = tempAndPressure.Temperature.DegreesCelsius; data.Pressure = tempAndPressure.Pressure.Bars; // Send data to the cloud await AzureIoTHub.SendDeviceToCloudMessageAsync(data); Debug.WriteLine(String.Format("Data sent: {0}, {1}", data.Temperature, data.Pressure)); }
private async void buttonPin_ValueChangedAsync(GpioPin sender, GpioPinValueChangedEventArgs e) { MyAzureClass myAzureClass = new MyAzureClass(); // toggle the state of the LED every time the button is pressed if (e.Edge == GpioPinEdge.FallingEdge) { ledPinValue = (ledPinValue == GpioPinValue.Low) ? GpioPinValue.High : GpioPinValue.Low; ledPin.Write(ledPinValue); MainDevice.Status = Convert.ToBoolean(ledPinValue); myAzureClass.UpdateRecordInTable(MainDevice); AzureIoTHub.SendDeviceToCloudMessageAsync(); } }
private async void _timer_Tick(object sender, object e) { var temp = await _bme280.ReadTemperature(); var humidity = await _bme280.ReadHumidity(); var pressure = await _bme280.ReadPressure(); var altitude = await _bme280.ReadAltitude(seaLevelPressure); temp = (temp * 9) / 5 + 32;; await AzureIoTHub.SendDeviceToCloudMessageAsync(temp, humidity, pressure, altitude); Debug.WriteLine("Temp: {0} deg F", temp); Debug.WriteLine("Humidity: {0} %", humidity); Debug.WriteLine("Pressure: {0} Pa", pressure); Debug.WriteLine("Altitude: {0} m", altitude); }
}//发送指令 private async void UpLoadData(int PortNum, Router.Controller.FileIO Obj) { try { string[] DataQune = await Obj.PoPToCloud();//Obj.PoPOut();PoPToCloud(); foreach (var item in DataQune) { string content = ""; if (RSAFlag == true) { content = RSAConvert.PublicEncrypt(item);//RSA加密 } else { content = item; } if (AZureFlag == true)//使用AZure IoT { await AzureIoTHub.SendDeviceToCloudMessageAsync(item); } if (string.IsNullOrEmpty(content)) { continue; } using (DatagramSocket socket = new DatagramSocket()) { HostName broardaddr = new HostName(IPAddress.Broadcast.ToString()); IOutputStream outstream = await socket.GetOutputStreamAsync(broardaddr, PortNum.ToString()); DataWriter writer = new DataWriter(outstream); writer.UnicodeEncoding = UnicodeEncoding.Utf8; uint len = writer.MeasureString(content); writer.WriteUInt32(len); writer.WriteString(content); await writer.StoreAsync(); writer.Dispose(); } } } catch (Exception) { } }//向云上传数据
private async void FileReadTimer_Tick(ThreadPoolTimer timer) { Debug.WriteLine("ReadFile"); Windows.Storage.StorageFolder storageFolder = Windows.Storage.KnownFolders.PicturesLibrary; //.ApplicationData.Current.LocalFolder; try { Windows.Storage.StorageFile dFile = await storageFolder.GetFileAsync("app2cloud.txt"); var list = await Windows.Storage.FileIO.ReadLinesAsync(dFile); if (list.Count > 0) { foreach (string s in list) { try { if (deviceId != null) { Debug.Write("."); DateTime d = DateTime.UtcNow; long x = d.ToFileTime(); await AzureIoTHub.SendDeviceToCloudMessageAsync("{\"pkey\":\"" + deviceId + "\", \"rkey\":\"" + x.ToString() + "\",\"status\":\"" + s + "\"}"); } } catch { Debug.Write("e"); } } } else { } } catch (Exception ex) { Debug.Write("E"); } this.fileReadTimer = ThreadPoolTimer.CreateTimer(FileReadTimer_Tick, TimeSpan.FromMilliseconds(900)); }
private async Task UpdateBatteryInfo() { BatteryReport br = await this.GetBatteryStatus(); DateTime d = DateTime.UtcNow; long x = d.ToFileTime(); if (br == null) { await AzureIoTHub.SendDeviceToCloudMessageAsync("{\"pkey\":\"" + deviceId + "\", \"rkey\":\"" + x.ToString() + "\",\"status\":\"Idle\", \"rate\":\"0\", \"percent\":\"100\"}"); } else { Debug.WriteLine(br.Status.ToString()); Debug.WriteLine("Rate: " + br.ChargeRateInMilliwatts.Value.ToString() + "mW"); Debug.WriteLine("Remaining: " + PowerManager.RemainingChargePercent.ToString() + "% " + PowerManager.RemainingDischargeTime.Hours.ToString() + "h " + PowerManager.RemainingDischargeTime.Minutes.ToString() + "min"); //mt.SendData("R:"+ br.ChargeRateInMilliwatts.Value.ToString() + "P:" + PowerManager.RemainingChargePercent.ToString()); await AzureIoTHub.SendDeviceToCloudMessageAsync("{\"pkey\":\"" + deviceId + "\", \"rkey\":\"" + x.ToString() + "\",\"status\":\"" + br.Status.ToString() + "\", \"rate\":\"" + br.ChargeRateInMilliwatts.Value.ToString() + "\", \"percent\":\"" + PowerManager.RemainingChargePercent.ToString() + "\"}"); }//ScreenCapture screen = ScreenCapture.GetForCurrentView(); }
public override void Run() { // notify with blue screen SenseHat.Display.Clear(); SenseHat.Display.Fill(Colors.DeepSkyBlue); SenseHat.Display.Update(); //update the sensor SenseHat.Sensors.HumiditySensor.Update(); SenseHat.Sensors.PressureSensor.Update(); // get the data to send SenseHatDatas data = new SenseHatDatas(); data.TemperatureData = SenseHat.Sensors.Temperature; data.HumidityData = SenseHat.Sensors.Humidity; data.PressureData = SenseHat.Sensors.Pressure; // send to cloud AzureIoTHub.SendDeviceToCloudMessageAsync(data); ActionRunner.Run(senseHat => HomeSelector.GetAction(senseHat, SetScreenText)); }
void dispatcherTimer_Tick(object sender, object e) { System.Diagnostics.Debug.WriteLine("dispatcherTimer_Tick()"); DateTimeOffset time = DateTimeOffset.Now; TimeSpan span = time - lastTime; lastTime = time; try { TelemtryData data = MeasureTelemetry(); //sensor.Measure(); //string sensorTemperatureInFahrenheit = sensor.TemperatureInFahrenheit.ToString(); //string sensorHumidity = sensor.Humidity.ToString(); string sensorTemperatureInFahrenheit = data.Temperature.ToString(); string sensorHumidity = data.Humidity.ToString(); this.txtT.Text = sensorTemperatureInFahrenheit + " F"; this.txtH.Text = sensorHumidity + " %"; display.SetText("T:" + sensorTemperatureInFahrenheit + " F.\nH:" + sensorHumidity + " %. ").SetBacklightRgb(127, 127, 127);; string msgString = Newtonsoft.Json.JsonConvert.SerializeObject(data); System.Diagnostics.Debug.WriteLine("json:" + msgString); Task.Run(async() => { //await AzureIoTHub.SendDeviceToCloudMessageAsync(msgString); await AzureIoTHub.SendDeviceToCloudMessageAsync(msgString); }); } catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex.ToString()); } }
private void DeviceStatus_Clicked(object sender, RoutedEventArgs e) { if (DeviceStatusButton.IsEnabled) { if (DeviceStatusButton.Content.ToString() == "Not Clicked") { MainDevice.Status = true; MyAzureClass myAzureClass = new MyAzureClass(); myAzureClass.UpdateRecordInTable(MainDevice); AzureIoTHub.SendDeviceToCloudMessageAsync(); Debug.WriteLine("Button Pressed"); DeviceStatusButton.Content = "Clicked"; } else { MainDevice.Status = false; MyAzureClass myAzureClass = new MyAzureClass(); myAzureClass.UpdateRecordInTable(MainDevice); AzureIoTHub.SendDeviceToCloudMessageAsync(); Debug.WriteLine("Button Released"); DeviceStatusButton.Content = "Not Clicked"; } } }
public async void Run(IBackgroundTaskInstance taskInstance) { Debug.WriteLine("Running...."); InitGPIO(); pin.Write(GpioPinValue.High); BackgroundTaskDeferral deferral = taskInstance.GetDeferral(); mfrc = new Mfrc522(); await mfrc.InitIO(); // Main loop while (true) { //true when an RFiD tag is detected if (mfrc.IsTagPresent()) { pin.Write(GpioPinValue.Low); Debug.WriteLine("IsTagPresent() == True."); //read the UUID from the card Uid uid = mfrc.ReadUid(); Debug.WriteLine("Tag value == " + uid.ToString()); //rfid controller halt state //mfrc.HaltTag(); //Send message to IoT Hub await AzureIoTHub.SendDeviceToCloudMessageAsync(uid.ToString()); pin.Write(GpioPinValue.High); } //sleep await System.Threading.Tasks.Task.Delay(TimeSpan.FromSeconds(1)); } //deferral.Complete(); }
public override async void OnNext(ObdState value) { var message = value.ToJson(); await _hub.SendDeviceToCloudMessageAsync(message); }