Author Topic: Arghh... Confused about CYCLES!  (Read 3427 times)

Offline JTL

  • Full Member
  • ***
  • Posts: 123
  • Karma: 2
Arghh... Confused about CYCLES!
« on: May 16, 2013, 01:23:36 AM »
Before starting - yes, I've read through the definitions in the Outbound Deployment manual...

I understand what a Cycle is, what an Interval is, and what Increment means... but what I can't work out is a set of compound examples, when dealing with multi-record chains.

Consider the following:

a) Chain containing 3 records (Home, Mobile, Office)
b) Next In Chain treatments configured for Busy, No Answer, AM-detected (manual) etc.

* Campaign starts, OCS dials the HOME number (1st in chain)
* No Answer result
* Treatment is "Next In Chain", Interval 4h, Cycles 3
* OCS then immediately dials the MOBILE number (2nd in chain) because of the "Next in Chain"
* General Error result
* Treatment is "Next In Chain", Interval 6h, Cycles 5
* OCS then immediately dials OFFICE number (3rd in chain) because of the "Next in Chain"
* Answering Machine result
* Treatment is "Next in Chain", Interval 2 days 6 hours, Cycles 2

So my question is - what happens to this chain?! Would it now potentially cycle 5 times because of the 2nd record? 3 times because of the first record? 2 times because of the 3rd record? I.E. if we get mixed outcomes (all negative) which takes precedence in deciding when the chain starts again, and after how long?


Offline JTL

  • Full Member
  • ***
  • Posts: 123
  • Karma: 2
Re: Arghh... Confused about CYCLES!
« Reply #1 on: May 16, 2013, 01:26:37 AM »
And once that is answered...

Consider the following:

a) Chain containing 3 records (Home, Mobile, Office)
b) Next In Chain treatments configured for Busy, No Answer, AM-detected (manual) etc.

* Campaign starts, OCS dials the HOME number (1st in chain)
* No Answer result
* Treatment is "Next In Chain", Interval 4h, Cycles 3
* OCS then immediately dials the MOBILE number (2nd in chain) because of the "Next in Chain"
* Answer result
* OCS will not dial the OFFICE number, because there was a positive Answer result for the 2nd record in the chain

However, what happens to the 1st record in the chain? Is it simply left sat in the "No Answer" status?

What happens to the 3rd record in the chain? It will be still in "Ready" "Unknown Call Result"... because the dialler won't have retrieved and dialled the record. Does it stay in this?

Offline Fra

  • Hero Member
  • *****
  • Posts: 856
  • Karma: -3
Re: Arghh... Confused about CYCLES!
« Reply #2 on: May 16, 2013, 05:50:36 PM »
Cycling through chains & treatments can be very complex topic; here's what I think it would happen:
Before starting - yes, I've read through the definitions in the Outbound Deployment manual...

I understand what a Cycle is, what an Interval is, and what Increment means... but what I can't work out is a set of compound examples, when dealing with multi-record chains.

Consider the following:

a) Chain containing 3 records (Home, Mobile, Office)
b) Next In Chain treatments configured for Busy, No Answer, AM-detected (manual) etc.

* Campaign starts, OCS dials the HOME number (1st in chain)
* No Answer result
* Treatment is "Next In Chain", Interval 4h, Cycles 3
* OCS then immediately dials the MOBILE number (2nd in chain) because of the "Next in Chain"
* General Error result
* Treatment is "Next In Chain", Interval 6h, Cycles 5
* OCS then immediately dials OFFICE number (3rd in chain) because of the "Next in Chain"
* Answering Machine result
* Treatment is "Next in Chain", Interval 2 days 6 hours, Cycles 2

