This call will bulk retrieve period-by-period attendance data from the SIS. This call is typically more voluminous than any other LISS call and therefore implementors should consider using LISS-over-JSON instead of LISS-over-XmlRpc.
liss.getAttendance(auth, date1, date2)
auth: See authentication
date1: timestamp. The timestamp parameters should be interpreted as dates, not date-time's, so you cannot query portions of a day, only whole days.
An array of struct’s. Each struct is defined as follows:
|string mandatory||A short identifier which uniquely identifies a student.|
|string mandatory to have either this or ||This field is used if the publisher is implementing period-by-period attendance.|
An alphanumeric identifier which uniquely identifies a particular lesson, e.g. a particular instance of a class or an excursion. This identifier should be in a particular format: 3 elements, separated by commas:
(The reason this call uses this 3-part string instead of 3 separate fields is to reduce bandwidth with XmlRpc implementations, noting that period-by-period data is voluminous and XmlRpc is very inefficient.)
|string mandatory to have either this or ||This field is used instead of 'Activity' if the publisher is not implementing period-by-period attendance.|
|string mandatory||A single character string or empty string. There are 5 allowed values:|
empty string = not known and don't want to guess.
|integer optional||Applies to period-by-period attendance. Represents the number of minutes the student was late to this lesson. Only applicable with 'status=P'. If this field is missing, we understand the student to have arrived on time. LISS does not support multiple absence time-ranges within the one activity.|
|integer optional||Applies to period-by-period attendance. Represents the number of minutes the student left the lesson early. See above.|
|string optional||A short code representing the reason for the absence, if known. This field will be omitted or blank if the reason is unknown. This field is closely related to 'Category': 'ReasonCode' represents a detailed breakdown of absence reasons, in a way that can be customised by any system or even any school, whereas 'Category' has a small and fixed set of standardised values. To make sense of the ReasonCode's i.e. the detailed breakdown, the two systems will need to directly negotiate some system or standards.|
|string mandatory if ||Closely related to 'ReasonCode', see the explanation above. The 4 allowed values are:|
The first 3 should be counted for statistical purposes. The last one, "schoolbiz", is to be used for things like TAFE or 1-on-1 interviews or when the attendance system is being used (abused) to register excursions. For the sake of reports, "schoolbiz" is to be regarded as "present".
|string optional||A free-text explanation of the absence.|
|boolean optional||This field is used to compress the data being sent. If true (i.e. '1' in XmlRpc) then we will associate this row with the 'reasonCode' and 'reasonText' and 'Category' fields of the previous row in the array. This field should only be used with period-by-period attendance, i.e. if each row contains the 'Activity' field instead of the 'Type' field. If half-day/full-day attendance is used then every record should have the full set of fields.|