CP24 Asset Scheduler
A custom asset/sponsor scheduler.
.NET 8 is required for v1.0.6 and above.
.NET 7 is required for v1.0.5 or less.
Version 1.0.8
Increased the max rows for processing schedule spreadsheet from 200 to 250.
Added MaxRows setting will be used instead of the hardcoded 200 max rows.
Changed 'Stock Indices' default matching text to 'Indices'.
Version 1.0.7
Fixed a bug with assuming that sales ads always have non-empty creative data.
Added handling for Premium sales ads with rotations.
Version 1.0.6
Updated to .NET Framework 8.0 since .NET 7.0 has reached end of support.
Updated vulnerable DLLs from Nuget.
Version 1.0.5
Modified to save instance settings on change instead of needing to click on the Save/Save All/Save Instance menu options.
Added a button to the instance UI to use the last converted sales worksheet file.
Removed the prompt to open the converted sales worksheet file after the conversion is completed.
Version 1.0.4
Properly fixed issue with duplication of creative titles for adjacent rows with same rotation and offsets when the house numbers are different (in v1.0.2).
Fixed issue with items scheduled in the same zone and offset by bumping the start time of each subsequent conflict by 30 seconds.
Added Zone & Comment columns to Saved Scheduled Items xlsx files in the logs folder. The Comment column can show which items' start times were bumped.
Version 1.0.3
Added UI to set the Default Asset Duration for each Scheduler Instance. Default value is 10 seconds.
Version 1.0.2
Fixed issue with duplication of creative titles for adjacent rows with same rotation and offsets when the house numbers are different.
Version 1.0.1
Added new ‘Sales Spreadsheet Converter’ tab for converting of Excel Sale files to Ad Scheduler Excel files.
Version 1.0.0
Copy the Creative field into the Asset description field.
Use the Advertiser as the campaign and client.
Open the last used file folder if the current input file field is blank.
Save the schedule items in batches instead a single large transaction.
Version 0.1.2
An initial test version
Reads an Excel file to get sponsor schedules to apply to a Tick-It instance.
Creates an asset placeholder for scheduling if the asset cannot be found.
Working Assumptions
Each day starts at 5:00 am and runs to 5:00 am the next day
If no Start and End Time is given then assume 5:00 am to 5:00 am the next day
Example for an End Date of 2023-10-01 the actual end is 2023-10-02 5:00
The last possible asset scheduled time would be 2023-10-02 4:59
Use the House# (example: AB15117) to identify the asset to be scheduled.
If no Rotate value is provided then the sponsor is scheduled once per hour at the given offset (example 5:08) of each day.
If the given End Time is at or before 5:00 it is assumed to be the next day. (example Start: 19:00 with End: 5:00)
If the asset doesn’t yet exist in the Tick-it database, then create a placeholder asset and schedule it assuming a user will assign the required template and campaign information in Flow.
Requires the following columns in the given order:
Feature
Advertiser
House #
Zone #
Start Time (HH:mm)
End Time (HH:mm)
Rotate
Start Day
End Day
(another column)
Offset