diff --git a/locale/admin-docs.pot b/locale/admin-docs.pot index bb8845a5..2f4de16f 100644 --- a/locale/admin-docs.pot +++ b/locale/admin-docs.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Zammad Admin Documentation pre-release\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-03-17 10:13+0100\n" +"POT-Creation-Date: 2026-03-17 13:06+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -6847,7 +6847,6 @@ msgstr "" #: ../manage/macros/how-do-they-work.rst:0 #: ../manage/templates.rst:28 -#: ../manage/trigger/how-do-they-work.rst:75 msgid "Actions" msgstr "" @@ -9675,42 +9674,39 @@ msgid "How Do Trigger Work" msgstr "" #: ../manage/trigger/how-do-they-work.rst:4 -msgid "Triggers consist of three parts:" +msgid "Triggers consist mainly of three parts:" msgstr "" #: ../manage/trigger/how-do-they-work.rst:6 -msgid "**Activators:** define \"when the question is asked?\"" +msgid "**Activator:** defines when and how the trigger has to be evaluated." msgstr "" #: ../manage/trigger/how-do-they-work.rst:7 -msgid "**Conditions:** answer the question \"when should this trigger fire?\"" +msgid "**Condition:** defines the tickets for which an action has to be executed based on attributes." msgstr "" -#: ../manage/trigger/how-do-they-work.rst:8 -msgid "**Actions:** answer the question \"what should happen when it does?\"" +#: ../manage/trigger/how-do-they-work.rst:9 +msgid "**Actions:** define what to change in a ticket which matches the condition." msgstr "" -#: ../manage/trigger/how-do-they-work.rst:10 +#: ../manage/trigger/how-do-they-work.rst:11 msgid "Triggers are evaluated in alphabetical order by **name.** In some situations, triggers might be the wrong choice, see :doc:`/manage/trigger/limitations` for more information." msgstr "" -#: ../manage/trigger/how-do-they-work.rst:14 -msgid "**🤓 Emails can adjust some behavior on their own**" -msgstr "" - #: ../manage/trigger/how-do-they-work.rst:16 -msgid "See :doc:`/channels/email/email-headers` for more information." +msgid "Activator" msgstr "" -#: ../manage/trigger/how-do-they-work.rst:19 -msgid "Activators" +#: ../manage/trigger/how-do-they-work.rst:18 +msgid "Choose between an action- or time-based activator in the **Activated by** section." msgstr "" -#: ../manage/trigger/how-do-they-work.rst:21 -msgid "Triggers support two types of activators:" +#: ../manage/trigger/how-do-they-work.rst:None +msgid "Screenshot of activator section in trigger dialog." msgstr "" -#: ../manage/trigger/how-do-they-work.rst:24 +#: ../manage/trigger/how-do-they-work.rst:27 +#: ../manage/trigger/how-do-they-work.rst:81 #: ../manage/webhook/examples/generic-notifications-trigger.rst:32 #: ../misc/object-conditions/basics.rst:66 #: ../system/core-workflows/how-do-they-work.rst:60 @@ -9723,20 +9719,20 @@ msgstr "" msgid "Action" msgstr "" -#: ../manage/trigger/how-do-they-work.rst:26 +#: ../manage/trigger/how-do-they-work.rst:29 msgid "An action based trigger always requires a ticket update to run. This can be an update by an agent or even internal system updates like updated SLA times. See the explanation below for more details." msgstr "" -#: ../manage/trigger/how-do-they-work.rst:36 +#: ../manage/trigger/how-do-they-work.rst:39 #: ../manage/webhook/examples/generic-notifications-trigger.rst:28 msgid "Selective" msgstr "" -#: ../manage/trigger/how-do-they-work.rst:31 -msgid "Checks if any attribute from the condition was updated. If yes, the trigger runs. If the attributes from the condition weren't touched, the trigger doesn't run." +#: ../manage/trigger/how-do-they-work.rst:34 +msgid "Checks if any attribute from the condition was updated OR an article was added and the condition matches. If the attributes of the condition weren't touched and no new article was added, the trigger doesn't run." msgstr "" -#: ../manage/trigger/how-do-they-work.rst:35 +#: ../manage/trigger/how-do-they-work.rst:38 msgid "**Example:** A trigger with a condition for priority **1 low** will run if the ticket was changed to **1 low**." msgstr "" @@ -9745,112 +9741,131 @@ msgstr "" msgid "Always" msgstr "" -#: ../manage/trigger/how-do-they-work.rst:39 -msgid "Checks if the current state of the ticket matches the condition. This means: the trigger always runs when the ticket is updated, no matter what was changed. This can lead to executing such a trigger more often." +#: ../manage/trigger/how-do-they-work.rst:42 +msgid "Checks if the current state of the ticket matches the condition. This means: the trigger always runs when the ticket is updated and the condition matches, no matter what was changed. This can lead to more often executions of such a trigger." msgstr "" -#: ../manage/trigger/how-do-they-work.rst:43 +#: ../manage/trigger/how-do-they-work.rst:47 msgid "**Example:** A trigger with a condition for priority **1 low** will run if the ticket was moved to another group while priority was set **1 low**." msgstr "" -#: ../manage/trigger/how-do-they-work.rst:46 +#: ../manage/trigger/how-do-they-work.rst:50 msgid "If in doubt, use **Selective**. The **Always** action activator can lead to unexpected behavior, e.g. the trigger runs after internal system changes of the ticket, which aren't visible in the ticket history." msgstr "" -#: ../manage/trigger/how-do-they-work.rst:51 +#: ../manage/trigger/how-do-they-work.rst:55 msgid "Time Event" msgstr "" -#: ../manage/trigger/how-do-they-work.rst:53 -msgid "The execution is triggered at a specific time when a certain event is reached, e.g. ticket pending time." +#: ../manage/trigger/how-do-they-work.rst:57 +msgid "The execution is triggered when one of the following events occur:" msgstr "" -#: ../manage/trigger/how-do-they-work.rst:56 -msgid "This activator simply checks if **conditions** match. This is the same behavior as action-based activator's \"always\" mode." +#: ../manage/trigger/how-do-they-work.rst:59 +msgid "Time of a reminder is reached" msgstr "" -#: ../manage/trigger/how-do-they-work.rst:59 -msgid "When creating a trigger, choose activator here:" +#: ../manage/trigger/how-do-they-work.rst:60 +msgid "Escalation is reached" msgstr "" -#: ../manage/trigger/how-do-they-work.rst:64 -#: ../system/core-workflows/how-do-they-work.rst:28 -msgid "Conditions" +#: ../manage/trigger/how-do-they-work.rst:61 +msgid "Escalation warning is reached" msgstr "" -#: ../manage/trigger/how-do-they-work.rst:66 -msgid "When creating a trigger, define your conditions here:" +#: ../manage/trigger/how-do-they-work.rst:63 +msgid "When such a time event is reached, the trigger runs if the condition matches. This is the same behavior as action-based activator's \"always\" mode." msgstr "" -#: ../manage/trigger/how-do-they-work.rst:70 -msgid "Trigger conditions must match as configured for the trigger to fire." +#: ../manage/trigger/how-do-they-work.rst:67 +msgid "Condition" msgstr "" -#: ../manage/trigger/how-do-they-work.rst:77 -msgid "When creating a trigger, define your changes here:" +#: ../manage/trigger/how-do-they-work.rst:69 +msgid "Use one or more attributes and values in a condition, which the tickets have to match you want to apply changes to. Create your condition in the **Conditions for affected objects** section:" msgstr "" -#: ../manage/trigger/how-do-they-work.rst:81 -msgid "Certain actions (such as *email*, *SMS* and *notes*) support :doc:`/misc/variables`, which can be used to build highly-customized message templates." +#: ../manage/trigger/how-do-they-work.rst:None +msgid "Screenshot of condition section in trigger dialog." +msgstr "" + +#: ../manage/trigger/how-do-they-work.rst:83 +msgid "Define which changes to apply for tickets which match your condition in the **Execute changes on objects** section:" +msgstr "" + +#: ../manage/trigger/how-do-they-work.rst:None +msgid "Screenshot of action section in trigger dialog." +msgstr "" + +#: ../manage/trigger/how-do-they-work.rst:91 +msgid "Certain actions (such as email, SMS and notes) support :doc:`/misc/variables` (see screenshot above), which can be used to build highly-customized message templates." msgstr "" -#: ../manage/trigger/how-do-they-work.rst:85 +#: ../manage/trigger/how-do-they-work.rst:95 msgid "A trigger can do the following things once its conditions have been met:" msgstr "" -#: ../manage/trigger/how-do-they-work.rst:96 +#: ../manage/trigger/how-do-they-work.rst:106 msgid "Modify the ticket" msgstr "" -#: ../manage/trigger/how-do-they-work.rst:88 +#: ../manage/trigger/how-do-they-work.rst:98 msgid "Examples: escalate its priority, close it, reassign it, rename it, add tags, subscribe and unsubscribe specific/all users, etc." msgstr "" -#: ../manage/trigger/how-do-they-work.rst:91 +#: ../manage/trigger/how-do-they-work.rst:101 msgid "Date & time attributes (like **Pending till**) can be specified in *absolute* or *relative* terms." msgstr "" -#: ../manage/trigger/how-do-they-work.rst:94 +#: ../manage/trigger/how-do-they-work.rst:104 msgid "You can also combine static text with placeholders for text fields. Remember that the placeholders' values have to be known during trigger runtime. Learn more about :doc:`/misc/variables`." msgstr "" -#: ../manage/trigger/how-do-they-work.rst:107 +#: ../manage/trigger/how-do-they-work.rst:117 msgid "Send an email or SMS" msgstr "" -#: ../manage/trigger/how-do-they-work.rst:99 +#: ../manage/trigger/how-do-they-work.rst:109 msgid "Either to the customer, the agent who owns the ticket, or every agent in the system." msgstr "" -#: ../manage/trigger/how-do-they-work.rst:102 +#: ../manage/trigger/how-do-they-work.rst:112 msgid "Sending emails allows you to include the attachments of the triggering article if required." msgstr "" -#: ../manage/trigger/how-do-they-work.rst:105 +#: ../manage/trigger/how-do-they-work.rst:115 msgid "In order to send emails with triggers, you need to configure an email address for the group, the trigger is working in. If you don't, Zammad will skip the trigger completely." msgstr "" -#: ../manage/trigger/how-do-they-work.rst:110 +#: ../manage/trigger/how-do-they-work.rst:121 msgid ":doc:`Fire a webhook `" msgstr "" -#: ../manage/trigger/how-do-they-work.rst:110 +#: ../manage/trigger/how-do-they-work.rst:120 msgid "Connect Zammad to another web service or application to give it live updates about new tickets." msgstr "" -#: ../manage/trigger/how-do-they-work.rst:114 +#: ../manage/trigger/how-do-they-work.rst:125 msgid "Add internal or public notes to the ticket" msgstr "" -#: ../manage/trigger/how-do-they-work.rst:113 +#: ../manage/trigger/how-do-they-work.rst:124 msgid "This allows you to help your agents with specific information if needed. (e.g. automated changes a trigger applied to the ticket)" msgstr "" -#: ../manage/trigger/how-do-they-work.rst:119 +#: ../manage/trigger/how-do-they-work.rst:128 +msgid ":doc:`Run an AI agent `" +msgstr "" + +#: ../manage/trigger/how-do-they-work.rst:128 +msgid "Trigger an AI agent to run using triggers." +msgstr "" + +#: ../manage/trigger/how-do-they-work.rst:133 msgid "Localization of Execution Changes" msgstr "" -#: ../manage/trigger/how-do-they-work.rst:121 +#: ../manage/trigger/how-do-they-work.rst:135 msgid "The system locale and timezone predefines a default format of date and timestamp replacement variables. These settings are customizable for triggers." msgstr "" @@ -9858,15 +9873,15 @@ msgstr "" msgid "Screenshot showing localization section of trigger dialog" msgstr "" -#: ../manage/trigger/how-do-they-work.rst:128 +#: ../manage/trigger/how-do-they-work.rst:142 msgid "Best practice is to create single separated localized triggers for each language/timezone and execute them based on user or organization attributes." msgstr "" -#: ../manage/trigger/how-do-they-work.rst:131 +#: ../manage/trigger/how-do-they-work.rst:145 msgid "The format and timezone of date and timestamp replacement variables is customizable by the use of the ``dt()`` method. Further on the ``t()`` method can be used to translated string replacement variables according to the selected locale language." msgstr "" -#: ../manage/trigger/how-do-they-work.rst:133 +#: ../manage/trigger/how-do-they-work.rst:147 msgid "For usage of the ``t()`` and ``dt()`` method, please follow the instructions in the :ref:`variables section `." msgstr "" @@ -18068,6 +18083,10 @@ msgstr "" msgid "If selected, your conditions and actions will affect all applicable edit masks." msgstr "" +#: ../system/core-workflows/how-do-they-work.rst:28 +msgid "Conditions" +msgstr "" + #: ../system/core-workflows/how-do-they-work.rst:30 msgid "Zammad differentiates between selected and saved conditions. These can be combined wherever needed. You can find a description of the condition operators for core workflows in :doc:`/system/core-workflows/condition-operators`." msgstr "" diff --git a/manage/trigger/how-do-they-work.rst b/manage/trigger/how-do-they-work.rst index fe4294ef..82535efe 100644 --- a/manage/trigger/how-do-they-work.rst +++ b/manage/trigger/how-do-they-work.rst @@ -1,24 +1,27 @@ How Do Trigger Work =================== -Triggers consist of three parts: +Triggers consist mainly of three parts: -* **Activators:** define "when the question is asked?" -* **Conditions:** answer the question "when should this trigger fire?" -* **Actions:** answer the question "what should happen when it does?" +* **Activator:** defines when and how the trigger has to be evaluated. +* **Condition:** defines the tickets for which an action has to be executed + based on attributes. +* **Actions:** define what to change in a ticket which matches the condition. Triggers are evaluated in alphabetical order by **name.** In some situations, triggers might be the wrong choice, see :doc:`/manage/trigger/limitations` for more information. -.. hint:: **🤓 Emails can adjust some behavior on their own** +Activator +--------- - See :doc:`/channels/email/email-headers` for more information. +Choose between an action- or time-based activator in the **Activated by** +section. -Activators ----------- - -Triggers support two types of activators: +.. figure:: /images/manage/trigger/activator-of-a-trigger.png + :alt: Screenshot of activator section in trigger dialog. + :scale: 80% + :align: center Action ^^^^^^ @@ -28,63 +31,70 @@ update by an agent or even internal system updates like updated SLA times. See the explanation below for more details. Selective - Checks if any attribute from the condition was updated. If yes, the - trigger runs. If the attributes from the condition weren't touched, the - trigger doesn't run. + Checks if any attribute from the condition was updated OR an article was + added and the condition matches. If the attributes of the condition weren't + touched and no new article was added, the trigger doesn't run. **Example:** A trigger with a condition for priority **1 low** will run if the ticket was changed to **1 low**. Always Checks if the current state of the ticket matches the condition. This means: - the trigger always runs when the ticket is updated, no matter what was - changed. This can lead to executing such a trigger more often. + the trigger always runs when the ticket is updated and the condition matches, + no matter what was changed. This can lead to more often executions of such a + trigger. **Example:** A trigger with a condition for priority **1 low** will run if the ticket was moved to another group while priority was set **1 low**. - .. hint:: If in doubt, use **Selective**. The **Always** action activator can - lead to unexpected behavior, e.g. the trigger runs after internal system - changes of the ticket, which aren't visible in the ticket history. +.. hint:: If in doubt, use **Selective**. The **Always** action activator can + lead to unexpected behavior, e.g. the trigger runs after internal system + changes of the ticket, which aren't visible in the ticket history. Time Event ^^^^^^^^^^ -The execution is triggered at a specific time when a certain event is -reached, e.g. ticket pending time. - -This activator simply checks if **conditions** match. -This is the same behavior as action-based activator's "always" mode. - -When creating a trigger, choose activator here: +The execution is triggered when one of the following events occur: -.. figure:: /images/manage/trigger/activator-of-a-trigger.png +- Time of a reminder is reached +- Escalation is reached +- Escalation warning is reached -Conditions ----------- +When such a time event is reached, the trigger runs if the condition +matches. This is the same behavior as action-based activator's "always" mode. -When creating a trigger, define your conditions here: +Condition +--------- - .. figure:: /images/manage/trigger/conditions-of-a-trigger.png +Use one or more attributes and values in a condition, which the tickets have to +match you want to apply changes to. Create your condition in the +**Conditions for affected objects** section: -Trigger conditions must match as configured for the trigger to fire. +.. figure:: /images/manage/trigger/conditions-of-a-trigger.png + :alt: Screenshot of condition section in trigger dialog. + :scale: 80% + :align: center .. include:: /misc/object-conditions/conditioning-depth-hint.include.rst -Actions -------- +Action +------ -When creating a trigger, define your changes here: +Define which changes to apply for tickets which match your condition in the +**Execute changes on objects** section: - .. figure:: /images/manage/trigger/actions-of-a-trigger.png +.. figure:: /images/manage/trigger/actions-of-a-trigger.png + :alt: Screenshot of action section in trigger dialog. + :scale: 80% + :align: center -.. hint:: Certain actions (such as *email*, *SMS* and *notes*) support - :doc:`/misc/variables`, which can be used to build +.. hint:: Certain actions (such as email, SMS and notes) support + :doc:`/misc/variables` (see screenshot above), which can be used to build highly-customized message templates. A trigger can do the following things once its conditions have been met: -* Modify the ticket +Modify the ticket Examples: escalate its priority, close it, reassign it, rename it, add tags, subscribe and unsubscribe specific/all users, etc. @@ -95,7 +105,7 @@ A trigger can do the following things once its conditions have been met: Remember that the placeholders' values have to be known during trigger runtime. Learn more about :doc:`/misc/variables`. -* Send an email or SMS +Send an email or SMS Either to the customer, the agent who owns the ticket, or every agent in the system. @@ -106,13 +116,17 @@ A trigger can do the following things once its conditions have been met: an email address for the group, the trigger is working in. If you don't, Zammad will skip the trigger completely. -* :doc:`Fire a webhook ` +:doc:`Fire a webhook ` Connect Zammad to another web service or application to give it live updates about new tickets. -* Add internal or public notes to the ticket + +Add internal or public notes to the ticket This allows you to help your agents with specific information if needed. (e.g. automated changes a trigger applied to the ticket) +:doc:`Run an AI agent ` + Trigger an AI agent to run using triggers. + .. _trigger-localization: Localization of Execution Changes