Eric Patrick
Eric Patrick

Reputation: 2247

Ensure qbo3 tasks occur at different times of the day

We have a Customer Outreach task that prompts an agent to call a customer. Should the customer be unreachable, we want to ensure that up to 2 subsequent calls for the same customer occur at least a day apart, and are made at a different time of the day. After 3 attempts, we're done.

How can one configure a qbo3 task to enforce this?

Upvotes: 0

Views: 20

Answers (1)

Eric Patrick
Eric Patrick

Reputation: 2247

The key to implementing this requirement is leveraging a Workflow, in particular If/Then and Polling steps that do a bit of date calculation.

A Workflow can be used to manage this situation, with the following steps:

  • Step 1: First Customer Outreach (Task = Customer Outreach)

  • Step 2: First call before noon?

  • Step 3: First Wait 22 hours (Depends on Step 2 == false)

  • Step 4: First Wait 26 hours (Depends on Step 2 == true)

  • Step 5: Second Customer Outreach (Task = Customer Outreach)

    • Depends on Step 3 or Step 4
  • Step 6: Second call before noon?

  • Step 7: Second Wait 22 hours (Depends on Step 6 == false)

  • Step 8: Second Wait 26 hours (Depends on Step 6 == true)

  • Step 9: Second Customer Outreach (Task = Customer Outreach)

The same Customer Outreach task can be reused for steps 1, 5, and 9.

Steps 2 and 6 are If/Then steps, that use the following expression:

format:formatDate(//*[DecisionStep="First Customer Outreach"]/ActualCompletion, "hh") >= 12

where:

  • format:formatDate() parses a date, in this case returning only the hour (hh)
  • //*[DecisionStep="First Customer Outreach"]/ActualCompletion is the completion date of the first step

Steps 3, 4, 7 and 8 are Polling steps configured with and expression similar to:

format:dateDiff(//*[DecisionStep="Wait 18 hours"]/CreatedDate, "now", "hh") >= 22

For more detail on Polling steps that pause a workflow, see this post.

Upvotes: 0

Related Questions