Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Ad Hoc Workflows 3
Info
Ad Hoc Workflows 3.0.3

Importing workflows

Find out how to Import Workflows

FAQ Creation workflow

requires v3.0.

...

You need Ad Hoc Workflows 3.0.3 or newer to be able to import the workflows. Find out how you can import workflows

...

2+

com.comalatech.workflow.repository.categories.label:Knowledge Base|Sample

Image Added

Multi-Step FAQ Creation workflow which allows users to submit topic/pages to be approved by the assigned subject matter experts (SME) and the FAQ administrators

  • Allows any user to submit topics, which are approved by one or more subject matter experts (SME) and FAQ Administrators

  • Only the Author and FAQ Administrators can see the submitted FAQ until it is published

    • the SME users are users added as a value(s) for the workflow user parameter Component Leads

    • the FAQ administrators are the users who are members of the Confluence user group(s) added as a value(s) for the workflow group parameter FAQ Administrators

  • Uses a number of workflow triggers (rules)  to send custom email notifications on the following workflow events

    • pagecreated

    • pageupdated

    • pagerejected

    • pageapproved

The workflow stores the value of the user who submitted the faq page for review as a value for the metadata named FAQ Author. This metadata value is set on the transition from the Draft state to the Submitted state


FAQ Creation Workflow Markup

Code Block
{workflow:name=FAQ Creation Workflow

...

}
	{description}
        Multi-Step FAQ creation workflow which allows users to submit topic/pages to be approved by the assigned SME(s) and FAQ Admin. Only the SME's and FAQ Admin can see the submissions before they are approved. 
    {description}
    {workflowparameter:FAQ Administrators|type=group}
        confluence-users
    {workflowparameter}
    {workflowparameter:Component Leads|type=group}
        confluence-users
    {workflowparameter}
    {state:Draft|submit=Submitted}
    {state}
    {state:Submitted|approved=Approved|rejected=Rejected}
        {approval:Approve|group=@FAQ Administrators@}
    {state}
    {state:Approved|approved=Reviewed|rejected=Closed}
        {approval:Review|selectedapprover=@Component Leads@

...

}
    {state}
    {state:Reviewed|approved=Published|rejected=Closed}
        {approval:Publish|group=@FAQ Administrators@}
    {state}
    {state:Published|final=true|updated=Approved|hideselection=true}
    {state}
    {state:Closed|hidefrompath=true}
    {state}
    {state:Rejected|hidefrompath=true}
    {state}
    {trigger:statechanged|state=Submitted}
        {set-metadata:FAQ Author}

...

@user@{set-metadata}
        {send-email:user=@FAQ Administrators@|subject=FAQ Submitted}
        The FAQ 

...

@page@ has been submitting by [

...

~@user@] and is waiting for your approval.
        {send-email}
    {trigger}
    {trigger:pageapproved|approval=Approve}
        {send-email:user=@Review>selected@|subject=FAQ Accepted}
        The FAQ 

...

@page@ has been approved by [

...

~@user@] and is waiting for your review.
        {send-email}
    {trigger}
    {trigger:pagerejected|approval=Approve}
        {send-email:user=@FAQ Author@|subject=FAQ Rejected}
        Your FAQ 

...

@page@ submission has been rejected.
        {send-email}
    {trigger}
    {trigger:pageapproved|approval=Review}
        {send-email:user=@Approve>approver@|subject=FAQ approved}
        The FAQ 

...

@page@ has been approved by [

...

~@user@] and is waiting for your approval.
        {send-email}
    {trigger}
    {trigger:pagerejected|approval=Review}
        {send-email:user=@Approve>approver@, @FAQ Author@|subject=FAQ rejected}
        The FAQ 

...

@page@ has been rejected by [

...

~@user@].
        {send-email}
    {trigger}
    {trigger:pagecreated}
        {add-restriction:type=View|user=

...

@user@}
        {add-restriction:type=View|group=@FAQ Administrators@}
    {trigger}
    {trigger:pageapproved|approval=Approve}
        {send-email:user=@Review>selected@|subject=FAQ Accepted}
        The FAQ 

...

@page@ submitted by [~@FAQ Author@] has been approved by [

...

~@user@]
        and is waiting for your review.
        {send-email}
        {add-restriction:type=View|user=@Review>selected@}
    {trigger}
    {trigger:pageapproved|approval=Publish}
        {send-email:user=@Approve>approver@|subject=FAQ published}
        The FAQ 

...

@page@ has been published
        {send-email}
        {remove-restriction:type=View}
    {trigger}
    {trigger:pageupdated|state=Published}
        {send-email:user=@Review>selected@|subject=FAQ updated, requires approval}
        The FAQ 

...

@page@ has been updated by [

...

~@user@] and requires your approval
        {send-email}
    {trigger}
{workflow}

...

FAQ Workflow Process

...

-

  • Any user can submit an FAQ

  • Only the Author and FAQ Administrators can see the submitted approval

  • only a user who is a member of the FAQ Administrators determines if the FAQ is appropriate and assigns the appropriate Component lead

  • If the FAQ is approved, then the FAQ is visible to the Component Leads and they are notified

  • If the FAQ is rejected, then the Author is notified

  • If the FAQ is approved by a Component Leads user then it is re-assigned to the FAQ Administrators for publishing

  • If the FAQ is published then it becomes visible to everybody

  • If the FAQ is rejected in this state, then the Author and all users who are Component Leads are notified

  • If the FAQ is updated after it has been published, then it has to be approved by the Component Leads and FAQ Administrators again

Workflow configuration in a space

After importing the workflow to your instance in global administration(either using global administration as a global template for the instance or space administration to a single space), you can add and apply the workflow to a space.

In each space, you need to add the workflow parameters values that will be used in the workflow:

  • FAQ

    -

    Administrators

    .

  • Component Leads

    .

The values of the workflow parameters are used by the workflow to assign reviewers to content reviews in the workflow. They are also used as recipients for email notifications for workflow events.

These values can be any existing Confluence user group. The default group value for each of the workflow parameter values parameters is the confluence-users group.

A Having a default value for the parameters means that a space administrator can add edit these values in the space tools Document Management tab for parameters.

...

Parameters screen.

...

Tip

The parameter value in the space tools will be used when the workflow is first applied to content in a space.

The workflow parameter values can also be edited using workflow builder.

...

Workflow rules:

...

Info

Depending on workflow configuration, workflow parameter values can be edited by a user. This may be useful, for example when first applying the workflow an individual page or blog post and you want to allow the user to set the parameter values,

This workflow includes workflow parameters. When applying a space workflow

  • a parameter reference value may only be available for use by the workflow after a workflow process, such as a transition, occurs. For example, the initial state should not include the use of the parameter reference value for a due date or pre-assigned reviewers for approvals to avoid blocking your workflow. Alternatively, you can choose to Initialize states when applying a space workflow

  • the parameter value is retrieved from the space parameters dashboard on first application of a workflow to a page or blog post. This value may be different to the value used in the workflow template