90 | | The contents of NegoSettings depends on the type of session/tournament that is to be run and is determined by the protocol. All details are in the javadocs, see the [https://tracinsy.ewi.tudelft.nl/pubtrac/GeniusWeb main wiki page]. |
91 | | |
92 | | The format of the settings are determined by the protocol. |
93 | | |
94 | | Typically the session settings looks like this: |
95 | | {{{ |
96 | | {"SAOPSettings": { |
97 | | "participants":[ |
98 | | {"party":"http://party1","profile":"ws://profile1"}, |
99 | | {"party":"http://party2","profile":"ws://profile2"}], |
100 | | "deadline":{"deadlinetime":{"millis":100}} |
101 | | }} |
102 | | }}} |
103 | | |
104 | | The "SAOPSettings" indicates that these settings are SAOPSettings and (see Settings.getProtocol) will be interpreted by the SAOP protocol. |
105 | | |
106 | | The participants is a list with PartyWithProfile items: a "party" field containing a http address on a partiesserver, and a "profile" field containing a websocket address on a profilesserver. |
107 | | |
108 | | The deadline contains the deadline for the SAOP, which is how long the negotiation can last. |
109 | | |
110 | | For different protocols, the contents will differ. |
111 | | |
112 | | For a tournament, the NegoSettings typically look like this: |
113 | | {{{ |
114 | | {"AllPermutationsSettings":{ |
115 | | "parties":["http://server/../party1","http://server/../party2"], |
116 | | "profiles":["ws://server/../profile1","ws://server/../profile2","ws://server/../profile3"], |
117 | | "reuseParties":false, |
118 | | "partiesPerSession":2, |
119 | | "sessionsettings":{"SAOPSettings":{"participants":[],"deadline":{"deadlinetime":{"millis":10}}}}}} |
120 | | }}} |
| 90 | The contents of NegoSettings depends on the type of session/tournament that is to be run and is determined by the protocol. For some more discussion please refer to the [https://tracinsy.ewi.tudelft.nl/pubtrac/GeniusWeb/wiki/WikiStart#NegoSettings GeniusWeb core wiki page]. |
123 | | The parties is a list of party URIs, just like in the session settings |
124 | | |
125 | | The profiles is a list of profile URIs, just like in the session settings |
126 | | |
127 | | If reuseParties is set to to false, parties are drawn from the list without return. If it is set to true, parties are drawn with return (meaning all parties can occur multiple times in each session) |
128 | | |
129 | | partiesPerSession sets the number of parties (and matching profiles) for each session. Profiles are always drawn without return (never appear twice in a session) |
130 | | |
131 | | sessionsettings contains basically all the normal run-sessionsettings. This is used as a "template" for all sessions of the tournament. You can put any use any session setting here, and each session will be run according to the protocol you select here. In the example we use the SAOP protocol which takes participants and deadline as arguments, as discussed above. The participants list this time is empty, the AllPermutationsProtocol adds the the required parties to this list. So if you provide a non-empty list here, then these parties would be present in every session in the tournament. |