Complex Campaigns

Doohly uses a rules engine to calculate loops based on bookings.


A booking in Doohly is not a direct reflection of an advertiser's ‘campaign’ - often you will need to create multiple bookings to achieve their desired playback.

At present, a booking can only display one set of content across all the sites on a booking for one time period.

If you require more complex requirements such as variable content playing on variable day parts, you need to create multiple bookings.

At present, a campaign container in the Doohly platform is unable to process multiple bookings to determine which content should be playing per loop - if you have multiple bookings, even if you group by campaign, it will play all of them in the loop.

The solution to this is to create a booking for each day part.


Note: This will become more user friendly after we introduce frequency at the campaign level, or introduce scheduling to individual creatives.

Example Situation

An advertiser has purchased 1 slot for 3 weeks.

This particular slot consists of 3 different creatives.

Creative A is to play all day, everyday.

Creative B is to play all day, but only on Tuesdays.

Creative C is to play only between 6am and 6pm everyday.

A common approach to fill this commitment is to create three bookings, one for each creative and fulfilling each criteria.

Which would look something like this:

What this means is that on Monday morning 1 booking containing only creative A will play.

Tuesday at 3pm, 1 booking containing all three creatives (A,B and C) will play.

Wednesday at Midday 1 booking containing two creatives (A & C) will play.

During the time periods where multiple bookings overlap, instead of only one creative playing per loop, all the creatives will play in a single loop.

In this example, that would result in the advertiser receiving up to 3 plays per loop, which is not the desired outcome.

In the future, this will work as intended, but due to the current algorithm/calculations, this occurs.

Structure For Expected Outcome

Below is the structure that should be used for this situation. It involves creating separate digital signage bookings for each day part. This will ensure that [the Doohly player performs at the expected level and doesn’t play multiple bookings per loop.

The structure looks like this:

Booking 1 - Creative A, Mon/Wed/Thur/Fri/Sat/Sun - 00:00 - 06:00
Booking 2 - Creative A, Mon/Wed/Thur/Fri/Sat/Sun - 18:00 - 23:59
Booking 3 - Creative A & B, Tue - 00:00 - 06:00
Booking 4 - Creative A & B, Tue - 18:00 - 23:59
Booking 5 - Creative A & C, Mon/Wed/Thur/Fri/Sat/Sun - 06:00 - 18:00
Booking 6 - Creative A, B & C, Tue - 06:00 - 18:00

The difference here is that each booking has the creatives and date/time assigned to it and users should ensure that "Playback Frequency" is set to "Play 1 of x creatives, every 1 loop"

By selecting this option, users ensure that only one of the creatives in the booking will play each loop.