Änderungen von Dokument 08 Schnittstelle ONYX Reporter
Zuletzt geändert von Carina Enke am 13.02.2024
Von Version 389.1
bearbeitet von tleu
am 01.12.2014
am 01.12.2014
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Auf Version 390.1
bearbeitet von Carina Enke
am 18.12.2023
am 18.12.2023
Änderungskommentar:
Renamed from xwiki:ONYX.Schnittstelle ONYX Reporter
Zusammenfassung
-
Seiteneigenschaften (3 geändert, 0 hinzugefügt, 0 gelöscht)
-
Anhänge (0 geändert, 3 hinzugefügt, 0 gelöscht)
-
Objekte (1 geändert, 0 hinzugefügt, 0 gelöscht)
Details
- Seiteneigenschaften
-
- Übergeordnete Seite
-
... ... @@ -1,0 +1,1 @@ 1 +Systeminformationen - Dokument-Autor
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. tleu1 +XWiki.carina - Inhalt
-
... ... @@ -1,38 +1,22 @@ 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 -====== Inhalt: ====== 5 - 6 - 7 - 8 -{{toc style="square" maxLevel="5" outline="true" absoluteUrl="true"/}} 9 +\\ 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 - 18 -))) 19 -|=((( 20 -Status 21 -)))|((( 22 -(% class="status-macro aui-lozenge aui-lozenge-error" %)ENTWURF 23 -))) 24 -|=((( 25 -Aufgaben 26 -)))|((( 27 - 13 +{{scroll-ignore}} 14 +{{panel borderColor="#ddd" bgColor="#f0f0f0" borderStyle="solid" title="Inhalt"}} 28 28 29 - 30 -))) 31 -|=((( 32 -JIRA 33 -)))|((( 34 - 35 -))) 16 + 17 +{{toc/}} 18 +{{/panel}} 19 +{{/scroll-ignore}} 36 36 {{/layout-cell}} 37 37 {{/layout-section}} 38 38 ... ... @@ -42,6 +42,7 @@ 42 42 43 43 Über die Schnittstelle zum ONYX WebReporter erfolgt jede Kommunikation zwischen dem LMS und dem Reporter. Dazu erfolgt eine Reihe von Aufrufen: 44 44 29 +(% class="wrapped" %) 45 45 |((( 46 46 armSite 47 47 )))|((( ... ... @@ -72,7 +72,7 @@ 72 72 73 73 == Anmeldung des LMS == 74 74 75 -{{code title="Anmeldung des LMS" language="xml"}}60 +{{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, ... ... @@ -87,6 +87,7 @@ 87 87 88 88 === Parameter armSite === 89 89 75 +(% class="wrapped" %) 90 90 |((( 91 91 version 92 92 )))|((( ... ... @@ -129,6 +129,7 @@ 129 129 130 130 === ReturnValue armSite === 131 131 118 +(% class="wrapped" %) 132 132 |((( 133 133 String 134 134 )))|((( ... ... @@ -137,7 +137,7 @@ 137 137 138 138 == Initialisierung durch LMS == 139 139 140 -{{code title="Initialisierung durch LMS" language="xml"}}127 +{{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, ... ... @@ -151,6 +151,7 @@ 151 151 152 152 === Parameter initiateSite === 153 153 141 +(% class="wrapped" %) 154 154 |((( 155 155 version 156 156 )))|((( ... ... @@ -186,6 +186,7 @@ 186 186 187 187 === ReturnValue initiateSite === 188 188 177 +(% class="wrapped" %) 189 189 |((( 190 190 String 191 191 )))|((( ... ... @@ -209,10 +209,23 @@ 209 209 210 210 == Abmeldung durch LMS == 211 211 212 - Abfrage von Lernerresultaten durch LMS201 +\\ 213 213 214 - 203 +{{code}} 204 +@WebMethod(operationName = „disarmSite") 205 +public Boolean disarmSite( 206 +@WebParam(name = „version") final Integer version, 207 +@WebParam(name = „sessionId") final String sessionId, 208 +@WebParam(name = „secretToShare") final String secretToShare, 209 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 210 +} 211 +{{/code}} 215 215 213 +\\ 214 + 215 +=== Parameter disarmSite === 216 + 217 +(% class="wrapped" %) 216 216 |((( 217 217 version 218 218 )))|((( ... ... @@ -238,6 +238,7 @@ 238 238 239 239 === ReturnValue disarmSite === 240 240 243 +(% class="wrapped" %) 241 241 |((( 242 242 Boolean 243 243 )))|((( ... ... @@ -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"}}252 +{{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, ... ... @@ -260,6 +260,7 @@ 260 260 261 261 === Parameter getResultValues === 262 262 266 +(% class="wrapped" %) 263 263 |((( 264 264 version 265 265 )))|((( ... ... @@ -290,6 +290,7 @@ 290 290 291 291 === ReturnValue getResultValues === 292 292 297 +(% class="wrapped" %) 293 293 |((( 294 294 HashMap<String, String> 295 295 )))|((( ... ... @@ -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"}}306 +{{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, ... ... @@ -309,6 +309,7 @@ 309 309 310 310 === Parameter getResultVariables === 311 311 317 +(% class="wrapped" %) 312 312 |((( 313 313 version 314 314 )))|((( ... ... @@ -327,6 +327,7 @@ 327 327 328 328 === ReturnValue getResultVariables === 329 329 336 +(% class="wrapped" %) 330 330 |((( 331 331 HashMap<String, String> 332 332 )))|((( ... ... @@ -335,7 +335,7 @@ 335 335 336 336 == Wrapper == 337 337 338 -Da die Übertragung von Maps und Listen über JAX-WS Probleme mach t (clientseitiggefüllte Listen werden leer über den WS versandt undkommen daher auch leer serverseitig an), müssen diese gewrappt werden.345 +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 ... ... @@ -355,13 +355,363 @@ 355 355 356 356 {{layout-section ac:type="two_right_sidebar"}} 357 357 {{layout-cell}} 358 - 365 +\\ 359 359 {{/layout-cell}} 360 360 361 361 {{layout-cell}} 362 362 ====== relevante Links: ====== 363 363 364 -* [[doc: SchnittstelleONYXWebPlayer]]371 +* [[doc:ONYX Player Interface]] 365 365 {{/layout-cell}} 366 366 {{/layout-section}} 367 367 {{/layout}} 375 +{{/sv-translation}} 376 + 377 +{{sv-translation language="en"}} 378 +{{layout}} 379 +{{layout-section ac:type="two_equal"}} 380 +{{layout-cell}} 381 +====== Content: ====== 382 + 383 + 384 + 385 +{{toc maxLevel="5" outline="true" absoluteUrl="true" style="square"/}} 386 +{{/layout-cell}} 387 + 388 +{{layout-cell}} 389 + 390 +{{/layout-cell}} 391 +{{/layout-section}} 392 + 393 +{{layout-section ac:type="single"}} 394 +{{layout-cell}} 395 +== General information == 396 + 397 +The API to the ONYX WebReporter enables the communication between the LMS and the Reporter. Therefore, a couple of commands will be executed: 398 + 399 +|((( 400 +armSite 401 +)))|((( 402 +Registration of sequence requests at the ONYX Reporter 403 +))) 404 +|((( 405 +initiateSite 406 +)))|((( 407 +Initiates the Reporter session (transmission of the CP). 408 +))) 409 +|((( 410 +disarmSite 411 +)))|((( 412 +Release of all Reporter resources for this session. 413 +))) 414 +|((( 415 +getResultValues 416 +)))|((( 417 +Returns all (requested) results for the test. Condition: There is only one student in the list transmitted with initiateSite. 418 +))) 419 +|(% colspan="1" %)(% colspan="1" %) 420 +((( 421 +getResultVariables 422 +)))|(% colspan="1" %)(% colspan="1" %) 423 +((( 424 +Returns all (requested) outcome variables for the test. No armSite, initiateSite, or disarmSite is required. 425 +))) 426 + 427 +== Login through the LMS == 428 + 429 +{{code language="xml" title="Login through the LMS"}} 430 +@WebMethod(operationName = „armSite") 431 +public String armSite( 432 +@WebParam(name = „version") final Integer version, 433 +@WebParam(name = „userId") final String userId, 434 +@WebParam(name = „optionalRole") final Integer role, 435 +@WebParam(name = „secretToShare") final String secretToShare, 436 +@WebParam(name = „optionalUserLastName") final String userLastName, 437 +@WebParam(name = „optionalUserFirstName") final String userFirstName, 438 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 439 +} 440 +{{/code}} 441 + 442 +=== Parameter armSite === 443 + 444 +|((( 445 +version 446 +)))|((( 447 +Requested version: 1 448 +))) 449 +|((( 450 +userId 451 +)))|((( 452 +UserId of the requested Reporter user 453 +))) 454 +|((( 455 +optionalRole 456 +)))|((( 457 +Optional. User role. 0 = student, 1 = tutor 458 +))) 459 +|((( 460 +secretToShare 461 +)))|((( 462 +A secret string that allows the server and client to encrypt their communication. Must remain the same for any further communication. 463 +))) 464 +|((( 465 +optionalUserLastName 466 +)))|((( 467 +Optional. Last name of the user. 468 +))) 469 +|(% colspan="1" %)(% colspan="1" %) 470 +((( 471 +optionalUserFirstName 472 +)))|(% colspan="1" %)(% colspan="1" %) 473 +((( 474 +Optional. First name of the user. 475 +))) 476 +|(% colspan="1" %)(% colspan="1" %) 477 +((( 478 +additionalParams 479 +)))|(% colspan="1" %)(% colspan="1" %) 480 +((( 481 +Reserved for future use. 482 +))) 483 + 484 +=== ReturnValue armSite === 485 + 486 +|((( 487 +String 488 +)))|((( 489 +Session ID which has to be used to mark any other Reporter call. 490 +))) 491 + 492 +== Initialisation through LMS == 493 + 494 +{{code language="xml" title="Initialisation through LMS"}} 495 +@WebMethod(operationName = „initiateSite") 496 +public String initiateSite( 497 +@WebParam(name = „version") final Integer version, 498 +@WebParam(name = „sessionId") final String sessionId, 499 +@WebParam(name = „secretToShare") final String secretToShare, 500 +@WebParam(name = „students") final ArrayList<ResultsForStudent> students, 501 +@WebParam(name = „optionalContentPackage") final byte[] contentPackage, 502 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 503 +} 504 +{{/code}} 505 + 506 +=== Parameter initiateSite === 507 + 508 +|((( 509 +version 510 +)))|((( 511 +Requested version: 1 512 +))) 513 +|(% colspan="1" %)(% colspan="1" %) 514 +((( 515 +sessionId 516 +)))|(% colspan="1" %)(% colspan="1" %) 517 +((( 518 +SessionId, as returned by armSite. 519 +))) 520 +|((( 521 +secretToShare 522 +)))|((( 523 +A secret string that allows the server and client to encrypt their communication. Must remain the same for any further communication. 524 +))) 525 +|((( 526 +students 527 +)))|((( 528 +List of students and their results. See below. 529 +))) 530 +|((( 531 +optionalContentPackage 532 +)))|((( 533 +Optional. Content package (zipped) as byte array. 534 +))) 535 +|((( 536 +additionalParams 537 +)))|((( 538 +Reserved for future use. 539 +))) 540 + 541 +=== ReturnValue initiateSite === 542 + 543 +|((( 544 +String 545 +)))|((( 546 +Absolute URL of the Reporter site for the IFrame. The URL has to be amended by the LMS with the following URL parameters: 547 + 548 +* sid: Session ID, as returned by armSite 549 +* ((( 550 +uid: Student ID, as registrated in the initiateSite at the ONYX Reporter 551 +))) 552 +))) 553 + 554 +{{code language="xml"}} 555 +public class ResultsForStudent { 556 + private String studentId = „"; 557 + private String firstname = „"; 558 + private String lastname = „"; 559 + private String groupname = „"; 560 + private String tutorname = „"; 561 + private File contentFile = null; 562 + private byte[] resultsFile = null; 563 +} 564 +{{/code}} 565 + 566 +== Logout through the LMS == 567 + 568 + 569 + 570 +{{code}} 571 +@WebMethod(operationName = „disarmSite") 572 +public Boolean disarmSite( 573 +@WebParam(name = „version") final Integer version, 574 +@WebParam(name = „sessionId") final String sessionId, 575 +@WebParam(name = „secretToShare") final String secretToShare, 576 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 577 +} 578 +{{/code}} 579 + 580 + 581 + 582 +=== Parameter disarmSite === 583 + 584 +|((( 585 +version 586 +)))|((( 587 +Requested version: 1 588 +))) 589 +|(% colspan="1" %)(% colspan="1" %) 590 +((( 591 +sessionId 592 +)))|(% colspan="1" %)(% colspan="1" %) 593 +((( 594 +SessionId, as returned by armSite. 595 +))) 596 +|((( 597 +secretToShare 598 +)))|((( 599 +A secret string that allows the server and client to encrypt their communication. Must remain the same for any further communication. 600 +))) 601 +|((( 602 +additionalParams 603 +)))|((( 604 +Reserved for future use. 605 +))) 606 + 607 +=== ReturnValue disarmSite === 608 + 609 +|((( 610 +Boolean 611 +)))|((( 612 +True in the case of success, otherwise false. 613 +))) 614 + 615 +== Request of learner results through the LMS == 616 + 617 +{{code language="xml" title="Request of learner results through the LMS"}} 618 + @WebMethod(operationName = „getResultValues") 619 +public HashMapWrapper getResultValues( 620 + @WebParam(name = „version") final Integer version, 621 + @WebParam(name = „sessionId") final String sessionId, 622 + @WebParam(name = „secretToShare") final String secretToShare, 623 + @WebParam(name = „requestedValues") final HashMap<String, String> 624 + requestedValues, 625 + @WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 626 +} 627 +{{/code}} 628 + 629 +=== Parameter getResultValues === 630 + 631 +|((( 632 +version 633 +)))|((( 634 +Requested version: 1 635 +))) 636 +|(% colspan="1" %)(% colspan="1" %) 637 +((( 638 +sessionId 639 +)))|(% colspan="1" %)(% colspan="1" %) 640 +((( 641 +SessionId, as returned by armSite. 642 +))) 643 +|((( 644 +secretToShare 645 +)))|((( 646 +A secret string that allows the server and client to encrypt their communication. Must remain the same for any further communication. 647 +))) 648 +|((( 649 +requestedValues 650 +)))|((( 651 +Can be empty, in which case all result variables are returned. If keys are included, only the keys will be returned. 652 +))) 653 +|((( 654 +additionalParams 655 +)))|((( 656 +Reserved for future use. 657 +))) 658 + 659 +=== ReturnValue getResultValues === 660 + 661 +|((( 662 +HashMap<String, String> 663 +)))|((( 664 +Map of result variables, key is the variable name, value is the respective variable's value (HashMap is wrapped) 665 +))) 666 + 667 +== Request of result variables through the LMS == 668 + 669 +{{code language="xml" title="Request of result variables through the LMS"}} 670 + @WebMethod(operationName = „getResultVariables") 671 +public HashMapWrapper getResultVariables( 672 +@WebParam(name = „version") final Integer version, 673 +@WebParam(name = „contentPackage") final byte[] contentPackage, 674 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 675 +} 676 +{{/code}} 677 + 678 +=== Parameter getResultVariables === 679 + 680 +|((( 681 +version 682 +)))|((( 683 +Requested version: 1 684 +))) 685 +|((( 686 +contentPackage 687 +)))|((( 688 +Content package (zipped) as byte array. 689 +))) 690 +|((( 691 +additionalParams 692 +)))|((( 693 +Reserved for future use. 694 +))) 695 + 696 +=== ReturnValue getResultVariables === 697 + 698 +|((( 699 +HashMap<String, String> 700 +)))|((( 701 +Map of result variables, key is the variable name, value is the respective variable's value (HashMap is wrapped) 702 +))) 703 + 704 +== Wrapper == 705 + 706 +Since the transmission of maps and lists via JAX-WS can cause problems, they have to be wrapped. 707 + 708 +=== Wrapper for HashMap<String, String> === 709 + 710 +HashMapWrapper.java: 711 + 712 +[[image:attach:HashMapWrapperjava.png]] 713 + 714 +[[image:attach:HashMapWrapperjava2.png]] 715 + 716 +=== Wrapper for the ArrayList<ResultsForStudent> === 717 + 718 +ResultsForStudentsWrapper.java: 719 + 720 +[[image:attach:ResultsForStudentsWrapperjava.png]] 721 +{{/layout-cell}} 722 +{{/layout-section}} 723 +{{/layout}} 724 +{{/sv-translation}}
- HashMapWrapperjava.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.XWikiGuest - Größe
-
... ... @@ -1,0 +1,1 @@ 1 +135.3 KB - Inhalt
- HashMapWrapperjava2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.XWikiGuest - Größe
-
... ... @@ -1,0 +1,1 @@ 1 +187.3 KB - Inhalt
- ResultsForStudentsWrapperjava.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.XWikiGuest - Größe
-
... ... @@ -1,0 +1,1 @@ 1 +83.3 KB - Inhalt
- Confluence.Code.ConfluencePageClass[0]
-
- id
-
... ... @@ -1,1 +1,1 @@ 1 -3342 7871 +3342390 - url
-
... ... @@ -1,1 +1,1 @@ 1 -https://www.bps-system.de/help/display/SOV/wiki/spaces/ONYX/pages/3342 787/Schnittstelle ONYX Reporter1 +https://www.bps-system.de/help/display/SOV/wiki/spaces/ONYX/pages/3342390/Schnittstelle ONYX Reporter