Änderungen von Dokument 08 Schnittstelle ONYX Reporter

Zuletzt geändert von Carina Enke am 13.02.2024

Von Version 373.1
bearbeitet von tleu
am 01.12.2014
Änderungskommentar: Es gibt keinen Kommentar für diese Version
Auf Version 353.1
bearbeitet von Carina Enke
am 08.03.2018
Änderungskommentar: Mittels Scroll Versions veröffentlicht aus dem Bereich ONYXintern und Version 1.11.1.

Zusammenfassung

Details

Seiteneigenschaften
Dokument-Autor
... ... @@ -1,1 +1,1 @@
1 -XWiki.tleu
1 +XWiki.carina
Inhalt
... ... @@ -1,4 +1,9 @@
1 +{{sv-translation language="de"}}
1 1  {{layout}}
3 +{{layout-section ac:type="single"}}
4 +{{layout-cell}}{{/layout-cell}}
5 +{{/layout-section}}
6 +
2 2  {{layout-section ac:type="two_right_sidebar"}}
3 3  {{layout-cell}}
4 4  ====== Inhalt: ======
... ... @@ -5,34 +5,11 @@
5 5  
6 6  
7 7  
8 -{{toc style="square" maxLevel="5" outline="true" absoluteUrl="true"/}}
13 +{{toc maxLevel="5" outline="true" absoluteUrl="true" style="square"/}}
9 9  {{/layout-cell}}
10 10  
11 11  {{layout-cell}}
12 -|=(% colspan="1" %)(% colspan="1" %)
13 -(((
14 -Programmversion
15 -)))|(% colspan="1" %)(% colspan="1" %)
16 -(((
17 17  
18 -)))
19 -|=(((
20 -Status
21 -)))|(((
22 -(% class="status-macro aui-lozenge aui-lozenge-error" %)ENTWURF
23 -)))
24 -|=(((
25 -Aufgaben
26 -)))|(((
27 -
28 -
29 -
30 -)))
31 -|=(((
32 -JIRA
33 -)))|(((
34 -
35 -)))
36 36  {{/layout-cell}}
37 37  {{/layout-section}}
38 38  
... ... @@ -72,7 +72,7 @@
72 72  
73 73  == Anmeldung des LMS ==
74 74  
75 -{{code title="Anmeldung des LMS" language="xml"}}
57 +{{code language="xml" title="Anmeldung des LMS"}}
76 76  @WebMethod(operationName = „armSite")
77 77  public String armSite(
78 78  @WebParam(name = „version") final Integer version,
... ... @@ -137,7 +137,7 @@
137 137  
138 138  == Initialisierung durch LMS ==
139 139  
140 -{{code title="Initialisierung durch LMS" language="xml"}}
122 +{{code language="xml" title="Initialisierung durch LMS"}}
141 141  @WebMethod(operationName = „initiateSite")
142 142  public String initiateSite(
143 143  @WebParam(name = „version") final Integer version,
... ... @@ -209,10 +209,22 @@
209 209  
210 210  == Abmeldung durch LMS ==
211 211  
212 -Abfrage von Lernerresultaten durch LMS
194 +
213 213  
196 +{{code}}
197 +@WebMethod(operationName = „disarmSite")
198 +public Boolean disarmSite(
199 +@WebParam(name = „version") final Integer version,
200 +@WebParam(name = „sessionId") final String sessionId,
201 +@WebParam(name = „secretToShare") final String secretToShare,
202 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
203 +}
204 +{{/code}}
205 +
214 214  
215 215  
208 +=== Parameter disarmSite ===
209 +
216 216  |(((
217 217  version
218 218  )))|(((
... ... @@ -246,7 +246,7 @@
246 246  
247 247  == Abfrage von Lernerresultaten durch LMS ==
248 248  
249 -{{code title="Abfrage von Lernerresultaten durch LMS" language="xml"}}
243 +{{code language="xml" title="Abfrage von Lernerresultaten durch LMS"}}
250 250   @WebMethod(operationName = „getResultValues")
251 251  public HashMapWrapper getResultValues(
252 252   @WebParam(name = „version") final Integer version,
... ... @@ -298,7 +298,7 @@
298 298  
299 299  == Abfrage von Ergebnisvariablen durch LMS ==
300 300  
301 -{{code title="Abfrage von Ergebnisvariablen durch LMS" language="xml"}}
295 +{{code language="xml" title="Abfrage von Ergebnisvariablen durch LMS"}}
302 302   @WebMethod(operationName = „getResultVariables")
303 303  public HashMapWrapper getResultVariables(
304 304  @WebParam(name = „version") final Integer version,
... ... @@ -335,7 +335,7 @@
335 335  
336 336  == Wrapper ==
337 337  
338 -Da die Übertragung von Maps und Listen über JAX-WS Probleme macht (clientseitig gefüllte Listen werden leer über den WS versandt und kommen daher auch leer serverseitig an), müssen diese gewrappt werden.
332 +Da die Übertragung von Maps und Listen über JAX-WS Probleme machen kann, müssen diese gewrappt werden.
339 339  
340 340  === Wrapper für die HashMap<String, String> ===
341 341  
... ... @@ -345,12 +345,10 @@
345 345  
346 346  [[image:attach:HashMapWrapperjava2.png]]
347 347  
348 -
342 +=== Wrapper für die ArrayList<ResultsForStudent> ===
349 349  
350 -
344 +ResultsForStudentsWrapper.java:
351 351  
352 -Wrapper für die ArrayList<ResultsForStudent>
353 -
354 354  [[image:attach:ResultsForStudentsWrapperjava.png]]
355 355  {{/layout-cell}}
356 356  {{/layout-section}}
... ... @@ -357,17 +357,364 @@
357 357  
358 358  {{layout-section ac:type="two_right_sidebar"}}
359 359  {{layout-cell}}
360 -====== untergeordnete Seiten: ======
352 +
353 +{{/layout-cell}}
361 361  
355 +{{layout-cell}}
356 +====== relevante Links: ======
362 362  
358 +* [[doc:ONYX Player Interface]]
359 +{{/layout-cell}}
360 +{{/layout-section}}
361 +{{/layout}}
362 +{{/sv-translation}}
363 363  
364 -{{children all="true"/}}
364 +{{sv-translation language="en"}}
365 +{{layout}}
366 +{{layout-section ac:type="two_equal"}}
367 +{{layout-cell}}
368 +====== Content: ======
369 +
370 +
371 +
372 +{{toc maxLevel="5" outline="true" absoluteUrl="true" style="square"/}}
365 365  {{/layout-cell}}
366 366  
367 367  {{layout-cell}}
368 -====== relevante Links: ======
376 +
377 +{{/layout-cell}}
378 +{{/layout-section}}
369 369  
370 -* [[lorem ipsum>>url:https://www.bps-system.de/help/display/OPAL/Handbuch+OPAL||shape="rect"]]
380 +{{layout-section ac:type="single"}}
381 +{{layout-cell}}
382 +== General ==
383 +
384 +The API to the ONYX WebReporter enables the communication between the LMS and the reporter. Therefore, a couple of commands will be executed:
385 +
386 +|(((
387 +armSite
388 +)))|(((
389 +Registration of sequence requests at the ONYX reporter
390 +)))
391 +|(((
392 +initiateSite
393 +)))|(((
394 +Initiates the reporter session (transmission of the CP).
395 +)))
396 +|(((
397 +disarmSite
398 +)))|(((
399 +Release of all reporter resources for this session.
400 +)))
401 +|(((
402 +getResultValues
403 +)))|(((
404 +Returns all or all requested results for the test. Condition: there is exactly one student in list transmitted in the initiateSite.
405 +)))
406 +|(% colspan="1" %)(% colspan="1" %)
407 +(((
408 +getResultVariables
409 +)))|(% colspan="1" %)(% colspan="1" %)
410 +(((
411 +Returns all or all requested outcome variables for the test. No armSite, initiateSite or disarmSite is necessary.
412 +)))
413 +
414 +== Connection to the LMS ==
415 +
416 +{{code language="xml" title="Anmeldung des LMS"}}
417 +@WebMethod(operationName = „armSite")
418 +public String armSite(
419 +@WebParam(name = „version") final Integer version,
420 +@WebParam(name = „userId") final String userId,
421 +@WebParam(name = „optionalRole") final Integer role,
422 +@WebParam(name = „secretToShare") final String secretToShare,
423 +@WebParam(name = „optionalUserLastName") final String userLastName,
424 +@WebParam(name = „optionalUserFirstName") final String userFirstName,
425 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
426 +}
427 +{{/code}}
428 +
429 +=== Parameter armSite ===
430 +
431 +|(((
432 +version
433 +)))|(((
434 +Requested version: 1
435 +)))
436 +|(((
437 +userId
438 +)))|(((
439 +UserId of the requested reporter user
440 +)))
441 +|(((
442 +optionalRole
443 +)))|(((
444 +Optional. User role. 0=student, 1=tutor
445 +)))
446 +|(((
447 +secretToShare
448 +)))|(((
449 +Shared secret. Has to remain identical for every communication.
450 +)))
451 +|(((
452 +optionalUserLastName
453 +)))|(((
454 +Optional. User lastname.
455 +)))
456 +|(% colspan="1" %)(% colspan="1" %)
457 +(((
458 +optionalUserFirstName
459 +)))|(% colspan="1" %)(% colspan="1" %)
460 +(((
461 +Optional. User firstname.
462 +)))
463 +|(% colspan="1" %)(% colspan="1" %)
464 +(((
465 +additionalParams
466 +)))|(% colspan="1" %)(% colspan="1" %)
467 +(((
468 +Reserved for future use.
469 +)))
470 +
471 +=== ReturnValue armSite ===
472 +
473 +|(((
474 +String
475 +)))|(((
476 +Session ID that has to be used to mark any further reporter call.
477 +)))
478 +
479 +== Initialisation through LMS ==
480 +
481 +{{code language="xml" title="Initialisierung durch LMS"}}
482 +@WebMethod(operationName = „initiateSite")
483 +public String initiateSite(
484 +@WebParam(name = „version") final Integer version,
485 +@WebParam(name = „sessionId") final String sessionId,
486 +@WebParam(name = „secretToShare") final String secretToShare,
487 +@WebParam(name = „students") final ArrayList<ResultsForStudent> students,
488 +@WebParam(name = „optionalContentPackage") final byte[] contentPackage,
489 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
490 +}
491 +{{/code}}
492 +
493 +=== Parameter initiateSite ===
494 +
495 +|(((
496 +version
497 +)))|(((
498 +Requested version: 1
499 +)))
500 +|(% colspan="1" %)(% colspan="1" %)
501 +(((
502 +sessionId
503 +)))|(% colspan="1" %)(% colspan="1" %)
504 +(((
505 +SessionId, as returned by armSite.
506 +)))
507 +|(((
508 +secretToShare
509 +)))|(((
510 +Shared secret. Has to remain identical at every communication.
511 +)))
512 +|(((
513 +students
514 +)))|(((
515 +List of students with their results. See below.
516 +)))
517 +|(((
518 +optionalContentPackage
519 +)))|(((
520 +Optional. Content Package (zipped) as byte array.
521 +)))
522 +|(((
523 +additionalParams
524 +)))|(((
525 +Reserved for future use.
526 +)))
527 +
528 +=== ReturnValue initiateSite ===
529 +
530 +|(((
531 +String
532 +)))|(((
533 +Absolute URL of the reporter site for the frame. It has to be enriched by the LMS with the following URLparameters:
534 +
535 +* sid: Session ID as returned by armSite
536 +* (((
537 +uid: Student ID as registrated in the initiateSite at the ONYX Reporter.
538 +)))
539 +)))
540 +
541 +{{code language="xml"}}
542 +public class ResultsForStudent {
543 +   private String studentId = „";
544 +   private String firstname = „";
545 +   private String lastname = „";
546 +   private String groupname = „";
547 +   private String tutorname = „";
548 +   private File contentFile = null;
549 +   private byte[] resultsFile = null;
550 +}
551 +{{/code}}
552 +
553 +== Deconnection through the LMS ==
554 +
555 +
556 +
557 +{{code}}
558 +@WebMethod(operationName = „disarmSite")
559 +public Boolean disarmSite(
560 +@WebParam(name = „version") final Integer version,
561 +@WebParam(name = „sessionId") final String sessionId,
562 +@WebParam(name = „secretToShare") final String secretToShare,
563 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
564 +}
565 +{{/code}}
566 +
567 +
568 +
569 +=== Parameter disarmSite ===
570 +
571 +|(((
572 +version
573 +)))|(((
574 +Requested version: 1
575 +)))
576 +|(% colspan="1" %)(% colspan="1" %)
577 +(((
578 +sessionId
579 +)))|(% colspan="1" %)(% colspan="1" %)
580 +(((
581 +SessionId, as returned by armSite.
582 +)))
583 +|(((
584 +secretToShare
585 +)))|(((
586 +Shared secret. Has to remain identical at every communication.
587 +)))
588 +|(((
589 +additionalParams
590 +)))|(((
591 +Reserved for future use.
592 +)))
593 +
594 +=== ReturnValue disarmSite ===
595 +
596 +|(((
597 +Boolean
598 +)))|(((
599 +True if successful, otherwise false.
600 +)))
601 +
602 +== Request of learning results through the LMS ==
603 +
604 +{{code language="xml" title="Abfrage von Lernerresultaten durch LMS"}}
605 + @WebMethod(operationName = „getResultValues")
606 +public HashMapWrapper getResultValues(
607 + @WebParam(name = „version") final Integer version,
608 + @WebParam(name = „sessionId") final String sessionId,
609 + @WebParam(name = „secretToShare") final String secretToShare,
610 + @WebParam(name = „requestedValues") final HashMap<String, String>
611 + requestedValues,
612 + @WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
613 +}
614 +{{/code}}
615 +
616 +=== Parameter getResultValues ===
617 +
618 +|(((
619 +version
620 +)))|(((
621 +Requested version: 1
622 +)))
623 +|(% colspan="1" %)(% colspan="1" %)
624 +(((
625 +sessionId
626 +)))|(% colspan="1" %)(% colspan="1" %)
627 +(((
628 +SessionId, as returned by armSite.
629 +)))
630 +|(((
631 +secretToShare
632 +)))|(((
633 +Shared secret. Has to remain identical at every communication.
634 +)))
635 +|(((
636 +requestedValues
637 +)))|(((
638 +Can be empty, thus all result variables will be returned. If it contains keys, only those will be returned.
639 +)))
640 +|(((
641 +additionalParams
642 +)))|(((
643 +Reserved for future use.
644 +)))
645 +
646 +=== ReturnValue getResultValues ===
647 +
648 +|(((
649 +HashMap<String, String>
650 +)))|(((
651 +Map of result variables, key is the variable name, value the corresponding value (HashMap is wrapped)
652 +)))
653 +
654 +== Request of result variables through the LMS ==
655 +
656 +{{code language="xml" title="Abfrage von Ergebnisvariablen durch LMS"}}
657 + @WebMethod(operationName = „getResultVariables")
658 +public HashMapWrapper getResultVariables(
659 +@WebParam(name = „version") final Integer version,
660 +@WebParam(name = „contentPackage") final byte[] contentPackage,
661 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) {
662 +}
663 +{{/code}}
664 +
665 +=== Parameter getResultVariables ===
666 +
667 +|(((
668 +version
669 +)))|(((
670 +Requested version: 1
671 +)))
672 +|(((
673 +contentPackage
674 +)))|(((
675 +Content package (zipped) as byte array.
676 +)))
677 +|(((
678 +additionalParams
679 +)))|(((
680 +Reserved for future use.
681 +)))
682 +
683 +=== ReturnValue getResultVariables ===
684 +
685 +|(((
686 +HashMap<String, String>
687 +)))|(((
688 +Map of result variables, key is the variable name, value the corresponding
689 +value (HashMap is wrapped).
690 +)))
691 +
692 +== Wrapper ==
693 +
694 +As the transmission of maps and lists generate problems via JAX-WS (lists filled by the customer are sent without any data and thus reach the server without data) they have to be wrapped.
695 +
696 +=== Wrapper for HashMap<String, String> ===
697 +
698 +HashMapWrapper.java:
699 +
700 +[[image:attach:HashMapWrapperjava.png]]
701 +
702 +[[image:attach:HashMapWrapperjava2.png]]
703 +
704 +=== Wrapper for the ArrayList<ResultsForStudent> ===
705 +
706 +ResultsForStudentsWrapper.java:
707 +
708 +[[image:attach:ResultsForStudentsWrapperjava.png]]
371 371  {{/layout-cell}}
372 372  {{/layout-section}}
373 373  {{/layout}}
712 +{{/sv-translation}}
Confluence.Code.ConfluencePageClass[0]
id
... ... @@ -1,1 +1,1 @@
1 -3342397
1 +147882509
url
... ... @@ -1,1 +1,1 @@
1 -https://www.bps-system.de/help/display/SOV/wiki/spaces/ONYX/pages/3342397/Schnittstelle ONYX Reporter
1 +https://www.bps-system.de/help/display/SOV/wiki/spaces/ONYX/pages/147882509/Schnittstelle ONYX Reporter