Wiki-Quellcode von ONYX Player Interface

Version 192.1 von Carina Enke am 07.10.2020

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