Wiki-Quellcode von ONYX Player Interface

Version 237.1 von Carina Enke am 19.05.2020

Zeige letzte Bearbeiter
1 {{sv-translation language="de"}}
2 {{layout}}
3 {{layout-section ac:type="single"}}
4 {{layout-cell}}
5
6
7 {{details}}
8 (% class="wrapped" %)
9 |=(((
10 Verantwortlicher
11 )))|(((
12 \\
13 )))
14 |=(% colspan="1" %)(% colspan="1" %)
15 (((
16 Status
17 )))|(% class="highlight-yellow" colspan="1" data-highlight-colour="yellow" %)(% class="highlight-yellow" colspan="1" data-highlight-colour="yellow" %)
18 (((
19 (% class="content-wrapper" %)
20 (((
21 {{sv-metadata type="workflow-status"/}}
22
23 {{status colour="Green" title="Fertig"/}}
24 )))
25 )))
26 |=(% colspan="1" %)(% colspan="1" %)
27 (((
28 Varianten
29 )))|(% colspan="1" %)(% colspan="1" %)
30 (((
31 (% class="content-wrapper" %)
32 (((
33 {{sv-metadata type="variants"/}}
34 )))
35 )))
36 |=(% colspan="1" %)(% colspan="1" %)
37 (((
38 Attribute
39 )))|(% colspan="1" %)(% colspan="1" %)
40 (((
41 (% class="content-wrapper" %)
42 (((
43 {{sv-metadata type="attributes"/}}
44 )))
45 )))
46 |=(% colspan="1" %)(% colspan="1" %)
47 (((
48 Pagekey
49 )))|(% colspan="1" %)(% colspan="1" %)
50 (((
51 (% class="content-wrapper" %)
52 (((
53 {{sv-metadata type="pagekey"/}}
54 )))
55 )))
56 |=(% colspan="1" %)(% colspan="1" %)
57 (((
58 Übersetzung
59 )))|(% colspan="1" %)(% colspan="1" %)
60 (((
61 (% class="content-wrapper" %)
62 (((
63 ONYX Player Interface 
64
65 {{status colour="Green" title="fertig"/}}
66 )))
67 )))
68 |=(% colspan="1" %)(% colspan="1" %)
69 (((
70 TODOs
71 )))|(% colspan="1" %)(% colspan="1" %)
72 (((
73 (% class="content-wrapper" %)
74 (((
75 (% class="task-list" %)
76 (((
77 {{task reference="/Tasks/Task_9" status="Done"}}
78 carina {{mention reference="XWiki.0a49950f5c0f19a8015c101b60e10001" style="FULL_NAME" anchor="XWiki-0a49950f5c0f19a8015c101b60e10001-mcTWM"/}}: Übersetzung offen
79 {{/task}}
80 )))
81 )))
82 )))
83 {{/details}}
84 {{/layout-cell}}
85 {{/layout-section}}
86
87 {{layout-section ac:type="two_right_sidebar"}}
88 {{layout-cell}}
89 Die Schnittstelle zwischen ONYX Player und der Lernplattform besteht aus folgenden Komponenten:
90
91 * Anmeldung eines Tests durch die Lernplattform beim ONYX Player
92 * Anmeldung eines Teilnehmers durch die Lernplattform beim ONYX Player
93 * Teststeuerung
94 * Ergebnisrückgabe der Testresultate durch den ONYX Player an die Lernplattform
95 * Abmeldung des Tests
96 {{/layout-cell}}
97
98 {{layout-cell}}
99 {{scroll-ignore}}
100 {{panel borderColor="#ddd" bgColor="#f0f0f0" borderStyle="solid" title="Inhalt"}}
101
102
103 {{toc/}}
104 {{/panel}}
105 {{/scroll-ignore}}
106
107 {{details hidden="true"}}
108 Diese Informationen werden nicht auf der Seite angezeigt.
109
110 (% class="wrapped" %)
111 |=(% colspan="1" %)(% colspan="1" %)
112 (((
113 Beteiligte
114 )))|(% colspan="1" %)(% colspan="1" %)
115 (((
116 (% class="content-wrapper" %)
117 (((
118 {{contributors order="name"/}}
119 )))
120 )))
121 |=(% colspan="1" %)(% colspan="1" %)
122 (((
123 Deadline
124 )))|(% colspan="1" %)(% colspan="1" %)
125 (((
126 ~/~/
127 )))
128 |=(((
129 Verantwortlicher
130 )))|(((
131 (% class="task-list" %)
132 (((
133 {{task reference="/Tasks/Task_8" status="InProgress"}}
134
135 {{/task}}
136 )))
137 )))
138 |=(% colspan="1" %)(% colspan="1" %)
139 (((
140 Status
141 )))|(% class="highlight-yellow" colspan="1" data-highlight-colour="yellow" %)(% class="highlight-yellow" colspan="1" data-highlight-colour="yellow" %)
142 (((
143 (% class="content-wrapper" %)
144 (((
145 {{sv-metadata default-text="Workflow Status" type="workflow-status"/}}
146 )))
147 )))
148 |=(% colspan="1" %)(% colspan="1" %)
149 (((
150 Varianten
151 )))|(% colspan="1" %)(% colspan="1" %)
152 (((
153 (% class="content-wrapper" %)
154 (((
155 {{sv-metadata default-text="Varianten" type="variants"/}}
156 )))
157 )))
158 |=(% colspan="1" %)(% colspan="1" %)
159 (((
160 Attribute
161 )))|(% colspan="1" %)(% colspan="1" %)
162 (((
163 (% class="content-wrapper" %)
164 (((
165 {{sv-metadata default-text="Attribute" type="attributes"/}}
166 )))
167 )))
168 |=(% colspan="1" %)(% colspan="1" %)
169 (((
170 Pagekey
171 )))|(% colspan="1" %)(% colspan="1" %)
172 (((
173 (% class="content-wrapper" %)
174 (((
175 {{sv-metadata default-text="Pagekey" type="pagekey"/}}
176 )))
177 )))
178 |=(% colspan="1" %)(% colspan="1" %)
179 (((
180 Autorenbemerkung
181 )))|(% colspan="1" %)(% colspan="1" %)
182 (((
183 \\
184 )))
185 {{/details}}
186
187 \\
188
189 \\
190 {{/layout-cell}}
191 {{/layout-section}}
192
193 {{layout-section ac:type="single"}}
194 {{layout-cell}}
195 == Allgemeines ==
196
197 Der ONYX Player definiert einen WebService. Dieser ist über die URL **<ONYXWebPlayer-URL>/onyx/onyxexamservices** erreichbar.
198
199 Link zur WSDL der öffentlichen Demo-Runtime: (% class="nolink" %)**http:~/~/demo.bps-system.de/onyx/onyxexamservices?wsdl**
200
201 == Anmeldung eines Tests ==
202
203 Bevor Teilnehmer Tests belegen können, müssen diese zuerst bei ONYX angemeldet werden.
204
205 {{code language="xml" title="Anmeldung"}}
206 @WebMethod(operationName = „registerTest")
207 public Long registerTest(
208 @WebParam(name = „testSessionId") final Long testSessionId,
209 @WebParam(name = „providerId") final String providerId,
210 @WebParam(name = „contentPackage") final byte[] contentPackage,
211 @WebParam(name = „parameters") final MapWrapper parameters) throws Exception {
212 }
213 {{/code}}
214
215 === Parameter registerTest ===
216
217 (% class="wrapped" %)
218 |(((
219 testSessionId
220 )))|(((
221 Durch die Lernplattform vergebene, eindeutige ID, welche die Kennung für diesen Test
222
223 darstellt.
224 )))
225 |(((
226 providerId
227 )))|(((
228 Die Kennung, unter welcher die anfordernde Lernplattform bei ONYX angemeldet ist.
229 )))
230 |(((
231 contentPackage
232 )))|(((
233 Das IMS QTI v2.1 CP (ZIP-File als byte-Array).
234 )))
235 |(((
236 parameters
237 )))|(((
238 (% class="content-wrapper" %)
239 (((
240 Liste von Parametern zur Teststeuerung. Weitere Parameter können für den einzelnen Teilnehmer festgelegt werden ([[registerStudent>>doc:||anchor="AnmeldungeinesStudenten"]]).
241
242 Alle Parameter sind optional. Die Standardeinstellung ist fett gedruckt.
243
244 {{info title="Hinweis"}}
245 Seit der ONYX Version 5.15 lässt sich die Feedback- und Auswertungsanzeige für den Teilnehmer während der Testdurchführung genauer steuern. Für diese Funktionalität wurde die Schnittstelle angepasst. Eine detaillierte Beschreibung der Funktionalität aus Anwendersicht bietet der Abschnitt "[[doc:Konfiguration der Testdurchfuehrung]]"(% class="error" %) (%%).
246 {{/info}}
247
248 * showSolution [true|**false**] Soll dem Nutzer die korrekte Antwort anzeigbar sein?
249 * isSynchronized [true|**false**] Handelt es sich um einen Test im Prüfungsmodus, bei dem der Start des Tests über alle Teilnehmer synchronisiert wird?
250 * (((
251 continuationAllowed [true|**false**] Ist es erlaubt, die Testsession jederzeit fortzusetzen? Wenn nicht, muss jeder Teststart über die Lernplattform durchgeführt werden.
252 )))
253 * suspendAllowed [true|**false**] Ist es erlaubt, den Test zu unterbrechen? In diesem Fall wird eine zusätzliche Taste „Unterbrechen“ angezeigt.
254 * Templateid: Derzeit einzig unterstützt: onyxwithoutnav – führt zur Nichtanzeige des Navigationsbaumes.
255 * dontShowItemTitles (% class="error" %)[true|**false**]: Sollen die Titel der Aufgaben nicht angezeigt werden?
256
257
258 {{note}}
259 Folgende Parameter sind seit **ONYX Version** **5.15** verfügbar:
260 {{/note}}
261
262 * testShowScore [**true**|false] Dem Teilnehmer wird nach Testabgabe eine Testabschlusseite angezeigt, welche alle ermittelten Punktwerte, wie die Gesamtpunktzahl des Tests und ggf. Punkte pro Testabschnitt, (nicht) enthält.
263 * testShowPassed (% class="error" %)[true|false](%%) Dem Teilnehmer wird nach Testabgabe eine Testabschlusseite angezeigt, die die Information (nicht) enthält, ob der Test bestanden wurde. Standard ist der in testShowScore gegebene Wert bzw. dessen Standard.
264 * testShowFeedback [**true**|false] Dem Teilnehmer wird nach Testabgabe eine Testabschlusseite angezeigt, welche das durch den Autor definierte Test-Feedback (nicht) enthält.
265 * itemShowFeedback [**true**|false] Dem Teilnehmer wird nach Abgabe seiner Aufgaben-Antwort das durch den Autor definierte Aufgaben-Feedback angezeigt.
266 * itemShowScore [**true**|false] Dem Teilnehmer wird nach Abgabe seiner Aufgaben-Antwort angezeigt, wie viele Punkte er für die Aufgabe erreicht hat..
267 * itemShowCorrect [**true**|false] Dem Teilnehmer wird nach Abgabe seiner Aufgaben-Antwort angezeigt, ob seine Antworten korrekt oder falsch waren. Impliziert itemShowScore=true.
268 * itemShowSolution [**true**|false] Dem Teilnehmer wird nach Abgabe seiner Aufgaben-Antwort die korrekte Lösung angezeigt. Impliziert itemShowCorrect=true und itemShowScore=true.
269
270 {{info title="Hinweis"}}
271 Werden keine Auswertungsinformationen auf Aufgaben-Ebene angezeigt (itemShowFeedback = false, itemShowScore = false, itemShowCorrect =false, itemShowSolution = false), wird dem Teilnehmer während der Testdurchführung kein Button zur Aufgaben-Abgabe angezeigt. Die Antworten werden zu jeder Zeit gespeichert und nach Test-Abgabe ausgewertet.
272 {{/info}}
273
274 {{error}}
275 Folgende Parameter sind seit **ONYX Version 5.15 (% style="color: rgb(255,0,0);" %)__nicht mehr__(%%)** verfügbar:
276 {{/error}}
277
278 * showSolution [**true** |false] - Ersetzt durch testShowScore, testShowPassed, itemShowSolution (inkl. Implikationen)
279 * showFeedback [**true** |false] - Ersetzt durch testShowFeedback sowie itemShowFeedback
280 )))
281 )))
282
283 === ReturnValue registerTest ===
284
285 (% class="wrapped" %)
286 |(((
287 Long
288 )))|(((
289 **Einer der folgenden Werte:**
290
291 * WAITING(0) – Warten auf Teststart
292 * WORKING(1) – bearbeitet Test
293 * FINISHED(2) – hat Test abgegeben
294 * RESUME_ALLOWED(3) – Fortsetzen erlaubt
295 * NOT_ENTERED(4) – hat Test noch nicht betreten
296 * CANCELED(5) – hat Testbearbeitung abgebrochen
297 * RESUME_REQUESTED(6) – möchte fortsetzen
298 * RESUMED(7) – hat fortgesetzt
299 * DISCONNECTED(8) – Client nicht (mehr) erreichbar
300 * SUSPENDED(9) – Testbearbeitung unterbrochen
301 * RESUME_SUSPENDED(10) – unterbrochene Bearbeitung fortgesetzt
302 * OK(42) – OK
303 )))
304 |(((
305 \\
306 )))|(((
307 **Fehlercodes:**
308
309 * ERROR_RETURN_RESULTS(0xFF01)
310 * ERROR_MULTIPLE_REGISTER_STUDENT_WITH_SAME_ID_CALLS(0xFF02)
311 * ERROR_REGISTER_STUDENT_WITH_UNKNOWN_TEST_ID(0xFF03)
312 * ERROR_REGISTER_STUDENT_WITH_EMPTY_TEST_ID(0xFF04)
313 * ERROR_REGISTER_STUDENT_WITH_EMPTY_STUDENT_ID(0xFF05)
314 * ERROR_REGISTER_STUDENT_TO_RESUME_WITHOUT_PAYLOAD(0xFF06)
315 * ERROR_REGISTER_STUDENT_FOR_UNKNOWN_PROVIDER(0xFF07)
316 * UNKNOWN(-1)
317 )))
318
319 == Anmeldung eines Studenten ==
320
321 Nach Anmeldung eines Test können Studenten diesen nutzen. Dazu müssen auch diese angemeldet werden.
322
323 {{code title="Anmeldung"}}
324 @WebMethod(operationName = „registerStudent")
325 public Long registerStudent(
326 @WebParam(name = „testSessionId", partName = „testSessionId") final Long test
327 SessionId,
328 @WebParam(name = „studentId", partName = „studentId") final Long studentId,
329 @WebParam(name = „payload", partName = „payload") final byte[] payload,
330 @WebParam(name = „parameters") final MapWrapper parameters) throws Exception {
331 }
332 {{/code}}
333
334 === Parameter registerStudent ===
335
336 (% class="wrapped" %)
337 |(((
338 testSessionId
339 )))|(((
340 Durch die Lernplattform vergebene, eindeutige ID, welche die Kennung für den Test darstellt (siehe registerTest).
341 )))
342 |(((
343 studentId
344 )))|(((
345 Eindeutige Kennung für Testteilnehmer. Diese wird von ONYX zurück gemeldet, wenn Statusänderungen oder Ergebnisse übertragen werden.
346 )))
347 |(% colspan="1" %)(% colspan="1" %)
348 (((
349 payload
350 )))|(% colspan="1" %)(% colspan="1" %)
351 (((
352 Optional. Resultate für den Teilnehmer (bspw. im Fall der Fortsetzung von unterbrochenen Tests)
353 )))
354 |(% colspan="1" %)(% colspan="1" %)
355 (((
356 parameters
357 )))|(% colspan="1" %)(% colspan="1" %)
358 (((
359 Liste von Parametern zur Teststeuerung (alle optional, fett gedruckt = Standard):
360
361 * language [**de**|en|fr|es] Sprache des Benutzerinterfaces von ONYX.
362 * status: Initialer Status des Teilnehmers (aktuell wird nur RESUME_SUSPENDED(10) unterstützt).
363 )))
364
365 === ReturnValue registerStudent ===
366
367 (% class="wrapped" %)
368 |(((
369 Long
370 )))|(((
371 Einer der Werte wie unter Anmeldung eines Tests beschrieben.
372 )))
373
374 == Teststeuerung ==
375
376 Für registrierte Testteilnehmer kann der Status durch die Lernplattform kontrolliert werden, bspw. um nach der Freigabe durch den Betreuer für alle den Test zu starten, am Ende zu beenden oder fortzusetzen.
377
378 {{code title="Teststeuerung"}}
379 @WebMethod(operationName = „testControl")
380 public Long testControl(
381 @WebParam(name = „testSessionId") final Long testSessionId,
382 @WebParam(name = „studentIds") final StudentIdsWrapper students,
383 @WebParam(name = „status") final Integer status,
384 @WebParam(name = „parameters") final MapWrapper parameters) throws Exception {
385 }
386 {{/code}}
387
388 === Parameter testControl ===
389
390 (% class="wrapped" %)
391 |(((
392 testSessionId
393 )))|(((
394 Durch die Lernplattform vergebene, eindeutige ID, welche die Kennung für den Test darstellt (siehe registerTest).
395 )))
396 |(((
397 studentIds
398 )))|(((
399 Liste eindeutiger Kennungen für Testteilnehmer.
400 )))
401 |(((
402 status
403 )))|(((
404 Neu zu setzender Status für die gegebenen Testteilnehmer.
405 )))
406 |(((
407 parameters
408 )))|(((
409 Liste von Parametern zur Teststeuerung (alle optional):
410
411 * addTime: Time in minutes to add to the test session.
412 )))
413
414 === ReturnValue testControl ===
415
416 (% class="wrapped" %)
417 |(((
418 Long
419 )))|(((
420 Einer der Werte wie unter Anmeldung eines Tests beschrieben.
421 )))
422
423 == Speicher aufräumen ==
424
425 Haben alle Teilnehmer den Test durchgeführt, so kann die Lernplattform ONYX mitteilen, dass dieses den Test deregistrieren und den Speicher aufräumen kann.
426
427 {{code title="Teststeuerung"}}
428 @WebMethod(operationName = „deregisterTest")
429 public Long deregisterTest(
430 @WebParam(name = „testSessionId") final Long testSessionId,
431 @WebParam(name = „providerId") final String providerId,
432 @WebParam(name = „parameters") final MapWrapper parameters) throws Exception {
433 }
434 {{/code}}
435
436 === Parameter deregisterTest ===
437
438 (% class="wrapped" %)
439 |(((
440 testSessionId
441 )))|(((
442 Durch die Lernplattform vergebene, eindeutige ID, welche die Kennung für den Test darstellt (siehe registerTest).
443 )))
444 |(((
445 providerId
446 )))|(((
447 Die Kennung, unter welcher die anfordernde Lernplattform bei ONYX angemeldet ist.
448 )))
449 |(((
450 parameters
451 )))|(((
452 Aktuell nicht verwendet.
453 )))
454
455 === ReturnValue deregisterTest ===
456
457 (% class="wrapped" %)
458 |(((
459 Long
460 )))|(((
461 Einer der Werte wie unter Anmeldung eines Tests beschrieben.
462 )))
463
464 == Anzeige des Tests ==
465
466
467 Nachdem ein Test beim Player angemeldet wurde, kann er vom Nutzer** exakt ein Mal** angezeigt werden. Dazu muss er von der Lernplattform im Browserfenster einen IFrame mit der Ziel-URL <ONYXWebPlayer-URL>/onyx/onyxrun?id=<UID> angezeigt bekommen, wobei <UID> die bei der Testanmeldung verwendete eindeutige studentId sein muss. Der Test wird dann wieder gegeben. Beendet der Nutzer den Test, so erfolgt eine Rückgabe der Resultate an die Lernplattform. Diese muss dazu eine Webservice-Schnittstelle definieren, welche exakt der unter der folgenden URL verfügbaren WSDL entspricht:
468
469 {{note title="URL"}}
470 [[http:~~/~~/demo.bps-system.de/olatce/services/ReturnWSService?wsdl>>url:http://demo.bps-system.de/olatce/services/ReturnWSService?wsdl||shape="rect"]]
471 Lediglich die URL im unteren Teil der WSDL muss an die Lernplattform angepasst werden.
472 {{/note}}
473
474 == Konfiguration des ONYX Players ==
475
476 Der ONYX Player verwendet eine Konfigurationsdatei namens onyxplugin.config.xml. Diese muss im Java Classpath liegen. Sie ist wie folgt definiert:
477
478 [[image:attach:SchnittstellePlayer.png]]
479
480 \\
481
482 {{error title="Sicherheit"}}
483 Sowohl die WSDL des ONYX Player als auch die der Lernplattform sollten „nach außen“ nicht erreichbar/sichtbar sein. Dies gilt ebenso für die jeweiligen WebServices. Die Web-GUI der Lernplattform und ONYX Player hingegen müssen unabhängig davon für alle Nutzer sichtbar und zugreifbar sein. Kommt bei der Testdurchführung HTTPS zum Einsatz (wozu unbedingt zu raten ist), muss der jeweiligen Java VM der Lernplattform und des ONYX Players das entsprechende Zertifikat bekannt sein. Sonst ist die WebService-Kommunikation nicht möglich.
484 {{/error}}
485 {{/layout-cell}}
486 {{/layout-section}}
487 {{/layout}}
488 {{/sv-translation}}
489
490 {{sv-translation language="en"}}
491 {{layout}}
492 {{layout-section ac:type="two_right_sidebar"}}
493 {{layout-cell}}
494 The API between the ONYX Player and the LMS consists of the following components:
495
496 * Registration of a test in the ONYX Player through the LMS
497 * Registration of a participant in the ONYX Player through the LMS
498 * Test control
499 * Return of test results to the LMS by the ONYX Player
500 * Deregistration of the test
501 {{/layout-cell}}
502
503 {{layout-cell}}
504 {{scroll-ignore}}
505 {{panel borderColor="#ddd" bgColor="#f0f0f0" borderStyle="solid" title="Content"}}
506
507
508 {{toc/}}
509 {{/panel}}
510 {{/scroll-ignore}}
511 {{/layout-cell}}
512 {{/layout-section}}
513
514 {{layout-section ac:type="single"}}
515 {{layout-cell}}
516 == General information ==
517
518 The ONYX Player defines a web service, which can be reached via the URL **<ONYXPlayer-URL>/onyx/onyxexamservices**.
519
520 Link to the WSDL of the public demo runtime: [[http:~~/~~/demo.bps-system.de/onyx/>>url:http://demo.bps-system.de/onyx/||shape="rect"]][[onyxexamservices?wsdl>>url:http://demo.bps-system.de/onyx/onyxexamservices?wsdl||shape="rect"]]
521
522 == Registration of a test ==
523
524
525 Before participants can take tests, the tests need to be registered with ONYX.
526
527 {{code language="xml" title="Registration"}}
528 @WebMethod(operationName = „registerTest")
529 public Long registerTest(
530 @WebParam(name = „testSessionId") final Long testSessionId,
531 @WebParam(name = „providerId") final String providerId,
532 @WebParam(name = „contentPackage") final byte[] contentPackage,
533 @WebParam(name = „parameters") final MapWrapper parameters) throws Exception {
534 }
535 {{/code}}
536
537 === Parameter registerTest ===
538
539 |(((
540 testSessionId
541 )))|(((
542 Unique ID assigned by the LMS, which serves as an identifier for this test.
543 )))
544 |(((
545 providerId
546 )))|(((
547 Identification under which the requesting LMS is registrated with ONYX.
548 )))
549 |(((
550 contentPackage
551 )))|(((
552 The IMS QTI v2.1 CP (zip file as byte array).
553 )))
554 |(((
555 parameters
556 )))|(((
557 (% class="TableParagraph" %)
558 List of parameters to control the test. Additional parameters can be set for individual participants ((% style="color: rgb(13,78,168);" %)registerStudent(%%)).
559
560 (% class="TableParagraph" %)
561 All parameters are optional. The default setting is shown in bold.
562
563 {{info title="Note"}}
564 Since ONYX version 5.15, the feedback and assessment display for the participant can be controlled more precisely during the test execution. The interface has been adapted for this functionality. For a more detailed description of the functionality from the user perspective, see section "[[Configuration of the test implementation>>url:https://www.bps-system.de/help/display/ONYXintern/.Konfiguration+der+Testdurchfuehrung+v1.11||shape="rect"]]".
565 {{/info}}
566
567 * showSolution [true|**false**] Should the correct answer be displayed to the user?
568 * isSynchronized [true|**false**] Is it a test in the exam mode for which the test start is synchronised for all users?
569 * continuationAllowed [true|**false**] Is it allowed to continue the test session at any time? If not, each test start must be performed via the LMS.
570 * suspendAllowed [true|f**alse**] Is it is allowed to interrupt the test? If this is the case, the additional button "Suspend" will be displayed.
571 * Templateid: Currently only supported: onyxwithoutnav - hides the navigation tree.
572 * dontShowItemTitles [true|**false**]: Are the titles of the tasks supposed to be displayed?
573 \\
574
575 {{note}}
576 The following parameters are available since **version 5.15:**
577 {{/note}}
578
579 * testShowScore [**true**|false] A test completion page is displayed to the participant after the submission of the test, which can contain all determined point values, such as the total test score and the points per test section.
580 * testShowPassed [**true**|false] A test completion page is displayed to the participant after the submission of the test, which can contain information about the passed status of this test. Default is the value given in testShowScore or its default.
581 * testShowFeedback [**true**|false] A test completion page is displayed to the participant after the submission of the test, which can contain the test feedback defined by the author.
582 * itemShowFeedback [**true**|false] The task feedback defined by the author is displayed to the participant after the task has been answered.
583 * itemShowScore [**true**|false] The participant is shown the number of points achieved for the task after the submission of their answer.
584 * itemShowCorrect [**true**|false] The participant is shown whether their answer was correct or wrong after the submission of their answer. Implies itemShowScore=true.
585 * itemShowSolution [**true**|false] The participant is shown the correct solution after the submission of their answer. Implies itemShowCorrect=true and itemShowScore=true.
586 \\
587
588 {{info title="Note"}}
589 If no evaluation information is displayed on task level (itemShowFeedback = false, itemShowScore = false, itemShowCorrect = false, itemShowSolution = false), the participant will not be shown the button to submit the task during the test implementation. The answers are saved at any time and assessed after the submission of the test.
590 {{/info}}
591
592 {{error}}
593 The following parameters are (% style="color: rgb(255,0,0);" %)**__no longer__**(%%)** **available since **ONYX** **version 5.15**:
594 {{/error}}
595
596 * showSolution [**true **|false] - Replaced by testShowScore, testShowPassed, itemShowSolution (including implications)
597 * showFeedback [**true **|false] - Replaced by testShowFeedback and itemShowFeedback
598 )))
599
600 === ReturnValue registerTest ===
601
602 |(((
603 Long
604 )))|(((
605 **One of the following values:**
606
607 * WAITING(0) – waiting for test start
608 * WORKING(1) – is processing the test
609 * FINISHED(2) – handed in the test
610 * RESUME_ALLOWED(3) – resuming allowed
611 * NOT_ENTERED(4) – has not yet entered the test
612 * CANCELED(5) – has interrupted the testing process
613 * RESUME_REQUESTED(6) – wants to continue
614 * RESUMED(7) – has continued
615 * DISCONNECTED(8) – client is not / no longer reachable
616 * SUSPENDED(9) – testing process has been interrupted
617 * RESUME_SUSPENDED(10) – interrupted testing is continued
618 * OK(42) – OK
619 )))
620 |(((
621
622 )))|(((
623 **Error codes:**
624
625 * ERROR_RETURN_RESULTS(0xFF01)
626 * ERROR_MULTIPLE_REGISTER_STUDENT_WITH_SAME_ID_CALLS(0xFF02)
627 * ERROR_REGISTER_STUDENT_WITH_UNKNOWN_TEST_ID(0xFF03)
628 * ERROR_REGISTER_STUDENT_WITH_EMPTY_TEST_ID(0xFF04)
629 * ERROR_REGISTER_STUDENT_WITH_EMPTY_STUDENT_ID(0xFF05)
630 * ERROR_REGISTER_STUDENT_TO_RESUME_WITHOUT_PAYLOAD(0xFF06)
631 * ERROR_REGISTER_STUDENT_FOR_UNKNOWN_PROVIDER(0xFF07)
632 * UNKNOWN(-1)
633 )))
634
635 == Registration of a student ==
636
637 After a test has been registered, students can use it. Provided that they have been registered themselves.
638
639 {{code title="Registration"}}
640 @WebMethod(operationName = „registerStudent")
641 public Long registerStudent(
642 @WebParam(name = „testSessionId", partName = „testSessionId") final Long test
643 SessionId,
644 @WebParam(name = „studentId", partName = „studentId") final Long studentId,
645 @WebParam(name = „payload", partName = „payload") final byte[] payload,
646 @WebParam(name = „parameters") final MapWrapper parameters) throws Exception {
647 }
648 {{/code}}
649
650 === Parameter registerStudent ===
651
652 |(((
653 testSessionId
654 )))|(((
655 (% class="TableParagraph" %)
656 Unique ID assigned by the LMS, which serves as an identifier for the test (cf. registerTest).
657 )))
658 |(((
659 studentId
660 )))|(((
661 (% class="TableParagraph" %)
662 Unique identification for test participants. ID will be returned by ONYX when status changes or results are transmitted.
663 )))
664 |(% colspan="1" %)(% colspan="1" %)
665 (((
666 payload
667 )))|(% colspan="1" %)(% colspan="1" %)
668 (((
669 (% class="TableParagraph" %)
670 Optional. Results for the participant (e.g. if interrupted tests are continued)
671 )))
672 |(% colspan="1" %)(% colspan="1" %)
673 (((
674 parameters
675 )))|(% colspan="1" %)(% colspan="1" %)
676 (((
677 (% class="TableParagraph" %)
678 List of parameters to control the test (all optional, bold = default):
679
680 * Language [**de**|en|fr|es] Language of the ONYX user interface.
681 * Status: Initial status of the participant (currently only RESUME_SUSPENDED(10) is supported).
682 )))
683
684 === ReturnValue registerStudent ===
685
686 |(((
687 Long
688 )))|(((
689 One of the values as described under registration of a test.
690 )))
691
692 == Test control ==
693
694 For registered test participants, the status can be controlled by the LMS, for example, to start, finish, or continue the test after its release by the tutor.
695
696 {{code title="Test control"}}
697 @WebMethod(operationName = „testControl")
698 public Long testControl(
699 @WebParam(name = „testSessionId") final Long testSessionId,
700 @WebParam(name = „studentIds") final StudentIdsWrapper students,
701 @WebParam(name = „status") final Integer status,
702 @WebParam(name = „parameters") final MapWrapper parameters) throws Exception {
703 }
704 {{/code}}
705
706 === Parameter testControl ===
707
708 |(((
709 testSessionId
710 )))|(((
711 Unique ID assigned by the LMS, which serves as an identifier for the test (cf. registerTest).
712 )))
713 |(((
714 studentIds
715 )))|(((
716 List of unique IDs for test participants.
717 )))
718 |(((
719 status
720 )))|(((
721 New status to be set for the given test participants.
722 )))
723 |(((
724 parameters
725 )))|(((
726 List of parameters to control the test (all optional):
727
728 * addTime: Time in minutes to add to the test session.
729 )))
730
731 === ReturnValue testControl ===
732
733 |(((
734 Long
735 )))|(((
736 One of the values as described under registration of a test.
737 )))
738
739 == Clear storage ==
740
741 When all participants have finished the test, the LMS can inform ONYX to deregister the test and to clear the storage.
742
743 {{code title="Test control"}}
744 @WebMethod(operationName = „deregisterTest")
745 public Long deregisterTest(
746 @WebParam(name = „testSessionId") final Long testSessionId,
747 @WebParam(name = „providerId") final String providerId,
748 @WebParam(name = „parameters") final MapWrapper parameters) throws Exception {
749 }
750 {{/code}}
751
752 === Parameter deregisterTest ===
753
754 |(((
755 testSessionId
756 )))|(((
757 Unique ID assigned by the LMS, which serves as an identifier for the test (cf. registerTest).
758 )))
759 |(((
760 providerId
761 )))|(((
762 Identification under which the requesting LMS is registered with ONYX.
763 )))
764 |(((
765 parameters
766 )))|(((
767 Currently not used.
768 )))
769
770 === ReturnValue deregisterTest ===
771
772 |(((
773 Long
774 )))|(((
775 One of the values as described under registration of a test.
776 )))
777
778 == Test display ==
779
780 After a test has been registered with the Player, it will be displayed to the user **exactly once**. For this reason, the LMS will show an IFrame with the target URL <ONYXWebPlayer-URL>/onyx/onyxrun?id=<UID> in the browser window. The <UID> must be the unique studentId used in the test registration. The test will then be started. If the user finishes the test, the results are returned to the LMS. The LMS then needs to define a web service API that exactly matches the WSDL available under the following URL:
781
782 {{note title="URL"}}
783 [[http:~~/~~/demo.bps-system.de/olatce/services/ReturnWSService?wsdl>>url:http://demo.bps-system.de/olatce/services/ReturnWSService?wsdl||shape="rect"]]
784 Only the URL in the lower part of the WSDL has to be adapted to the LMS.
785 {{/note}}
786
787 == Configuration of the ONYX Player ==
788
789 The ONYX Player uses a configuration file named onyxplugin.config.xml, which must be stored in the Java Classpath. It is defined as follows:
790
791 [[image:attach:SchnittstellePlayer.png]]
792
793 {{error title="Security"}}
794 Both the WSDL of the ONYX Player and the LMS should not be accessible/visible from the outside. This also applies to the respective web services. The web GUI of the LMS and the ONYX Player, in contrast, must be visible to and accessible for all users. If HTTPS is used during the test execution (recommended), the appropriate certificate must be known to the corresponding JVM of the LMS and the ONYX Player. Otherwise web service communication is not possible.
795 {{/error}}
796 {{/layout-cell}}
797 {{/layout-section}}
798 {{/layout}}
799 {{/sv-translation}}