Server Events: Difference between revisions
Line 159: | Line 159: | ||
==Adding Server Side Events to a project== | ==Adding Server Side Events to a project== | ||
[[File:ScenarioEventLeft.png|frame|right|Add events to a scenario ([[Left Panel|left panel]])]] | [[File:ScenarioEventLeft.png|frame|right|Add events to a scenario ([[Left Panel|left panel]])]] | ||
[[File:ScenarioEventBundles. | [[File:ScenarioEventBundles.png|frame|right|Add & Remove Event buttons ([[Right Panel|right panel]])]] | ||
As mentioned above, events can be added to a project element on multiple occasions and locations. Please refer to the main article relating to these elements for more information about the specific steps to take. | As mentioned above, events can be added to a project element on multiple occasions and locations. Please refer to the main article relating to these elements for more information about the specific steps to take. | ||
Revision as of 11:10, 6 October 2022
Server events are events which are communicated to the server, and may affect all stakeholders. For example, a server event can automatically plan a measure or change attribute values of areas and neighborhoods, resulting in new overlay and indicator results.
Server Events can be used in multiple locations in the Tygron Platform; as part of a measure, when a scenario is activated, as part of a larger event bundle in the action menu, or during a cinematic sequence. Server Events allow for events to be triggered during a session, which will result in a reaction from the server.
- See also: Measures, Scenarios, Actions & Cinematics
Different Server Event types
There are two flavors of Server Events: Logic Events and Player Events. The difference between these Event Types is that for Player Events at least one dedicated stakeholder needs to be assigned to the Server Event itself as event property. A good example of this is the asking for or receiving of a money transfer (MONEY_TRANSFER_ASK & MONEY_TRANSFER_GIVE) as a Server Event.
Logic Events do not require such a dedicated stakeholder and can be fired without one being assigned as property. A good example of this is the activation of a specific area (AREA_SET_ACTIVE) when creating a flooding as part of a measure. Events like CINEMATIC_STAKEHOLDER_START are also Logic Event Types, because the stakeholder is not a property of the event, but of the linked cinematic.
Logic Event Types
Below is a list describing the available Logic Server Event Types:
ACTION_LOG_EXPORT | Export history of actions taken by participants. |
ACTION_MENU_SET_FUNCTION_AVAILABLE | Add or remove a function from a particular Action Menu. |
ACTION_MENU_SET_MEASURE_AVAILABLE | Add or remove a measure from a particular Action Menu. |
ACTION_MENU_SET_UPGRADE_AVAILABLE | Add or remove an upgrade from a particular Action Menu. |
AREA_SET_ACTIVE | Activate/deactivate a Area. |
AREA_SET_ATTRIBUTE | Set Area Attribute to given number Value. |
AREAS_SET_ATTRIBUTES | Per entry in the array, set the value of the attribute for the Area. |
BUILDING_SET_ATTRIBUTE | Set Building Attribute to given number Value. |
BUILDING_SET_ATTRIBUTES | Per entry in the array, set the values of the attribute for the Building. |
CINEMATIC_STAKEHOLDER_START | Start a cinematic for a specific stakeholder. |
CINEMATIC_STAKEHOLDER_STOP | Stop any cinematic for a specific stakeholder. |
MEASUREMENT_LINE_ADD | Add a LineMeasurement for an Overlay for a specific timeframe. |
MEASUREMENT_POINT_ADD | Add a PointMeasurement for an Overlay. |
MEASUREMENT_ITEM_ADD | Add a ItemMeasurement for an Overlay. |
MEASUREMENT_SET_SUM | Set a Measurement to add its base Overlays to itself. |
MEASUREMENT_REMOVE | Remove a measurement. |
MEASUREMENT_SAVE | Save a measurement. |
MEASUREMENT_SET_OVERLAYS | |
NEIGHBORHOOD_SET_ATTRIBUTE | Set an attribute for a neighborhood. |
NET_CLUSTER_SET_FRACTION_CONNECTED | Set the fraction of connected loads with a cluster. |
NET_CLUSTER_SET_LOAD_ATTRIBUTE | For each NetLoad of a NetCluster, set the value of the attribute. |
NET_CLUSTER_SET_LOAD_ATTRIBUTES | For each NetLoad of a NetCluster, set the values of the provided attributes. |
NET_CLUSTERS_SET_STATE | Per NetCluster, set all its Net Loads of the provided NetType to the given TimeState. |
NET_CLUSTERS_SET_LOAD_ATTRIBUTES | Per NetCluster, for each NetLoad of that NetCluster, set the values of the provided attributes. |
NET_CLUSTERS_SET_DEFAULT_FRACTION_CONNECTED | Set the default fraction of connected loads with a cluster. |
NET_LINE_SET_ATTRIBUTE | Set the attribute of a NetLine to the provided value. |
NET_LINES_SET_ATTRIBUTE | For each NetLine, set the value of the attribute. |
NET_LINES_SET_ATTRIBUTES | Per entry in the array, set the value of the attribute for the Netline. |
SCENARIO_SET_ACTIVE | Activate a scenario in a project session. |
SEARCH | Search for Neighborhood, Building or Address. |
SET_NET_SETTING_BOOLEAN | For boolean valued NetSettings, set the value to true or false. |
SET_TRAFFIC_MULTIPLIER | Multiply visual (only) traffic density with this factor. |
SPECIAL_EFFECT_SET_ACTIVE | Activate/deactivate a special effect. |
UNIT_TYPE_SET_ACTIVE | Activate/deactivate units of a specific type. |
ZONE_SET_ATTRIBUTE | Set an attribute for a zone. |
ZONES_SET_ATTRIBUTES | Set attributes to values for zones. |
ZOOMLEVEL_SET_ACTIVE | Activate or deactivate a zoom level. |
Participant Event Types
Below is a list describing the available Player Event Types:
ACTION_MENU_SET_ACTIVE | Set a category active for a stakeholder. |
MEASURE_CANCEL_CONSTRUCTION | Cancel a measure planned by an Stakeholder while in pre-construction phase. |
MEASURE_PLAN_CONSTRUCTION | Plan construction of a measure by an Stakeholder that is not yet planned. |
MONEY_TRANSFER_GIVE | Give money from one stakeholder to another. |
NET_CLUSTER_SET_LOAD_ATTRIBUTE | For each NetLoad of a NetCluster, set the value of the attribute. |
NET_CLUSTER_SET_LOAD_ATTRIBUTES | For each NetLoad of a NetCluster, set the value of the attribute. |
NET_CLUSTER_SET_STATE | Set TimeState for all Net Loads of Net Cluster. |
NET_CLUSTER_SET_STATE_FOR_NET_TYPE | Set TimeState for Net Loads of Net Cluster, based on NetType. |
NET_CLUSTER_SET_STATES | Set TimeState for all Net Loads of Net Cluster. |
Adding Server Side Events to a project
As mentioned above, events can be added to a project element on multiple occasions and locations. Please refer to the main article relating to these elements for more information about the specific steps to take.
In general, adding Events to an element in the Tygron Platform happens on the right panel, after selecting the element (ex. measures, scenario, etc) to have an event added to on the left panel first. Select on the right panel bottom the 'Add Event' button; a default blank event named NO_DEF is created in the list above the buttons. Selecting an Event on the list and using the 'Remove Event' button deletes the event from the list.
Selecting an event on the right panel also opens up the bottom panel where the actual event type can be selected. This selection can then be confirmed on the bottom panel by using the 'Commit' button. The 'Cancel' button clears the selection on the bottom panel.
- Select Project Element to have events added to
- Select the Event option on the left panel
- Select 'Add event' on the bottom of the right panel
- Select the newly added event on the right panel
- Select the desired server event from the bottom panel
- Confirm the selection with the 'Commit' button (or use the 'Cancel' button to clear the selection
Changing the properties of a Server Side Event in a project
The properties of events can be edited on the bottom panel (see image above). On this panel a linked ID of a measure or cinematic can be linked to an event for instance. Also can a dedicated stakeholder be selected here for Player Type Events. Again, any changed made need to be confirmed first with the 'Commit' button, or cancelled with the 'Cancel' button.