Difference between revisions of "Constraints"
Line 1: | Line 1: | ||
− | Constraints are optional | + | <span style="color: #0E9549;">'''What is a constraint?'''</span> |
+ | <pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;"> | ||
+ | Constraints in MacroDroid are optional tools that allow you to control when a macro or a specific action is triggered. They are based on certain conditions that must be met to allow or prevent the execution of macros and actions. | ||
+ | </pre> | ||
− | + | <span style="color: #0E9549;">'''Apply to entire macros:'''</span> | |
+ | <pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;"> | ||
+ | You can apply constraints to an entire macro (at the bottom of the 'Constraints' tab). | ||
− | + | This means that the macro will only be activated if the conditions set by the constraints are met. | |
+ | </pre> | ||
+ | <span style="color: #0E9549;">'''Restrictions on Triggers and Individual Actions:'''</span> | ||
+ | <pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;"> | ||
+ | As well as being applied to an entire macro, constraints can be added directly to individual triggers and actions. | ||
− | + | This is done from the 'Edit Macro' screen by selecting the trigger or action and selecting 'Add Constraint'. | |
+ | </pre> | ||
+ | <span style="color: #0E9549;">'''Nesting constraints'''</span> | ||
− | < | + | <pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;"> |
+ | If you need more sophisticated logic applied to constraint there is a special AND/OR/XOR/NOT constraint that can be used. | ||
− | + | Any constraints nested under the logic constraint will have that logic operator applied. It's also possible to nest multiple logic constraints to create complex logic. | |
+ | For example: | ||
+ | </pre> | ||
+ | <pre style="background-color: #ACC8E5; color: #112A46; border-radius: 10px; padding: 10px;"> | ||
AND | AND | ||
| - Constraint 1 | | - Constraint 1 | ||
Line 16: | Line 31: | ||
| - Constraint 2 | | - Constraint 2 | ||
| - Constraint 3 | | - Constraint 3 | ||
− | + | </pre> | |
In the above example, Constraint 1 must always be true '''AND''' at least one of (Constraint 2 '''OR''' Constraint 3) must be true. | In the above example, Constraint 1 must always be true '''AND''' at least one of (Constraint 2 '''OR''' Constraint 3) must be true. | ||
Revision as of 20:19, 13 February 2024
What is a constraint?
Constraints in MacroDroid are optional tools that allow you to control when a macro or a specific action is triggered. They are based on certain conditions that must be met to allow or prevent the execution of macros and actions.
Apply to entire macros:
You can apply constraints to an entire macro (at the bottom of the 'Constraints' tab). This means that the macro will only be activated if the conditions set by the constraints are met.
Restrictions on Triggers and Individual Actions:
As well as being applied to an entire macro, constraints can be added directly to individual triggers and actions. This is done from the 'Edit Macro' screen by selecting the trigger or action and selecting 'Add Constraint'.
Nesting constraints
If you need more sophisticated logic applied to constraint there is a special AND/OR/XOR/NOT constraint that can be used. Any constraints nested under the logic constraint will have that logic operator applied. It's also possible to nest multiple logic constraints to create complex logic. For example:
AND | - Constraint 1 | - OR | - Constraint 2 | - Constraint 3
In the above example, Constraint 1 must always be true AND at least one of (Constraint 2 OR Constraint 3) must be true.
List of Constraints
Macro(s) Invoked/Not invoked Recently