Skip to main content

Publish calendar

This call publishes the date --> cycle day mapping. Note that many SIS’s have no use for this function and you should not rely on this data for building timetable displays, because instead you should be using liss.publishDailyData(). The liss.publishDailyData() function combines the date --> cycle day mapping with the cyclical timetable but also includes information about daily variations, i.e. excursions/room swaps/teacher covers, which the timetable displays will need. Conversely, if the SIS is responsible for daily timetabling then the SIS will be the originator of the date --> cycle information and again there is no need to use liss.publishCalendar().

Call

liss.publishCalendar(auth, D)

Parameters

auth: See authentication

D: An array of objects as defined below.

FieldTypeNotesExample
DateTimestamp mandatoryThe date.20120630T00:00:00
DayNamestring mandatoryThe symbolic identifier (not index) of the day in the timetabling cycle. This field must match one of the DayName’s in the liss.publishBellTimes()/liss.getBellTimes() call, or be Holiday.MonA MonB Holiday
DayNumberintegerThe day number as used in the liss.publishTimetable(), liss.publishBellTimes() or liss.getBellTimes() calls. This field can be used to link cyclical timetables with dates. The first day in the cycle is given number 1. Any holiday or weekend, i.e. any date which does not match any day in the cyclical timetable, can have this field blank or omitted.

(Note: you don't need to match cyclical timetables to dates if you use the publishDailyData() call instead)
1 9 10
RotationintegerTimetabling programs sometimes introduce a concept called "rotation" whereby at certain prearranged times of the year, some modifications to the cyclical timetable take effect. These changeover dates may or may not correspond to semesters or terms.2

Returns

Nothing - an empty string "". If anything other than an error is returned it should be ignored. For error reporting see fault codes.

Semantics

  • Each call to this function will overwrite whatever mapping previously existed for the dates supplied.

Example

Send

{
"method": "liss.publishCalendar",
"params": [
{
"School": "03014",
"UserName": "Jsmith",
"Password": "Password1",
"LissVersion": 10002,
"UserAgent": "Edval"
},
[
{
"Date": "20120630T00:00:00",
"DayName": "MonA",
"DayNumber": 1,
"Rotation": 2
}
]
],
"id": 0
}

Return

{
"result": "",
"id": 0
}