Question

FME Challenge: 12 Days of FME Hackathon

  • 30 November 2017
  • 79 replies
  • 11 views


Show first post

79 replies

Badge +3

A title.

Server log saver and timeline visualizer

A brief description.

We have more and more schedules and I was less and less enthusiast to go through long-long list of logs (instead of building a snowman army for example now ???) when someone didn't like something

Half a year ago I opted not to care with a few SLAs and build something visual (no, I cannot build nice tings) that save me some boring time ?.

I end up with this.

The workspace saves the Server log to a staging table (on request) for future reference. No cleanup now, the size of the table is the discretion whoever cares with it.

The timeline control is Google Charts (sorry anyone from China). It is not my dream as a timeline (no control over individual colours, no navigation, etc) but I just couldn't find anything decent. Until I hack one (that would look as nice as FME Server Schedules Dashboard inspiration) I chose a quick win solution temporarily.

fme-job-history-to-google-timeline.fmw

Userlevel 5

A title.

Server log saver and timeline visualizer

A brief description.

We have more and more schedules and I was less and less enthusiast to go through long-long list of logs (instead of building a snowman army for example now ???) when someone didn't like something

Half a year ago I opted not to care with a few SLAs and build something visual (no, I cannot build nice tings) that save me some boring time ?.

I end up with this.

The workspace saves the Server log to a staging table (on request) for future reference. No cleanup now, the size of the table is the discretion whoever cares with it.

The timeline control is Google Charts (sorry anyone from China). It is not my dream as a timeline (no control over individual colours, no navigation, etc) but I just couldn't find anything decent. Until I hack one (that would look as nice as FME Server Schedules Dashboard inspiration) I chose a quick win solution temporarily.

fme-job-history-to-google-timeline.fmw

Didn't know I wanted this before now. You should post this as an idea for the Dashboard :-)
Userlevel 5
Badge +30

A title.

Executing a Workspace by phone call

A brief description.

Imagine your customer needs to Geocode so many addresses, but he would like to run your workspace from a phone call.

These Addresses are in Excel format in repository BOX and so many peoples are working in this Excel file.

Suddenly your client is not in the company and needs to run the flow and receive by email the results.

For this just call a phone number and the FME Server will start the process for you.

What you need is a Twilio Account ( www.twilio.com ), FME Server ( to schedule the workspace ) , a BOX account ( www.box.com ).

A file containing your project demo or result:

 

twilio-workspacec.fmwt

 

Userlevel 5
Badge +30

A title.

Executing a Workspace by phone call

A brief description.

Imagine your customer needs to Geocode so many addresses, but he would like to run your workspace from a phone call.

These Addresses are in Excel format in repository BOX and so many peoples are working in this Excel file.

Suddenly your client is not in the company and needs to run the flow and receive by email the results.

For this just call a phone number and the FME Server will start the process for you.

What you need is a Twilio Account ( www.twilio.com ), FME Server ( to schedule the workspace ) , a BOX account ( www.box.com ).

A file containing your project demo or result:

 

twilio-workspacec.fmwt

 

Badge

TITLE:

 

Predicting football results using FME. Reducing hours of analysis down to 10 seconds.

 

 

BRIEF DESCRIPTION:

 

There are hundreds of football games taking place across Europe each weekend. To determine the best matches to place a wager can be very difficult. Using open data (upcoming fixtures compared with historical form) I am using FME to quickly analyse the matches that are best to bet on each game week. What used to take hours to analyse is now being achieved using an FME workspace that takes under 10 seconds to run. I have it set up on FME Server to send me (and my friends!) an email each time there are new decent bets available. It also now tweets from a new dedicated account @deadcerts.

 

I'm sharing the workspace here, and hopefully I will get some feedback and improvements from other tied up with FME and Football as their main work/hoby! If you make any improvements, which I'm sure you will, then maybe we can collaborate on a Github project? You can contact me @pinpointalerts

 

DOWNLOAD THE WORKSPACE:

 

fme-football-predictor.zip

 

Badge +14

A title.

Server log saver and timeline visualizer

A brief description.

We have more and more schedules and I was less and less enthusiast to go through long-long list of logs (instead of building a snowman army for example now ???) when someone didn't like something

