public static async Task SendMessageDataAsync(string deviceId, string iotHub, string sas, DeviceMessage message, CancellationToken cancellationToken) { Uri baseAddress = new UriBuilder("https", string.Concat(iotHub, IoTHubUrlPostfix), 443).Uri; Uri endPoint = new Uri( string.Format(CultureInfo.InvariantCulture, DeviceMessageRequestUriFromat, deviceId, ApiVersionQueryString), UriKind.Relative); IDictionary <string, string> properties = new Dictionary <string, string>(); if (message.CorrelationId != string.Empty) { properties.Add(MessageCorrelationIdHeaderKey, message.CorrelationId); } if (message.MessageId != string.Empty) { properties.Add(MessageMessageIdHeaderKey, message.MessageId); } if (message.UserId != string.Empty) { properties.Add(MessageUserIdHeaderKey, message.UserId); } foreach (KeyValuePair <string, string> pair in message.Properties) { properties.Add(string.Concat(MessagePropertyHeaderPrefix, pair.Key), pair.Value); } await SendWebRequest(baseAddress, endPoint, HttpMethod.Post, sas, message.Data, cancellationToken, properties); }
public static async Task SendMessageDataAsync(string deviceId, string iotHub, string sas, DeviceMessage message) { await SendMessageDataAsync(deviceId, iotHub, sas, message, CancellationToken.None); }