StudySystemProtocol DEFINITIONS EXPLICIT TAGS ::= BEGIN ActivityType ::= ENUMERATED { reading(0), exercises(1) } Session ::= SEQUENCE { subjectId INTEGER, type ActivityType, timestamp INTEGER, minutes INTEGER } Request ::= CHOICE { ping [0] NULL, listPrioritizedActivities [1] NULL, logSession [2] Session } PrioritizedActivity ::= SEQUENCE { subjectId INTEGER, subjectName UTF8String, type ActivityType, priority INTEGER } Error ::= ENUMERATED { invalidRequest(0), invalidArguments(1), serverError(2) } Response ::= CHOICE { error [0] Error, ack [1] NULL, prioritizedActivities [2] SEQUENCE OF PrioritizedActivity } END