Änderungen von Dokument 08 Schnittstelle ONYX Reporter

Zuletzt geändert von Carina Enke am 13.02.2024

Von Version 396.1
bearbeitet von Carina Enke
am 13.02.2024
Änderungskommentar: Es gibt keinen Kommentar für diese Version
Auf Version 399.1
bearbeitet von Carina Enke
am 13.02.2024
Änderungskommentar: Es gibt keinen Kommentar für diese Version

Zusammenfassung

Details

Seiteneigenschaften
Inhalt
... ... @@ -1,4 +1,55 @@
1 -{{layout}}
1 +(% data-xwiki-non-generated-content="java.util.List" %)
2 +(((
3 +" data-xwiki-wikimacrocontent="true" class="xwiki-metadata-container">
4 +
5 +(% data-xwiki-non-generated-content="java.util.List" %)
6 +(((
7 +" data-xwiki-wikimacrocontent="true" class="xwiki-metadata-container">
8 +
9 +(% data-xwiki-non-generated-content="java.util.List" %)
10 +(((
11 +" data-xwiki-wikimacrocontent="true" class="xwiki-metadata-container">
12 +)))
13 +
14 +{{layout-cell}}
15 +
16 +{{/layout-cell}}
17 +
18 +(% data-xwiki-non-generated-content="java.util.List" %)
19 +(((
20 +" data-xwiki-wikimacrocontent="true" class="xwiki-metadata-container">
21 +
22 +(% data-xwiki-non-generated-content="java.util.List" %)
23 +(((
24 +" data-xwiki-wikimacrocontent="true" class="xwiki-metadata-container">
25 +
26 +{{toc start="2"/}}
27 +
28 + **Weitere Informationen:**
29 +
30 +* [[Schnittstelle ONYX Player>>doc:ONYX.Systeminformationen.Schnittstelle ONYX Player.WebHome]]
31 +)))
32 +
33 +{{panel borderColor="#ddd" bgColor="#f0f0f0" borderStyle="solid" title="Inhalt"}}
34 +{{toc start="2"/}}
35 +
36 + **Weitere Informationen:**
37 +
38 +* [[Schnittstelle ONYX Player>>doc:ONYX.Systeminformationen.Schnittstelle ONYX Player.WebHome]]
39 +{{/panel}}
40 +)))
41 +
42 +{{layout-cell}}
43 +{{panel borderColor="#ddd" bgColor="#f0f0f0" borderStyle="solid" title="Inhalt"}}
44 +{{toc start="2"/}}
45 +
46 + **Weitere Informationen:**
47 +
48 +* [[Schnittstelle ONYX Player>>doc:ONYX.Systeminformationen.Schnittstelle ONYX Player.WebHome]]
49 +{{/panel}}
50 +{{/layout-cell}}
51 +)))
52 +
2 2  {{layout-section ac:type="two_right_sidebar"}}
3 3  {{layout-cell}}
4 4  
... ... @@ -7,10 +7,714 @@
7 7  {{layout-cell}}
8 8  {{panel borderColor="#ddd" bgColor="#f0f0f0" borderStyle="solid" title="Inhalt"}}
9 9  {{toc start="2"/}}
61 +
62 + **Weitere Informationen:**
63 +
64 +* [[Schnittstelle ONYX Player>>doc:ONYX.Systeminformationen.Schnittstelle ONYX Player.WebHome]]
10 10  {{/panel}}
11 11  {{/layout-cell}}
12 12  {{/layout-section}}
13 13  
69 +(% data-xwiki-non-generated-content="java.util.List" %)
70 +(((
71 +" data-xwiki-wikimacrocontent="true" class="xwiki-metadata-container">
72 +
73 +(% data-xwiki-non-generated-content="java.util.List" %)
74 +(((
75 +" data-xwiki-wikimacrocontent="true" class="xwiki-metadata-container">
76 +
77 +== Allgemeines ==
78 +
79 +Über die Schnittstelle zum ONYX WebReporter erfolgt jede Kommunikation zwischen dem LMS und dem Reporter. Dazu erfolgt eine Reihe von Aufrufen:
80 +
81 +(% class="wrapped" %)
82 +|(((
83 +armSite
84 +)))|(((
85 +Anmeldung von Folgerequests beim ONYX Reporter.
86 +)))
87 +|(((
88 +initiateSite
89 +)))|(((
90 +Initiiert die Reporter-Session (Übertragung des CPs).
91 +)))
92 +|(((
93 +disarmSite
94 +)))|(((
95 +Freigabe von allen Reporter-Ressourcen für diese Session.
96 +)))
97 +|(((
98 +getResultValues
99 +)))|(((
100 +Gibt alle bzw. die angeforderten Resultate für den Test zurück. Voraussetzung: Es ist nur exakt ein Student in der bei initiateSite übertragenen Liste.
101 +)))
102 +|(% colspan="1" %)(% colspan="1" %)
103 +(((
104 +getResultVariables
105 +)))|(% colspan="1" %)(% colspan="1" %)
106 +(((
107 +Gibt alle bzw. die angeforderten Outcome-Variablen für den Test zurück. Hierfür sind kein armSite, initiateSite oder disarmSite erforderlich.
108 +)))
109 +
110 +== Anmeldung des LMS ==
111 +
112 +(% data-xwiki-non-generated-content="java.util.List" %)
113 +(((
114 +" data-xwiki-parameter-name="title" class="xwiki-metadata-container">Anmeldung des LMS
115 +)))
116 +
117 +{{code language="xml" title="Anmeldung des LMS"}}
118 +@WebMethod(operationName = „armSite")
119 +public String armSite(
120 +@WebParam(name = „version") final Integer version,
121 +@WebParam(name = „userId") final String userId,
122 +@WebParam(name = „optionalRole") final Integer role,
123 +@WebParam(name = „secretToShare") final String secretToShare,
124 +@WebParam(name = „optionalUserLastName") final String userLastName,
125 +@WebParam(name = „optionalUserFirstName") final String userFirstName,
126 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
127 +}
128 +{{/code}}
129 +
130 +=== Parameter armSite ===
131 +
132 +(% class="wrapped" %)
133 +|(((
134 +version
135 +)))|(((
136 +Angefragte Version: 1
137 +)))
138 +|(((
139 +userId
140 +)))|(((
141 +UserId des anfragenden Reporter-Benutzers
142 +)))
143 +|(((
144 +optionalRole
145 +)))|(((
146 +Optional. Rolle des Benutzers. 0 = Student, 1= Tutor
147 +)))
148 +|(((
149 +secretToShare
150 +)))|(((
151 +Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben.
152 +)))
153 +|(((
154 +optionalUserLastName
155 +)))|(((
156 +Optional. Nachname des Benutzers.
157 +)))
158 +|(% colspan="1" %)(% colspan="1" %)
159 +(((
160 +optionalUserFirstName
161 +)))|(% colspan="1" %)(% colspan="1" %)
162 +(((
163 +Optional. Vorname des Benutzers.
164 +)))
165 +|(% colspan="1" %)(% colspan="1" %)
166 +(((
167 +additionalParams
168 +)))|(% colspan="1" %)(% colspan="1" %)
169 +(((
170 +Reserved for future use.
171 +)))
172 +
173 +=== ReturnValue armSite ===
174 +
175 +(% class="wrapped" %)
176 +|(((
177 +String
178 +)))|(((
179 +Session ID, mit der alle weiteren Reporter-Aufrufe gekennzeichnet werden müssen.
180 +)))
181 +
182 +== Initialisierung durch LMS ==
183 +
184 +(% data-xwiki-non-generated-content="java.util.List" %)
185 +(((
186 +" data-xwiki-parameter-name="title" class="xwiki-metadata-container">Initialisierung durch LMS
187 +)))
188 +
189 +{{code language="xml" title="Initialisierung durch LMS"}}
190 +@WebMethod(operationName = „initiateSite")
191 +public String initiateSite(
192 +@WebParam(name = „version") final Integer version,
193 +@WebParam(name = „sessionId") final String sessionId,
194 +@WebParam(name = „secretToShare") final String secretToShare,
195 +@WebParam(name = „students") final ArrayList<ResultsForStudent> students,
196 +@WebParam(name = „optionalContentPackage") final byte[] contentPackage,
197 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
198 +}
199 +{{/code}}
200 +
201 +=== Parameter initiateSite ===
202 +
203 +(% class="wrapped" %)
204 +|(((
205 +version
206 +)))|(((
207 +Angefragte Version: 1
208 +)))
209 +|(% colspan="1" %)(% colspan="1" %)
210 +(((
211 +sessionId
212 +)))|(% colspan="1" %)(% colspan="1" %)
213 +(((
214 +SessionId, wie von armSite zurück geliefert.
215 +)))
216 +|(((
217 +secretToShare
218 +)))|(((
219 +Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben.
220 +)))
221 +|(((
222 +students
223 +)))|(((
224 +Liste der Studenten mit ihren Resultaten. Siehe unten.
225 +)))
226 +|(((
227 +optionalContentPackage
228 +)))|(((
229 +Optional. Content Package (gezippt) als Byte-Array.
230 +)))
231 +|(((
232 +additionalParams
233 +)))|(((
234 +Reserved for future use.
235 +)))
236 +
237 +=== ReturnValue initiateSite ===
238 +
239 +(% class="wrapped" %)
240 +|(((
241 +String
242 +)))|(((
243 +Absolute URL der Reporter-Seite für den IFrame. Dieser ist vom LMS durch die folgenden URL-Parameter anzureichern:
244 +
245 +* sid: Session ID, wie von armSite zurück gegeben
246 +* uid: Student ID, wie in initiateSite beim Reporter angemeldet
247 +)))
248 +
249 +{{code language="xml"}}
250 +public class ResultsForStudent {
251 +   private String studentId = „";
252 +   private String firstname = „";
253 +   private String lastname = „";
254 +   private String groupname = „";
255 +   private String tutorname = „";
256 +   private File contentFile = null;
257 +   private byte[] resultsFile = null;
258 +}
259 +{{/code}}
260 +
261 +== Abmeldung durch LMS ==
262 +
263 +
264 +{{code}}
265 +@WebMethod(operationName = „disarmSite")
266 +public Boolean disarmSite(
267 +@WebParam(name = „version") final Integer version,
268 +@WebParam(name = „sessionId") final String sessionId,
269 +@WebParam(name = „secretToShare") final String secretToShare,
270 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
271 +}
272 +{{/code}}
273 +
274 +
275 +=== Parameter disarmSite ===
276 +
277 +(% class="wrapped" %)
278 +|(((
279 +version
280 +)))|(((
281 +Angefragte Version: 1
282 +)))
283 +|(% colspan="1" %)(% colspan="1" %)
284 +(((
285 +sessionId
286 +)))|(% colspan="1" %)(% colspan="1" %)
287 +(((
288 +SessionId, wie von armSite zurück geliefert.
289 +)))
290 +|(((
291 +secretToShare
292 +)))|(((
293 +Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben.
294 +)))
295 +|(((
296 +additionalParams
297 +)))|(((
298 +Reserved for future use.
299 +)))
300 +
301 +=== ReturnValue disarmSite ===
302 +
303 +(% class="wrapped" %)
304 +|(((
305 +Boolean
306 +)))|(((
307 +True bei Erfolg, sonst false.
308 +)))
309 +
310 +== Abfrage von Lernerresultaten durch LMS ==
311 +
312 +(% data-xwiki-non-generated-content="java.util.List" %)
313 +(((
314 +" data-xwiki-parameter-name="title" class="xwiki-metadata-container">Abfrage von Lernerresultaten durch LMS
315 +)))
316 +
317 +{{code language="xml" title="Abfrage von Lernerresultaten durch LMS"}}
318 + @WebMethod(operationName = „getResultValues")
319 +public HashMapWrapper getResultValues(
320 + @WebParam(name = „version") final Integer version,
321 + @WebParam(name = „sessionId") final String sessionId,
322 + @WebParam(name = „secretToShare") final String secretToShare,
323 + @WebParam(name = „requestedValues") final HashMap<String, String>
324 + requestedValues,
325 + @WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
326 +}
327 +{{/code}}
328 +
329 +=== Parameter getResultValues ===
330 +
331 +(% class="wrapped" %)
332 +|(((
333 +version
334 +)))|(((
335 +Angefragte Version: 1
336 +)))
337 +|(% colspan="1" %)(% colspan="1" %)
338 +(((
339 +sessionId
340 +)))|(% colspan="1" %)(% colspan="1" %)
341 +(((
342 +SessionId, wie von armSite zurück geliefert.
343 +)))
344 +|(((
345 +secretToShare
346 +)))|(((
347 +Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben.
348 +)))
349 +|(((
350 +requestedValues
351 +)))|(((
352 +Kann leer sein, dann werden alle Result-Variables zurück geliefert. Sind Keys enthalten, so kommen nur diese zurück.
353 +)))
354 +|(((
355 +additionalParams
356 +)))|(((
357 +Reserved for future use.
358 +)))
359 +
360 +=== ReturnValue getResultValues ===
361 +
362 +(% class="wrapped" %)
363 +|(((
364 +HashMap<String, String>
365 +)))|(((
366 +Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt)
367 +)))
368 +
369 +== Abfrage von Ergebnisvariablen durch LMS ==
370 +
371 +(% data-xwiki-non-generated-content="java.util.List" %)
372 +(((
373 +" data-xwiki-parameter-name="title" class="xwiki-metadata-container">Abfrage von Ergebnisvariablen durch LMS
374 +)))
375 +
376 +{{code language="xml" title="Abfrage von Ergebnisvariablen durch LMS"}}
377 + @WebMethod(operationName = „getResultVariables")
378 +public HashMapWrapper getResultVariables(
379 +@WebParam(name = „version") final Integer version,
380 +@WebParam(name = „contentPackage") final byte[] contentPackage,
381 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
382 +}
383 +{{/code}}
384 +
385 +=== Parameter getResultVariables ===
386 +
387 +(% class="wrapped" %)
388 +|(((
389 +version
390 +)))|(((
391 +Angefragte Version: 1
392 +)))
393 +|(((
394 +contentPackage
395 +)))|(((
396 +Content Package (gezippt) als Byte-Array.
397 +)))
398 +|(((
399 +additionalParams
400 +)))|(((
401 +Reserved for future use.
402 +)))
403 +
404 +=== ReturnValue getResultVariables ===
405 +
406 +(% class="wrapped" %)
407 +|(((
408 +HashMap<String, String>
409 +)))|(((
410 +Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt)
411 +)))
412 +
413 +== Wrapper ==
414 +
415 +Da die Übertragung von Maps und Listen über JAX-WS Probleme machen kann, müssen diese gewrappt werden.
416 +
417 +=== Wrapper für die HashMap<String, String> ===
418 +
419 +HashMapWrapper.java:
420 +
421 +[[image:attach:HashMapWrapperjava.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]]
422 +
423 +[[image:attach:HashMapWrapperjava2.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]]
424 +
425 +=== Wrapper für die ArrayList<ResultsForStudent> ===
426 +
427 +ResultsForStudentsWrapper.java:
428 +
429 +[[image:attach:ResultsForStudentsWrapperjava.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]]
430 +)))
431 +
432 +{{layout-cell}}
433 +== Allgemeines ==
434 +
435 +Über die Schnittstelle zum ONYX WebReporter erfolgt jede Kommunikation zwischen dem LMS und dem Reporter. Dazu erfolgt eine Reihe von Aufrufen:
436 +
437 +(% class="wrapped" %)
438 +|(((
439 +armSite
440 +)))|(((
441 +Anmeldung von Folgerequests beim ONYX Reporter.
442 +)))
443 +|(((
444 +initiateSite
445 +)))|(((
446 +Initiiert die Reporter-Session (Übertragung des CPs).
447 +)))
448 +|(((
449 +disarmSite
450 +)))|(((
451 +Freigabe von allen Reporter-Ressourcen für diese Session.
452 +)))
453 +|(((
454 +getResultValues
455 +)))|(((
456 +Gibt alle bzw. die angeforderten Resultate für den Test zurück. Voraussetzung: Es ist nur exakt ein Student in der bei initiateSite übertragenen Liste.
457 +)))
458 +|(% colspan="1" %)(% colspan="1" %)
459 +(((
460 +getResultVariables
461 +)))|(% colspan="1" %)(% colspan="1" %)
462 +(((
463 +Gibt alle bzw. die angeforderten Outcome-Variablen für den Test zurück. Hierfür sind kein armSite, initiateSite oder disarmSite erforderlich.
464 +)))
465 +
466 +== Anmeldung des LMS ==
467 +
468 +{{code language="xml" title="Anmeldung des LMS"}}
469 +@WebMethod(operationName = „armSite")
470 +public String armSite(
471 +@WebParam(name = „version") final Integer version,
472 +@WebParam(name = „userId") final String userId,
473 +@WebParam(name = „optionalRole") final Integer role,
474 +@WebParam(name = „secretToShare") final String secretToShare,
475 +@WebParam(name = „optionalUserLastName") final String userLastName,
476 +@WebParam(name = „optionalUserFirstName") final String userFirstName,
477 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
478 +}
479 +{{/code}}
480 +
481 +=== Parameter armSite ===
482 +
483 +(% class="wrapped" %)
484 +|(((
485 +version
486 +)))|(((
487 +Angefragte Version: 1
488 +)))
489 +|(((
490 +userId
491 +)))|(((
492 +UserId des anfragenden Reporter-Benutzers
493 +)))
494 +|(((
495 +optionalRole
496 +)))|(((
497 +Optional. Rolle des Benutzers. 0 = Student, 1= Tutor
498 +)))
499 +|(((
500 +secretToShare
501 +)))|(((
502 +Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben.
503 +)))
504 +|(((
505 +optionalUserLastName
506 +)))|(((
507 +Optional. Nachname des Benutzers.
508 +)))
509 +|(% colspan="1" %)(% colspan="1" %)
510 +(((
511 +optionalUserFirstName
512 +)))|(% colspan="1" %)(% colspan="1" %)
513 +(((
514 +Optional. Vorname des Benutzers.
515 +)))
516 +|(% colspan="1" %)(% colspan="1" %)
517 +(((
518 +additionalParams
519 +)))|(% colspan="1" %)(% colspan="1" %)
520 +(((
521 +Reserved for future use.
522 +)))
523 +
524 +=== ReturnValue armSite ===
525 +
526 +(% class="wrapped" %)
527 +|(((
528 +String
529 +)))|(((
530 +Session ID, mit der alle weiteren Reporter-Aufrufe gekennzeichnet werden müssen.
531 +)))
532 +
533 +== Initialisierung durch LMS ==
534 +
535 +{{code language="xml" title="Initialisierung durch LMS"}}
536 +@WebMethod(operationName = „initiateSite")
537 +public String initiateSite(
538 +@WebParam(name = „version") final Integer version,
539 +@WebParam(name = „sessionId") final String sessionId,
540 +@WebParam(name = „secretToShare") final String secretToShare,
541 +@WebParam(name = „students") final ArrayList<ResultsForStudent> students,
542 +@WebParam(name = „optionalContentPackage") final byte[] contentPackage,
543 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
544 +}
545 +{{/code}}
546 +
547 +=== Parameter initiateSite ===
548 +
549 +(% class="wrapped" %)
550 +|(((
551 +version
552 +)))|(((
553 +Angefragte Version: 1
554 +)))
555 +|(% colspan="1" %)(% colspan="1" %)
556 +(((
557 +sessionId
558 +)))|(% colspan="1" %)(% colspan="1" %)
559 +(((
560 +SessionId, wie von armSite zurück geliefert.
561 +)))
562 +|(((
563 +secretToShare
564 +)))|(((
565 +Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben.
566 +)))
567 +|(((
568 +students
569 +)))|(((
570 +Liste der Studenten mit ihren Resultaten. Siehe unten.
571 +)))
572 +|(((
573 +optionalContentPackage
574 +)))|(((
575 +Optional. Content Package (gezippt) als Byte-Array.
576 +)))
577 +|(((
578 +additionalParams
579 +)))|(((
580 +Reserved for future use.
581 +)))
582 +
583 +=== ReturnValue initiateSite ===
584 +
585 +(% class="wrapped" %)
586 +|(((
587 +String
588 +)))|(((
589 +Absolute URL der Reporter-Seite für den IFrame. Dieser ist vom LMS durch die folgenden URL-Parameter anzureichern:
590 +
591 +* sid: Session ID, wie von armSite zurück gegeben
592 +* uid: Student ID, wie in initiateSite beim Reporter angemeldet
593 +)))
594 +
595 +{{code language="xml"}}
596 +public class ResultsForStudent {
597 +   private String studentId = „";
598 +   private String firstname = „";
599 +   private String lastname = „";
600 +   private String groupname = „";
601 +   private String tutorname = „";
602 +   private File contentFile = null;
603 +   private byte[] resultsFile = null;
604 +}
605 +{{/code}}
606 +
607 +== Abmeldung durch LMS ==
608 +
609 +
610 +{{code}}
611 +@WebMethod(operationName = „disarmSite")
612 +public Boolean disarmSite(
613 +@WebParam(name = „version") final Integer version,
614 +@WebParam(name = „sessionId") final String sessionId,
615 +@WebParam(name = „secretToShare") final String secretToShare,
616 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
617 +}
618 +{{/code}}
619 +
620 +
621 +=== Parameter disarmSite ===
622 +
623 +(% class="wrapped" %)
624 +|(((
625 +version
626 +)))|(((
627 +Angefragte Version: 1
628 +)))
629 +|(% colspan="1" %)(% colspan="1" %)
630 +(((
631 +sessionId
632 +)))|(% colspan="1" %)(% colspan="1" %)
633 +(((
634 +SessionId, wie von armSite zurück geliefert.
635 +)))
636 +|(((
637 +secretToShare
638 +)))|(((
639 +Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben.
640 +)))
641 +|(((
642 +additionalParams
643 +)))|(((
644 +Reserved for future use.
645 +)))
646 +
647 +=== ReturnValue disarmSite ===
648 +
649 +(% class="wrapped" %)
650 +|(((
651 +Boolean
652 +)))|(((
653 +True bei Erfolg, sonst false.
654 +)))
655 +
656 +== Abfrage von Lernerresultaten durch LMS ==
657 +
658 +{{code language="xml" title="Abfrage von Lernerresultaten durch LMS"}}
659 + @WebMethod(operationName = „getResultValues")
660 +public HashMapWrapper getResultValues(
661 + @WebParam(name = „version") final Integer version,
662 + @WebParam(name = „sessionId") final String sessionId,
663 + @WebParam(name = „secretToShare") final String secretToShare,
664 + @WebParam(name = „requestedValues") final HashMap<String, String>
665 + requestedValues,
666 + @WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
667 +}
668 +{{/code}}
669 +
670 +=== Parameter getResultValues ===
671 +
672 +(% class="wrapped" %)
673 +|(((
674 +version
675 +)))|(((
676 +Angefragte Version: 1
677 +)))
678 +|(% colspan="1" %)(% colspan="1" %)
679 +(((
680 +sessionId
681 +)))|(% colspan="1" %)(% colspan="1" %)
682 +(((
683 +SessionId, wie von armSite zurück geliefert.
684 +)))
685 +|(((
686 +secretToShare
687 +)))|(((
688 +Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben.
689 +)))
690 +|(((
691 +requestedValues
692 +)))|(((
693 +Kann leer sein, dann werden alle Result-Variables zurück geliefert. Sind Keys enthalten, so kommen nur diese zurück.
694 +)))
695 +|(((
696 +additionalParams
697 +)))|(((
698 +Reserved for future use.
699 +)))
700 +
701 +=== ReturnValue getResultValues ===
702 +
703 +(% class="wrapped" %)
704 +|(((
705 +HashMap<String, String>
706 +)))|(((
707 +Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt)
708 +)))
709 +
710 +== Abfrage von Ergebnisvariablen durch LMS ==
711 +
712 +{{code language="xml" title="Abfrage von Ergebnisvariablen durch LMS"}}
713 + @WebMethod(operationName = „getResultVariables")
714 +public HashMapWrapper getResultVariables(
715 +@WebParam(name = „version") final Integer version,
716 +@WebParam(name = „contentPackage") final byte[] contentPackage,
717 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
718 +}
719 +{{/code}}
720 +
721 +=== Parameter getResultVariables ===
722 +
723 +(% class="wrapped" %)
724 +|(((
725 +version
726 +)))|(((
727 +Angefragte Version: 1
728 +)))
729 +|(((
730 +contentPackage
731 +)))|(((
732 +Content Package (gezippt) als Byte-Array.
733 +)))
734 +|(((
735 +additionalParams
736 +)))|(((
737 +Reserved for future use.
738 +)))
739 +
740 +=== ReturnValue getResultVariables ===
741 +
742 +(% class="wrapped" %)
743 +|(((
744 +HashMap<String, String>
745 +)))|(((
746 +Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt)
747 +)))
748 +
749 +== Wrapper ==
750 +
751 +Da die Übertragung von Maps und Listen über JAX-WS Probleme machen kann, müssen diese gewrappt werden.
752 +
753 +=== Wrapper für die HashMap<String, String> ===
754 +
755 +HashMapWrapper.java:
756 +
757 +[[image:attach:HashMapWrapperjava.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]]
758 +
759 +[[image:attach:HashMapWrapperjava2.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]]
760 +
761 +=== Wrapper für die ArrayList<ResultsForStudent> ===
762 +
763 +ResultsForStudentsWrapper.java:
764 +
765 +[[image:attach:ResultsForStudentsWrapperjava.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]]
766 +{{/layout-cell}}
767 +)))
768 +
14 14  {{layout-section ac:type="single"}}
15 15  {{layout-cell}}
16 16  == Allgemeines ==
... ... @@ -349,6 +349,35 @@
349 349  {{/layout-cell}}
350 350  {{/layout-section}}
351 351  
1107 +(% data-xwiki-non-generated-content="java.util.List" %)
1108 +(((
1109 +" data-xwiki-wikimacrocontent="true" class="xwiki-metadata-container">
1110 +
1111 +(% data-xwiki-non-generated-content="java.util.List" %)
1112 +(((
1113 +" data-xwiki-wikimacrocontent="true" class="xwiki-metadata-container">
1114 +)))
1115 +
1116 +{{layout-cell}}
1117 +
1118 +{{/layout-cell}}
1119 +
1120 +(% data-xwiki-non-generated-content="java.util.List" %)
1121 +(((
1122 +" data-xwiki-wikimacrocontent="true" class="xwiki-metadata-container">
1123 +
1124 +====== relevante Links: ======
1125 +
1126 +* [[ONYX Player Interface>>doc:ONYX.Systeminformationen.Schnittstelle ONYX Player.WebHome]]
1127 +)))
1128 +
1129 +{{layout-cell}}
1130 +====== relevante Links: ======
1131 +
1132 +* [[ONYX Player Interface>>doc:ONYX.Systeminformationen.Schnittstelle ONYX Player.WebHome]]
1133 +{{/layout-cell}}
1134 +)))
1135 +
352 352  {{layout-section ac:type="two_right_sidebar"}}
353 353  {{layout-cell}}
354 354  
... ... @@ -360,46 +360,51 @@
360 360  * [[ONYX Player Interface>>doc:ONYX.Systeminformationen.Schnittstelle ONYX Player.WebHome]]
361 361  {{/layout-cell}}
362 362  {{/layout-section}}
363 -{{/layout}}
1147 +)))
364 364  
365 365  {{layout}}
366 -{{layout-section ac:type="two_equal"}}
1150 +{{layout-section ac:type="two_right_sidebar"}}
367 367  {{layout-cell}}
368 -====== Content: ======
369 -
370 -{{toc start="2"/}}
1152 +
371 371  {{/layout-cell}}
372 372  
373 373  {{layout-cell}}
374 -
1156 +{{panel borderColor="#ddd" bgColor="#f0f0f0" borderStyle="solid" title="Inhalt"}}
1157 +{{toc start="2"/}}
1158 +
1159 + **Weitere Informationen:**
1160 +
1161 +* [[Schnittstelle ONYX Player>>doc:ONYX.Systeminformationen.Schnittstelle ONYX Player.WebHome]]
1162 +{{/panel}}
375 375  {{/layout-cell}}
376 376  {{/layout-section}}
377 377  
378 378  {{layout-section ac:type="single"}}
379 379  {{layout-cell}}
380 -== General information ==
1168 +== Allgemeines ==
381 381  
382 -The API to the ONYX WebReporter enables the communication between the LMS and the Reporter. Therefore, a couple of commands will be executed:
1170 +Über die Schnittstelle zum ONYX WebReporter erfolgt jede Kommunikation zwischen dem LMS und dem Reporter. Dazu erfolgt eine Reihe von Aufrufen:
383 383  
1172 +(% class="wrapped" %)
384 384  |(((
385 385  armSite
386 386  )))|(((
387 -Registration of sequence requests at the ONYX Reporter
1176 +Anmeldung von Folgerequests beim ONYX Reporter.
388 388  )))
389 389  |(((
390 390  initiateSite
391 391  )))|(((
392 -Initiates the Reporter session (transmission of the CP).
1181 +Initiiert die Reporter-Session (Übertragung des CPs).
393 393  )))
394 394  |(((
395 395  disarmSite
396 396  )))|(((
397 -Release of all Reporter resources for this session.
1186 +Freigabe von allen Reporter-Ressourcen für diese Session.
398 398  )))
399 399  |(((
400 400  getResultValues
401 401  )))|(((
402 -Returns all (requested) results for the test. Condition: There is only one student in the list transmitted with initiateSite.
1191 +Gibt alle bzw. die angeforderten Resultate für den Test zurück. Voraussetzung: Es ist nur exakt ein Student in der bei initiateSite übertragenen Liste.
403 403  )))
404 404  |(% colspan="1" %)(% colspan="1" %)
405 405  (((
... ... @@ -406,12 +406,12 @@
406 406  getResultVariables
407 407  )))|(% colspan="1" %)(% colspan="1" %)
408 408  (((
409 -Returns all (requested) outcome variables for the test. No armSite, initiateSite, or disarmSite is required.
1198 +Gibt alle bzw. die angeforderten Outcome-Variablen für den Test zurück. Hierfür sind kein armSite, initiateSite oder disarmSite erforderlich.
410 410  )))
411 411  
412 -== Login through the LMS ==
1201 +== Anmeldung des LMS ==
413 413  
414 -{{code language="xml" title="Login through the LMS"}}
1203 +{{code language="xml" title="Anmeldung des LMS"}}
415 415  @WebMethod(operationName = „armSite")
416 416  public String armSite(
417 417  @WebParam(name = „version") final Integer version,
... ... @@ -426,30 +426,31 @@
426 426  
427 427  === Parameter armSite ===
428 428  
1218 +(% class="wrapped" %)
429 429  |(((
430 430  version
431 431  )))|(((
432 -Requested version: 1
1222 +Angefragte Version: 1
433 433  )))
434 434  |(((
435 435  userId
436 436  )))|(((
437 -UserId of the requested Reporter user
1227 +UserId des anfragenden Reporter-Benutzers
438 438  )))
439 439  |(((
440 440  optionalRole
441 441  )))|(((
442 -Optional. User role. 0 = student, 1 = tutor
1232 +Optional. Rolle des Benutzers. 0 = Student, 1= Tutor
443 443  )))
444 444  |(((
445 445  secretToShare
446 446  )))|(((
447 -A secret string that allows the server and client to encrypt their communication. Must remain the same for any further communication.
1237 +Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben.
448 448  )))
449 449  |(((
450 450  optionalUserLastName
451 451  )))|(((
452 -Optional. Last name of the user.
1242 +Optional. Nachname des Benutzers.
453 453  )))
454 454  |(% colspan="1" %)(% colspan="1" %)
455 455  (((
... ... @@ -456,7 +456,7 @@
456 456  optionalUserFirstName
457 457  )))|(% colspan="1" %)(% colspan="1" %)
458 458  (((
459 -Optional. First name of the user.
1249 +Optional. Vorname des Benutzers.
460 460  )))
461 461  |(% colspan="1" %)(% colspan="1" %)
462 462  (((
... ... @@ -468,15 +468,16 @@
468 468  
469 469  === ReturnValue armSite ===
470 470  
1261 +(% class="wrapped" %)
471 471  |(((
472 472  String
473 473  )))|(((
474 -Session ID which has to be used to mark any other Reporter call.
1265 +Session ID, mit der alle weiteren Reporter-Aufrufe gekennzeichnet werden müssen.
475 475  )))
476 476  
477 -== Initialisation through LMS ==
1268 +== Initialisierung durch LMS ==
478 478  
479 -{{code language="xml" title="Initialisation through LMS"}}
1270 +{{code language="xml" title="Initialisierung durch LMS"}}
480 480  @WebMethod(operationName = „initiateSite")
481 481  public String initiateSite(
482 482  @WebParam(name = „version") final Integer version,
... ... @@ -490,10 +490,11 @@
490 490  
491 491  === Parameter initiateSite ===
492 492  
1284 +(% class="wrapped" %)
493 493  |(((
494 494  version
495 495  )))|(((
496 -Requested version: 1
1288 +Angefragte Version: 1
497 497  )))
498 498  |(% colspan="1" %)(% colspan="1" %)
499 499  (((
... ... @@ -500,22 +500,22 @@
500 500  sessionId
501 501  )))|(% colspan="1" %)(% colspan="1" %)
502 502  (((
503 -SessionId, as returned by armSite.
1295 +SessionId, wie von armSite zurück geliefert.
504 504  )))
505 505  |(((
506 506  secretToShare
507 507  )))|(((
508 -A secret string that allows the server and client to encrypt their communication. Must remain the same for any further communication.
1300 +Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben.
509 509  )))
510 510  |(((
511 511  students
512 512  )))|(((
513 -List of students and their results. See below.
1305 +Liste der Studenten mit ihren Resultaten. Siehe unten.
514 514  )))
515 515  |(((
516 516  optionalContentPackage
517 517  )))|(((
518 -Optional. Content package (zipped) as byte array.
1310 +Optional. Content Package (gezippt) als Byte-Array.
519 519  )))
520 520  |(((
521 521  additionalParams
... ... @@ -525,16 +525,15 @@
525 525  
526 526  === ReturnValue initiateSite ===
527 527  
1320 +(% class="wrapped" %)
528 528  |(((
529 529  String
530 530  )))|(((
531 -Absolute URL of the Reporter site for the IFrame. The URL has to be amended by the LMS with the following URL parameters:
1324 +Absolute URL der Reporter-Seite für den IFrame. Dieser ist vom LMS durch die folgenden URL-Parameter anzureichern:
532 532  
533 -* sid: Session ID, as returned by armSite
534 -* (((
535 -uid: Student ID, as registrated in the initiateSite at the ONYX Reporter
1326 +* sid: Session ID, wie von armSite zurück gegeben
1327 +* uid: Student ID, wie in initiateSite beim Reporter angemeldet
536 536  )))
537 -)))
538 538  
539 539  {{code language="xml"}}
540 540  public class ResultsForStudent {
... ... @@ -548,7 +548,7 @@
548 548  }
549 549  {{/code}}
550 550  
551 -== Logout through the LMS ==
1342 +== Abmeldung durch LMS ==
552 552  
553 553  
554 554  {{code}}
... ... @@ -564,10 +564,11 @@
564 564  
565 565  === Parameter disarmSite ===
566 566  
1358 +(% class="wrapped" %)
567 567  |(((
568 568  version
569 569  )))|(((
570 -Requested version: 1
1362 +Angefragte Version: 1
571 571  )))
572 572  |(% colspan="1" %)(% colspan="1" %)
573 573  (((
... ... @@ -574,12 +574,12 @@
574 574  sessionId
575 575  )))|(% colspan="1" %)(% colspan="1" %)
576 576  (((
577 -SessionId, as returned by armSite.
1369 +SessionId, wie von armSite zurück geliefert.
578 578  )))
579 579  |(((
580 580  secretToShare
581 581  )))|(((
582 -A secret string that allows the server and client to encrypt their communication. Must remain the same for any further communication.
1374 +Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben.
583 583  )))
584 584  |(((
585 585  additionalParams
... ... @@ -589,15 +589,16 @@
589 589  
590 590  === ReturnValue disarmSite ===
591 591  
1384 +(% class="wrapped" %)
592 592  |(((
593 593  Boolean
594 594  )))|(((
595 -True in the case of success, otherwise false.
1388 +True bei Erfolg, sonst false.
596 596  )))
597 597  
598 -== Request of learner results through the LMS ==
1391 +== Abfrage von Lernerresultaten durch LMS ==
599 599  
600 -{{code language="xml" title="Request of learner results through the LMS"}}
1393 +{{code language="xml" title="Abfrage von Lernerresultaten durch LMS"}}
601 601   @WebMethod(operationName = „getResultValues")
602 602  public HashMapWrapper getResultValues(
603 603   @WebParam(name = „version") final Integer version,
... ... @@ -611,10 +611,11 @@
611 611  
612 612  === Parameter getResultValues ===
613 613  
1407 +(% class="wrapped" %)
614 614  |(((
615 615  version
616 616  )))|(((
617 -Requested version: 1
1411 +Angefragte Version: 1
618 618  )))
619 619  |(% colspan="1" %)(% colspan="1" %)
620 620  (((
... ... @@ -621,17 +621,17 @@
621 621  sessionId
622 622  )))|(% colspan="1" %)(% colspan="1" %)
623 623  (((
624 -SessionId, as returned by armSite.
1418 +SessionId, wie von armSite zurück geliefert.
625 625  )))
626 626  |(((
627 627  secretToShare
628 628  )))|(((
629 -A secret string that allows the server and client to encrypt their communication. Must remain the same for any further communication.
1423 +Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben.
630 630  )))
631 631  |(((
632 632  requestedValues
633 633  )))|(((
634 -Can be empty, in which case all result variables are returned. If keys are included, only the keys will be returned.
1428 +Kann leer sein, dann werden alle Result-Variables zurück geliefert. Sind Keys enthalten, so kommen nur diese zurück.
635 635  )))
636 636  |(((
637 637  additionalParams
... ... @@ -641,15 +641,16 @@
641 641  
642 642  === ReturnValue getResultValues ===
643 643  
1438 +(% class="wrapped" %)
644 644  |(((
645 645  HashMap<String, String>
646 646  )))|(((
647 -Map of result variables, key is the variable name, value is the respective variable's value (HashMap is wrapped)
1442 +Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt)
648 648  )))
649 649  
650 -== Request of result variables through the LMS ==
1445 +== Abfrage von Ergebnisvariablen durch LMS ==
651 651  
652 -{{code language="xml" title="Request of result variables through the LMS"}}
1447 +{{code language="xml" title="Abfrage von Ergebnisvariablen durch LMS"}}
653 653   @WebMethod(operationName = „getResultVariables")
654 654  public HashMapWrapper getResultVariables(
655 655  @WebParam(name = „version") final Integer version,
... ... @@ -660,15 +660,16 @@
660 660  
661 661  === Parameter getResultVariables ===
662 662  
1458 +(% class="wrapped" %)
663 663  |(((
664 664  version
665 665  )))|(((
666 -Requested version: 1
1462 +Angefragte Version: 1
667 667  )))
668 668  |(((
669 669  contentPackage
670 670  )))|(((
671 -Content package (zipped) as byte array.
1467 +Content Package (gezippt) als Byte-Array.
672 672  )))
673 673  |(((
674 674  additionalParams
... ... @@ -678,17 +678,18 @@
678 678  
679 679  === ReturnValue getResultVariables ===
680 680  
1477 +(% class="wrapped" %)
681 681  |(((
682 682  HashMap<String, String>
683 683  )))|(((
684 -Map of result variables, key is the variable name, value is the respective variable's value (HashMap is wrapped)
1481 +Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt)
685 685  )))
686 686  
687 687  == Wrapper ==
688 688  
689 -Since the transmission of maps and lists via JAX-WS can cause problems, they have to be wrapped.
1486 +Da die Übertragung von Maps und Listen über JAX-WS Probleme machen kann, müssen diese gewrappt werden.
690 690  
691 -=== Wrapper for HashMap<String, String> ===
1488 +=== Wrapper für die HashMap<String, String> ===
692 692  
693 693  HashMapWrapper.java:
694 694  
... ... @@ -696,7 +696,7 @@
696 696  
697 697  [[image:attach:HashMapWrapperjava2.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]]
698 698  
699 -=== Wrapper for the ArrayList<ResultsForStudent> ===
1496 +=== Wrapper für die ArrayList<ResultsForStudent> ===
700 700  
701 701  ResultsForStudentsWrapper.java:
702 702  
... ... @@ -703,4 +703,16 @@
703 703  [[image:attach:ResultsForStudentsWrapperjava.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]]
704 704  {{/layout-cell}}
705 705  {{/layout-section}}
1503 +
1504 +{{layout-section ac:type="two_right_sidebar"}}
1505 +{{layout-cell}}
1506 +
1507 +{{/layout-cell}}
1508 +
1509 +{{layout-cell}}
1510 +====== relevante Links: ======
1511 +
1512 +* [[ONYX Player Interface>>doc:ONYX.Systeminformationen.Schnittstelle ONYX Player.WebHome]]
1513 +{{/layout-cell}}
1514 +{{/layout-section}}
706 706  {{/layout}}