static void ReceiveCommands(DeviceClient deviceClient) { Debug.Print("Device waiting for commands from IoTHub..."); Message receivedMessage; string messageData; while (true) { receivedMessage = deviceClient.Receive(); if (receivedMessage != null) { StringBuilder sb = new StringBuilder(); foreach (byte b in receivedMessage.GetBytes()) { sb.Append((char)b); } messageData = sb.ToString(); // dispose string builder sb = null; Debug.Print(DateTime.Now.ToLocalTime() + "> Received message: " + messageData); deviceClient.Complete(receivedMessage); } Thread.Sleep(10000); } }
static void ReceiveCommands(DeviceClient deviceClient) { Debug.Print("Device waiting for commands from IoTHub..."); Message receivedMessage; string messageData; while (true) { receivedMessage = deviceClient.Receive(); if (receivedMessage != null) { StringBuilder sb = new StringBuilder(); foreach (byte b in receivedMessage.GetBytes()) { sb.Append((char)b); } messageData = sb.ToString(); // dispose string builder sb = null; Debug.Print(DateTime.Now.ToLocalTime() + "> Received message: " + messageData); deviceClient.Complete(receivedMessage); } // Note: In this sample, the polling interval is set to // 10 seconds to enable you to see messages as they are sent. // To enable an IoT solution to scale, you should extend this // interval. For example, to scale to 1 million devices, set // the polling interval to 25 minutes. // For further information, see // https://azure.microsoft.com/documentation/articles/iot-hub-devguide/#messaging Thread.Sleep(10000); } }