Änderungen von Dokument 08 Schnittstelle ONYX Reporter
Zuletzt geändert von Carina Enke am 13.02.2024
Von Version 387.1
bearbeitet von tleu
am 01.12.2014
am 01.12.2014
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Auf Version 396.1
bearbeitet von Carina Enke
am 13.02.2024
am 13.02.2024
Änderungskommentar:
Es gibt keinen Kommentar für diese Version
Zusammenfassung
-
Seiteneigenschaften (4 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
-
- Titel
-
... ... @@ -1,1 +1,1 @@ 1 -Schnittstelle ONYX Reporter 1 +10 Schnittstelle ONYX Reporter - Übergeordnete Seite
-
... ... @@ -1,0 +1,1 @@ 1 +ONYX.Systeminformationen.WebHome - Dokument-Autor
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. tleu1 +XWiki.carina - Inhalt
-
... ... @@ -1,38 +1,13 @@ 1 1 {{layout}} 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"/}} 4 + 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 - 28 - 29 - 30 -))) 31 -|=((( 32 -JIRA 33 -)))|((( 34 - 35 -))) 8 +{{panel borderColor="#ddd" bgColor="#f0f0f0" borderStyle="solid" title="Inhalt"}} 9 +{{toc start="2"/}} 10 +{{/panel}} 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 20 +(% class="wrapped" %) 45 45 |((( 46 46 armSite 47 47 )))|((( ... ... @@ -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. 39 +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"}}51 +{{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, ... ... @@ -89,6 +89,7 @@ 89 89 90 90 === Parameter armSite === 91 91 66 +(% class="wrapped" %) 92 92 |((( 93 93 version 94 94 )))|((( ... ... @@ -131,6 +131,7 @@ 131 131 132 132 === ReturnValue armSite === 133 133 109 +(% class="wrapped" %) 134 134 |((( 135 135 String 136 136 )))|((( ... ... @@ -139,7 +139,7 @@ 139 139 140 140 == Initialisierung durch LMS == 141 141 142 -{{code title="Initialisierung durch LMS" language="xml"}}118 +{{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, ... ... @@ -153,6 +153,7 @@ 153 153 154 154 === Parameter initiateSite === 155 155 132 +(% class="wrapped" %) 156 156 |((( 157 157 version 158 158 )))|((( ... ... @@ -188,6 +188,7 @@ 188 188 189 189 === ReturnValue initiateSite === 190 190 168 +(% class="wrapped" %) 191 191 |((( 192 192 String 193 193 )))|((( ... ... @@ -211,10 +211,21 @@ 211 211 212 212 == Abmeldung durch LMS == 213 213 214 -Abfrage von Lernerresultaten durch LMS 215 215 216 - 193 +{{code}} 194 +@WebMethod(operationName = „disarmSite") 195 +public Boolean disarmSite( 196 +@WebParam(name = „version") final Integer version, 197 +@WebParam(name = „sessionId") final String sessionId, 198 +@WebParam(name = „secretToShare") final String secretToShare, 199 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 200 +} 201 +{{/code}} 217 217 203 + 204 +=== Parameter disarmSite === 205 + 206 +(% class="wrapped" %) 218 218 |((( 219 219 version 220 220 )))|((( ... ... @@ -240,6 +240,7 @@ 240 240 241 241 === ReturnValue disarmSite === 242 242 232 +(% class="wrapped" %) 243 243 |((( 244 244 Boolean 245 245 )))|((( ... ... @@ -248,10 +248,21 @@ 248 248 249 249 == Abfrage von Lernerresultaten durch LMS == 250 250 251 -{{code title="Abfrage von Lernerresultaten durch LMS" language="xml"}} 252 - 241 +{{code language="xml" title="Abfrage von Lernerresultaten durch LMS"}} 242 + @WebMethod(operationName = „getResultValues") 243 +public HashMapWrapper getResultValues( 244 + @WebParam(name = „version") final Integer version, 245 + @WebParam(name = „sessionId") final String sessionId, 246 + @WebParam(name = „secretToShare") final String secretToShare, 247 + @WebParam(name = „requestedValues") final HashMap<String, String> 248 + requestedValues, 249 + @WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 250 +} 253 253 {{/code}} 254 254 253 +=== Parameter getResultValues === 254 + 255 +(% class="wrapped" %) 255 255 |((( 256 256 version 257 257 )))|((( ... ... @@ -270,36 +270,436 @@ 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 udents274 +requestedValues 274 274 )))|((( 275 - Liste derStudentenmit ihrenResultaten.Siehe unten.276 +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 - optionalContentPackage279 +additionalParams 279 279 )))|((( 280 - Optional. Content Package(gezippt)alsByte-Array.281 +Reserved for future use. 281 281 ))) 283 + 284 +=== ReturnValue getResultValues === 285 + 286 +(% class="wrapped" %) 282 282 |((( 288 +HashMap<String, String> 289 +)))|((( 290 +Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt) 291 +))) 292 + 293 +== Abfrage von Ergebnisvariablen durch LMS == 294 + 295 +{{code language="xml" title="Abfrage von Ergebnisvariablen durch LMS"}} 296 + @WebMethod(operationName = „getResultVariables") 297 +public HashMapWrapper getResultVariables( 298 +@WebParam(name = „version") final Integer version, 299 +@WebParam(name = „contentPackage") final byte[] contentPackage, 300 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 301 +} 302 +{{/code}} 303 + 304 +=== Parameter getResultVariables === 305 + 306 +(% class="wrapped" %) 307 +|((( 308 +version 309 +)))|((( 310 +Angefragte Version: 1 311 +))) 312 +|((( 313 +contentPackage 314 +)))|((( 315 +Content Package (gezippt) als Byte-Array. 316 +))) 317 +|((( 283 283 additionalParams 284 284 )))|((( 285 285 Reserved for future use. 286 286 ))) 322 + 323 +=== ReturnValue getResultVariables === 324 + 325 +(% class="wrapped" %) 326 +|((( 327 +HashMap<String, String> 328 +)))|((( 329 +Map der Result-Variables, Key ist der Variablenname, Value der jeweilige Wert (HashMap ist gewrappt) 330 +))) 331 + 332 +== Wrapper == 333 + 334 +Da die Übertragung von Maps und Listen über JAX-WS Probleme machen kann, müssen diese gewrappt werden. 335 + 336 +=== Wrapper für die HashMap<String, String> === 337 + 338 +HashMapWrapper.java: 339 + 340 +[[image:attach:HashMapWrapperjava.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]] 341 + 342 +[[image:attach:HashMapWrapperjava2.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]] 343 + 344 +=== Wrapper für die ArrayList<ResultsForStudent> === 345 + 346 +ResultsForStudentsWrapper.java: 347 + 348 +[[image:attach:ResultsForStudentsWrapperjava.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]] 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: ====== 354 + 355 +{{/layout-cell}} 293 293 357 +{{layout-cell}} 358 +====== relevante Links: ====== 294 294 360 +* [[ONYX Player Interface>>doc:ONYX.Systeminformationen.Schnittstelle ONYX Player.WebHome]] 361 +{{/layout-cell}} 362 +{{/layout-section}} 363 +{{/layout}} 295 295 296 -{{children all="true"/}} 365 +{{layout}} 366 +{{layout-section ac:type="two_equal"}} 367 +{{layout-cell}} 368 +====== Content: ====== 369 + 370 +{{toc start="2"/}} 297 297 {{/layout-cell}} 298 298 299 299 {{layout-cell}} 300 -====== relevante Links: ====== 374 + 375 +{{/layout-cell}} 376 +{{/layout-section}} 301 301 302 -* [[lorem ipsum>>url:https://www.bps-system.de/help/display/OPAL/Handbuch+OPAL||shape="rect"]] 378 +{{layout-section ac:type="single"}} 379 +{{layout-cell}} 380 +== General information == 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: 383 + 384 +|((( 385 +armSite 386 +)))|((( 387 +Registration of sequence requests at the ONYX Reporter 388 +))) 389 +|((( 390 +initiateSite 391 +)))|((( 392 +Initiates the Reporter session (transmission of the CP). 393 +))) 394 +|((( 395 +disarmSite 396 +)))|((( 397 +Release of all Reporter resources for this session. 398 +))) 399 +|((( 400 +getResultValues 401 +)))|((( 402 +Returns all (requested) results for the test. Condition: There is only one student in the list transmitted with initiateSite. 403 +))) 404 +|(% colspan="1" %)(% colspan="1" %) 405 +((( 406 +getResultVariables 407 +)))|(% colspan="1" %)(% colspan="1" %) 408 +((( 409 +Returns all (requested) outcome variables for the test. No armSite, initiateSite, or disarmSite is required. 410 +))) 411 + 412 +== Login through the LMS == 413 + 414 +{{code language="xml" title="Login through the LMS"}} 415 +@WebMethod(operationName = „armSite") 416 +public String armSite( 417 +@WebParam(name = „version") final Integer version, 418 +@WebParam(name = „userId") final String userId, 419 +@WebParam(name = „optionalRole") final Integer role, 420 +@WebParam(name = „secretToShare") final String secretToShare, 421 +@WebParam(name = „optionalUserLastName") final String userLastName, 422 +@WebParam(name = „optionalUserFirstName") final String userFirstName, 423 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 424 +} 425 +{{/code}} 426 + 427 +=== Parameter armSite === 428 + 429 +|((( 430 +version 431 +)))|((( 432 +Requested version: 1 433 +))) 434 +|((( 435 +userId 436 +)))|((( 437 +UserId of the requested Reporter user 438 +))) 439 +|((( 440 +optionalRole 441 +)))|((( 442 +Optional. User role. 0 = student, 1 = tutor 443 +))) 444 +|((( 445 +secretToShare 446 +)))|((( 447 +A secret string that allows the server and client to encrypt their communication. Must remain the same for any further communication. 448 +))) 449 +|((( 450 +optionalUserLastName 451 +)))|((( 452 +Optional. Last name of the user. 453 +))) 454 +|(% colspan="1" %)(% colspan="1" %) 455 +((( 456 +optionalUserFirstName 457 +)))|(% colspan="1" %)(% colspan="1" %) 458 +((( 459 +Optional. First name of the user. 460 +))) 461 +|(% colspan="1" %)(% colspan="1" %) 462 +((( 463 +additionalParams 464 +)))|(% colspan="1" %)(% colspan="1" %) 465 +((( 466 +Reserved for future use. 467 +))) 468 + 469 +=== ReturnValue armSite === 470 + 471 +|((( 472 +String 473 +)))|((( 474 +Session ID which has to be used to mark any other Reporter call. 475 +))) 476 + 477 +== Initialisation through LMS == 478 + 479 +{{code language="xml" title="Initialisation through LMS"}} 480 +@WebMethod(operationName = „initiateSite") 481 +public String initiateSite( 482 +@WebParam(name = „version") final Integer version, 483 +@WebParam(name = „sessionId") final String sessionId, 484 +@WebParam(name = „secretToShare") final String secretToShare, 485 +@WebParam(name = „students") final ArrayList<ResultsForStudent> students, 486 +@WebParam(name = „optionalContentPackage") final byte[] contentPackage, 487 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 488 +} 489 +{{/code}} 490 + 491 +=== Parameter initiateSite === 492 + 493 +|((( 494 +version 495 +)))|((( 496 +Requested version: 1 497 +))) 498 +|(% colspan="1" %)(% colspan="1" %) 499 +((( 500 +sessionId 501 +)))|(% colspan="1" %)(% colspan="1" %) 502 +((( 503 +SessionId, as returned by armSite. 504 +))) 505 +|((( 506 +secretToShare 507 +)))|((( 508 +A secret string that allows the server and client to encrypt their communication. Must remain the same for any further communication. 509 +))) 510 +|((( 511 +students 512 +)))|((( 513 +List of students and their results. See below. 514 +))) 515 +|((( 516 +optionalContentPackage 517 +)))|((( 518 +Optional. Content package (zipped) as byte array. 519 +))) 520 +|((( 521 +additionalParams 522 +)))|((( 523 +Reserved for future use. 524 +))) 525 + 526 +=== ReturnValue initiateSite === 527 + 528 +|((( 529 +String 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: 532 + 533 +* sid: Session ID, as returned by armSite 534 +* ((( 535 +uid: Student ID, as registrated in the initiateSite at the ONYX Reporter 536 +))) 537 +))) 538 + 539 +{{code language="xml"}} 540 +public class ResultsForStudent { 541 + private String studentId = „"; 542 + private String firstname = „"; 543 + private String lastname = „"; 544 + private String groupname = „"; 545 + private String tutorname = „"; 546 + private File contentFile = null; 547 + private byte[] resultsFile = null; 548 +} 549 +{{/code}} 550 + 551 +== Logout through the LMS == 552 + 553 + 554 +{{code}} 555 +@WebMethod(operationName = „disarmSite") 556 +public Boolean disarmSite( 557 +@WebParam(name = „version") final Integer version, 558 +@WebParam(name = „sessionId") final String sessionId, 559 +@WebParam(name = „secretToShare") final String secretToShare, 560 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 561 +} 562 +{{/code}} 563 + 564 + 565 +=== Parameter disarmSite === 566 + 567 +|((( 568 +version 569 +)))|((( 570 +Requested version: 1 571 +))) 572 +|(% colspan="1" %)(% colspan="1" %) 573 +((( 574 +sessionId 575 +)))|(% colspan="1" %)(% colspan="1" %) 576 +((( 577 +SessionId, as returned by armSite. 578 +))) 579 +|((( 580 +secretToShare 581 +)))|((( 582 +A secret string that allows the server and client to encrypt their communication. Must remain the same for any further communication. 583 +))) 584 +|((( 585 +additionalParams 586 +)))|((( 587 +Reserved for future use. 588 +))) 589 + 590 +=== ReturnValue disarmSite === 591 + 592 +|((( 593 +Boolean 594 +)))|((( 595 +True in the case of success, otherwise false. 596 +))) 597 + 598 +== Request of learner results through the LMS == 599 + 600 +{{code language="xml" title="Request of learner results through the LMS"}} 601 + @WebMethod(operationName = „getResultValues") 602 +public HashMapWrapper getResultValues( 603 + @WebParam(name = „version") final Integer version, 604 + @WebParam(name = „sessionId") final String sessionId, 605 + @WebParam(name = „secretToShare") final String secretToShare, 606 + @WebParam(name = „requestedValues") final HashMap<String, String> 607 + requestedValues, 608 + @WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 609 +} 610 +{{/code}} 611 + 612 +=== Parameter getResultValues === 613 + 614 +|((( 615 +version 616 +)))|((( 617 +Requested version: 1 618 +))) 619 +|(% colspan="1" %)(% colspan="1" %) 620 +((( 621 +sessionId 622 +)))|(% colspan="1" %)(% colspan="1" %) 623 +((( 624 +SessionId, as returned by armSite. 625 +))) 626 +|((( 627 +secretToShare 628 +)))|((( 629 +A secret string that allows the server and client to encrypt their communication. Must remain the same for any further communication. 630 +))) 631 +|((( 632 +requestedValues 633 +)))|((( 634 +Can be empty, in which case all result variables are returned. If keys are included, only the keys will be returned. 635 +))) 636 +|((( 637 +additionalParams 638 +)))|((( 639 +Reserved for future use. 640 +))) 641 + 642 +=== ReturnValue getResultValues === 643 + 644 +|((( 645 +HashMap<String, String> 646 +)))|((( 647 +Map of result variables, key is the variable name, value is the respective variable's value (HashMap is wrapped) 648 +))) 649 + 650 +== Request of result variables through the LMS == 651 + 652 +{{code language="xml" title="Request of result variables through the LMS"}} 653 + @WebMethod(operationName = „getResultVariables") 654 +public HashMapWrapper getResultVariables( 655 +@WebParam(name = „version") final Integer version, 656 +@WebParam(name = „contentPackage") final byte[] contentPackage, 657 +@WebParam(name = „additionalParams") final HashMapWrapper additionalParams) { 658 +} 659 +{{/code}} 660 + 661 +=== Parameter getResultVariables === 662 + 663 +|((( 664 +version 665 +)))|((( 666 +Requested version: 1 667 +))) 668 +|((( 669 +contentPackage 670 +)))|((( 671 +Content package (zipped) as byte array. 672 +))) 673 +|((( 674 +additionalParams 675 +)))|((( 676 +Reserved for future use. 677 +))) 678 + 679 +=== ReturnValue getResultVariables === 680 + 681 +|((( 682 +HashMap<String, String> 683 +)))|((( 684 +Map of result variables, key is the variable name, value is the respective variable's value (HashMap is wrapped) 685 +))) 686 + 687 +== Wrapper == 688 + 689 +Since the transmission of maps and lists via JAX-WS can cause problems, they have to be wrapped. 690 + 691 +=== Wrapper for HashMap<String, String> === 692 + 693 +HashMapWrapper.java: 694 + 695 +[[image:attach:HashMapWrapperjava.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]] 696 + 697 +[[image:attach:HashMapWrapperjava2.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]] 698 + 699 +=== Wrapper for the ArrayList<ResultsForStudent> === 700 + 701 +ResultsForStudentsWrapper.java: 702 + 703 +[[image:attach:ResultsForStudentsWrapperjava.png||data-xwiki-image-style="img-screen" data-xwiki-image-style-border="true" width="500"]] 303 303 {{/layout-cell}} 304 304 {{/layout-section}} 305 305 {{/layout}}
- 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 -334239 61 +3342390 - url
-
... ... @@ -1,1 +1,1 @@ 1 -https://www.bps-system.de/help/display/SOV/wiki/spaces/ONYX/pages/334239 6/Schnittstelle ONYX Reporter1 +https://www.bps-system.de/help/display/SOV/wiki/spaces/ONYX/pages/3342390/Schnittstelle ONYX Reporter