Half a year ago I opted not to care with a few SLAs and build something visual (no, I cannot build nice tings) that save me some boring time ?.

I end up with this.

The workspace saves the Server log to a staging table (on request) for future reference. No cleanup now, the size of the table is the discretion whoever cares with it.

The timeline control is Google Charts (sorry anyone from China). It is not my dream as a timeline (no control over individual colours, no navigation, etc) but I just couldn't find anything decent. Until I hack one (that would look as nice as FME Server Schedules Dashboard inspiration) I chose a quick win solution temporarily.

fme-job-history-to-google-timeline.fmw

Ooh, I wonder what DanRSecret.fmw does. I suppose you'll tell me it's a secret!!

 

 

Badge +14
The 12 days of xmas generator

Workspace that generates the lyrics for the song and uses the system speech synthesizer to "sing" it out on your loudspeaker. A guaranteed hit at the family dinner!

Workspace: 12daysofxmas.fmw

Output: 12 day of xmas.mp3 (Dropbox link, the forum didn't like my mp3)

Requirements:

If you don't want to install anything and just want to play around, simply disable the PythonCaller at the end.

Ho ho ho and happy holidays!

That's actually quite difficult to listen to, but I love it. I'm going to try to slip this MP3 onto my local supermarket's playlist to see how it affects shopping habits! Nice work.

 

 

Badge +21

Inspiration for this project was: https://www.3ders.org/articles/20161220-3d-printed-gingerbread-house-lets-you-celebrate-christmas-the-scandinavian-way.html

a) GingerbreadhouseGenerator b) Converts your fancy 3D-modelled house (for instance from Sketchup) to a 2D-model possible to print and build a gingerbreadhouse from the parts! c) Workspace can be sent upon requests by commenting this article. Below are the steps used in the workspace! I do not guarantee for the printed papers and the finished 3D Gingerbreadhouse! 1. Select area with house:

2. Look at the result in Sketcup

3. Get a single house:

4. Explode the house into individual parts:

5. Workspace with description

6. End result - one PDF per part - and the simple PDF

7. Rent a bakery and print all the roughly 40 000 000 + parts to all the 2 770 000+ houses in Norway (TODO)

TODO if enough interest:

- Bake the house

- Rotate the geoemetries to "flat surface" by using the SurfaceNormalCalculator and 3DAffiner to get correct geometries.

Badge +21

Inspiration for this project was: https://www.3ders.org/articles/20161220-3d-printed-gingerbread-house-lets-you-celebrate-christmas-the-scandinavian-way.html

a) GingerbreadhouseGenerator b) Converts your fancy 3D-modelled house (for instance from Sketchup) to a 2D-model possible to print and build a gingerbreadhouse from the parts! c) Workspace can be sent upon requests by commenting this article. Below are the steps used in the workspace! I do not guarantee for the printed papers and the finished 3D Gingerbreadhouse! 1. Select area with house:

2. Look at the result in Sketcup

3. Get a single house:

4. Explode the house into individual parts:

5. Workspace with description

6. End result - one PDF per part - and the simple PDF

7. Rent a bakery and print all the roughly 40 000 000 + parts to all the 2 770 000+ houses in Norway (TODO)

TODO if enough interest:

- Bake the house

- Rotate the geoemetries to "flat surface" by using the SurfaceNormalCalculator and 3DAffiner to get correct geometries.

Badge +14

Inspiration for this project was: https://www.3ders.org/articles/20161220-3d-printed-gingerbread-house-lets-you-celebrate-christmas-the-scandinavian-way.html

a) GingerbreadhouseGenerator b) Converts your fancy 3D-modelled house (for instance from Sketchup) to a 2D-model possible to print and build a gingerbreadhouse from the parts! c) Workspace can be sent upon requests by commenting this article. Below are the steps used in the workspace! I do not guarantee for the printed papers and the finished 3D Gingerbreadhouse! 1. Select area with house:

2. Look at the result in Sketcup

3. Get a single house:

4. Explode the house into individual parts:

5. Workspace with description

6. End result - one PDF per part - and the simple PDF

