29
William McKee [email protected] WebGUI Users Conference 2010 Automation: The Power of Workflows

Automation: The Power of Workflows

Embed Size (px)

DESCRIPTION

This short presentation shows ways to harness the power of automation through the WebGUI Content Engine.

Citation preview

Page 1: Automation: The Power of Workflows

William [email protected] Users Conference 2010

Automation:

The Power of Workflows

Page 2: Automation: The Power of Workflows

Automation

“Any job that depends on routines-- that can be reduced to a set of rules, or broken down into a set of repeatable steps-- is at risk.” – Daniel Pink

Page 3: Automation: The Power of Workflows

WebGUI Workflow Engine“An event triggered state machine and execution system.”

– JT Smith

Page 4: Automation: The Power of Workflows

WebGUI Workflow Engine“An event triggered state machine and execution system.”

– JT Smith

Page 5: Automation: The Power of Workflows

WebGUI Workflow Engine

What you need to know:

Page 6: Automation: The Power of Workflows

WebGUI Workflow Engine

What you need to know:➔ Workflows – containers for activities

Page 7: Automation: The Power of Workflows

WebGUI Workflow Engine

What you need to know:➔ Workflows – containers for activities➔ Activities – where the actual work gets accomplished

Page 8: Automation: The Power of Workflows

WebGUI Workflow Engine

What you need to know:➔ Workflows – containers for activities➔ Activities – where the actual work gets accomplished➔ States – running, waiting, stalled, complete

Page 9: Automation: The Power of Workflows

WebGUI Workflow Engine

What you need to know:➔ Workflows – containers for activities➔ Activities – where the actual work gets accomplished➔ States – running, waiting, stalled, complete➔ Triggers – time, user/system event, other workflows, manual initiation

Page 10: Automation: The Power of Workflows

WebGUI Workflow Engine

What you need to know:➔ Workflows – containers for activities➔ Activities – where the actual work gets accomplished➔ States – running, waiting, stalled, complete➔ Triggers – time, user/system event, other workflows, manual initiation➔ Modes - Parallel, Serial, Singleton

Page 11: Automation: The Power of Workflows

Production Workflows(core)

Page 12: Automation: The Power of Workflows

Maintenance Routines

Goal: Perform hourly, daily and weekly maintenance tasks.

Trigger: Time-based

Activities: • Delete expired sessions• Update calendar feeds• Delete temp files & prune cache• Archive old stories• Delete assets from trash• Move clipboard items >30 days to trash

Page 13: Automation: The Power of Workflows

Custom Workflows(core)

Page 14: Automation: The Power of Workflows

Send Notification

Goal: Receive an email when a new user registers on your Website.

Trigger: On Create User

Activity: Notify About User (WebGUI::User)

Page 15: Automation: The Power of Workflows

Add On Workflows

Page 16: Automation: The Power of Workflows

Page Validator

Goal: Receive an email notice if a page does not validate against the W3C Markup Validation Service.

Trigger: Time-based (e.g., add to Daily Maintenance workflow)

Activity: Download W3C Validator activity code from the WebGUI Marketplace (see resources for link)

Page 17: Automation: The Power of Workflows

Mailchimp Integration

Goal: Add subscriber to a Mailchimp mailing list. Can be integrated into any forms on your site.

Trigger: Add Entry

Activity: Download OptIn activity code from the WebGUI Marketplace (coming soon!)

Page 18: Automation: The Power of Workflows

Personal User Area

Goal: Create personal user areas when a new user registers on your Website.

Example: Setup a personal blog or dashboard for your registered Website visitors.

Trigger: On Create User

Activity: Download CreateUserHomeSkeleton activity code by Peter McBryde from the WebGUI Marketplace

Page 19: Automation: The Power of Workflows

Custom Workflows

Page 20: Automation: The Power of Workflows

Hot Folder

Goal: To provide a dropbox that is polled for newly uploaded files which need processing.

Example: Validate & process a “job” file placed into an FTP folder.

Trigger: Time-based

Activity: Custom (see “Writing Workflow Activities” presentation for example code to get started)

Page 21: Automation: The Power of Workflows

PuSH Publisher

Goal: Push site updates out to a PubSubHubbub hub (a real-time web protocol).

Trigger: Time-based (until more hooks become available in WebGUI codebase)

Activity: Custom.

Page 22: Automation: The Power of Workflows

Help Out!

• Share your ideas for useful workflows in the forums or IRC

• Add new workflows to the Bazaar

• Promote new triggers/hooks for the built-in assets (RFE's)

Page 23: Automation: The Power of Workflows

Thank You!

William McKee

WebGUI Forums: knowmad

IRC: knowmad

Email: [email protected]

Page 24: Automation: The Power of Workflows

Bonus Material

Interesting but less useful possibilities for workflows.

Page 25: Automation: The Power of Workflows

Social Media Monitor

Goal: To send alerts of mentions in social media.

Trigger: Time-based

Example: Poll social media sites such as Twitter or Facebook for media mentions. Send an IM or email when results are found.

Activity: Custom.

Page 26: Automation: The Power of Workflows

Business Process ManagerGoal: To manage a real-world workflow process.

Example: Limit access to your site for new user registrations until they have confirmed their email.

Implementation: A workflow would run when the user confirmed their account. This workflow would move the account into the proper membership list. (It could also be used to check for payments).

Activity: Custom activity.

Page 27: Automation: The Power of Workflows

Happy Birthday!

Goal: To provide a special message and email for a user's birthday.

Trigger: Time-based

Example: Place a birthday message on site & send email to user.

Activity: Custom singleton. Run once a day to check birthday in user profiles.

Page 28: Automation: The Power of Workflows

Sundial

Goal: To keep an external file up-to-date.

Trigger: Time-based

Example: Sundial. On each run, update the external page with current time. Use scheduler to update file as appropriate.

Activity: Custom singleton.

Page 29: Automation: The Power of Workflows

Screenscraper

Goal: Retrieve data from an external site.

Trigger: Time-based

Example: Collect data that's not part of an RSS feed for display on your site.

Activity: Custom.