So my question is - what happens to this chain?! Would it now potentially cycle 5 times because of the 2nd record? 3 times because of the first record? 2 times because of the 3rd record? I.E. if we get mixed outcomes (all negative) which takes precedence in deciding when the chain starts again, and after how long?
As the last call result received is AM, the 'Next in Chain' treatment is applied; as the last record in the chain has been dialed, the call result is still negative and cycle > 1, OCS will jump to the first record of the chain.
How many times will it cycle through the chain? We can't predict that, as it depends on the results received in the following cycle(s). My understanding is that, if for instance the sequence of call results in the second cycle was exactly the same, then again the last treatment would be the AM 'Next in Chain' that would determine that the number of cycles to go through the chain has been reached (=2). It all depends effectively on what treatment is applied when you get to the bottom of the chain.
The thing we can be 100% sure of is that the overall maximum number of attempts is capped by the option set at calling list level.

And once that is answered...

Consider the following:

a) Chain containing 3 records (Home, Mobile, Office)
b) Next In Chain treatments configured for Busy, No Answer, AM-detected (manual) etc.

* Campaign starts, OCS dials the HOME number (1st in chain)
* No Answer result
* Treatment is "Next In Chain", Interval 4h, Cycles 3
* OCS then immediately dials the MOBILE number (2nd in chain) because of the "Next in Chain"
* Answer result
* OCS will not dial the OFFICE number, because there was a positive Answer result for the 2nd record in the chain

However, what happens to the 1st record in the chain? Is it simply left sat in the "No Answer" status?
Updated - No Answer
What happens to the 3rd record in the chain? It will be still in "Ready" "Unknown Call Result"... because the dialler won't have retrieved and dialled the record. Does it stay in this?
Updated - Unknown Call Result
The Answer call result is a final call result, hence OCS marks the entire chain as 'Updated'. Call results of each individual chain_n remains as per the correspondent outcome.

Fra

Offline Dionysis

  • Sr. Member
  • ****
  • Posts: 408
  • Karma: 8
Re: Arghh... Confused about CYCLES!
« Reply #3 on: May 16, 2013, 06:00:26 PM »
Each treatment will apply separately and start from the beginning of it's sequence each time that call result is hit.  Call results and statuses are updated for all records in the chain as they happen (depending on the option "update_all_records").

For example, based on your treatments listed above:
Attempt 1 - AM - rescheduled to + 2 days, 6 hours on the next record in the chain.
Attempt 2 - NA - rescheduled to + 4hours on the next record in the chain.
Attempt 3 - AM - rescheduled to + 2days, 6 hours on the next record in the chain.
Attempt 4 - GE - rescheduled to + 6 hours on the next record in the chain.
and so on...

The only way the full sequence will run through is if the same call result is achieved for each attempt.

Note: if you use Next in Chain cycle 1, each record in the chain will dial once, however if you use Next in Chain cycle 2 or more, the chain will repeat until the cycle has completed x times, or there is an Answer result.

if len(description) < enough:
    from troubleshooting.skills import psychic

Offline JTL

  • Full Member
  • ***
  • Posts: 123
  • Karma: 2
Re: Arghh... Confused about CYCLES!
« Reply #4 on: May 16, 2013, 06:03:19 PM »
Thank you, that helps!

What our business / customer is thinking is that, because they have requested we configure (for example) "Answering Machine" to only have 1 Cycle, they are expecting:

* Dial Chain 1
* AM
* DIal Chain 2
* AM
* Dial Chain 3
* AM

Wait 4h

* Dial Chain 1
* AM
* DIal Chain 2
* AM
* Dial Chain 3
* AM

Close call.

I.E it would cycle through the entire chain twice (1 cycle).

However, this thinking is overly simplistic, as it assumes that the Call Result is always the same - "AM". My understanding, which it seems you confirm, is that even if we have hit "AM" for the first 2 records of the chain, but (say) "No Answer" on the third (with a different number of Cycles (say, 5) then we would go back to the start of the Chain, and could keep going back through 5 times, if we kept getting "No Answer" on the last record in the Chain.

However, the business require that if we reach a person's answering machine, a message is left, we dial "Next In Chain" and do not keep calling this record. However, because the records are chained, if we receive a different outcome on later records in the Chain, we will go back round to the first in the Chain, and could end up calling and reaching the Answering Machine again!