7. Rent a bakery and print all the roughly 40 000 000 + parts to all the 2 770 000+ houses in Norway (TODO)

TODO if enough interest:

- Bake the house

- Rotate the geoemetries to "flat surface" by using the SurfaceNormalCalculator and 3DAffiner to get correct geometries.

Now if only FME could push it out directly to the 3D gingerbread printer xD

 

 

Badge +8
Same as you @erik_jan, love the idea and the fun results, wishing for time to work on it. Did vote, however.

 

 

Badge +8

A title.

Executing a Workspace by phone call

A brief description.

Imagine your customer needs to Geocode so many addresses, but he would like to run your workspace from a phone call.

These Addresses are in Excel format in repository BOX and so many peoples are working in this Excel file.

Suddenly your client is not in the company and needs to run the flow and receive by email the results.

For this just call a phone number and the FME Server will start the process for you.

What you need is a Twilio Account ( www.twilio.com ), FME Server ( to schedule the workspace ) , a BOX account ( www.box.com ).

A file containing your project demo or result:

 

twilio-workspacec.fmwt

 

Now having FME Server ring you back to tell the answer (trying to skip any voicemail services and retrying every five minutes as long as no real life contact was made)! Well done.

 

 

 

Badge +8

A title.

Server log saver and timeline visualizer

A brief description.

We have more and more schedules and I was less and less enthusiast to go through long-long list of logs (instead of building a snowman army for example now ???) when someone didn't like something

Half a year ago I opted not to care with a few SLAs and build something visual (no, I cannot build nice tings) that save me some boring time ?.

I end up with this.

The workspace saves the Server log to a staging table (on request) for future reference. No cleanup now, the size of the table is the discretion whoever cares with it.

The timeline control is Google Charts (sorry anyone from China). It is not my dream as a timeline (no control over individual colours, no navigation, etc) but I just couldn't find anything decent. Until I hack one (that would look as nice as FME Server Schedules Dashboard inspiration) I chose a quick win solution temporarily.

fme-job-history-to-google-timeline.fmw

 

Definitively pretty cool. Love to have this at Gasunie @gu19495?
Badge +8

Title:

 

The VertexAngleCalculator custom Transformer

Brief description:

 

A Transformer that, given an Area or Line feature, calculates the directional change at each vertex. Output is available as both a measure on the original feature, or as seperate vertices containing the angles as attributes.

A file containing your project demo or result:

 

An entry on the FME Hub.

I love doing these kinds of calculations on geometry, and I had already researched the required steps once before. Seems rude not to try it in FME and to share it with others. I originally needed the angles to determine whether a polygon was clockwise or counterclockwise.

Since I can't compete with a puppy, here's a typical Dutch winter scenery of enthousiastic folk going to work:

Kinderdijk, nothing to do with children playing with FME? :-)

 

 

Badge +8

PolygonEliminator

 

A Custom Transformer that eliminates candidate polygons by dissolving them into an adjacent base polygon. The choice of adjoining polygon is based on area (largest or smallest) or edge length (longest or shortest) that does not cross a breakline. With optional fuzzy tolerance and group-by this transformer gives more fine grained control than the SliverRemover, but does not eliminate gaps.

Pro Tip: You can create candidate polygons for gaps by using the AreaOnAreaOverlayer with the input data+ BoundingBoxAccumulator.

 

polygoneliminator.fmx

Pretty impressive, this one.

 

 

Userlevel 5
Badge +26
Now if only FME could push it out directly to the 3D gingerbread printer xD

 

 

I know there's printers that print out pancake batter on to a hot plate... yum!

 

 

Userlevel 5
Badge +26
Kinderdijk, nothing to do with children playing with FME? :-)

 

 

FME saved them so much time they can go out and skate at Kinderdijk ;)

 

 

Badge +1

Inspiration for this project was: https://www.3ders.org/articles/20161220-3d-printed-gingerbread-house-lets-you-celebrate-christmas-the-scandinavian-way.html

a) GingerbreadhouseGenerator b) Converts your fancy 3D-modelled house (for instance from Sketchup) to a 2D-model possible to print and build a gingerbreadhouse from the parts! c) Workspace can be sent upon requests by commenting this article. Below are the steps used in the workspace! I do not guarantee for the printed papers and the finished 3D Gingerbreadhouse! 1. Select area with house:

