Loading definitions/CHANGELOG.md +11 −0 Original line number Diff line number Diff line ## 0.14.0 Allow multiple info channels in a definition. #336 ### injects.yml - add field `target` that specifies info channel for the info injects ### channels.yml - allow occurrence of multiple `info` channels ## 0.13.0 Enabled a more fine-grained control over milestone modifications for Loading definitions/README.md +4 −3 Original line number Diff line number Diff line Loading @@ -129,19 +129,19 @@ Each learning objective has the following fields: This file contains the definitions of _all_ channels used in the exercise. - **name**: _string_ - the name that will be displayed to users - **name**: _string_ - the name that will be displayed to users; all channels must have _unique_ names. - **type**: _string_ - the type of messages that will be sent to this channel, see [injects.yml](#injectsyml) for details. Currently supported channel types: - `info` - the most basic type of message, **IMPORTANT**: A definition _**MUST**_ include one and only one channel with the `info` type. A definition _can_ include one or more channels with the `info` type. - `tool` - tool usage by trainees will be sent to the channel with this type. Injects _cannot_ be specified with this type and there can be at most _one channel_ with this type in a definition - `email` - injects meant to represent email communication - `form` - questionnaires will be sent to this channel _At most one channel_ of a specific type can exist. _At most one channel_ of a specific type can exist (except the `info` channels). In other words, there cannot be multiple channels with type `email`. If a definition does not contain a channel with the `tool` type, _no tools_ can be specified. Same rule applies to emails and questionnaires. Loading @@ -165,6 +165,7 @@ Each inject has the following fields: - **organization**: _string, default=""_ - name of the organization this inject was sent from - **type**: _string, default="info"_ - type of this inject, the `alternatives` field depends on this value - **alternatives**: options specified bellow - **target**: _string, default=""_ - a mandatory field (only for `info` injects) that specifies to which info channel should be the inject sent When selecting alternatives to send, they are ordered alphabetically based on their `name`. Loading definitions/base_definition/channels.yml +6 −0 Original line number Diff line number Diff line - name: Exercise Information type: info - name: TV Channel type: info - name: Social Media Feed type: info - name: Tools type: tool Loading definitions/base_definition/config.yml +1 −1 Original line number Diff line number Diff line exercise_duration: 60 show_exercise_time: False version: 0.13.0 version: 0.14.0 definitions/base_definition/injects.yml +23 −0 Original line number Diff line number Diff line - name: First Inject organization: Org 1 target: Exercise Information alternatives: - name: First inject control: { activate_milestone: first_inject } content: { content: first inject which activates first_inject milestone } overlay: { duration: 1 } - name: First Social Media Feed Inject target: Social Media Feed alternatives: - name: First social media feed inject content: { content: This is the first social media feed inject. It should be visible on the social media feed channel. } - name: First TV Channel Inject target: TV Channel alternatives: - name: First TV channel inject content: { content: This is the first TV channel inject. It should be visible on the TV channel. } - name: Markdown lists showcase inject organization: Org 2 target: Exercise Information time: 1 alternatives: - name: Auto markdown inject with lists Loading @@ -15,6 +29,7 @@ - name: Markdown links showcase inject organization: Org 2 target: Exercise Information time: 2 alternatives: - name: Auto markdown inject with links Loading @@ -22,6 +37,7 @@ - name: Markdown text formatting showcase inject organization: Org 2 target: Exercise Information time: 3 alternatives: - name: Auto markdown inject with text formatting Loading @@ -29,6 +45,7 @@ - name: Delayed first inject organization: Org 1 target: Exercise Information delay: 1 alternatives: - name: Delayed first inject Loading @@ -36,12 +53,14 @@ - name: Timed inject target: Exercise Information time: 3 alternatives: - name: Timed inject content: { content: This is a timed inject which should arrive after 3 minutes. } - name: Conditional inject target: Exercise Information time: 5 alternatives: - name: 1 Inject Loading @@ -57,12 +76,14 @@ control: { milestone_condition: evaluation_great } - name: Exercise state inject target: Exercise Information time: 5 alternatives: - name: State management alternative control: { deactivate_milestone: initial_milestone } - name: Auto timed inject depends on website_traffic_blocked milestone target: Exercise Information time: 6 alternatives: - name: Inject option when not website_traffic_blocked Loading @@ -74,6 +95,7 @@ content: { content: Website was blocked., file_name: website-root.jpg } - name: Timed inject when website visited but not blocked sending zip target: Exercise Information organization: Org 1 time: 10 alternatives: Loading @@ -87,6 +109,7 @@ - name: Conditional delayed inject target: Exercise Information time: 10 delay: 5 alternatives: Loading Loading
definitions/CHANGELOG.md +11 −0 Original line number Diff line number Diff line ## 0.14.0 Allow multiple info channels in a definition. #336 ### injects.yml - add field `target` that specifies info channel for the info injects ### channels.yml - allow occurrence of multiple `info` channels ## 0.13.0 Enabled a more fine-grained control over milestone modifications for Loading
definitions/README.md +4 −3 Original line number Diff line number Diff line Loading @@ -129,19 +129,19 @@ Each learning objective has the following fields: This file contains the definitions of _all_ channels used in the exercise. - **name**: _string_ - the name that will be displayed to users - **name**: _string_ - the name that will be displayed to users; all channels must have _unique_ names. - **type**: _string_ - the type of messages that will be sent to this channel, see [injects.yml](#injectsyml) for details. Currently supported channel types: - `info` - the most basic type of message, **IMPORTANT**: A definition _**MUST**_ include one and only one channel with the `info` type. A definition _can_ include one or more channels with the `info` type. - `tool` - tool usage by trainees will be sent to the channel with this type. Injects _cannot_ be specified with this type and there can be at most _one channel_ with this type in a definition - `email` - injects meant to represent email communication - `form` - questionnaires will be sent to this channel _At most one channel_ of a specific type can exist. _At most one channel_ of a specific type can exist (except the `info` channels). In other words, there cannot be multiple channels with type `email`. If a definition does not contain a channel with the `tool` type, _no tools_ can be specified. Same rule applies to emails and questionnaires. Loading @@ -165,6 +165,7 @@ Each inject has the following fields: - **organization**: _string, default=""_ - name of the organization this inject was sent from - **type**: _string, default="info"_ - type of this inject, the `alternatives` field depends on this value - **alternatives**: options specified bellow - **target**: _string, default=""_ - a mandatory field (only for `info` injects) that specifies to which info channel should be the inject sent When selecting alternatives to send, they are ordered alphabetically based on their `name`. Loading
definitions/base_definition/channels.yml +6 −0 Original line number Diff line number Diff line - name: Exercise Information type: info - name: TV Channel type: info - name: Social Media Feed type: info - name: Tools type: tool Loading
definitions/base_definition/config.yml +1 −1 Original line number Diff line number Diff line exercise_duration: 60 show_exercise_time: False version: 0.13.0 version: 0.14.0
definitions/base_definition/injects.yml +23 −0 Original line number Diff line number Diff line - name: First Inject organization: Org 1 target: Exercise Information alternatives: - name: First inject control: { activate_milestone: first_inject } content: { content: first inject which activates first_inject milestone } overlay: { duration: 1 } - name: First Social Media Feed Inject target: Social Media Feed alternatives: - name: First social media feed inject content: { content: This is the first social media feed inject. It should be visible on the social media feed channel. } - name: First TV Channel Inject target: TV Channel alternatives: - name: First TV channel inject content: { content: This is the first TV channel inject. It should be visible on the TV channel. } - name: Markdown lists showcase inject organization: Org 2 target: Exercise Information time: 1 alternatives: - name: Auto markdown inject with lists Loading @@ -15,6 +29,7 @@ - name: Markdown links showcase inject organization: Org 2 target: Exercise Information time: 2 alternatives: - name: Auto markdown inject with links Loading @@ -22,6 +37,7 @@ - name: Markdown text formatting showcase inject organization: Org 2 target: Exercise Information time: 3 alternatives: - name: Auto markdown inject with text formatting Loading @@ -29,6 +45,7 @@ - name: Delayed first inject organization: Org 1 target: Exercise Information delay: 1 alternatives: - name: Delayed first inject Loading @@ -36,12 +53,14 @@ - name: Timed inject target: Exercise Information time: 3 alternatives: - name: Timed inject content: { content: This is a timed inject which should arrive after 3 minutes. } - name: Conditional inject target: Exercise Information time: 5 alternatives: - name: 1 Inject Loading @@ -57,12 +76,14 @@ control: { milestone_condition: evaluation_great } - name: Exercise state inject target: Exercise Information time: 5 alternatives: - name: State management alternative control: { deactivate_milestone: initial_milestone } - name: Auto timed inject depends on website_traffic_blocked milestone target: Exercise Information time: 6 alternatives: - name: Inject option when not website_traffic_blocked Loading @@ -74,6 +95,7 @@ content: { content: Website was blocked., file_name: website-root.jpg } - name: Timed inject when website visited but not blocked sending zip target: Exercise Information organization: Org 1 time: 10 alternatives: Loading @@ -87,6 +109,7 @@ - name: Conditional delayed inject target: Exercise Information time: 10 delay: 5 alternatives: Loading