Designing Rules

Best practices for defining effective and relevant rule logic in the Rule Configurator.

A well-designed rule is the foundation of a good user experience. The core of the MOOST platform is the rule engine, which allows you to define the precise conditions that trigger a recommendation. If this underlying logic is irrelevant, poorly timed, or triggers too often, the notification will be perceived as spam, no matter how well-designed the app is.

This guide covers best practices for designing the logical conditions for your rules in the Rule Configurator.


Best Practices for Rule Design

Be Proactive, Not Just Reactive

Your most valuable rules will anticipate user needs. Leverage the Context Services(like $WeatherForecast or $SolarProductionForecast) to send recommendations before an event happens.

Prevent "Notification Flapping"

Avoid rules that trigger on and off rapidly from fluctuating data. Use aggregation functions (AVG, MIN, MAX, SUM) to check for conditions over a stable time window or use properties Match Threshold or Time Between Notifications to prevent over notification.

Create Highly Specific, Contextual Triggers

The best rules combine multiple data points using AND / OR logic to find a truly specific, actionable moment. A simple threshold is mostly not enough to send hyper personalised recommendations.

Personalize with Profile Data

Use information from the Household Profile to make rules relevant to the specific user. A rule for a "cost-saving-motivated" user should be different from one for an "eco-motivated" user.

Always Use the Rule Simulator

This is the most critical step. Before activating any rule, use the Rule Simulator to test it against historical data from several different buildings and time ranges. The simulator allows you to:

  • Verify the rule triggers only when you expect it to.

  • See the exact notification text with dynamic data filled in.

  • Ensure the rule does not trigger when it shouldn't.

Last updated