2. Look at the result in Sketcup

3. Get a single house:

4. Explode the house into individual parts:

5. Workspace with description

6. End result - one PDF per part - and the simple PDF

7. Rent a bakery and print all the roughly 40 000 000 + parts to all the 2 770 000+ houses in Norway (TODO)

TODO if enough interest:

- Bake the house

- Rotate the geoemetries to "flat surface" by using the SurfaceNormalCalculator and 3DAffiner to get correct geometries.

Finally. Something I can use at the christmas table to explain what GIS consultancy is all about ;-). +1 for originality!

 

 

Userlevel 4
Badge +13
Can I vote on all of them! So cool

 

 

Userlevel 5

A title. The FlexNetAnalyser.

A brief description. "On the 12th day of Christmas my true love gave to meeee... a divorce for spending too much time with FME."

Every now and again I'm asked to help someone work out what their Esri, FME or Autodesk license utilisation is. Or, and this is usually with a level of urgency in their voice they want to know, "who's hogging MY floating license right now!". I've several times built workspaces that were variations on this theme but always resolved to build something a little more generic, something that could get detail out of several types of license server and answer these questions in a more structured way. So, it seems like a Christmas hackathon is the best time to have a quick crack(er) at it...So, the FlexNetAnalyser is step 1 along the road to a Custom Transformer FME Hub submission. In the new year and with a bit of feedback from the community I'll whip it into shape for 2018.

The FlexNetAnalyser is able to analyse a FlexNet license server (FME, Esri, Autodesk etc) and will output the current users who have a license checked out and it will also highlight the total license count checked out per license type.

Output Ports:

LicenseTypeCount - A tabular structure designed to be output on a schedule at a regular interval to a database or spreadsheet so that analysis can be done on license use peaks and troughs, perhaps using structured queries or more likely with some form of dashboard. In the structure:

date, time, fme, oracle

20171207, 10:21, 1, 1

CurrentLicenseUsers - One feature per user with a license checked out, designed to be sent to a dashboard or HTML page so that the individual or machine blocking a license can be identified (and perhaps neutralised, as humanely as possible). In the structure:

license, allocated, host, user

"FME" v1.0, vendor: safe, expiry: 30-sep-2018, Start Thu 12/7 22:32, SLEIGH1, Dancer

"FME" v1.0, vendor: safe, expiry: 30-sep-2018, Start Thu 12/7 22:01, SLEIGH2, Rudolf

Both output ports include schema features so that they can be hooked up to a Dynamic FeatureType and your work is done. Alternatively the AttributeExposer will need to be used after the LicenseTypeCount port in order to expose and then manipulate the license type count columns based on the FlexNet license server that you are analysing. For example for an FME license server it would be fme, oracle etc and for an Esri license server, editor, publisher, viewer, arc/info etc.

Blatant heart string tug for votes:

Merry Christmas from the FlexNetAnalyser Puppy!

A file containing your project demo or result. flexnetanalyser.fmx

Yeah, what's up with the password? Got some dirty tricks to hide, Dave? ;-)
Badge +21
I know there's printers that print out pancake batter on to a hot plate... yum!

 

 

Ah, great idea! http://www.pancakebot.com/

 

 

Userlevel 5
Ah, great idea! http://www.pancakebot.com/

 

 

It was even invented in Norway: you should get in touch with him to try and develop a suitably pepperkake-like recipe that's liquid enough for the printer ;-)
Userlevel 5
Badge +26
It was even invented in Norway: you should get in touch with him to try and develop a suitably pepperkake-like recipe that's liquid enough for the printer ;-)
I expect to see one in action at the next FME meeting @sigtill ;)

 

Userlevel 4
Badge +26
Can I vote on all of them! So cool

 

 

I think you can... although if we all did that it would be hard to have a winner ;-)

 

Userlevel 4
Badge +26
Ah, great idea! http://www.pancakebot.com/

 

 

So who of us visited the site? And which button did you click first? Explore or Buy Now? Obviously the correct answer is Buy Now!

 

Reply