To group Events or Objective Student Assessments together, it is possible to declare Learning Sessions. A Learning Session has a starting and an ending time, and the Events or Objective Student Assessments which are dated between these limits are parts of this learning session.\\
===Object resources===
^ Property ^ Type ^ Description ^
| id | Integer | identifier for the database of Domoscio's API |
| uid | String | The ID of this learning_session in your Database |
| payload | jsonb | Information about the learning_session |
| student_id | Integer | Identifier of the student |
| starting_time | DateTime | Starting Time of the session |
| ending_time | DateTime | Ending Time of the session |
| created_at | DateTime | Date of creation of the object |
| updated_at | DateTime | Last time the object has been modified |
===CREATE (POST)===
^ Method | POST |
^ URL | /learning_sessions |
==Parameters (*Requiered parameters)==
^ Property ^ Type ^ Description/expected values |
| student_id or uid* | Integer or String | Identifier of the student |
| uid | String | The ID of this learning_session in your Database |
| payload | jsonb | Information about the learning_session |
| starting_time* | DateTime | Starting Time of the session |
| ending_time* | DateTime | Ending Time of the session |
==Send the request (JSON input example)==
{
"student_id": 4,
"uid": "LS4",
"payload": {},
"starting_time": "2019-05-20 14:43:31",
"ending_time": "2019-05-20 14:45:31"
}
==Get the response (JSON output example)==
{
"id": 1,
"uid": "LS4",
"payload": {},
"student_id": 4,
"starting_time": "2019-05-20T14:43:31.000Z",
"ending_time": "2019-05-20T14:45:31.000Z",
"instance_id": 2,
"created_at": "2019-05-20T12:44:02.246Z",
"updated_at": "2019-05-20T12:44:02.246Z"
}
===FETCH (GET)===
^ Method | GET|
^ URL | /learning_sessions/{learning_session_id} |
If no learning session id is provided it will fetch all the Learning Sessions for your instance. You can choose to filter the Learning Sessions by providing the following parameters:
^ Property ^ Type ^ Description ^
| student_id or uid | Integer or String | Identifier of the student |
| date start | DateTime | Filter the learning sessions which started after date start |
| date end | DateTime | Filter the learning sessions which endend before date end |
==Get the response (JSON output example)==
**With ID provided**\\
{
"id": 1,
"student_id": 4,
"uid": "LS4"
"payload": {},
"starting_time": "2019-05-20T14:43:31.000Z",
"ending_time": "2019-05-20T14:45:31.000Z",
"created_at": "2019-05-20T12:44:02.246Z",
"updated_at": "2019-05-20T12:44:02.246Z"
}
**Without ID provided**\\
[
{
"id": 1,
"student_id": 4,
"uid": "LS1"
"payload": {},
"starting_time": "2018-05-20T14:43:31.000Z",
"ending_time": "2018-05-20T14:45:31.000Z",
"created_at": "2019-05-20T12:44:02.246Z",
"updated_at": "2019-05-20T12:44:02.246Z"
},
{
"id": 2,
"student_id": 4,
"uid": "LS2"
"payload": {},
"starting_time": "2019-05-20T14:43:31.000Z",
"ending_time": "2019-05-20T14:45:31.000Z",
"created_at": "2019-05-20T12:55:46.394Z",
"updated_at": "2019-05-20T12:55:46.394Z"
}
]
===GET ADVICES (GET)===
^ Method | GET|
^ URL | /learning_sessions/get_advices |
^ Property ^ Type ^ Description ^
| learning_session_id or uid* | Integer or String | Identifier of the learning session |
| type* | String | Type of the advice. Can be "all", "good_unusual", "good_usual", "bad_usual", "bad_unusual" |
==Send the request (JSON input example)==
{
"student_id":4,
"learning_session_uid":"LS4",
"type":"all"
}
==Get the response (JSON output example)==
{
"learning_session": {
"id": 4,
"uid": "LS4",
"student_id": 4,
"starting_time": "2019-05-20T14:43:31.000Z",
"ending_time": "2019-05-20T14:45:31.000Z",
"payload": null,
"created_at": "2019-05-23T09:25:05.529Z",
"updated_at": "2019-05-23T15:29:36.501Z"
},
"advices": [
{
"type": "good_usual",
"specific_advices": [
{
"objective_student_assessment": {
"id": 3,
"objective_student_id": 7,
"mark": 100,
"success_threshold": null,
"knowledge_node_update": true,
"created_at": "2019-05-23T12:31:03.613Z",
"updated_at": "2019-05-23T12:31:03.613Z",
"payload": null,
"start_date": "2019-05-20T14:44:31.000Z",
"end_date": "2019-05-20T14:45:22.000Z"
},
"content": {
"id": 13,
"uid": "C2",
"type": "Read",
"name": null,
"content_url": null,
"format": null,
"created_at": "2019-04-29T11:48:00.008Z",
"updated_at": "2019-04-29T11:48:00.008Z"
}
},
{
"objective_student_assessment": {
"id": 3,
"objective_student_id": 7,
"mark": 100,
"success_threshold": null,
"knowledge_node_update": true,
"created_at": "2019-05-23T12:31:03.613Z",
"updated_at": "2019-05-23T12:31:03.613Z",
"payload": null,
"start_date": "2019-05-20T14:44:31.000Z",
"end_date": "2019-05-20T14:45:22.000Z"
},
"content": {
"id": 15,
"uid": "C3",
"type": "Read",
"name": null,
"content_url": null,
"format": null,
"created_at": "2019-04-29T11:51:14.814Z",
"updated_at": "2019-04-29T11:51:14.814Z"
}
}
]
},
{
"type": "good_unusual",
"specific_advices": [
{
"objective_student_assessment": {
"id": 3,
"objective_student_id": 7,
"mark": 100,
"success_threshold": null,
"knowledge_node_update": true,
"created_at": "2019-05-23T12:31:03.613Z",
"updated_at": "2019-05-23T12:31:03.613Z",
"payload": null,
"start_date": "2019-05-20T14:44:31.000Z",
"end_date": "2019-05-20T14:45:22.000Z"
},
"content": {
"id": 13,
"uid": "C2",
"type": "Read",
"name": null,
"content_url": null,
"format": null,
"created_at": "2019-04-29T11:48:00.008Z",
"updated_at": "2019-04-29T11:48:00.008Z"
}
}
]
},
{
"type": "bad_usual",
"specific_advices": [
{
"objective_student_assessment": {
"id": 3,
"objective_student_id": 7,
"mark": 100,
"success_threshold": null,
"knowledge_node_update": true,
"created_at": "2019-05-23T12:31:03.613Z",
"updated_at": "2019-05-23T12:31:03.613Z",
"payload": null,
"start_date": "2019-05-20T14:44:31.000Z",
"end_date": "2019-05-20T14:45:22.000Z"
},
"content": {
"id": 13,
"uid": "C2",
"type": "Read",
"name": null,
"content_url": null,
"format": null,
"created_at": "2019-04-29T11:48:00.008Z",
"updated_at": "2019-04-29T11:48:00.008Z"
}
}
]
},
{
"type": "bad_unusual",
"specific_advices": [
{
"objective_student_assessment": {
"id": 3,
"objective_student_id": 7,
"mark": 100,
"success_threshold": null,
"knowledge_node_update": true,
"created_at": "2019-05-23T12:31:03.613Z",
"updated_at": "2019-05-23T12:31:03.613Z",
"payload": null,
"start_date": "2019-05-20T14:44:31.000Z",
"end_date": "2019-05-20T14:45:22.000Z"
},
"content": {
"id": 12,
"uid": "C1",
"type": "Evaluation",
"name": null,
"content_url": null,
"format": null,
"created_at": "2019-04-29T11:47:41.695Z",
"updated_at": "2019-04-29T11:47:41.919Z"
}
}
]
}
]
}