Änderungen von Dokument 08 Schnittstelle ONYX Reporter
Zuletzt geändert von Carina Enke am 13.02.2024
Von Version 386.1
bearbeitet von tleu
am 01.12.2014
am 01.12.2014
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Auf Version 312.1
bearbeitet von Carina Enke
am 24.09.2018
am 24.09.2018
Änderungskommentar:
Mittels Scroll Versions veröffentlicht aus dem Bereich ONYXintern und Version 1.11.1.
Zusammenfassung
-
Seiteneigenschaften (2 geändert, 0 hinzugefügt, 0 gelöscht)
-
Objekte (1 geändert, 0 hinzugefügt, 0 gelöscht)
Details
- Seiteneigenschaften
-
- Dokument-Autor
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. tleu1 +XWiki.carina - Inhalt
-
... ... @@ -1,41 +1,86 @@ 1 +{{sv-translation language="de"}} 1 1 {{layout}} 2 -{{layout-section ac:type=" two_right_sidebar"}}3 +{{layout-section ac:type="single"}} 3 3 {{layout-cell}} 4 -====== Inhalt: ====== 5 5 6 6 7 +{{conditionalcontent 0="Zielgruppe: (BPS)" sv-attr:866DE48701525447C13BC59401CD793F="866DE48701525447C13C469E1E314A59" atlassian-macro-output-type="INLINE"}} 8 +{{details}} 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 +{{sv-metadata type="workflow-status"/}} 7 7 8 -{{toc style="square" maxLevel="5" outline="true" absoluteUrl="true"/}} 9 -{{/layout-cell}} 10 - 11 -{{layout-cell}} 21 +{{status colour="Green" title="Fertig"/}} 22 +))) 12 12 |=(% colspan="1" %)(% colspan="1" %) 13 13 ((( 14 - Programmversion25 +Varianten 15 15 )))|(% colspan="1" %)(% colspan="1" %) 16 16 ((( 17 - 28 +{{sv-metadata type="variants"/}} 18 18 ))) 19 -|=((( 20 -Status 21 -)))|((( 22 -(% class="status-macro aui-lozenge aui-lozenge-error" %)ENTWURF 30 +|=(% colspan="1" %)(% colspan="1" %) 31 +((( 32 +Attribute 33 +)))|(% colspan="1" %)(% colspan="1" %) 34 +((( 35 +{{sv-metadata type="attributes"/}} 23 23 ))) 24 -|=((( 25 -Aufgaben 26 -)))|((( 27 - 37 +|=(% colspan="1" %)(% colspan="1" %) 38 +((( 39 +Pagekey 40 +)))|(% colspan="1" %)(% colspan="1" %) 41 +((( 42 +{{sv-metadata type="pagekey"/}} 43 +))) 44 +|=(% colspan="1" %)(% colspan="1" %) 45 +((( 46 +Übersetzung 47 +)))|(% colspan="1" %)(% colspan="1" %) 48 +((( 28 28 29 - 50 + 51 +{{status colour="Green" title="Fertig"/}} 30 30 ))) 31 -|=((( 32 -JIRA 33 -)))|((( 34 - 53 +|=(% colspan="1" %)(% colspan="1" %) 54 +((( 55 +TODOs 56 +)))|(% colspan="1" %)(% colspan="1" %) 57 +((( 58 +(% class="task-list" %) 59 +((( 60 +{{task reference="/Tasks/Task_9" status="Done"}} 61 +carina {{mention reference="XWiki.0a49950f5c0f19a8015c101b60e10001" style="FULL_NAME" anchor="XWiki-0a49950f5c0f19a8015c101b60e10001-phXzt"/}}: Übersetzung offen 62 +{{/task}} 35 35 ))) 64 +))) 65 +{{/details}} 66 +{{/conditionalcontent}} 36 36 {{/layout-cell}} 37 37 {{/layout-section}} 38 38 70 +{{layout-section ac:type="two_right_sidebar"}} 71 +{{layout-cell}} 72 +====== Inhalt: ====== 73 + 74 + 75 + 76 +{{toc maxLevel="5" outline="true" absoluteUrl="true" style="square"/}} 77 +{{/layout-cell}} 78 + 79 +{{layout-cell}} 80 + 81 +{{/layout-cell}} 82 +{{/layout-section}} 83 + 39 39 {{layout-section ac:type="single"}} 40 40 {{layout-cell}} 41 41 == Allgemeines == ... ... @@ -60,9 +60,7 @@ 60 60 |((( 61 61 getResultValues 62 62 )))|((( 63 -Gibt alle bzw. die angeforderten Resultate für den Test zurück. Voraussetzung: 64 - 65 -Es ist nur exakt ein Student in der bei initiateSite übertragenen Liste. 108 +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. 66 66 ))) 67 67 |(% colspan="1" %)(% colspan="1" %) 68 68 ((( ... ... @@ -74,7 +74,7 @@ 74 74 75 75 == Anmeldung des LMS == 76 76 77 -{{code title="Anmeldung des LMS" language="xml"}}120 +{{code language="xml" title="Anmeldung des LMS"}} 78 78 @WebMethod(operationName = „armSite") 79 79 public String armSite( 80 80 @WebParam(name = „version") final Integer version, ... ... @@ -139,7 +139,7 @@ 139 139 140 140 == Initialisierung durch LMS == 141 141 142 -{{code title="Initialisierung durch LMS" language="xml"}}185 +{{code language="xml" title="Initialisierung durch LMS"}} 143 143 @WebMethod(operationName = „initiateSite") 144 144 public String initiateSite( 145 145 @WebParam(name = „version") final Integer version, ... ... @@ -211,10 +211,22 @@ 211 211 212 212 == Abmeldung durch LMS == 213 213 214 - Abfragevon Lernerresultaten durch LMS257 + 215 215 259 +{{code}} 260 +@WebMethod(operationName = „disarmSite") 261 +public Boolean disarmSite( 262 +@WebParam(name = „version") final Integer version, 263 +@WebParam(name = „sessionId") final String sessionId, 264 +@WebParam(name = „secretToShare") final String secretToShare, 265 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 266 +} 267 +{{/code}} 268 + 216 216 217 217 271 +=== Parameter disarmSite === 272 + 218 218 |((( 219 219 version 220 220 )))|((( ... ... @@ -248,10 +248,20 @@ 248 248 249 249 == Abfrage von Lernerresultaten durch LMS == 250 250 251 -{{code title="Abfrage von Lernerresultaten durch LMS" language="xml"}} 252 - 306 +{{code language="xml" title="Abfrage von Lernerresultaten durch LMS"}} 307 + @WebMethod(operationName = „getResultValues") 308 +public HashMapWrapper getResultValues( 309 + @WebParam(name = „version") final Integer version, 310 + @WebParam(name = „sessionId") final String sessionId, 311 + @WebParam(name = „secretToShare") final String secretToShare, 312 + @WebParam(name = „requestedValues") final HashMap<String, String> 313 + requestedValues, 314 + @WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 315 +} 253 253 {{/code}} 254 254 318 +=== Parameter getResultValues === 319 + 255 255 |((( 256 256 version 257 257 )))|((( ... ... @@ -270,36 +270,441 @@ 270 270 Ein geheimer String, mit dessen Hilfe Server und Client ihre Kommunikation verschlüsseln. Muss bei jeder weiteren Kommunikation gleich bleiben. 271 271 ))) 272 272 |((( 273 -st udents338 +requestedValues 274 274 )))|((( 275 - Liste derStudentenmit ihrenResultaten.Siehe unten.340 +Kann leer sein, dann werden alle Result-Variables zurück geliefert. Sind Keys enthalten, so kommen nur diese zurück. 276 276 ))) 277 277 |((( 278 - optionalContentPackage343 +additionalParams 279 279 )))|((( 280 - Optional. Content Package(gezippt)alsByte-Array.345 +Reserved for future use. 281 281 ))) 347 + 348 +=== ReturnValue getResultValues === 349 + 282 282 |((( 351 +HashMap<String, String> 352 +)))|((( 353 +Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt) 354 +))) 355 + 356 +== Abfrage von Ergebnisvariablen durch LMS == 357 + 358 +{{code language="xml" title="Abfrage von Ergebnisvariablen durch LMS"}} 359 + @WebMethod(operationName = „getResultVariables") 360 +public HashMapWrapper getResultVariables( 361 +@WebParam(name = „version") final Integer version, 362 +@WebParam(name = „contentPackage") final byte[] contentPackage, 363 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 364 +} 365 +{{/code}} 366 + 367 +=== Parameter getResultVariables === 368 + 369 +|((( 370 +version 371 +)))|((( 372 +Angefragte Version: 1 373 +))) 374 +|((( 375 +contentPackage 376 +)))|((( 377 +Content Package (gezippt) als Byte-Array. 378 +))) 379 +|((( 283 283 additionalParams 284 284 )))|((( 285 285 Reserved for future use. 286 286 ))) 384 + 385 +=== ReturnValue getResultVariables === 386 + 387 +|((( 388 +HashMap<String, String> 389 +)))|((( 390 +Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt) 391 +))) 392 + 393 +== Wrapper == 394 + 395 +Da die Übertragung von Maps und Listen über JAX-WS Probleme machen kann, müssen diese gewrappt werden. 396 + 397 +=== Wrapper für die HashMap<String, String> === 398 + 399 +HashMapWrapper.java: 400 + 401 +[[image:attach:HashMapWrapperjava.png]] 402 + 403 +[[image:attach:HashMapWrapperjava2.png]] 404 + 405 +=== Wrapper für die ArrayList<ResultsForStudent> === 406 + 407 +ResultsForStudentsWrapper.java: 408 + 409 +[[image:attach:ResultsForStudentsWrapperjava.png]] 287 287 {{/layout-cell}} 288 288 {{/layout-section}} 289 289 290 290 {{layout-section ac:type="two_right_sidebar"}} 291 291 {{layout-cell}} 292 -====== untergeordnete Seiten: ====== 415 + 416 +{{/layout-cell}} 293 293 418 +{{layout-cell}} 419 +====== relevante Links: ====== 294 294 421 +* [[doc:ONYX Player Interface]] 422 +{{/layout-cell}} 423 +{{/layout-section}} 424 +{{/layout}} 425 +{{/sv-translation}} 295 295 296 -{{children all="true"/}} 427 +{{sv-translation language="en"}} 428 +{{layout}} 429 +{{layout-section ac:type="two_equal"}} 430 +{{layout-cell}} 431 +====== Content: ====== 432 + 433 + 434 + 435 +{{toc maxLevel="5" outline="true" absoluteUrl="true" style="square"/}} 297 297 {{/layout-cell}} 298 298 299 299 {{layout-cell}} 300 -====== relevante Links: ====== 439 + 440 +{{/layout-cell}} 441 +{{/layout-section}} 301 301 302 -* [[lorem ipsum>>url:https://www.bps-system.de/help/display/OPAL/Handbuch+OPAL||shape="rect"]] 443 +{{layout-section ac:type="single"}} 444 +{{layout-cell}} 445 +== General == 446 + 447 +The API to the ONYX WebReporter enables the communication between the LMS and the reporter. Therefore, a couple of commands will be executed: 448 + 449 +|((( 450 +armSite 451 +)))|((( 452 +Registration of sequence requests at the ONYX reporter 453 +))) 454 +|((( 455 +initiateSite 456 +)))|((( 457 +Initiates the reporter session (transmission of the CP). 458 +))) 459 +|((( 460 +disarmSite 461 +)))|((( 462 +Release of all reporter resources for this session. 463 +))) 464 +|((( 465 +getResultValues 466 +)))|((( 467 +Returns all or all requested results for the test. Condition: there is exactly one student in list transmitted in the initiateSite. 468 +))) 469 +|(% colspan="1" %)(% colspan="1" %) 470 +((( 471 +getResultVariables 472 +)))|(% colspan="1" %)(% colspan="1" %) 473 +((( 474 +Returns all or all requested outcome variables for the test. No armSite, initiateSite or disarmSite is necessary. 475 +))) 476 + 477 +== Connection to the LMS == 478 + 479 +{{code language="xml" title="Anmeldung des LMS"}} 480 +@WebMethod(operationName = „armSite") 481 +public String armSite( 482 +@WebParam(name = „version") final Integer version, 483 +@WebParam(name = „userId") final String userId, 484 +@WebParam(name = „optionalRole") final Integer role, 485 +@WebParam(name = „secretToShare") final String secretToShare, 486 +@WebParam(name = „optionalUserLastName") final String userLastName, 487 +@WebParam(name = „optionalUserFirstName") final String userFirstName, 488 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 489 +} 490 +{{/code}} 491 + 492 +=== Parameter armSite === 493 + 494 +|((( 495 +version 496 +)))|((( 497 +Requested version: 1 498 +))) 499 +|((( 500 +userId 501 +)))|((( 502 +UserId of the requested reporter user 503 +))) 504 +|((( 505 +optionalRole 506 +)))|((( 507 +Optional. User role. 0=student, 1=tutor 508 +))) 509 +|((( 510 +secretToShare 511 +)))|((( 512 +Shared secret. Has to remain identical for every communication. 513 +))) 514 +|((( 515 +optionalUserLastName 516 +)))|((( 517 +Optional. User lastname. 518 +))) 519 +|(% colspan="1" %)(% colspan="1" %) 520 +((( 521 +optionalUserFirstName 522 +)))|(% colspan="1" %)(% colspan="1" %) 523 +((( 524 +Optional. User firstname. 525 +))) 526 +|(% colspan="1" %)(% colspan="1" %) 527 +((( 528 +additionalParams 529 +)))|(% colspan="1" %)(% colspan="1" %) 530 +((( 531 +Reserved for future use. 532 +))) 533 + 534 +=== ReturnValue armSite === 535 + 536 +|((( 537 +String 538 +)))|((( 539 +Session ID that has to be used to mark any further reporter call. 540 +))) 541 + 542 +== Initialisation through LMS == 543 + 544 +{{code language="xml" title="Initialisierung durch LMS"}} 545 +@WebMethod(operationName = „initiateSite") 546 +public String initiateSite( 547 +@WebParam(name = „version") final Integer version, 548 +@WebParam(name = „sessionId") final String sessionId, 549 +@WebParam(name = „secretToShare") final String secretToShare, 550 +@WebParam(name = „students") final ArrayList<ResultsForStudent> students, 551 +@WebParam(name = „optionalContentPackage") final byte[] contentPackage, 552 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 553 +} 554 +{{/code}} 555 + 556 +=== Parameter initiateSite === 557 + 558 +|((( 559 +version 560 +)))|((( 561 +Requested version: 1 562 +))) 563 +|(% colspan="1" %)(% colspan="1" %) 564 +((( 565 +sessionId 566 +)))|(% colspan="1" %)(% colspan="1" %) 567 +((( 568 +SessionId, as returned by armSite. 569 +))) 570 +|((( 571 +secretToShare 572 +)))|((( 573 +Shared secret. Has to remain identical at every communication. 574 +))) 575 +|((( 576 +students 577 +)))|((( 578 +List of students with their results. See below. 579 +))) 580 +|((( 581 +optionalContentPackage 582 +)))|((( 583 +Optional. Content Package (zipped) as byte array. 584 +))) 585 +|((( 586 +additionalParams 587 +)))|((( 588 +Reserved for future use. 589 +))) 590 + 591 +=== ReturnValue initiateSite === 592 + 593 +|((( 594 +String 595 +)))|((( 596 +Absolute URL of the reporter site for the frame. It has to be enriched by the LMS with the following URLparameters: 597 + 598 +* sid: Session ID as returned by armSite 599 +* ((( 600 +uid: Student ID as registrated in the initiateSite at the ONYX Reporter. 601 +))) 602 +))) 603 + 604 +{{code language="xml"}} 605 +public class ResultsForStudent { 606 + private String studentId = „"; 607 + private String firstname = „"; 608 + private String lastname = „"; 609 + private String groupname = „"; 610 + private String tutorname = „"; 611 + private File contentFile = null; 612 + private byte[] resultsFile = null; 613 +} 614 +{{/code}} 615 + 616 +== Deconnection through the LMS == 617 + 618 + 619 + 620 +{{code}} 621 +@WebMethod(operationName = „disarmSite") 622 +public Boolean disarmSite( 623 +@WebParam(name = „version") final Integer version, 624 +@WebParam(name = „sessionId") final String sessionId, 625 +@WebParam(name = „secretToShare") final String secretToShare, 626 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 627 +} 628 +{{/code}} 629 + 630 + 631 + 632 +=== Parameter disarmSite === 633 + 634 +|((( 635 +version 636 +)))|((( 637 +Requested version: 1 638 +))) 639 +|(% colspan="1" %)(% colspan="1" %) 640 +((( 641 +sessionId 642 +)))|(% colspan="1" %)(% colspan="1" %) 643 +((( 644 +SessionId, as returned by armSite. 645 +))) 646 +|((( 647 +secretToShare 648 +)))|((( 649 +Shared secret. Has to remain identical at every communication. 650 +))) 651 +|((( 652 +additionalParams 653 +)))|((( 654 +Reserved for future use. 655 +))) 656 + 657 +=== ReturnValue disarmSite === 658 + 659 +|((( 660 +Boolean 661 +)))|((( 662 +True if successful, otherwise false. 663 +))) 664 + 665 +== Request of learning results through the LMS == 666 + 667 +{{code language="xml" title="Abfrage von Lernerresultaten durch LMS"}} 668 + @WebMethod(operationName = „getResultValues") 669 +public HashMapWrapper getResultValues( 670 + @WebParam(name = „version") final Integer version, 671 + @WebParam(name = „sessionId") final String sessionId, 672 + @WebParam(name = „secretToShare") final String secretToShare, 673 + @WebParam(name = „requestedValues") final HashMap<String, String> 674 + requestedValues, 675 + @WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 676 +} 677 +{{/code}} 678 + 679 +=== Parameter getResultValues === 680 + 681 +|((( 682 +version 683 +)))|((( 684 +Requested version: 1 685 +))) 686 +|(% colspan="1" %)(% colspan="1" %) 687 +((( 688 +sessionId 689 +)))|(% colspan="1" %)(% colspan="1" %) 690 +((( 691 +SessionId, as returned by armSite. 692 +))) 693 +|((( 694 +secretToShare 695 +)))|((( 696 +Shared secret. Has to remain identical at every communication. 697 +))) 698 +|((( 699 +requestedValues 700 +)))|((( 701 +Can be empty, thus all result variables will be returned. If it contains keys, only those will be returned. 702 +))) 703 +|((( 704 +additionalParams 705 +)))|((( 706 +Reserved for future use. 707 +))) 708 + 709 +=== ReturnValue getResultValues === 710 + 711 +|((( 712 +HashMap<String, String> 713 +)))|((( 714 +Map of result variables, key is the variable name, value the corresponding value (HashMap is wrapped) 715 +))) 716 + 717 +== Request of result variables through the LMS == 718 + 719 +{{code language="xml" title="Abfrage von Ergebnisvariablen durch LMS"}} 720 + @WebMethod(operationName = „getResultVariables") 721 +public HashMapWrapper getResultVariables( 722 +@WebParam(name = „version") final Integer version, 723 +@WebParam(name = „contentPackage") final byte[] contentPackage, 724 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 725 +} 726 +{{/code}} 727 + 728 +=== Parameter getResultVariables === 729 + 730 +|((( 731 +version 732 +)))|((( 733 +Requested version: 1 734 +))) 735 +|((( 736 +contentPackage 737 +)))|((( 738 +Content package (zipped) as byte array. 739 +))) 740 +|((( 741 +additionalParams 742 +)))|((( 743 +Reserved for future use. 744 +))) 745 + 746 +=== ReturnValue getResultVariables === 747 + 748 +|((( 749 +HashMap<String, String> 750 +)))|((( 751 +Map of result variables, key is the variable name, value the corresponding 752 +value (HashMap is wrapped). 753 +))) 754 + 755 +== Wrapper == 756 + 757 +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. 758 + 759 +=== Wrapper for HashMap<String, String> === 760 + 761 +HashMapWrapper.java: 762 + 763 +[[image:attach:HashMapWrapperjava.png]] 764 + 765 +[[image:attach:HashMapWrapperjava2.png]] 766 + 767 +=== Wrapper for the ArrayList<ResultsForStudent> === 768 + 769 +ResultsForStudentsWrapper.java: 770 + 771 +[[image:attach:ResultsForStudentsWrapperjava.png]] 303 303 {{/layout-cell}} 304 304 {{/layout-section}} 305 305 {{/layout}} 775 +{{/sv-translation}}
- Confluence.Code.ConfluencePageClass[0]
-
- id
-
... ... @@ -1,1 +1,1 @@ 1 - 33423961 +178880909 - url
-
... ... @@ -1,1 +1,1 @@ 1 -https://www.bps-system.de/help/display/SOV/wiki/spaces/ONYX/pages/ 3342396/Schnittstelle ONYX Reporter1 +https://www.bps-system.de/help/display/SOV/wiki/spaces/ONYX/pages/178880909/Schnittstelle ONYX Reporter