public Worker(
     ProcessHubClient processHubClient,
     InboxQueue queue,
     ILogger <Worker> logger)
 {
     ProcessHubClient = processHubClient;
     Queue            = queue;
     Logger           = logger;
 }
        protected override async Task ExecuteAsync(CancellationToken stoppingToken)
        {
            while (!stoppingToken.IsCancellationRequested)
            {
                var request = Queue.DequeueRequest();
                if (request != null)
                {
                    Logger.LogInformation($"Request received from {request.ConnectionId}");
                    await ProcessHubClient.UpdateDashboard(request.ConnectionId, "first");

                    await Task.Delay(2000);

                    await ProcessHubClient.UpdateDashboard(request.ConnectionId, "second");

                    await Task.Delay(1000);

                    await ProcessHubClient.UpdateDashboard(request.ConnectionId, "third");

                    await Task.Delay(3000);
                }

                await Task.Delay(1000);
            }
        }