[FunctionName("BlobTriggerStart")]
    public static async Task BlobTriggerClientFunction(
         [BlobTrigger("photoscontainer/{name}",
         Connection ="StorageConnectionString")]
         CloudBlockBlob myBlob, string name,
         ILogger log, [DurableClient] IDurableOrchestrationClient starter)
     {
        try
        {
           log.LogInformation($"Orkiestracja została wyzwolona przez wyzwalacz BLOB. 
                                   Element blob o nazwie = '{name}'");
           // Dane wejściowe funkcji pochodzą z zawartości żądania
           if (myBlob != null)
           {
               var blobItem = new CloudBlobItem
               {
                   Name = myBlob.Name,
                   BlobUrl = myBlob.Uri.AbsoluteUri.ToString(),
                   Metadata = (Dictionary<string, string>)myBlob.Metadata,
                   FileType = myBlob.BlobType.ToString(),
                   Size = myBlob.Name.Length.ToString(),
                   ETag = myBlob.Properties.ETag.ToString()
               };

               var instanceId = await starter.StartNewAsync("StorageOrchestrator",
               blobItem);
               log.LogInformation($"Uruchomiono orkiestrację; ID = '{instanceId}'.");
           }
           else
           {
               log.LogError($"Blob został uruchomiony, ale element myCloudBlob był pusty");
           }
        }
        catch (Exception ex)
        { 
           // Do zrobienia: obsługa błędów
           log.LogError("Coś poszło źle. Kod błędu : " + ex.InnerException);
           throw;
        }
    }
