Show/Hide Toolbars

CWT Software Configuration Handbook

Note:
More examples are available in Tariff examples.

Example: 1

//Mon-Fri 8-18: $1
//All other times free
 
PACKAGE "Downtown winter rates";
INTERVAL "Weekdays day time";
timepredicate = "((($weekday in [mon to fri]) and ($hour in [08 to 18[)))";
tariffrate = linear 1 per 60;
 
INTERVAL "Free time";
timepredicate = "((($hour in [00 to 08])and ($hour in [18 to 00])))";
tariffrate = flat 0 until end of interval;

To find out how much time you would receive for a certain amount of ticks depending on when you start paying, use this table:

Start time

Amount

Stop time

Friday 16:59

$1

Friday 18:00

Friday 16:59

$2

Blocked

Friday 17:00

$1

Blocked

Example: 2

//Mon-Fri 8-18, Sat 8-13: $5/hour
//Mon-Fri 6-8: Free
//Other Times: Blocked
 
PACKAGE "Example: 2";
 
INTERVAL "Normal";
 
timepredicate = "((($weekday in [mon to fri]) and ($hour in [08 to 18[)) or
(($weekday = sat) and ($hour in [08 to 13[) ) )";
tariffrate = linear 5 per 60;
 
INTERVAL "Free";
timepredicate = "(($weekday in [mon to sat]) and ($hour in [06 to 08[))";
tariffrate = flat 0 until end of interval;
 
INTERVAL "Block" : priority 0;
timepredicate = #always;
blocked = true;

To find out how much time you would receive for a certain amount of ticks depending on when you start paying, use this table:
 

Start time

Amount

Stop time

Friday 08:00

$5

Friday 09:00

Friday 08:00

$49

Friday 17:48

Friday 16:59

$5

Friday 18:00

Friday 17:00

$5

Blocked

Saturday 07:00

$5

Saturday 09:00

Saturday 08:00

$5

Saturday 09:00

Saturday 08:00

$24

Saturday 12:48

Example: 3

//Mon 06.00 - Fri 18.00 10kr/h, 75kr=12h, 120kr=24h
//Fri 18.00-Mon 06.00   5kr/h, 60kr=24h
 
PACKAGE "Example: 3";
carryovermode = carryover without recalculation;
 
INTERVAL "weekdays";
timepredicate = "($timeofweek in [|mon 06:00| |fri 18:00|[)";
tariffrate = linear 10 per 60;
tariffrate = unit 75 per 720;
tariffrate = unit 120 per 1440;
 
INTERVAL "weekends";
timepredicate = "($timeofweek in [|fri 18:00| |mon 06:00|[)";
tariffrate = linear 5 per 60;
tariffrate = unit 60 per 1440;

To find out how much time you would receive for a certain amount of ticks depending on when you start paying, use this table:
 

Start time

Amount

Stop time

Friday 06:00

10 kr

Friday 07:00

Friday 06:00

75 kr

Friday 18:00

Friday 06:00

100 kr

Friday 20:30

Friday 06:00

120 kr

Saturday 06:00

Friday 18:00

5 kr

Friday 19:00

Friday 18:00

60 kr

Saturday 18:00

Example: 4

//Mon 08.00 - Sat 18.00 £0.60 / hour
//18:00 - 22:00 £1.00
//22:00 – 08:00 £1.00
 
//Sunday £1:00 08:00-18:00
//18:00 – 22:00 £1.30
//22:00 – 08:00 £1.00
 
PACKAGE "Example: 4 - Newcastle";
carryovermode = no carryover;
 
INTERVAL "day";
timepredicate = "(($weekday in [mon,sat]) and ($hour in [08,18[))";
tariffrate = linear 60 per 60;
inertia = 60;
 
INTERVAL "evenings";
timepredicate = "(($weekday in [mon,sat]) and ($hour in [18,22[))";
tariffrate = flat 100 until end of interval;
 
INTERVAL "nights";
timepredicate = "($hour in [22,8[)";
tariffrate = flat 100 until end of interval;
 
INTERVAL "sunday days";
timepredicate = "(($weekday = sun) and ($hour in [08,18[))";
tariffrate = flat 100 until end of interval;
 
INTERVAL "sunday evenings";
timepredicate = "(($weekday = sun) and ($hour in [18,22[))";
tariffrate = flat 130 until end of interval;

To find out how much time you would receive for a certain amount of ticks depending on when you start paying, use this table:

Start time

Amount

Stop time

17:50

£0.60

18:50

17:50

£1.60

22:00