Beispiel #1
0
 public Worker(ILogger <Worker> logger,
               EventDispatcher dispatcher,
               IOptions <AzureServiceBusConfig> configuration)
 {
     _logger        = logger;
     _dispatcher    = dispatcher;
     _configuration = configuration.Value;
 }
Beispiel #2
0
        private static void CriticalNotificationMonitor(
            AzureServiceBusConfig serviceBusConfig,
            string iotHubConnectionString,
            string deviceId,
            CancellationToken token)
        {
            var client = QueueClient.CreateFromConnectionString(serviceBusConfig.ConnectionString,
                                                                serviceBusConfig.QueueName);

            var serviceClient = ServiceClient.CreateFromConnectionString(iotHubConnectionString);

            client.OnMessage(async message =>
            {
                var status = (Status)Enum.Parse(
                    typeof(Status),
                    (string)message.Properties[MessageProperty.Status.ToString("G")]);

                switch (status)
                {
                case Status.Pending:
                    // Send message to accept state change.
                    Console.WriteLine();
                    var m = new CloudToDeviceMethod(DeviceMethods.AcceptDesiredProperties.ToString("G"),
                                                    TimeSpan.FromSeconds(30));
                    var result = await serviceClient.InvokeDeviceMethodAsync(deviceId, m, token);
                    $"Device responded with result code: {result.Status} and message: {result.GetPayloadAsJson()}"
                    .LogMessage(ConsoleColor.Green);

                    break;

                case Status.Rejected:
                    var body = new StreamReader(message.GetBody <Stream>()).ReadToEnd();
                    $"Setting value was rejected by the device: '{deviceId}' with message: '{body}'. Please enter a new legal value: "
                    .LogMessage(ConsoleColor.Red);
                    break;

                case Status.Accepted:
                case Status.PreconditionFailed:
                default:
                    throw new ArgumentException();
                }
            });
        }
 public MessageSender(IOptions <AzureServiceBusConfig> config)
 {
     _config = config.Value;
 }
 public AzureServiceBusSender(IOptions <AzureServiceBusConfig> options)
 {
     _serviceBusConfig = options.Value;
 }
Beispiel #5
0
 public AzureServiceBusConnectionManager(AzureServiceBusConfig config)
 {
     _config = config;
 }