Skip to main content

Hello all.

I require some guidance and clarification.

I need to develop an application that would automatically translate input data to another output format, e.g., test.dgn into test.shp

I have installed FMEServer and uploaded my workspace which does the work.

I have managed to upload an input file from my pc to my uploaded workspace in the FMEServer by using your javascript demo application.

However, my issue is that in reality my input files will be located in the Microsoft Azure Storage, and the workspace in FMEServer should be automatically triggered to run the process when it gets a call from my application with input link or when it sees that a new file where uploaded in Azure storage.

I have tested my workspace by manualy pasting in the file shared access link (URL link) from Azure blob container as an input value, and the workspace ran successfully.

I have read a bunch of articles about directories watch, and HTTPCaller, and as I am very new in the field, I got very confused.

Questions:

1) Is my described approach is possible?

2) Is it possible to watch a “File Share” or a “Blob Container” from Azure cloud or I need to use httpcoller?

3) What would be your suggestions?

Thank you in advance for your time and help.

Hi @linkas,

1) Yes, this is indeed possible.

2) For FME 2019.0 we added an AzureBlobStorageConnector which will allow you to list, download, upload & delete blobs in your Microsoft Azure Blob Storage.

Additionally, for FME Server 2019.0, we added a Microsoft Azure Event Grid integration which allows you to receive push notifications from Azure Event Grid in FME Server. With our new Automations framework, you will be able to easily trigger a workflow with an event sent to FME Server from Azure Event Grid. You can set up Azure Event Grid to send out event notifications whenever a blob is created or deleted in your Azure Blob Storage: https://docs.microsoft.com/en-us/azure/event-grid/blob-event-quickstart-portal

So with the combination of these 2 new FME integrations, you will be able to accomplish your scenario.

3) Wait for the FME 2019.0 release (approx. 4 weeks) or/and get a head start building a POC with our public available betas: https://www.safe.com/support/support-resources/fme-downloads/beta/

Azure Event Grid support is available in FME Server 2019.0 beta Build 19208 and higher. This build is available on FME Cloud right now: https://console.fmecloud.safe.com/signup?

One advantage of testing it on FME Cloud is that the FME Server instances on FME Cloud are already configured for SSL with a CA-singed certificate. This is a requirement for any webhook that is used with the Azure Event Grid.

We also plan to add support for Azure Queue Storage in the future which might also be an option to accomplish the same scenario. So stay tuned for new articles and blogs regarding Microsoft Azure in the future!

Also if you have any feedback regarding Azure Services that you would like to see supported in FME in the future please let us know and post a new Idea: https://knowledge.safe.com/content/idea/list.html

I hope this helps and let us know how this goes!


Hi @GerhardAtSafe

Thank you very much for your detailed answer. It sounds very interesting, and I am looking forward to trying the new version of FMEServer.


In order to keep things in one place, I will write my question as a comment in the previous question.

As it was suggested to accomplish my task I have deployed FME Server on the FME Cloud to have it configured with valid SLL certificate and avoid additional issues with certificate. However, I am failing with creating Azure Event Subscription. In the Azure documentation, I found that the problem can be in the handshake between Azure event grid and my Endpoint application. They suggesting manual handshake but I don't have any clue how to do it.

For Subscription endpoint, I am pasted link which I got from FME Server by creating automation.

My question would be how to accomplish the manual handshake?

Or if there are required additional settings in automatization configuration?

Thank you for your help.


In order to keep things in one place, I will write my question as a comment in the previous question.

As it was suggested to accomplish my task I have deployed FME Server on the FME Cloud to have it configured with valid SLL certificate and avoid additional issues with certificate. However, I am failing with creating Azure Event Subscription. In the Azure documentation, I found that the problem can be in the handshake between Azure event grid and my Endpoint application. They suggesting manual handshake but I don't have any clue how to do it.

For Subscription endpoint, I am pasted link which I got from FME Server by creating automation.

My question would be how to accomplish the manual handshake?

Or if there are required additional settings in automatization configuration?

Thank you for your help.

Hi @linkas,

Once you copied the Webhook Endpoint from the Azure Event Grid trigger in FME Server Automations you need to add it to the Event Grid Subscription that you create in Azure. Here's an example of the correct settings when creating the subscription via the Azure Portal:

I hope this helps!


Hi @GerhardAtSafe

Thank you for your response.

I am doing in the same way as you have explained, however, I am receiving an error.

Bellow, I have attached my screenshots with the error.

According to documentation, the problem could be in a handshake between Azure and Fme Server.

How could I solve this issue?

Thank you very much for your help.

BR, Linas


Hi @GerhardAtSafe

Thank you for your response.

I am doing in the same way as you have explained, however, I am receiving an error.

Bellow, I have attached my screenshots with the error.

According to documentation, the problem could be in a handshake between Azure and Fme Server.

How could I solve this issue?

Thank you very much for your help.

BR, Linas

The Webhook URL you are using is incorrect. https://fmeazure/eventgrid/?id=.... is neither publicly accessible nor a fully qualified domain name (FQDN) which are both requirements to make this work. If you add an Azure Event Grid trigger in FME Server Automations on FME Cloud you should receive a URL that looks like this:

 

https://<instance_name>-<account_name>.fmecloud.com/fmeazure/eventgrid/?id=.... as you can see in my screenshot above.

The Webhook URL you are using is incorrect. https://fmeazure/eventgrid/?id=.... is neither publicly accessible nor a fully qualified domain name (FQDN) which are both requirements to make this work. If you add an Azure Event Grid trigger in FME Server Automations on FME Cloud you should receive a URL that looks like this:

 

https://<instance_name>-<account_name>.fmecloud.com/fmeazure/eventgrid/?id=.... as you can see in my screenshot above.

The link is copied from FME Server automation. I also have clicked the validation button and got message in green color box that my link is valid 😞

But as you can see it is not correct.


The link is copied from FME Server automation. I also have clicked the validation button and got message in green color box that my link is valid 😞

But as you can see it is not correct.

Hi @linkas Can you confirm that you are using an FME Server that is hosted on FME Cloud(with a URL like this: https://<instance_name>-<account_name>.fmecloud.com)? Here is a quick demo on how this should look like when the server is hosted on FME Cloud:

 

If your FME Cloud instance indeed displays an incorrect URL please report a problem including a screenshot of your Event Grid trigger showing the URL and the version and build number of the FME Server instance on FME Cloud including the URL you use to login to that server at https://www.safe.com/support/.

 

 

Then we can take a closer look and hopefully resolve this issue.

Hi @linkas Can you confirm that you are using an FME Server that is hosted on FME Cloud(with a URL like this: https://<instance_name>-<account_name>.fmecloud.com)? Here is a quick demo on how this should look like when the server is hosted on FME Cloud:

 

If your FME Cloud instance indeed displays an incorrect URL please report a problem including a screenshot of your Event Grid trigger showing the URL and the version and build number of the FME Server instance on FME Cloud including the URL you use to login to that server at https://www.safe.com/support/.

 

 

Then we can take a closer look and hopefully resolve this issue.

Hi, @GerhardAtSafe.

Thank you very much for your help. Pointing out the wrong link helpt me allot.

I finally resolved my issue by creating a second instance on the cloud and choosing another location. In the new instance, I received the correct link. However, I will report this issue to support. Because I have the same issue on FME Server which is installed on Azure VM.

I have attached a video from my old server with wrong automation link.

Thank you very much for your time and a huge help.


Reply